IM12B1B读取数据代码
时间: 2024-12-25 16:16:11 浏览: 10
IM12B1B是一款由工业解决方案供应商欧姆龙Omron生产的数字输入模块,通常用于PLC (Programmable Logic Controller)系统中,它能够读取开关量、传感器等输入信号。在使用该模块进行数据读取时,你可能会涉及一种特定的通信协议,比如Modbus RTU或ASCII。
以下是一个基本的示例,展示了如何通过Python和modbus-py库连接到IM12B1B并读取数据:
```python
from modbus_client import ModbusClient
# 定义设备地址和端口
device_address = 0x01 # 对于IM12B1B通常是0x01
port = 502 # 默认Modbus TCP端口,如果是RS485则会有所不同
# 初始化客户端
client = ModbusClient(device=device_address, port=port, mode='rtu')
try:
# 读取输入寄存器,假设我们要读第0号到7号寄存器的数据
input_registers = client.read_input_registers(address=0, count=8)
for i in range(8):
value = input_registers.registers[i]
print(f"Input register {i}: {value}")
except Exception as e:
print(f"Error reading data: {e}")
finally:
client.close()
```
阅读全文