西门子S7-1500MODBUS通讯技术

MODBUS  MASTER:

先组态硬件,如下所示:

fdff095a-6a1d-11ed-8abf-dac502259ad0.jpg

然后打开OB1,进行编程,如下所示:

先调用初始化的块 MODBUS COMMON LOAD

fe234f54-6a1d-11ed-8abf-dac502259ad0.jpg

管脚说明:

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 参数(静态,因此在指令中不可见)。

fe45f6b2-6a1d-11ed-8abf-dac502259ad0.jpg

然后调用MODBUS MASTER 的功能块,如下所示:

fe63eaaa-6a1d-11ed-8abf-dac502259ad0.jpg

管脚说明如下所示:

REQ;是脉冲信号,给一次脉冲,收发一次

MB_ADDR:是从站地址

MODE:读写模式,0是读,1是写

DATA_ADDR:对应功能码

LEN:数据长度

DATA_PRA:接收或发送的存储区域

fe849c46-6a1d-11ed-8abf-dac502259ad0.jpg

上述是模式和功能码的对应关系

除上述做法,还需要设置一个地方:

打开MODBUS COMMON LOAD的背景数据块,如下所示:

feacbd02-6a1d-11ed-8abf-dac502259ad0.jpg

fefd0988-6a1d-11ed-8abf-dac502259ad0.jpg

将MODE 设置成4

上述是主站的总结

接下来说一下从站的设置:

前面参数和主站是一样的,就是调用MODBUS SLAVE需要说明一下:

ff17af72-6a1d-11ed-8abf-dac502259ad0.jpg

MB_ADDR: MODBUS 的从站地址

MB_HOLD_REG:这对应的是40001的功能码

例如00001的功能码对应的是Q0.0

10001 ——I0.0

30001——-IW0

其余和主站设置一样.

关键字:       编辑:什么鱼 引用地址:

发表评论

邮箱地址不会被公开。 必填项已用*标注

  • 友情链接