工控智汇

工控智汇

使用S7-200 CP243-1和S7-200 SMART CPU以太网口之间的S7通讯

admin 53 150

使用S7-200CP243-1和S7-200SMARTCPU以太网口之间的S7通讯

S7通信是S7系列PLC基于MPI、PROFIBUS、ETHERNET网络的一种优化的通信协议,主要用于S7-300/400PLC之间的通信。
经过测试发现S7-200通过CP243-1与S7-200SMARTPLC之间的S7也是可以成功进行通信的,但是需要S7-200侧作为客户端组态以太网向导。

一、硬件和软件需求及所完成的通信任务

本文采用一个S7-200加上CP243-1,一个S7-200SMARTPLC为例,介绍它们之间的S7通讯。

硬件:
①S7-200CPU
②CP243-1(6GK7243-1EX01-0XE0)
③S7-200SMARTCPU(固件//)
④PC(带以太网卡)
⑤TP以太网电缆

软件:
①STEP7Micro/
②STEP7Micro/

所完成的通信任务:
①S7-200(192.168.0.102)VB4000的数据发送到S7-200SMART(192.168.0.15)的VB4000。
②S7-200(192.168.0.102)VB4001获取S7-200SMART(192.168.0.15)的VB4001的数据。

二、S7-200侧CP243-1的组态

首先,通过编程电缆使PC机与S7-200的通信,然后选择工具中的以太网向导配置界面,如图1所示:


图1以太网向导配置


图2模块位置读取

选择模块相匹配的版本,本例中的CP243-1模块型号为6GK7243-1EX01-0XE0,如下图3所示:


图3模块版本选择

每个CP243-1模块都需要配置一个IP地址,如图3的界面所示。IP地址的设置需要在指定的对话框中进行设置。


图4IP地址分配界面


图5IP地址设定

模块命令字节:CP243-1模块需要占用一个QB字节,该字节的地址不能任意填写,需要进行计算(如果通过自动读取模块位置的方式则会自动计算)。计算的规则就是从CPU本体的输出字节开始计算,依次排列到CP243-1的模块位置即可;

对等链接:组态CP243-1进行S7连接的连接数量的设置,通过S7连接可以与通信伙伴进行读写数据操作。


图6设定QB字节地址及连接数目

选择此为客户机连接,TSAP是TransportServiceAccessPoint的缩写,表示的是连接资源的地址,与S7-200SMART通讯可设置为:

1、02.00
2、02.01
3、03.00
4、03.01


图7连接设置

选择"数据传输"标记,并单击"新传输"按钮进行配置:选择是读取数据还是写入数据,填写通讯数据的字节个数,填写发送数据区和接收数据区的起始地址。
本例中为将S7-200的VB4000传送到S7-200SMARTCPU的VB4000;S7-200VB4001获取S7-200SMART的VB4001的数据。



图8定义数据传输


图9使用CRC

填写模块所占用的V存储区的起始地址。注意不要和程序中的其他地址冲突。


图10配置存储区

三、S7-200侧编程

完成以太网向导配置后需要在程序中调用以太网向导所生成的ETHx_CTRL和ETHx_XFR,然后,将整个项目下载到S7-200CPU。
对于S7-200的同一个连接的多个数据传输,不能同时激活,必须分时调用。下面的程序就是用前一个数据传输的完成位去激活下一个数据传输,如图11.图12.图13.所示


图11S7-200程序段1


图12S7-200程序段2


图13S7-200程序段3

S7-200SMART作为服务器,不需要额外做通讯编程,只需注意S7-200SMARTCPU的IP设置为192.168.0.15。

四、S7-200SMART的组态

S7-200SMART做服务器不用编写任何程序。


图14设置IP地址


图15监控结果

注意:1.本文档仅供测试使用,使用该种通信方式所产生的任何危险需要由自己

承担!
2.经测试版本以及以上才支持与S7-200之间的S7

通讯。CPU固件需升级到以及以上。
3.经测试S7-200CP243-1侧组态客户端,S7-200SMART作为服务器才能进行

通讯。

不足之处还望海涵,请各界大佬多多批评指教!

程序仅供参考!