[西门子] S7-1200与S7-200SMART PLC之间的ISO_On_TCP通信(200SMART 做客户端)(请...

[复制链接]
查看65039 | 回复0 | 2024-7-19 01:35:47 | 显示全部楼层 |阅读模式
各位同仁:大家好

     S7-1200 CPU与S7-200 SMART CPU 通过ISO on TCP 通信,需要在双方都建立连接。在S7-1200 PLC一侧调用 T-block 指令(TCON, TDISCON, TSEND, TRCV) ,在S7-200 SMART PLC一侧调用Open User Communication 库指令 (ISO_CONNECT, DISCONNECT, TCP_SEND, TCP_RECV) 来实现。通信方式为双向通信,因此双方的发送和接收指令必须成对出现。

      在本案例中博途S7-1200 CPU作为服务端,西门子S7-200 SMART PLC端作为客户端,按照这个前提框架进行编程、调试。

      培训中心推出线上与线下面授实操培训课程,为了解决大家在学习过程中遇到的各种问题以及在工作过程中遇到的各种问题进行咨询、交流、探讨,每周三晚上七点半到九点通过腾讯会议在线直播答疑,欢迎加微信(13811659603)进入工控技术交流群,每周三晚上的在线直播答疑会议号会在每周三下午发布在培训中心各个技术交流群里。欢迎咨询、交流、探讨。
PLC1站为服务端,CPU硬件采用CPU1214C CPU,IP地址为:192.168.0.1;

PLC2站为客户端,CPU硬件采用SR30 CPU,IP地址为:192.168.0.2;


任务要求:

在西门子200 SMART PLC一侧的VB1000开始的5个字节发送给S7-1200 PLC一侧,CPU1200一侧PLC的接收地址是:DB1数据块的DB1.DBX0.0开始连续5个字节。

在S7-1200 PLC一侧从DB2.DBX0.0开始连续发送5个字节数据,西门子200 SMART 一侧接收,接收地址是VB2000开始的5个字节。

以下是详细编程过程:

第一部分:先编写客户机西门子200SMART PLC一侧的程序:

1、点新建创建项目,给项目起个名字

2、对CPU进行硬件组态



3、在OB1主程序中编写通信程序:







4、给通信库指令分配存储器地址域:该地址区域不能与程序中地址区域重叠。



5、创建状态图表,用于监控通信的发送数据区与接收数据区,查看通信是否正确运行:



至此:西门子200SMART PLC一侧(客户端)编程完毕。

第二部分:西门子S7-1200PLC一侧(服务端)编程。

1、第一步点新建创建项目,给项目命名:

2、添加新设备:



3、定义CPU的IP地址



4、定义系统与时钟存储器位



5、新建网络ISO_on_tcp



6、添加新块,DB1 DB_RECV全局数据块



7、添加新块,DB2 DB_SEND全局数据块



8、在OB1主程序中编程



针对TCON指令的参数组态界面







9、创建变量监控表,用于监控通信发送与接收数据区的数据是否正确



到此为止:S7-1200PLC端通信编程完成,本侧为服务端。

第三步:分别对西门子S7-200SMART PLC与S7-1200PLC进行编译、保存、下载。

第四步:在线监控,相互之间发送数据以及接收数据是否正确



通过在线调试,相互发送数据以及相互接收数据均正常,实际测试证明西门子200SMART PLC一侧与西门子S7-1200 PLC一侧所有编程组态程序全部正确。

本案例西门子200SMART PLC作为客户端,西门子S7-1200PLC作为服务端,分别编程调试验证全部内容到此结束。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则