사용자 도구

사이트 도구

English

comfilehmi:remotescript:index

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
comfilehmi:remotescript:index [2020/06/02 16:38]
Comfile Technology [송수신 테스트 방법]
comfilehmi:remotescript:index [2022/07/04 02:54]
Comfile Technology [송수신 테스트 방법]
줄 1: 줄 1:
 +====== 원격 스크립트 (CHC 시리즈 & 펌웨어 v3.15 이상 지원)======
  
 +원격 스크립트 기능은 기존의 스크립트 ('​액션>​스크립트'​ 참조) 를 원격지에서 이더넷을 통해 실행할 수 있는 기능입니다.
 +
 +C#이나 C++등 프로그래밍 언어를 사용하여 TCP/IP 통신을 통해 원하는 스크립트를 실시간으로 원격 실행할 수 있습니다. 서버 측(HMI 펌웨어) 버전이 최소 3.15 이상이고 CHC 시리즈일 경우만 원격 스크립트 요청을 인식할 수 있습니다.
 +
 +===== 실행 절차 =====
 +
 +1. HMI의 설정에서 네트워크 환경 설정을 한 후 원격 제어 서버를 구동(HMI의 런타임 설정>​서버>​원격 제어 서버 구동)시킨다.
 +
 +2. PC 등 클라이언트에서 이더넷을 통해 서버에 접속한다.
 +
 +3. 접속이 맺어진 것을 클라이언트 측에서 확인한 후 서버에게 스크립트를 보낸다. ​
 +   
 +(응답까지 받기 위해서는 접속을 유지시킵니다. 클라이언트 측에서 접속을 끊지 않는한 서버 측에서 연결을 끊지 않습니다)
 +
 +===== 스크립트 전송 프로토콜 =====
 +
 +클라이언트에서 보낼 스크립트는 XML(아스키) 형식이며 다음과 같은 형식을 가지고 있습니다.
 +
 +<​script>​보낼 스크립트의 내용</​script>​
 +
 +예) <​script>​a=b+3</​script>​
 +
 +스크립트의 개요과 작성법에 관한 자세한 내용은 다음 내용을 참조하세요 (단, 반복 기능은 원격 스크립트에서 지원 안 함)
 +[[http://​www.comfilewiki.co.kr/​ko/​doku.php?​id=comfilehmi:​multiaction10:​index]]
 +
 +만약 서버에서 원격 제어를 위한 비밀번호를 설정했을 경우 다음과 같은 형식으로 보내야 합니다.
 +
 +<script password="​비밀번호">​보낼 스크립트의 내용</​script>​
 +
 +예) <script password="​1289">​$a="​안녕하세요"</​script>​
 +
 +스크립트 내용 중 한글 등의 다국어가 있을 경우는 UTF-8 포맷으로 보내야 합니다.
 +
 +
 +===== 응답 받는 방법 =====
 +
 +클라이언트에서 스크립트를 보내어 서버에서 실행하게 할 뿐 아니라 어떤 응답을 서버측으로부터 받고 싶을 때도 있습니다.
 +
 +스크립트내에서 특정 함수를 사용하여 보내면 특정한 응답을 서버로부터 받아낼 수 있습니다.
 +
 +예를 들어 HMI변수 '​a'​값을 byte화시켜서 클라이언트가 응답으로 받고 싶을 경우 다음과 같이 스크립트 패킷을 보내면 됩니다.
 +
 +예) <​script>​write_byte(a);</​script>​
 +
 +byte뿐 아니라 워드, 더블 워드, 문자열, 파일 내용 등도 보낼 수 있습니다. 자세한 내용은 다음 링크의 함수 해설을 참조하세요.
 +[[http://​comfilewiki.co.kr/​ko/​doku.php?​id=comfilehmi:​hmieditor_function:​index]]
 +
 +
 +
 +===== 송수신 테스트 방법 =====
 +
 +ComfileHMI 에디터에서는 이 원격 스크립트 기능을 직접 테스트해 볼 수 있는 "​원격 스크립트 테스트 박스"​ 기능을 제공합니다. (메뉴의 '​도구>​고급 기능>​원격 스크립트 텍스트 박스'​) ComfileHMI 에디터(PC)가 클라이언트라고 가정하고 테스트해볼 수 있도록 되어 있습니다.
 +
 +{{:​comfilehmi:​remotescript:​remscript.png?​nolink|}}
 +
 +[[comfilehmi:​index|ComfileHMI]]
comfilehmi/remotescript/index.txt · 마지막으로 수정됨: 2022/07/04 02:54 저자 Comfile Technology