基于西门子S7-200系列PLC的Modbus通信,写了一个一本家儿多从的通信例程,现就此通信例程加以具体申明,以供大师工程开辟过程中利用。
方案根基环境
该方案可合用于3台以上西门子PLC,S7-200或S7-200Smart之间实现一本家儿多从Modbus通信和谈的无线通信。
合用PLC型号:S7-200和S7-200SMART
通信和谈:Modbus-RTU
通信关系:一本家儿8从
通信距离:5KM
通信体例:全数字加密无线传输
无线通信终端:DTD434MC 西门子PLC专用无线通信终端
添加MODBUS库文件
S7-200PLC的Modbus通信,西门子自己没有直接的相关指令,所以需要给STEP7里面添加西门子官方供给的Modbus库文件。添加好库文件后会呈现下图所示。
点开【库】就会呈现下图所示
别离打开与Modbus有关的文件夹就会呈现下图所示的可以直接挪用的指令
指令申明
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
本家儿站法式
本家儿站法式我们采用分时轮回采集的体例来依次读写8个从站的状况。法式编程采用毫秒按时器【T32】来作为系统的通信采集周期。我们可按照现实需求调整参数巨细。若利用GPRS通信体例,出于对流量当作本的考虑,需要按照现实环境调整通信周期,以免增添不需要的后期费用。
从站法式
从站法式只需要按照本家儿站的通信格局设置连结一致,然后再使从站响应指令即可正常通信。8个从站通信法式,除地址纷歧样外,其他的参数均不异,后期可按照现实利用环境调整。
指令挪用申明(一)
【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的时辰有用
指令挪用申明(二)
【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的时辰有用
指令挪用申明(三)
【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_SLAVE】通信口0作为Modbus从站响应本家儿站读写指令。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!