大家都知道PLC想做Modbus通讯,就避免不了编一些复杂的程序,如接一些变频器、仪器仪表等设备。那么接的设备少还可以,编程从主从站方式来看还很容易入手,但如果要是接的设备多的话,然后做Modbus主从站通讯,可能很难编程容易混乱,而且这对于初学者来说入手更难,根本就没有什么思路。
基于以上概述,大连德嘉将原有兼容S7-200的M02型PLC,从2018.9.1正式升级改造,升级为可以内嵌Modbus RTU模式,总的来说就是根据我们提供的Modbus编程软件,来设置Modbus主从站通讯 参数的设置,这种方式不用再通过编程的方式来实现,直接在这个软件里填表,将Modbus通讯的参数设置进去,然后再将文件下载到PLC中,无需编程即可实现Modbus通讯。
这种方式还有一个好处就是,不占用内部的变量,传统的编程方式有的地址还可能被内部占用,对于Modbus不是很精通的来说很难找到其中的原因。
下面为Modbus命令从上往下循环执行的方式示意图:
升级内容: 增加modbus 主从站非编程,以填表方式实现(简单实用)
使用填表方式时,有modbus主站和modbus从站两种选项
1.modbus从站方式:
只需填写波特率,校验方式,从站地址即可完成
modbus地址与S7-200PLC的数据对应关系如下:
00001-00128 Q0.0、 Q0.1 、Q0.2 ..... Q15.7
10001-10128 I0.0 、 I0.1 、 I0.2 ..... I15.7
30001-30032 AIW0、AIW2、AIW4..... AIW62
-------------------------------------------------------------------------------
4000n-4xxxx VW(n)、VW(n+2)、VW(n+4) ......
例1: modbus 起始地址8 、个数3 对应PLC的V区为 VW8 、VW10、VW12
例2: modbus 起始地址19、个数4 对应PLC的V区为 VW19、VW21、VW23、VW25
2.modbus主站方式:
首先填写波特率、校验方式、等待从站应答时间、命令重发次数(是指modbus命令发送后,如果没有收到从站的正确应答,是发送下一条modbus命令,还是再次或多次发送本条命令),主站方式可以有最多64条modbus命令,它通过在表中双击鼠标来添加或修改modbus命令行来轻松实现编程,这些命令从上致下按顺序不断循环发送执行。
每条modbus命令中唯一要说明的是“命令执行前延时ms”,它是指该命令执行前要延时一段时间,主要用于给从站一个缓冲时间,一般情况下是无需延时的,填写“0”即可。
Modbus设置软件界面如下: