近期在项目调试中使用西门子CP1543在两个站点(S7-1500和S7-1200)之间进行S7通信。由于在组态设置方面与之前的S7-300系列PLC有所不同,特意写这篇文章以总结并与大家分享。
项目包括A、B两个站点,站点之间通过基于以太网的S7通信进行数据交换。
A站点的硬件组成如下:
1)CPU1515-2PN;
2)CP1543-1;
3)若干IM155-6 PN分布式模块;
B站点使用CPU1215C及若干信号模块;
A站点的CP1543通过一条网线连接到交换机上,B站点的CPU1215C的网口1通过一条网线连接到同一个交换机上,项目的简单网络拓扑图如下:
由于S7-1200系列PLC仅支持S7单边通信,我们将B站点作为S7通信的客户端(Client),A站点作为S7通信的服务器端(Server)。S7单边通信只需要在客户端进行组态和编程,服务器端只需要创建通信需要的数据块即可。
假设:
CP1543-1的IP地址为:192.168.0.4;
CPU1215C的IP地址为:192.168.0.10;
打开CPU1215C的网络视图,点击“连接”,选择“S7连接”,可以看到CPU1215C变成了浅绿色。右键单击CPU1215C,在弹出的菜单中选择“添加新连接”,如下图:
在弹出的“创建新连接”的对话框中,选择CPU1215C的通信伙伴为“未指定”,点击“添加”按钮,添加一条S7连接。如下图:
打开“S7链接”的属性页面,在“常规”栏中,添加通信伙伴的IP地址。如下图:
在“地址详细信息”栏中,添加通信伙伴的TSAP。注意,重点来了!由于我们使用的是S7-1500系列CPU,因此在通信伙伴的插槽号中应该填写数字1(如果是S7-300系列CPU,此处应该写2),如下图:
至此,S7单边通信的网络配置就完成了,将其编译、下载到CPU中。
然后在FB中调用PUT和GET指令就可以对通信伙伴的数据块进行读写操作。
总结如下:在SIMATIC S7-1200的单边S7通信中,客户端需要进行网络组态及编程;服务器端只需要创建通信需要的数据块即可,不需要任何组态和编程。在网络组态时,通信伙伴的IP地址应该填写实际网络连接硬件的地址。比如:如果网线插在CP1543上,应该写CP1543的IP地址;如果网线直接插在CPU1515上,应该写CPU1515的地址。
通信伙伴的槽位号根据不同的CPU而不同,S7-300系列PLC的CPU槽位号为2(1号为电源模块);而S7-1500系列CPU的槽位号为1(0号为电源模块);
相关参考文章:如何利用S7通信在两台S7-300PLC之间交换数据?
好了,关于基于CP1543与S7-1200的单边S7通信组态就先介绍到这里。欢迎扫描下方的二维码关注我们的微信公众号。
发表评论