AB PLC与西门子S7-1200以太网通信

前言:在项目实际应用中,经常会遇到两个不同厂家的PLC需要互联进行通信交换数据,由于各自的通信协议有所不同,实现起来的难度较大,通常的做法是借助第三方的网关。本文介绍的是AB PLC与西门子S7-1200直接互联,不借助网关,通过编程方式实现以太网通信。

一、AB PLC端

1.  Socket接口

  • Logix5000控制器使用Socket接口,通过EerthNet/IP模块与不支持EerthNet/IP应用程序协议的以太网设备(如条形码扫描仪、RFID读卡器或其他标准以太网设备)进行通信。

  • Logix5000控制器程序通过MSG指令与Socket对象通信,对Socket对象的MSG请求与大多数计算机操作系统中的Socket API调用类似,Socket对象服务允许您打开连接、接受传入连接、发送数据和接收数据。

2.  支持Socket应用的模块

  • 1756-EN2T

  • 1756-EN2TR

  • 1756-EN2F

  • 1756-EN3TR

  • 5370,5380,5580 Controllers

3.  TCP通信协议流程

(1) TCP客端户建立TCP通信流程

(2) TCP服务端建立TCP通信流程

4.  MSG编程

(1) 建立Socket,即建立一个Socket编程对象,MSG类型选择CIP Generic.

(2) 打开连接,让S7-1200能连接到该Socket,Service类型选择OpenConnetion.

(3) 接受连接,从该Socket连接到S7-1200,Service类型选择AcceptConnetion.

(4) 从Scoket读取数据,即从该接口接受S7-1200发送过来的数据,Service类型选择ReadSocket.

(5) 从Scoket发送数据,即从该接口发送数据到S7-1200,Service类型选择WriteSocket.

(6) 删除Scoket,通信完成后需要释放该Scoket接口,Service类型选择WriteSocket.

(7) 编写通信程序.

二、S7-1200端

编写程序,定义通信端口、交换的数据等参数。

三、通信视频

可到公众号观看

结束语:

本文只是介绍了AB PLC与西门子PLC直接互联进行以太网通信的方法,如何具体编程请参考《ENET-AT002C-EN-P》手册和博途编程手册.

猜你喜欢

转载自www.cnblogs.com/abseme/p/10619030.html