西门子S7-1500MODBUS通讯总结
MODBUSMASTER:先组态硬件,如下所示:http://p4.qhimg.com/t01e52ad779a82348f8.jpg?size=867x368
然后打开OB1,进行编程,如下所示:先调用初始化的块 MODBUS COMMON LOADhttp://p4.qhimg.com/t01f6f0200215dadf92.jpg?size=657x488
管脚说明:REQ: 指令起始于上升沿(0 到 1)。PORT: 安装并组态完 CM 后,便可在设备组态的“硬件 ID”(Hardware ID) 属性中找到 CM 端口值。符号端口名称在 PLC 变量表的“系统常数”(System constants) 选项卡中指定。就是前面提到的硬件标识符BAUD: 选择数据传输速率:1 = 300, 2 = 600, 3 = 1200, 4 = 2400, 5 = 4800, 6 = 9600, 7 = 19200, 8 = 38400, 9 = 57600, 10 = 76800, 11 = 115200 bit/s。所有其它值无效。PARITY: 选择奇偶校验:· 0 – 无· 1 – 奇校验· 2 – 偶校验RESP_TO: 响应超时:5 ms 到 65535 ms - Modbus_Master 等待从站响应的时间(以毫秒为单位)。如果从站在此时间段内未响应,Modbus_Master 将重复请求,或者在指定数量的重试请求后取消请求并提示错误(请参见下文,RETRIES 参数)。MB_DB:用MODBUS MASTER的背景数据块里面的一部分,如下所示: 对 Modbus_Master 或 Modbus_Slave 指令的背景数据块的引用。必须以 Modbus_Master 或 Modbus_Slave 指令的 MB_DB 参数替换 MB_DB 参数(静态,因此在指令中不可见)。
然后调用MODBUS MASTER 的功能块,如下所示:
管脚说明如下所示:REQ;是脉冲信号,给一次脉冲,收发一次MB_ADDR:是从站地址MODE:读写模式,0是读,1是写DATA_ADDR:对应功能码LEN:数据长度DATA_PRA:接收或发送的存储区域
上述是模式和功能码的对应关系除上述做法,还需要设置一个地方:打开MODBUS COMMON LOAD的背景数据块,如下所示:
将MODE 设置成4
上述是主站的总结接下来说一下从站的设置:前面参数和主站是一样的,就是调用MODBUS SLAVE需要说明一下:http://p8.qhimg.com/t01c28f774a53d8cdcb.jpg?size=693x461MB_ADDR: MODBUS 的从站地址
MB_HOLD_REG:这对应的是40001的功能码例如00001的功能码对应的是Q0.010001 ------I0.030001-------IW0其余和主站设置一样.
党的好公民,人民的好公仆。。。 感谢分享,佩服佩服! 楼主辛苦啦,期待下一篇分享 评论区人才辈出,笑到停不下来😂 求个链接 / 教程,楼主好人一生平安~ 同款经历!简直是世另我 打卡路过,支持优质原创内容~ 水贴也要有仪式感,我先来打卡~ 来凑个热闹,为楼主增加点人气!
页:
[1]
2