目录
1. 所需软件
SMART 200软件、Modbus Poll(实现Modbus主站模拟)
2. 配置过程
2.1 PLC梯形图
由于本案例将PLC作为Modbus TCP服务器,即被查询的一方,因此,PLC需要使用Modbus服务器库,电脑使用Modbus Poll作为客户端(可理解为主站)发送查询指令。
图1 Modbus TCP SRRVER库
图2 Modbus TCP Server 库地址分配
IP_Port为服务器端口;
MaxIQ将可用于 Modbus 地址 0xxxx 到 1xxxx 的 I 和 Q 点数设置为 0 至 256。值 0 表示禁用对输入和输出的所有读取和写入。建议将 MaxIQ 值设置为 256;
MaxAI 将可用于 Modbus 地址 3xxxx 的字输入 (AI) 数设置为 0 至 56。值 0 表示禁用对模拟量输入的读取。一般为56;
MaxHold 设置可用于 Modbus 地址 4xxxx 或 4yyyyy 的 V 存储器中的字保持寄存器数。例如,如果要允许 Modbus 客户端访问 2000 字节的 V 存储器,则将 MaxHold 的值设置为 1000 字(保持寄存器);
HoldStart 为指向 V 存储器中保持寄存器起始位置的指针。通常将该值设置为 &VB0(VB0 地址)。可将其它 V 存储器地址设置为保持寄存器的起始地址,以允许在项目的其他位置使用 VB0。Modbus 客户端可访问 V 存储器的 HoldStart 字数(从 MaxHold 开始)。
2.2 Modbus Poll配置
需按照离散输入寄存器、线圈寄存器、保持寄存器、输入寄存器分别设置寄存器及其地址信息,从站地址需和MCGS组态对应。
图3 Modbus Poll配置页面
3. 试验结果
该案例,对PLC输入继电器的读取直接在面板中可看到,对输出继电器的写入,则可以通过05和15功能码实现。
图4 试验结果