两个S7-1200之间以太网通信的仿真实验

 

一、理论知识
1、PROFINET 通信口
S7-1200 CPU 本体上集成了一个PROFINET 通信口,支持以太网和基于TCP/IP和UDP 的通信标准。这个PROFINET物理接口是支持10/100Mb/s的RJ45口,支持电缆交叉自适应,因此一个标准的或是交叉的以太网线都可以用于这个接口。使用这个通信口可以实现S7-1200 CPU 与编程设备的通信,与HMI触摸屏的通信,以及与其它CPU 之间的通信。

2、 支持的通信协议
S7-1200 CPU 的PROFINET 通信口支持以下通信协议及服务
1)TCP
2)ISOon TCP ( RCF 1006 )
3)UDP(V1.0不支持)
4)S7通信

3、 硬件版本 V4.1 支持的协议和最大的连接资源:
分配给每个类别的预留连接资源数为固定值;您无法更改这些值。 但可组态6个"可用自由连接"以按照应用要求增加任意类别的连接数。
两个S7-1200之间以太网通信的仿真实验_第1张图片
示例:1 个PG 具有3 个可用连接资源。根据当前使用的 PG功能,该PG 实际可能使用其可用连接资源的1、2或3。 在S7-1200 中,始终保证至少有1 个PG,但不允许超过1 个PG。

在CPU属性>常规>连接资源显示:

两个S7-1200之间以太网通信的仿真实验_第2张图片

 


二、开发工具
1、博途TIA Protal V13
2、仿真器S7-PLCSIM V13


三、实现过程
S7-1200与S7-1200之间的以太网通信可以通过TCP或ISOonTCP协议来实现,使用的通信指令是在双方CPU通用T-block(TSEND_C,TRCV_C, TCON, TDISCON, TSEN,TRCV)指令来实现,通信方式为双边通信,因此通信指令必须成对出现。


1、组态&编程
(1)打开博途软件,创建新项目,命名为:2个S7-1200之间通信

两个S7-1200之间以太网通信的仿真实验_第3张图片


(2)添加新设备,命名为PLC1,这里选择的是CPU1214C,版本V4.1

两个S7-1200之间以太网通信的仿真实验_第4张图片


(3)CPU属性设置,启用系统存储器字节和时钟存储器字节

两个S7-1200之间以太网通信的仿真实验_第5张图片


(4)以太网地址设置,IP地址设为:192.168.0.1

两个S7-1200之间以太网通信的仿真实验_第6张图片


(5)新建全局数据块DB1,命名为Data,用来发送和接收数据。

两个S7-1200之间以太网通信的仿真实验_第7张图片


(6)在数据块DB1中,新建数组send,用来发送数据到对方通信PLC,数据类型为Array[0..9]ofByte,共计10个字节;新建数组receive,用来接收对方通信PLC发送过来的数据,数据类型为Array[0..9]of Byte,共计10个字节。

两个S7-1200之间以太网通信的仿真实验_第8张图片


(7)在全局数据块DB1点击右键,选择属性

两个S7-1200之间以太网通信的仿真实验_第9张图片

将“优化的块访问”复选框的钩去掉,因为使用绝对寻址,需要禁用这个选项。
两个S7-1200之间以太网通信的仿真实验_第10张图片

“优化的块访问”复选框的钩去掉后,点确定

两个S7-1200之间以太网通信的仿真实验_第11张图片


(8)在PLC1上点击右键,复制并粘贴,命名为PLC2,修改IP地址:192.168.0.2

两个S7-1200之间以太网通信的仿真实验_第12张图片


(9)点击项目根目录下的“设备和网络”,并用鼠标连线PLC1与PLC2的通信网口

两个S7-1200之间以太网通信的仿真实验_第13张图片

连线成功后,如下图,两个PLC之间的通信组态完成。

两个S7-1200之间以太网通信的仿真实验_第14张图片


(10)在PLC1的Main(OB1)中编程,选择通信指令中的开放式用户通信指令:TSEND_C,TRCV_C.

两个S7-1200之间以太网通信的仿真实验_第15张图片


(11)选中TSEND_C指令,右键属性,选择组态,并设置各项参数如下:

两个S7-1200之间以太网通信的仿真实验_第16张图片


(12)选中TRCV_C指令,右键属性,选择组态,并设置各项参数如下:

两个S7-1200之间以太网通信的仿真实验_第17张图片


(13)TSEND_C指令,各项参数设置如下:

两个S7-1200之间以太网通信的仿真实验_第18张图片

 

(14)TRCV_C指令,各项参数设置如下:

两个S7-1200之间以太网通信的仿真实验_第19张图片


(15)在PLC2的Main(OB1)中编程,选择TSEND_C,TRCV_C指令,组态&编程和PLC1类同。

 

2、模拟仿真
(1)在电脑“控制面板”中,点击“设置PG/PC接口”,将应用程序访问点设置为:PLCSIMS7-1200/1500.

两个S7-1200之间以太网通信的仿真实验_第20张图片


(2)选中在PLC1,点击“开始仿真”

两个S7-1200之间以太网通信的仿真实验_第21张图片


(3)点击开始搜索,选中目标设备,下载。

两个S7-1200之间以太网通信的仿真实验_第22张图片


(4)PLC2的启动仿真,程序下载和PLC1的方法完全一致。


(5)在PLC1的“监控和强制表”中添加新监控表如下,并在线监控:

两个S7-1200之间以太网通信的仿真实验_第23张图片


(6)在PLC2的“监控和强制表”中添加新监控表如下,并在线监控:

两个S7-1200之间以太网通信的仿真实验_第24张图片


(7)通过上面第(5)、(6)步骤,可以看到PLC1与PLC2交互的数据完成正确。


(8)在PLC1的Main(OB1)中在线监视通信指令的情况如下,由于仿真器非真正的实体PLC,不能完全代替其实际功能,故指令执行状态与实际PLC指令状态存在差异,但不影响执行结果。
两个S7-1200之间以太网通信的仿真实验_第25张图片

 

两个S7-1200之间以太网通信的仿真实验_第26张图片

 

 

----公众号abseMe:坚持原创  注重实用

 

转载于:https://www.cnblogs.com/abseme/p/10943762.html

你可能感兴趣的:(网络,matlab,开发工具)