关于启程
启程自动化培训成立于2012年,培训项目主打西门子PLC编程系统集成、工业机器人编程、EPLAN电气设计、视觉等培训与技术服务的机构。推荐高薪就业,越努力越幸运。课程咨询报名138 0986 9603
本文以采用1个CPU1215C(6ES7215-1AG40-0AB0),1个S7-200SMART PLC为例,介绍它们之间的S7通信。
硬件:S7-1200CPU S7-200 SMART CPU (固件V2.0)PC(带以太网卡)TP以太网电缆 软件:TIAV16STEP 7 Micro/WIN SMART V2.1 所完成的通信任务:
S7-1200将通信数据区DB1中的200个字节发送到S7-200SMART的VB数据区。 S7-1200读取S7-200SMART中的VB数据区存储到S7-1200的数据区DB2。 1使用TIAV16 软件新建一个项目,添加1个S7-1200站点并为其分配网络和IP地址,如图1-1所示。
2.TIA V16软件的网络视图中为S7-1200CPU 添加一个新连接,如图1-2所示:
在弹出"创建新连接"对话框中选择"未指定",然后点击"添加"按钮,添加新连接,如图1-3所示。
需要为新创建的连接指定连接伙伴方的IP地址和TSAP,设置方法如图1-4,图1-5所示。
注意:S7-200SMART 侧的TSAP只能设置为03.00或者03.01。
1.创建发送数据块DB1(接收区数据块DB2类似),数据块定义为200个字节的数组且数据块的属性中需要取消"优化的块访问"选项,如图1-6所示。
2.发送数据块与接收数据块创建完成后,即可在OB1中调用PUT/GET指令,进行S7通信了,如图1-7所示。
表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 | //本地发送数据区 |
表2.GET指令参数说明
CALL “GET” | ,%DB4 | //调用GET,使用背景DB块:DB4 |
REQ | :=%M0.1 | //系统时钟2秒脉冲 |
ID | :=W#16#0100 | //连接号,要与连接配置中一致,创建连接时的连接号,见图1.标记7 |
NDR | :=%M2.2 | //为1时,接收到新数据 |
ERROR | :=%M2.3 | //为1时,有故障发生 |
STATUS | :=%MW6 | //状态代码 |
ADDR_1 | :=P#DB1.DBX200.0BYTE 200 | //从通信伙伴数据区读取数据的地址,对应S7-200SMART VB200-VB399 |
RD_1 | :=P#DB2.DBX0.0 BYTE 200 | //本地接收数据地址 |
综合以上步骤,已经完成了S7-1200硬件和软件部分的编程,下载只需要将程序下载到S7-1200PLC 即可。
1.连接状态监控
S7连接成功的建立是调用PUT/GET指令的基础,S7连接成功建立后,方能正确执行PUT/GET指令。 在TIA软件的网络视图中,将软件切换到在线模式,可以监控S7连接状态,如图1-8所示。 S7连接成功建立后,S7-1200触发PUT/GET指令,通过TIA软件监控表和STEP7 Micro/WIN SMART 软件的状态表,可以监控数据通信是否正常。
注意:S7-200SMART中V区对应于DB1,即在PUT指令中使用的通信伙伴数据区ADDR_1=P#DB1.DBX0.0BYTE 200在S7-200SMAR中对于为VB0~VB199。
本文档中S7-200SMART 做S7通讯的服务器,占用S7-200SMART PLC 的服务器连接资源,S7-200SMART PLC 本身不需要编写通讯程序。 S7-1200与S7-200SMART S7 通讯的另外一种方法是S7-200SAMRT PLC做客服端,S7-1200做服务器。该方式需要S7-200SMART调用PUT/GET指令,S7-1200侧不需要编写通讯程序。 课程学习扫码报名