Вы должны извлечь регистры из своего ответа, попробуйте это:
print(result.registers)
Или, если вы хотите их один за другим:
for reg in result:
print(reg)
Если вы не увереныесли ваш сервер работает, его IP-адрес или порт, рекомендуется использовать автономный инструмент для тестирования, если вы работаете в Windows, вы можете использовать QModMaster , чтобы убедиться в правильности настроек и сопоставления.
И обратите внимание, что только с одним регистром Modbus вы не можете получить число с плавающей запятой, потому что регистр Modbus имеет 16-битные целые числа.Если вы хотите получить число с плавающей запятой, вам нужно прочитать два регистра.
Если, с другой стороны, вы хотите проверить только свой код на стороне клиента, вы можете запустить этот пример на вашемкомпьютер одновременно с вашим клиентским кодом.Конечно, вы должны изменить IP-адрес в вашем скрипте на localhost
, порт на 5020
и номер регистра, который вы читаете, на меньший номер (или увеличить размер хранилища данных сервера).Если вы работаете в Windows, вам может потребоваться отключить или создать правило на брандмауэре.