全国热线电话:
18390808297
![]() |
|
湖南嘉普云自动化设备有限公司
1.概述
通过以太网可以实现S7-1200与S7-200连接通信。S7-200可以使用 模块(CP243-1或CP 243-1 IT)连接到以太网上,该模块提供S7 通信的功能,既可作为客户机,也可以作为服务器,可以同时与多8个S7 通信伙伴进行通信;S7-1200 集成以太接口,提供S7 通信的功能,只能作为服务器,可以同时建立3 个通信连接。
下面会用一个实例来描述S7-200 如何与S7-1200建立通信连接。
图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
图10: 配置连接
?? 创建读取数据传输 PeerMessage_1, 读取服务器 16字节 DB2.DBB0~ DB2.DBB15 到VB0~VB15;
西门子6ES7288-1SR60-0AA0
图11: 配置数据传输0
?? 创建读取数据传输 PeerMessage_2, 将 16字节VB16~VB31写入服务器DB2.DBB16~ DB2.DBB31 ;
图12: 配置数据传输1
?? 为配置分配存储区;
图13: 分配存储区
4. 4 S7-200 PLC 编程
?? 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_CTRL;
图14: 调用ETH0_CTRL
其中CP_Ready 为CP 243-1 IT 的状态(0 未准备就绪,1 准备就绪),CH_Ready 为每个通道或 IT 服务的状态(0通道 ,值为256):Error 为出错或报文代码;
?? 程序建立后,需通过PPI连接 将程序块和数据块下载到S7-200 CPU中;
图15: 设置 PG/PC 接口CP5611(PPI)
?? 这样以后就可以通过以太网接口进行下载,将PG/PC接口设为TCP/IP连接;
?? 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_XFR读取服务器数据,相应的连接通道和数据;
图16:调用ETH0_XFR 读取服务器
?? 在STEP 7-MicroWIN 中主程序中,调用子程序ETH0_XFR写入服务器数据,相应的连接通道和数据;
图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中;
图18:S7-1200 DB2.DBB0~DBB15
图19:S7-200 VB0~VB15
?? 从S7-200 程序中可知,在M11.0 从0变为1时,将S7-200的数据VB16~VB31 写入S7-1200 的DB2.DBB16~DB2.DBB31中;
图20:S7-200 VB16~VB31
图21:S7-1200 DB2.DBB16~DBB31
5.总结
S7 1200 与 S7-200 通过 S7通信的基本原理如下图所示:
图22:S7-200与S7-1200 通信原理
问题1:S7-200 PLC可以连接型编码器吗?
解答:S7-200 PLC可以连接型编码器,但应注意以下几点:
(1)S7-200 PLC可连接并行输出的型编码器。串行输出、总线型输出、变送一体型输出等型编码器需PLC具有相应的接口或组态能力,不能与西门子S7-200 PLC 直接连接。
(2)接入S7-200 PLC 的型编码器信号输出好是格雷码。如是纯二进制码,在数据刷新时可能有多位变化,读数会在短时间里造成错码。
(3)型编码器在每圈的每个位置都有一的编码,由于 PLC数据更新受程序扫描周期的影响,因此经PLC读取并换算后的编码器位置值相对于编码器当前位置值存在一定的误差。
(4)对型编码器进行接线时,必须确保其与PLC输入点连接好。如有个别连接不良点,该点电位始终是0,将会造成错码而无法判断。
问题2:S7-200 PLC与型编码器怎样接线?
解答:并行输出的型编码器输出有多少位就要占用PLC的多少位接点,以S7-200 PLC CPU224 为例,如使用12位输出的单圈型编码器(PNP集电极开路输出) ,需要占用CPU224的12位输入点。型编码器的12位信号输出线L0—L11依次接入CPU224 的I0.0—I0.7,I1.0—I1.3。如图1所示:
图1 CPU224输入端与型编码器接线图
问题3:怎样处理格雷码码值?
解答:西门子S7-200 PLC的寄存器中地址越高,字节位越低。如在输入寄存器中IW0 的
IB0 是高字节,IB1是低字节,因此必须将IW0 中的格雷码值左循环8 次,将高、低位字节调换一次位置得到正确排序的格雷码值存入VW0中。如图2所示:
图2 字循环左移8次
而且,由于接入12位输出的单圈型编码器,需屏蔽掉IW0字内的I1.4—I1.7,将需要的格雷码数据存入VW2中。如图3所示:
图3 逻辑与运算
在实际应用中,为了计算编码器转过的角度或位置,需使用格雷码指令GRAY_BIN_W功能块将格雷码解码为字类型的标准二进制码,对应放到VW4中。如图4所示:
图4 格雷码转换