就著名的OSI模型(开放系统互连模型)而言。TCP/IP 是传输层协议。
TCP/IP 代表传输控制协议/互联网协议
TCP/IP 协议是工业网络中两个物理设备之间传输数据的层之一。
TCP/IP通讯
它是 TCP 通信中最基本的层,工作在任何著名通信协议(即 Profinet、Modbus TCP/IP等)的后端。
TCP/IP模型
有时,当不同的第三方设备需要相互通信并且它们之间不支持任何通用协议时,这确实是一件令人头疼的事情,那么这个协议就非常有帮助了。
可以通过以下方法进行配置。
一台设备充当 TCP 客户端,另一台设备充当 TCP 服务器。
AT 首先TCP服务器打开一个套接字端口并充当被动设备,现在一旦通信握手完成,该设备就准备好共享数据。
TCP Client 需要以下 TCP 服务器 IP 地址和端口号数据来发起连接请求。因此,客户端充当主动设备。
在西门子 S7-1200 PLC 中配置 TCP/IP 通信的步骤
我使用Hercules 软件作为 TCP 服务器,PLC 作为 TCP 客户端
TCP 服务器配置
我已经打开端口 4660 进行通信,我的笔记本电脑的 IP 地址是 192.168.0.53。到此服务器端配置就完成了。
TCP 客户端配置
使用以下设置创建一个新数据库。DB是西门子PLC的数据库。如果需要,您可以存储任何类型的数据并在程序中使用它。
- 接口id:西门子PLC以太网口的硬件ID,可以在硬件设置中找到。
- ID:连接ID
- 连接类型:11 = TCP/IP
- 活动已建立 = True [因为 PLC 是 TCP 客户端]
- 远程地址 = 服务器上的 IP 地址(在本例中为笔记本电脑的 IP 地址)。
- 远程端口 = 服务器端口
我采用了两种字符串数据类型。
Send_Data String 是将数据发送给Hercules。
Rcv_Data String 是接收 Hercules 发来的数据。
网络1:开始连接
为了启动连接,使用 TCON 块来建立连接。
该块与另一个设备进行必要的握手,这是传输层架构所必需的。
图:传输层连接机制
网络2:发送字符串数据
向服务器发送数据。使用 TSEND 块。
将值写入 DB 地址“TCP”.SEND_DATA,然后设置位地址 M2.1 [Send_Data] = True 的值以触发消息。
使用与 TCON 相同的 ID。
网络3:接收字符串数据
使用 TRCV 块接收数据。使能位地址M2.2 [Recv_Data]。
每当有新数据到达时,它将处于监听模式,并将显示在 DB 地址“TCP”.RCV_DATA 上。
使用与 TCON 相同的 ID。
优点
它是一个开放协议,与专有的 Profinet 不同。
许多IT专业人员不了解工业软件,因此如果我们想开发使用PLC数据的通用应用程序,这是很容易的。
缺点
对于初学者来说,有时学习起来很复杂。因为它需要正确理解OSI 层的基础知识。
应用实例
该协议可用于将数据从 PLC 发送到 IT 软件,例如
- 菜谱管理
- 报告应用程序
- 数据记录到 SQL
本文暂时没有评论,来添加一个吧(●'◡'●)