get_modbus_input(iobus)
기능
Modbus Slave 장치에서 신호를 읽어오기 위한 명령어입니다.
인수
인수명 | 자료형 | 기본값 | 설명 |
---|---|---|---|
iobus | string | - | modbus 이름(TP에서 설정) |
알아두기
다중신호로 등록된 경우 신호이름에 인덱스[n]를 붙여 사용가능합니다.
리턴
값 | 설명 |
---|---|
0 or 1 | Modbus Digital I/O 인 경우 ON or OFF |
value | Modbus Analog 모듈인 경우 해당 레지스터 값 |
예외
예외 | 설명 |
---|---|
DR_Error (DR_ERROR_TYPE) | 인수들의 데이터형 오류 시 |
DR_Error (DR_ERROR_VALUE) | 인수의 값이 유효하지 않을 시 |
DR_Error (DR_ERROR_RUNTIME) | C Extension 모듈 에러 발생 시 |
DR_Error (DR_ERROR_STOP) | 프로그램 강제 종료 시 |
예제
#Modbus Coil Register "di1", "di2"가 등록되어 있는 경우
get_modbus_input("di1") # return = ON
get_modbus_input("di2") # return = OFF
#Modbus Holding Register "reg1", "reg2"가 등록되어 있는 경우
get_modbus_input("reg1") # return = 1234
get_modbus_input("reg2") # return = 5555
#다중신호 신호이름: “multi”(cnt=2)가 등록되어 있는 경우
#“multi[0]”, “multi[1]” 사용가능
get_modbus_input("multi1[0]”) # return = 10
get_modbus_input("multi2[1]”) # return = 25