西门子PLC通信--200smart与1200PLCS7通信
S7-200smartS7通信:
有200smart与200smartS7通信;
200smart与1500PLCS7通信;
200smart与1200PLCS7通信;
上篇文章讲解了200smart与1500PLCS7通信,
下面我们进入本次的内容讲解:200smart与1200PLCS7通信。
本文以采用1个CPU1215C(6ES7215-1AG40-0AB0),1个S7-200SMART PLC为例,介绍它们之间的S7通信。
硬件:
S7-1200CPU
S7-200 SMART CPU (固件V2.0)
PC(带以太网卡)
TP以太网电缆
软件:
TIAV16
STEP 7 Micro/WIN SMART V2.1
所完成的通信任务:
S7-1200将通信数据区DB1中的200个字节发送到S7-200SMART的VB数据区。
S7-1200读取S7-200SMART中的VB数据区存储到S7-1200的数据区DB2。
S7-1200侧硬件组态和网络组态
1使用TIAV16 软件新建一个项目,添加1个S7-1200站点并为其分配网络和IP地址,如图1-1所示。
图1-1博图软件中添加S7-1200站点
2.TIA V16软件的网络视图中为S7-1200CPU 添加一个新连接,如图1-2所示:
图1-2S7-1200添加新连接
在弹出"创建新连接"对话框中选择"未指定",然后点击"添加"按钮,添加新连接,如图1-3所示。
图1-3选择未指定连接
需要为新创建的连接指定连接伙伴方的IP地址和TSAP,设置方法如图1-4,图1-5所示。
注意:S7-200SMART 侧的TSAP只能设置为03.00或者03.01。
图1-4设置连接伙伴方IP地址
图1-5设置连接伙伴方TSAP地址
TIA软件程序编程
1.创建发送数据块DB1(接收区数据块DB2类似),数据块定义为200个字节的数组且数据块的属性中需要取消"优化的块访问"选项,如图1-6所示。
图1-6创建数据块并取消优化访问
2.发送数据块与接收数据块创建完成后,即可在OB1中调用PUT/GET指令,进行S7通信了,如图1-7所示。
图1-7调用PUT/GET指令
表1.PUT指令参数说明
CALL “PUT” | , %DB3 | //调用 PUT,使用背景DB块:DB3 |
REQ | :=%M0.0 | //上升沿触发程序块的调用 |
ID | :=W#16#0100 | //连接号,要与连接配置中一致,创建连接时的连接号,见图1.标记7 |
DONE | :=%M2.0 | // 为1时,发送完成 |
ERROR | :=%M2.1 | // 为1时,有故障发生 |
STATUS | :=%MW4 | // 状态代码 |
ADDR_1 | :=P#DB1.DBX0.0 BYTE 200 | // 发送到通信伙伴数据区的地址,对应S7-200 SMART VB0-VB199 |
SD_1 | :=P#DB1.DBX0.0 BYTE 200 | // 本地发送数据区 |