我正在使用从属计算机,并希望将通过Modbus RS485从主站传输的数据保存到文本文件中 . 主计算机不断向我正在工作的从计算机发送写入和读取请求,下面是由串行端口监视器捕获的图像 .
我刚用minimalmodbus发现你可以读寄存器 . 但它似乎只有你是主设备才有效 . 我可以在奴隶计算机上做类似的事吗? http://minimalmodbus.readthedocs.io/en/master/usage.html
#!/usr/bin/env python
import minimalmodbus
instrument = minimalmodbus.Instrument('/dev/ttyUSB1', 1) # port name, slave
#address (in decimal)
## Read temperature (PV = ProcessValue) ##
temperature = instrument.read_register(289, 1) # Registernumber, number of
#decimals
print temperature
## Change temperature setpoint (SP) ##
NEW_TEMPERATURE = 95
instrument.write_register(24, NEW_TEMPERATURE, 1) # Registernumber, value,
#number of decimals for storage
2 回答
modbus-tk可以编写自己的modbus从站 .
下面是一个运行RTU服务器的示例,其中100个保持寄存器从地址0开始:
我希望它有所帮助
您可能希望直接管理串行端口 .
为此,您可以使用pyserial模块,您必须知道Modbus Protocol的工作原理 .
基本配置可以是: