QQ登录

只需一步,快速开始

通过S7协议实现S7-1200 与S7-200的通信

[ 复制链接 ]
通过S7协议实现S7-1200 与S7-200的通信

1.概述
通过以太网可以实现S7-1200与S7-200连接通信。S7-200可以使用 模块(CP243-1或CP 243-1 IT)连接到以太网上,该模块提供S7 通信的功能,既可作为客户机,也可以作为服务器,可以同时与最多8个S7 通信伙伴进行通信;S7-1200 集成以太接口,提供S7 通信的功能,只能作为服务器,可以同时建立3 个通信连接。
下面会用一个实例来描述S7-200 如何与S7-1200建立通信连接。

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图1: 实例网络拓扑图

2.硬件需求

•® S7-1214C AC/DC/RLY
•® CPU 224 XP CN DC/DC/DC
•® CP243-1 IT
•® SCALANCE X204-2
•® PG/PC(使用编程电缆)


3.软件需求

•® S7-1200编程软件 STEP 7 Basic V10.5
•® S7-200 编程软件 STEP 7 –MicroWIN V4.0 SP6

4.组态

4. 1 S7-1200 配置
•® 使用STEP 7 Basic 创建项目“comS7200”;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图2: 创建项目

•® 添加S7-1200 设备 CPU1214C;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信

图3: 添加PLC设备

4. 2 S7-1200 PLC 编程
•® 在Program blocks 下,添加程序块(DB1,DB2,DB3),其中DB1和DB3为符号DB(选择 Symbolic access only),DB3为绝对地址DB(不选择 Symbolic access only) , S7 通信只支持绝对地址DB 寻址通信;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图4: 创建绝对地址DB2

•® 打开全局DB2,输入2个数组类型数据,每个数组有16 个元素;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图5: 在DB2中添加数据

•® 创建两个Watch table(Watch table_1, Watch table_2) 用来观察DB2的实时状态;
•® 将程序下载到PLC CPU1214C 中。

4. 3 S7-200 配置
使用STEP 7-MicroWIN 中以太网向导将CP243-1 IT 配置为 S7 客户端。
•® 通过菜单打开以太网向导工具;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图6: 以太网向导

•® 设置模块位置,可以使用“读取模块”来自动识别;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图7: 模块位置设置

•® 设置模块CP243-1 IT 的IP地址192.168.0.8和子网掩码255.255.255.0;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图8: 设置IP 地址

•® 设置模块的连接数1 ,最多只能设置8个,也就是说S7-200可同时与最多 8 个 S7 通讯伙伴进行通讯;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图9: 设置模块连接数;

•® 建立客户端连接 Connection_1,设置服务器传输层服务接入点 TSAP 03.01和服务器IP地址 192.168.0.18 , TSAP 由 2 个字节组成。第一个字节为连接资源。第二个字节为通讯模板的机架号和插槽号;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图10: 配置连接

•® 创建读取数据传输 PeerMessage_1, 读取服务器 16字节 DB2.DBB0~ DB2.DBB15 到VB0~VB15;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图11: 配置数据传输0

•® 创建读取数据传输 PeerMessage_2, 将 16字节VB16~VB31写入服务器DB2.DBB16~ DB2.DBB31 ;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图12: 配置数据传输1

•® 为配置分配存储区;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图13: 分配存储区

4. 4 S7-200 PLC 编程
•® 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_CTRL;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信

图14: 调用ETH0_CTRL

其中CP_Ready 为CP 243-1 IT 的状态(0 未准备就绪,1 准备就绪),CH_Ready 为每个通道或 IT 服务的状态(0通道 ,值为256):Error 为出错或报文代码;
•® 程序建立后,需通过PPI连接 将程序块和数据块下载到S7-200 CPU中;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图15: 设置 PG/PC 接口CP5611(PPI)

•® 这样以后就可以通过以太网接口进行下载,将PG/PC接口设为TCP/IP连接;
•® 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_XFR读取服务器数据,指定相应的连接通道和数据;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图16:调用ETH0_XFR 读取服务器

•® 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_XFR写入服务器数据,指定相应的连接通道和数据;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信

图17:调用ETH0_XFR 写入服务器

•® 将程序下载到S7-200 CPU 中;

4. 5 检测 S7-1200 与S7-200 PLC 通信结果
•® 从S7-200 程序中可知,在M10.0 从0变为1时,读取S7-1200的数据DB2.DBB0~DB2.DBB15 到VB0~VB15中;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图18:S7-1200 DB2.DBB0~DBB15

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信

图19:S7-200 VB0~VB15

•® 从S7-200 程序中可知,在M11.0 从0变为1时,将S7-200的数据VB16~VB31 写入S7-1200 的DB2.DBB16~DB2.DBB31中;

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信

图20:S7-200 VB16~VB31

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信

图21:S7-1200 DB2.DBB16~DBB31


5.总结
S7 1200 与 S7-200 通过 S7通信的基本原理如下图所示:

通过S7协议实现S7-1200 与S7-200的通信

通过S7协议实现S7-1200 与S7-200的通信
图22:S7-200与S7-1200 通信原理

注意:
CP 243-1 IT 可支持一个或多个远程通讯伙伴的最多 8 个 S7 通讯通道到客户机(最多212 字节)或服务器。CP 243-1 IT 可以根据客户机/服务器原理在每个通道运行。每个通道,每次只能接收、处理或响应(主动响应或被动响应)一个请求。只有在发送响应后,CP 243-1 IT 通讯处理器才能接受其它请求。




回复

使用道具 举报

快速回复 返回列表 客服中心 搜索