ET200SP作为西门子经典的远程分布式IO模块,也具备了串行通信的作用。 其型号是:6ES7137-6AA01-0BA0 接线方式我们接12/14最为MODBUS RTU(RS485)通信接线。 组态配置: 程序设计如下: 1)在博途的指令中找到通信--MODBUS(RTU) 2)组态Modbus的端口 查看系统功能块的帮助文件: Modbus_Comm_Load 指令通过 Modbus RTU 协议对用于通信的通信模块进行组态。当在程序中添加 Modbus_Comm_Load 指令时,将自动分配背景数据块。 Modbus_Comm_Load 的组态更改将保存在 CM 中,而不是 CPU 中。恢复电压和插拔时,将使用保存在设备配置中的数据组态 CM。必须在这些情况下调用 Modbus_Comm_Load 指令。 从帮助里面我们可以得知,需要设置包含REQ(当此输入出现上升沿时,启动该指令)。 PORT端口(选择系统参数) 当组态完成后,自动会生成一个端口号。 MB_DB(对 Modbus_Master 或 Modbus_Slave 指令的背景数据块的引用。 MB_DB 参数必须与 Modbus_Master 或 Modbus_Slave 指令的(静态,因此在指令中不可见)MB_DB 参数相连。) 3)利用循环计数来做数据调用 4)作为主站采集数据功能块 主要设置:包含REQ触发脉冲,仪表的地址MB_ADDR,模式,0=只读;开始数据地址DATA_ADDR;连续地址长度DATA_LEN,以及存储的起始地址。DATA_PTR。 从数据地址中找到需要的数据即可。 |
|