西门子S7-1500MODBUS通讯总结,值得收藏~
供应 | 面议 |
联系人:
电话/手机:
西门子S7-1500MODBUS通讯总结,值得收藏
先组态硬件,如下所示:
然后打开OB1,进行编程,如下所示:
先调用初始化的块 MODBUS COMMON LOAD
管脚说明:
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需要说明一下:
MB_ADDR: MODBUS 的从站地址
MB_HOLD_REG:这对应的是40001的功能码
例如00001的功能码对应的是Q0.0
10001 ------I0.0
30001-------IW0
其余和主站设置一样.
来源:PLC发烧友
[更多详情]