一、通讯指令的了解(TSEND_C/TRCV_C)
1. TSEND_C指令
图1 TSEND_C指令
如图是TSEND_C指令,它的作用是建立连接并发送数据。对于其中各个参数的作用如下表:
参数 |
说明 |
REQ |
在上升沿启动发送作业 |
CONT |
控制通信连接 |
CONNECT |
指向连接描述结构的指针 |
DATA |
指向发送区的指针,该发送区包含要发送数据的地址和长度 |
DONE |
状态参数,可表示发送作业已成功 |
BUSY |
状态参数,可表示发送作业正在进行中 |
ERROR |
状态参数,表示出现错误 |
STATUS |
指令的状态 |
2. TRCV_C指令
图2 TRCV_C指令
如图是TRCV_C指令,它的作用是通过通信连接接收数据。对于其中各个参数的作用如下表:
参数 |
说明 |
EN_R |
启用接收功能 |
CONT |
控制通信连接 |
CONNECT |
指向连接描述结构的指针 |
DATA |
指向接收区的指针 |
DONE |
状态参数,可表示是否接收到数据 |
BUSY |
状态参数,可表示作业正在进行中 |
ERROR |
状态参数,表示出现错误 |
STATUS |
指令的状态 |
RCVD_LEN |
实际接收到的数据量 |
二、PLC作为服务端
当了解过以上两个指令后,可以对PLC进行TCP/IP通信设置。而在进行TCP/IP通讯时,PLC可以选择作为服务端或客户端进行操作。
当PLC作为服务端进行通讯时,需要先设置PLC的IP地址以及选择伙伴为客户端,之后还要设置自己的服务端口。在此地方,要注意设置的端口的占用情况,如果这个端口已被占用,则测试时就会出现连接不上的情况。
图3 PLC作为服务端的通讯配置
当PLC作为服务端配置好以后,仍需要创建一个客户端与其进行连接。在测试时,可以选择用TCP调试助手创建客户端与PLC进行通讯。以下为测试时,连接成功显示:
图4 PLC作为服务端连接测试
三、PLC作为客户端
PLC除了作为服务端也可以作为客户端,当PLC作为客户端进行通讯时,只需要更改端口配置即可,以下为测试时的端口配置:
图5 PLC作为客户端通讯配置
当PLC作为客户端时,TCP调试助手一端要创建为服务端。以下为PLC作为客户端连接成功测试:
图6 PLC作为客户端连接测试文章来源:https://www.toymoban.com/news/detail-846734.html
四、扩展--TCP/IP通讯解读
在了解TCP/IP协议之前,大家可以先了解一下OSI七层参考模型。 如果仅仅是为了项目通讯应用,那TCP/IP协议就可以简单的理解为,一个数据发送端通过OSI七层之一的网络层作用,在复杂的网络环境中,为数据要发送到的位置找到一个合适的路径进行传输。更为简单来说,网络层从数据起始地址将数据传输到目标地址。所以,我们在进行TCP//IP通讯时,需要确定好两端的IP和端口,这样才能保证网络层能在复杂的网络环境中,正确的将数据传送到目标地址。文章来源地址https://www.toymoban.com/news/detail-846734.html
到了这里,关于S7-1200PLC的TCP/IP通讯的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!