嵌入式
返回首页

西门子s7-200smart与s7-1200PLC通信技术

2022-11-18 来源:elecfans

本文以采用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所示。

a057f058-659c-11ed-8abf-dac502259ad0.png

图1-1博图软件中添加S7-1200站点


2.TIA V16软件的网络视图中为S7-1200CPU 添加一个新连接,如图1-2所示:

a07c2c84-659c-11ed-8abf-dac502259ad0.png

图1-2S7-1200添加新连接


在弹出'创建新连接'对话框中选择'未指定',然后点击'添加'按钮,添加新连接,如图1-3所示。

a0b1fefe-659c-11ed-8abf-dac502259ad0.png

图1-3选择未指定连接


需要为新创建的连接指定连接伙伴方的IP地址和TSAP,设置方法如图1-4,图1-5所示。

注意:S7-200SMART 侧的TSAP只能设置为03.00或者03.01。

a0de5f26-659c-11ed-8abf-dac502259ad0.png

图1-4设置连接伙伴方IP地址

a11a0364-659c-11ed-8abf-dac502259ad0.png

图1-5设置连接伙伴方TSAP地址

TIA软件程序编程    

1.创建发送数据块DB1(接收区数据块DB2类似),数据块定义为200个字节的数组且数据块的属性中需要取消'优化的块访问'选项,如图1-6所示。

a15a8b1e-659c-11ed-8abf-dac502259ad0.png

图1-6创建数据块并取消优化访问


2.发送数据块与接收数据块创建完成后,即可在OB1中调用PUT/GET指令,进行S7通信了,如图1-7所示。

a1bc24e6-659c-11ed-8abf-dac502259ad0.png

图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// 本地发送数据区

表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.0 BYTE 200//从通信伙伴数据区读取数据的地址,对应S7-200 SMART 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所示。

a242db08-659c-11ed-8abf-dac502259ad0.png

图1-8监控S7连接状态


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侧不需要编写通讯程序。


进入嵌入式查看更多内容>>
相关视频
  • PX4固件二次开发课程

  • RISC-V嵌入式系统开发

  • NuttX Workshop 2024

  • 自己动手写操作系统

  • SOC系统级芯片设计实验

  • 自己动手做一台计算机

精选电路图
  • 红外线探测报警器

  • 短波AM发射器电路设计图

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 用NE555制作定时器

  • 如何调制IC555振荡器

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章