资源描述:
《FB63 TSEND, FB64 TRCV, FB65 TCON 和 FB66 TDISCON 通讯块实现 ISO-on-TCP 协议的数据交换》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、如何通过CPU集成的PROFINET接口或是通过CP443-1Advanced使用FB63"TSEND",FB64"TRCV",FB65"TCON"和FB66"TDISCON"通讯块实现ISO-on-TCP协议的数据交换?显示订货号描述:可以通过CPU集成的PROFINET接口或CP443-1Advanced使用工业以太网开放通信方式进行数据交换,例如:这种方式支持下列通信协议:·TCP·ISO-on-TCP·UDP使用 ISO-on-TCP 协议的工业以太网开放通信可以使用下列通信块:·FB65"TCON"用于建立连接·FB66"TDISCON"用于断开连接·FB63"TSEND"用于
2、发送数据·FB64"TRCV"用于接收数据这些通信功能块可以在函数库StandardLibrary->CommunicationBlocks中找到.在标准程序库中拷贝出最新的上述功能块至用户程序中,然后编写程序时调用。用于建立ISO-on-TCP连接的参数存储于一个数据结构体中。在这个例子中,使用数据结构UDT65"TCON_PAR",这个数据结构由用户进行参数化。ISO-on-TCP通信连接不在 NetPro中配置。示例程序描述S7程序中包括FB65"TCON的调用及带有ISO-on-TCP连接参数的数据结构UDT65"TCON_PAR"。S7程序中还包含函数库StandardLibr
3、ary->CommunicationBlocks中函数FB63"TSEND" 和FB64"TRCV"的调用。通过调用FB63"TSEND"块,可以将数据发送给一个S7站或一个S5站或一个PC站或第三方系统。调用FB64"TRCV"块,可以接收从一个S7站或一个S5站或一个PC站或第三方系统发送的数据。首先在S7-300站中创建硬件配置,在这里将 MB10作为时钟脉冲。发送请求由时钟脉冲触发。存盘编译并将硬件配置下载到CPU中。STEP7程序包含程序块OB100,OB1,FB400,DB400,FB420,UDT65 和FB63,FB64,FB65及FB66。OB100: OB100在CP
4、U重新启动时执行一次(暖起动)。在这个OB块中第一次的通信通过M0.3使能。OB1:OB1循环执行,FB400 (背景数据块:DB400)在OB1中调用且使用M0.3作为INIT_COM参数。在FB400被调用后M0.3在OB1中被复位。图.01: FB400FB400在OB1中循环调用。在FB400中下述功能块被调用:·FB420"SET_ISO_PARAM",·FB65"TCON",·FB63"TSEND",·FB64"TRCV",·FB66"TDISCON"图.02使用FB420"SET_ISO_PARAM" 的输入参数定义本地和远程的ISO-on-TCP连接参数。 输入参数数据
5、类型描述IDWord连接号DEV_IDByteB#16#0用于CP443-1AdvB#16#1用于IM151-8PN/DPCPUorB#16#2用于CPU31x-2PN/DP,IM154-8CPUorB#16#3用于CPU319-3PN/DPorB#16#5用于CPU412-2PN,CPU414-3PN/DP,CPU416-3PN/DPACTIVEBoolTrue= 主动建立连接False=被动建立连接TSAPStructCPU的 本地TSAP和通讯伙伴的远程TSAPIP_ADDR1Int通讯伙伴的IP 地址IP_ADDR2IntIP_ADDR3IntIP_ADDR4Int表01输入参数
6、"TSAP" 的Struct数据类型具有以下结构: 参数数据类型描述LOC_RACK_SLOTByte如果本地TSAP不是以值0xE0(hex)和0x02(hex)这两个字节作为前缀,则采用值B#16#0定义LOC_RACK_SLOT参数。至于支持ASCII格式作为TSAP的CPU,那么本地TSAP的头两个字节禁止用值0xE0和0x02定义。如果本地TSAP不是以值0xE0(hex)和0x02(hex)这两个字节作为前缀,则采用值B#16#0定义LOC_RACK_SLOT参数。这对于不支持ASCII格式作为TSAP的CPU来说是必要的。LOC_TSAPString·本地TSAP(连接终端
7、点)·用户自定义的ASCII 字符串的值为:‘TCP-1’CP_RACK_SLOTByte当通过CP443-1Advanced通讯时,应指定CP的机架号和槽号。REM_RACK_SLOTByte如果通信伙伴的TSAP不是以值0xE0(hex)和0x02(hex)这两个字节作为前缀,则采用值B#16#0定义REM_RACK_SLOT参数。至于支持ASCII格式作为TSAP的CPU,那么本地TSAP的头两个字节禁止用值0xE0和0x02