西门子实例详解s7-200 smart CPU与CPU之间 TCP通信
发布时间:2024-05-23
![](http://img.11467.com/2024/03-20/1124250729.jpg)
image-20240326145354710
一 | TCP 协议通讯介绍 |
TCP是一个因特网核心协议。在通过以太网通信的主机上运行的应用程序之间,TCP 提供了可靠、有序并能够进行错误校验的消息发送功能。TCP 能保证接收和发送的所有字节内容和顺序完全相同。TCP 协议在主动设备(发起连接的设备)和被动设备(接受连接的设备)之间创建连接。一旦连接建立,任一方均可发起数据传送。
TCP协议是一种"流"协议。这意味着消息中不存在结束标志。所有接收到的消息均被认为是数据流的一部分。
二 | s7-200 smart 与 s7-200 smart之间TCP通讯实例 |
S7 200 SMART与之间的TCP通讯可以通过两边调用**OUC(开放式用户通讯)**指令库中的TCP_CONNECT、TCP_SEND、TCP_RECV、DISCONNECT指令来实现。
image-20240326112029520
测试环境:
软件版本:STEP 7-Micro/WIN SMART V2.8SMART CPU固件版本:V2.6通讯硬件:TP电缆(以太网电缆)硬件配置:
序号 | 名称 | IP | 硬件型号 | 功能说明 |
1 | tcp客户端 | 192.168.0.101 | ST20 V2.06 | 发送VB0~VB3数据至服务器PLC的VB2000~VB20003中 |
2 | tcp服务端 | 192.168.0.102 | ST20 V2.06 | 接收客户端VB0~VB3数据并写入到VB2000~VB2003 |
三 | S7-200 SMART TCP 客户端编程 |
设置本机IP地址,客户端设置为192.168.0.101
![图片](https://img.11467.com/2024/05-23/2972214588.jpg)
建立TCP连接 调用TCP_CONNECT指令建立TCP连接。设置连接伙伴地址为192.168.0.102,远端端口为2001,本地端口为5000,连接标识ID为1。利用SM0.0使能Active,设置为主动连接。
![图片](https://img.11467.com/2024/05-23/2972284389.jpg)
注:在建立连接时需先触发服务器端的建立连接指令,再触发客户端。
参数说明
EN | IN | BOOL | 使能输入 |
Req | IN | BOOL | Req = TRUE,CPU 启动连接操作。 Req = FALSE,则输出显示连接的当前状态。 |
Active | IN | BOOL | TRUE = 主动连接 FALSE = 被动连接 |
ConnID | IN | WORD | CPU 使用连接 ID (ConnID) 为其它指令标识该连接。可能的 ConnID 范围为 0 到 65534。 |
IPaddr1…IPaddr4 | IN | BYTE | 这些是 IP 地址的四个八位字节。例如:192.168.0.101对应IPaddr1=192,IPaddr4=101 |
RemPort | IN | WORD | RemPort 是远程设备上的端口号。 |
LocPort | IN | WORD | LocPort 是本地设备上的端口号。 |
Done | OUT | BOOL | 当连接操作完成且没有错误时,指令置位 Done 输出。 |
Busy | OUT | BOOL | 当连接操作正在进行时,指令置位 Busy 输出。 |
Error | OUT | BOOL | 当连接操作完成但发生错误时,指令置位 Error 输出。有关详细信息,请参见“开放式用户通信库指令错误代码”。 |
Status | OUT | BYTE | 如果指令置位 Error 输出,Status 输出会显示错误代码。如果指令置位 Busy 或 Done 输出,Status 为零(无错误)。 |
RemPort:远程设备上的端口号
LocPort:本地 CPU 上的端口号
有效端口号范围为 1 到 49151。不能使用端口号 20、21、25、80、102、135、161、162、443 以及 34962 至 34964。这些端口具有特定用途。建议采用的端口号范围为 2000 到 5000。对于被动连接,本地端口号必须唯一(不重复)。有效端口号范围为 1 到 49151。建议采用的端口号范围为 2000 到 5000。对于被动连接,CPU 会忽略远程端口号(可以将其设置为零)。调用发送数据指令TCP_SEND 发送以VB0为起始,数据长度为DataLen长度的数据发送到连接ID为1指定的远程设备。使用1HZ脉冲触发发送请求;
![图片](https://img.11467.com/2024/05-23/2972245154.jpg)
展开全文
其他新闻
- 西门子 S7-200 SMART s7-200 smart profinet IO 通信介绍 2024-05-23
- 西门子 S7-200 SMART 最新西门子规格型号及订货号整理 2024-05-23
- 西门子 S7-200 SMART 新功能Web服务器功能介绍 2024-05-23
- 西门子 一文搞懂s7-200 smart 做客户端与s7-1200/1500的S7通信 2024-05-23
- 西门子实例讲解如何实现s7-200 smart cpu 与 cpu之间通讯 2024-05-23
- 西门子S7-200 SMART Modbus RTU附样例程序下载 2024-05-23
- 西门子 最新西门子 s7-200 smart V2.8产品特性及软件包下载 2024-05-23
- 西门子 S7-200 SMART 系列一: 产品介绍 2024-05-23
- 西门子 S7-1200 系列五:TIA博图中OB、DB、FC、FB介绍及应用 2024-05-23
- 西门子s7-200 smart 基本控制库(LBC)应用 2024-05-21