9台西门子PLC的无线通讯建立

2025-10-09 12:50:24

1、方案基本情况

该方案可适用于3台以上西门子PLC,S7-200或S7-200Smart之间实现一主多从Modbus通讯协议的无线通讯。

适用PLC型号:S7-200和S7-200SMART

通讯协议:Modbus-RTU

通讯关系:一主8从

通讯距离:5KM

通讯方式:全数字加密无线传输

无线通讯终端:DTD434MC 西门子PLC专用无线通讯终端

9台西门子PLC的无线通讯建立

2、添加MODBUS库文件

S7-200PLC的Modbus通讯,西门子本身没有直接的相关指令,所以需要给STEP7里面添加西门子官方提供的Modbus库文件。添加好库文件后会出现下图所示。

点开【库】就会出现下图所示

分别打开与Modbus有关的文件夹就会出现下图所示的可以直接调用的指令

9台西门子PLC的无线通讯建立

3、指令说明

S7-200PLC的Modbus通讯,西门子本身没有直接的相关指令,所以需要给STEP7里面添加西门子官方提供的Modbus库文件。添加好库文件后会出现下图所示。点开【库】就会出现左下图所示,分别打开与Modbus有关的文件夹就会出现右下图所示的可以直接调用的指令。

【Modbus Master Port0(v1.2)】通讯口0作为Modbus主站用到的指令。

【MBSU_CTRL】通讯口0的Modbus主站初始化指令。

【EN】初始化指令必须每个扫描周期都使能

【Mode】通讯端口模式设置:1:Modbus   0:默认协议(PPI)

【Baud】通讯波特率:我们设置为9600

【Parity】校验位:0无校验;1奇校验;2偶校验

【Timout】通讯超时时间:我们设置为2000ms

9台西门子PLC的无线通讯建立

4、主站程序

主站程序我们采用分时循环采集的方式来依次读写8个从站的状态。程序编程采用毫秒定时器【T32】来作为系统的通讯采集周期。我们可根据实际需求调整参数大小。若使用GPRS通讯方式,出于对流量成本的考虑,需要根据实际情况调整通讯周期,以免增加不必要的后期费用。

5、从站程序

从站程序只需要根据主站的通讯格式设置保持一致,然后再使从站响应指令即可正常通讯。8个从站通讯程序,除地址不一样外,其他的参数均相同,后期可根据实际使用情况调整。

6、指令调用说明(一)

【Modbus Master Port0(v1.2)】通讯口0作为Modbus主站用到的指令。

【MBUS_MSG】通讯口0的Modbus主站读写指令。

【EN】指令使能

【First】指令触发,必须是上升沿触发-|P|-

注:这里使能和触发最好使同一个触点

【Slave】读写的从站号

【RW】读写选择:0读取;1写入

【Addr】对应从站的寄存器的Modbus起始地址

【Count】访问的寄存器的数量(由起始地址开始)

【DataPir】数据指针:写入的数据地址/读回的数据地址

【Done】指令完成标志位

【Error】错误代码:只在Done为1的时候有效

9台西门子PLC的无线通讯建立

7、指令调用说明(二)

【MBUS_MSG】通讯口0的Modbus主站读写指令

【Modbus Master Port1(v1.2)】通讯口1作为Modbus主站用到的指令。

【MBSU_CTRL_P1】通讯口1的Modbus主站初始化指令。

【MBUS_MSG_P1】通讯口1的Modbus主站读写指令。

【Modbus Slave Port0(v1.0)】通讯口0作为Modbus从站用到的指令。

【MBUS_INIT】通讯口0作为Modbus从站初始化指令。

【EN】仅初次上电使能

【Mode】通讯端口模式设置:1:Modbus   0:默认协议(PPI)

【Addr】作为从站的地址:我们选择01和主站一致

【Baud】通讯波特率:我们设置为9600和主站一致

【Parity】校验位:0无校验;1奇校验;2偶校验和主站一致

【Delay】响应主站指令的延时,一般设置为0

【MaxIQ】主站可读写的数字输入输出的最大点数

【MaxAI】主站可读写的模拟输入的最大可读写点数

【MaxHold】主站可读写的保持寄存器的最大数(字VW)

【HoldSt】主站可读写的保持寄存器的起始地址

【Done】初始化完成标志位

【Error】错误代码:只在Done为1的时候有效

9台西门子PLC的无线通讯建立

8、指令调用说明(三)

【Modbus Master Port1(v1.2)】通讯口1作为Modbus主站用到的指令。

【MBSU_CTRL_P1】通讯口1的Modbus主站初始化指令。

【MBUS_MSG_P1】通讯口1的Modbus主站读写指令。

【Modbus Slave Port0(v1.0)】通讯口0作为Modbus从站用到的指令。

9台西门子PLC的无线通讯建立

9、指令调用说明(四)

【MBUS_SLAVE】通讯口0作为Modbus从站响应主站读写指令。

9台西门子PLC的无线通讯建立

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢