PROFINET接口实现开放的ISOonTCp通信

网友投稿 286 2022-10-31

PROFINET接口实现开放的ISOonTCp通信

1.用于分配连接参数的UDT65“TCON_PAR”

2.用于建立连接的FB65“TCON”

3.用于终止连接的FB66 “TDISCON”

4.用于发送数据的FB63 “TSEND”

5.用于接收数据FB64 “TRCV”

UDT65:标准结构

block_length: WORD W#16#40 UDT 65的长度:64字节(固定)

ID: WORD W#16#0001 对连接的引用,您必须在各个带有标识号的块中指定参数的值。

active_est: BOOL FALSE 建立连接的方式的标识号:FALSE:被动建立

local_device_id: BYTE B#16#02

1).B#16#02:通过集成IE接口与CPU 315-2 PN/DP和317-2 PN/DP进行通信.

2). B#16#03:通过集成IE接口与CPU 315T-3 PN/DP、317T-3 PN/DP和319-3 PN/DP进行通信.

local_tsap_id_len: BYTE B#16#02 所使用的参数local_tsap_id的长度.

rem_subnet_id_len: BYTE B#16#00 该参数当前未使用。必须将B#16#00分配给它.

rem_tsap_id_len: BYTE B#16#00 所使用的rem_tsap_id参数的长度;

next_staddr_len: BYTE B#16#00 使用了参数next_staddr的长度

local_tsap_id: BYTE的ARRAY [1..16] 本地端口号 B#16#7 /B#16#D0 ( 2000=7D0)

rem_subnet_id: BYTE的ARRAY [1..6] B#16#00 ... 该参数当前未使用。

rem_staddr: BYTE的ARRAY [1..6] B#16#00 ... 远程连接端点的IP地址,192.168.002.003:

rem_tsap_id: BYTE的ARRAY [1..16] B#16#00 ... 本地端口号可能的数

next_staddr: BYTE的ARRAY [1..6] B#16#00 ... 相应(本地) CP的机架和插槽

spare: WORD W#16#0000 保留:分配0给该参数。

数据连接:FB65

两个通信伙伴都调用FB 65 "TCON"来设置和建立通信连接。在这些参数中,您要指定哪个伙伴是主动通信传输点、哪个伙伴是被动通信传输点。

设置并建立连接后,CPU会自动对连接进行维护和监视。

如果连接中断,如由于线路中断或远程通信伙伴而造成的中断,主动伙伴会尝试重新建立已组态的连接。在这种情况下,不必再次调用FB 65 "TCON"。

当调用FB 66 "TDISCON"或CPU进入STOP模式时,现有连接将被终止并删除已组态的连接。要重新设置并再次建立该连接,必须再次调用FB 65 "TCON"

REQ 上升沿触发建立通信连接
ID 连接的ID在UDT里设置
CONNECT 与变量类型为UDT65的变量相连
DONE 为1时,连接正确建立
BUSY 为1时,正在建立连接
ERROR 为1时,有故障发生
STATUS 故障代码

UDT65的整体结构:

发送数据:FB63 "TSEND"通过现有的通信连接发送数据

FB 63 "TSEND"异步工作;换句话说,它的处理需要多个FB调用。要启动发送数据,请使用REQ = 1调用FB 63。

LEN:接收数据的长度

DATA:数据发送的区域

接收数据: FB 64 "TRCV"通过现有通信连接接收数据。

它指的是功能块输入所接收数据的区域。

接收区由下列两个变量指定:

1.指向区域起始地址的指针

2.区域长度

区域长度由LEN参数使用的协议类型指定(如果LEN <> 0)或DATA参数长度信息指定(如果LEN = 0)。

LEN:接收数据的长度

DATA:数据接收的区域

断开网络连接FB66

FB 66 "TDISCON"是一种以异步方式工作的FB,这意味着它的作业处理要覆盖若干个FB调用。为了开始终止连接作业,用REQ = 1调用FB 66。

在成功调用FB 66 "TDISCON"之后,为FB 65"TCON"指定的ID不再有效,从而不能将其用于发送或接收。

------------------------END-------------------

审核编辑 :李倩

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:第二章 九析带你完爆 Docker 架构
下一篇:Java调用C++程序的实现方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~