Modbus (pyModbusTCP)

글쓴이 admin 날짜

설치

pip3 install pyModbusTCP

클라이언트 가동

from pyModbusTCP.client import ModbusClient
import sys

c = ModbusClient(host="localhost",port=502) #set host and port
if not c.is_open():
c.open()

if not c.is_open():
print("연결실패. 프로그램 종료")
sys.exit()

addr = 0 # 주소 할당 ( 0 to 65533 )
c.write_single_coil(addr,True) #코일 입력
c.write_single_register(addr,12345) #레지스트리 입력
c.write_multiple_coils(addr,[True,True,True]) # addr주소부터 주소값을 하나씩 늘려 리스트에 입력된값을 차례대로 할당
c.write_multiple_registers(addr,[11,222,333]) # addr주소부터 주소값을 하나씩 늘려 리스트에 입력된값을 차례대로 할당
n_read = 3 #읽어들일 값의 갯수
c.read_coils(addr,n_read)
c.read_holding_registers(addr,n_read)

c.close() #종료

서버 가동

 
from pyModbusTCP.server import ModbusServer

server = ModbusServer(host="192.168.aa.bb", port=502) #서버정보와 포트정보 입력. 서버는 localhost라고 쓰면 안되고, 아이피주소를 명시해야하는 듯
server.start()


0개의 댓글

답글 남기기

아바타 플레이스홀더

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다