工控智汇

工控智汇

案例:两台S7-200PLC是如何进行MOBUS通讯的?

admin 39 4

有道是:知道很多道理,为什么还过不好这一生?因为道理光知道没有用,我们必须知道,得到,做到。现在,就让我们从当下最小行动开始吧!!!

学习PLC编程更多是一个手上功夫,需要长期坚持。

爱学习的你,可以亲自动手操作一遍本案例。

下面,我们依次按照几个关键步骤进行探讨:

1功能要求:

现有两台PLC,CPU224XP模块和CPU224模块,CPU224XP做为MODBUS主站,CPU224作为MODBUS从站,从站地址10,通讯速率9600,无效验,

主站采用PORT1端口与从站PORT0端口通信。

主站从VB300--VB309连续写入5个整型数到保持寄存器地址40001---40005

主站从保持寄存器地址40010---40014读回这连续的5个整型数到VW400--VW404

2分析需求:

按下开关,主站向从站写5个数据,

按下开关,主站向从站读取之前写的5个数据。

主站向从站读取或者写入数据出错时,分别亮灯指示。

3IO点表:


4硬件配置:

根据以上IO点表,我们先暂时不考虑供电方面的情况下,同时也暂时不考虑通道富余量,如果按照S7-200PLC选择模块硬件,

可以选择1块CPU224XP模块(自带14DI/10DO,2AI/1AO,2个通讯端口)和1块CPU224模块(自带14DI/10DO,1个通讯端口)即可满足上表点数要求。


PLC程序:

以下是以梯形图编写的部分PLC程序:


7结论:

本案例采用两台西门子S7-200PLC模块,主要使用常开常闭触点指令,边沿触发指令,比较指令,数据传送指令,填充指令,MODBUS通讯读写指令,采用调用子程序,实现两台西门子S7-200PLC之间进行MODBUS主从通讯。

在做本案例时,容易踏3个大坑:

(1)同一S7-200MODBUS总线上的站地址不能相同,而通讯速率,校验类型,数据位,停止位必须一致。

(2)从站一端初始化通讯指令前的站地址为从站地址,不是主站地址。

(3)CPU模块作为MODBUS通讯端口在运行模式时,不能与MICRO/WIN软件进行通信连接,此时,可以将CPU拨码开关来选择到停止或者测试位置方可连机。

本节关键词:

主站:同一条MODBUS通讯网络上,只有一个主站。

从站:同一条MODBUS通讯网络上,可以有多个从站。

主站向从站发送请求命令,从站响应执行命令,反过来,从站不能向主站发命令。

爱学习PLC的你,踏过此坑吗?欢迎后台留言一起讨论学习哟。