当以太网通讯模板同时使用ISO-on-TCP和open TCP/IP通讯(或SEND/RECRIVE)时,有哪些限制条件?

n

组态注意事项:

这里所述的情况仅适用于下列两种工业以太网模板(CP 443-1 Advanced):n

  • 6GK7 443-1EX40-0XE0n
  • 6GK7 443-1EX41-0XE0

这些模板支持open TCP/IP通讯的功能块,即除了SEND/RECEIVE 功能块 (FC5/50 "AG_SEND/AG-LSEND" 和 FC6/60 "AG_RECV/AG_LRECV"),可以使用T功能块通过以太网进行open TCP/IP 通讯。

功能块

功能块名称

功能

FB 63

TSEND

通过已建立的通讯连接发送数据包

FB 64

TRCV

通过已建立的通讯连接接收数据包

FB 65

TCON

建立通讯连接

FB 66

TDISCON

中断一个通讯连接

通过TCP/IP协议进行数据交换是一种高性能的通讯方式。在集成的PROFINET端口上可以和CP一样进行open TCP/IP的通讯。n

当通过CP使用T块进行open TCP/IP通讯时,还可以使用ISO-on-TCP通讯服务。因而RFC1006协议可以扩展在TCP/IP层上。CPU做为连接的终端。这是与CP通过SEND/RECEIVE进行通讯的明显的区别,使用CP的通讯需要在NetPro中进行组态,且终端总是CP。n

Open TCP/IP通讯通过T块进行,不需要在NetPro中进行组态,组态参数在数据块中进行定义。这些数据块被传送到FB65“TCON”用来建立连接。连接参数包括本地的和远程的“TSAP(transport service access point)”。这在下列参数中定义:n

  • local_tsap_id (local TSAP)n
  • rem_tsap_id (remote TSAP)

当连接建立时,在通讯双方将比较本地和远程建立连接的参数。当双方的参数一致时才会建立连接,该组态连接的机制与通过SEND/RECEIVE进行通讯的机制相类似。n

当同时使用ISO-on-TCP和T块时应注意下列条件:

  • 一个连接是通过组态,调用SEND/RECEIVE,通过CP实现的。通讯块是FC50 "AG_LSEND" 和 FC60 "AG_LRECV"。n
  • 第二个连接是通过调用FB65 "TCON"建立open TCP/IP通讯。n
  • open TCP/IP通讯是当CPU启动后通过用户程序建立的。n
  • 所建立的连接是无特殊定义的连接。这意味着只有本地的连接是可以预组态的。连接建立时通讯对方的连接参数并没有指明。

在这种情况下,不应将两种通讯连接定义相同的TSAP,将导致CP,接收到两个相同的来自被动站点的连接请求(或连接等待)。但实际上一个是通过SEND/RECEIVE接口,一个是通过FB 65 "TCON"来建立的。n

做为接收方,CP首先检查该连接组态是否与SEND/RECEIVE接口相匹配。当open TCP/IP的连接失败时,CP将进行连接等待。当两种通讯方式都使用相同的TSAP时,只有SEND/RECEIVE接口连接被建立!尽管open TCP/IP的参数都正确。n

基本原则:

下列参数是在建立open TCP/IP连接时需要定义的:

参数

设定值

描述

rem_tsap_id[1]

B#16#E0

T-连接类型

rem_tsap_id[2]

Bits 0 to 4: slot,
bits 5 to 7: rack number

远程连接终端的机架号和槽号(CPU)

rem_tsap_id[3-16]

TSAP extension

请参照详细的说明

TSAP的第一个字节必须被定义成0xE0,这定义了该连接的类型。

另外需要注意的是:

  • 在使用SEND/RECEIVE接口进行组态连接的通讯中,第一个TSAP字节不应该被定义成0xE0 或 0xE1。
  • 除了本地连接的参数,那些通讯对方的参数在建立连接时也将被检查,如果严格按照规范进行定义,发生错误的可能性将会大大的降低。

#Ende#


© Siemens AG, 1998, 2000

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc336723.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日 下午12:03
下一篇 2021年4月12日 上午12:00

相关推荐

发表回复

登录后才能评论