Чтение / запись значений с использованием Ethernet / IP
Недавно я приобрел линейный привод ACS (Tolomatic Stepper), на который я пытаюсь отправить данные из приложения Python. Само устройство связывается по протоколу Ethernet / IP.
Я установил библиотеку cpppo через pip. Когда я выдаю команду в попытке прочитать состояние устройства, я не получаю обратно. Исследуя связь с Wireshark, я вижу, что кажется, что она идет правильно, однако я замечаю ответ от устройства, указывающий: служба не поддерживается.
Пример кода, который я использую для проверки чтения «Input Assembly»:
from cpppo.server.enip import client
HOST = "192.168.1.100"
TAGS = ["@4/100/3"]
with client.connector(host=HOST) as conn:
for index, descr, op, reply, status, value in conn.synchronous(
operations=client.parse_operations(TAGS)):
print(": %20s: %s" % (descr, value))
Я ожидаю прочтения «входной сборки», но она, похоже, не работает таким образом. Я предполагаю, что мне чего-то не хватает, так как я впервые пытаюсь установить соединение Ethernet / IP.
Я не уверен, что делать дальше или чего мне не хватает в Ethernet / IP, которые могут заставить эту работу работать правильно.