plc tcp ip通讯怎么只能连一个客户端_图文详解|S7200SMART的TCP通信(下)

本文详细介绍了S7-200SMART PLC的TCP通信,包括TCP_SEND和TCP_RECV指令的使用。通过上升沿触发TCP_SEND,电平触发TCP_RECV,实现数据的发送与接收。文中还提供了一个实际例子,展示如何配置和执行通信任务,确保数据正确传输。
摘要由CSDN通过智能技术生成

上次为大家介绍了200SMART的TCP_CONNECT指令,这次继续介绍TCP_SEND指令和TCP_RECV指令。

TCP_SEND指令和TCP_RECV这两个指令比较简单,就放在一起介绍。

efbb7c7c28ef0e2797ff20df39457a04.png

EN:使能,对于接收指令,建议常1触发。

Req:发送指令触发发送指令,建议使用上升沿触发。

ConnID:连接标识,与各自的TCP_CONNECT的ConnID相同。

DataLen发送数据的长度,最多1024个字节。

MaxLen:接收数据的最大长度,最多1024个字节。

Length:实际接收数据的长度。

DataPtr:发送数据的地址指针,发送数据的首地址。

其他的Done,Busy等与TCP_CONNECT指令相同。

接下来对这些参数进行一个详细的解释:

如图,是TCP_SEND的调用时序图,蓝色为Req上升沿触发,红色为Req电平触发。

6c70a171620304ec823dad0f360c40a9.png

使用Req上升沿触发→Busy=1→完成后DONE=1(一个扫描周期)→Error=1且Status=24,然后等待下一次上升沿触发信号进行循环,这里Status=24表示指令调用但是未触发操作,并不代表错误。

使用Req电平触发→Busy=1→完成后DONE=1(一个扫描周期),然后不停循环Busy和Done。

这里建议使用上升沿触发TCP_SEND指令。

如图,是TCP_RECV的调用时序图,蓝色为EN上升沿触发,红色为EN电平触发。

a78cbdd327915a4e2e37b20a860f922d.png

EN上升沿触发,需要两次触发才可以接收数据,DONE保持为1,直至下次上升沿的到来;而EN电平触发,有数据就接收,大部分时间处于Busy,Done为1一个周期,所以建议EN使用电平触发TCP_RECV指令。

对于TCP_RECV的MaxLen,当MaxLen<发送方数据的长度时,按照MaxLen设置的长度进行接收,多余部分舍弃,Done不置位,同时Error=1,Status=25。

所以建议MaxLen=发送方数据的长度,如果发送方的长度是变化的,则MaxLen按照最大长度进行填写。

最后以下题为例:本地客户端IP为192.168.0.100,ConnID为10,端口号为2000;远程服务器IP为192.168.0.101,ConnID为20,端口号为2001,将本地站从VB200开始的10个字节发送到远程站的VB100开始的10个字节。

首先我们在系统块中设置本地站和远程站的IP地址

c5420005695051f360d0b40db7cdc4b2.png

61950881606ee5a4e8d83059179bcbb8.png

然后设置TCP_CONNECT参数,如图

c6c1d4bc9bb33f32526f8c9d29f6cbda.png

02f013c5d8cd77b5e899ff3c3dc65783.png

接着分别设置TCP_SEND和TCP_RECV

3968e6050459960206283e04bd8cbbb2.png

按下I0.4,启动客户端TCP_CONNECT的连接,SM0.5不断触发SEND的Req,

如图所示,数据成功发送,通讯成功。

266e97d7e799c78a9f354073cea14e6d.png

往期推荐

西门子S7-1200PLC控制两台电动机顺序启停逆序停止plc程序实例

出个差回来...公司好像都变了?

智控快讯|上市公司考察&创业讲座举行

为什么电气工程师每次出差都在放假的时候?

看完这个10个PLC综合故障原因,轻松解决!

揭秘|电气工程师的钱包里都有些啥?

acd502be074fd33cc098b512edd43a8c.png

扫码或点击

26be53a7a6bf31cdecf555211b076f04.gif

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值