====== Modbus RTU Master 통신 테스트 (FC5) ====== 본 예제는 FC5 (Write Single Coil) 기능을 이용하여 Slave 장치의 Coil 값을 변경하는 테스트입니다. PC에서 Modbus RTU Slave 프로그램을 실행한 뒤, CUBLOC2에서 Coil 데이터를 정상적으로 쓰는지 확인하였습니다. {{ :cubloc2:modbusrtumaster:fc5test.png?nolink |}} ===== 테스트 내용 ===== * Slave ID : 1 * 대상 주소 : 0 * Coil 값 : OFF(0) * 전송 데이터는 Buf() 배열 사용 전송 후 Slave 프로그램의 Coil 상태가 변경되는 것을 확인하였습니다. ===== 테스트 코드 ===== '------------------------------------------------------------ ' FC5 (Write Single Coil) 테스트 '------------------------------------------------------------ Dim Buf(0) As Integer Dim Err As Integer Dim KeyNow As Byte Dim KeyOld As Byte Opencom 0, 115200, PROTO_8N1 ' 채널0, 응답 대기시간 100ms Modbusmaster 0, 100 KeyOld = 0 Do KeyNow = In(4) ' 스위치 OFF -> ON 순간에 1회 실행 If KeyNow = 1 And KeyOld = 0 Then ' FC5 실행 ' Slave ID=1 ' 주소=0 Buf(0) = 0 Modbuswrite 0, 1, 5, 0, 1, Buf() Err = Modbuserror() If Err = 0 Then Debug "FC5 Write OK", Cr Else Debug "FC5 Error=", Dec Err, Cr End If End If KeyOld = KeyNow Loop ===== 결과 ===== * Coil 데이터가 정상적으로 기록됨 * Slave 프로그램의 Coil 상태 변경 확인 * 반복 테스트 중 통신 오류 없이 안정적으로 동작 확인 * ON/OFF 값이 즉시 반영됨 FC5는 다음과 같은 용도로 사용할 수 있습니다. * 릴레이 ON/OFF 제어 * 출력 접점 제어 * 원격 장비 시작/정지 * 디지털 출력 제어 [[index|← Modbus RTU 마스터로 돌아가기]]