最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

如何编程通信块 FB63 TSEND, FB TRCV, FB65 TCON 和 FB66 TD

来源:动视网 责编:小OO 时间:2025-09-25 21:42:14
文档

如何编程通信块 FB63 TSEND, FB TRCV, FB65 TCON 和 FB66 TD

如何编程通信块FB63"TSEND",FB"TRCV",FB65"TCON"和FB66"TDISCON"以实现用S7-300或S7-400CPU的PROFINET口进行基于TCP协议的数据交换?显示订货号描述:集成PROFINET口的CPU和WinACRTX,支持开放式IE通信。关于集成PROFINET口的CPU和WinACRTX所支持的通信服务总览,请参见条目109487 。此总览包含有关集成PROFINET口的CPU和WinACRTX所支持的开放式IE通信协议的信息。下列通信块可以
推荐度:
导读如何编程通信块FB63"TSEND",FB"TRCV",FB65"TCON"和FB66"TDISCON"以实现用S7-300或S7-400CPU的PROFINET口进行基于TCP协议的数据交换?显示订货号描述:集成PROFINET口的CPU和WinACRTX,支持开放式IE通信。关于集成PROFINET口的CPU和WinACRTX所支持的通信服务总览,请参见条目109487 。此总览包含有关集成PROFINET口的CPU和WinACRTX所支持的开放式IE通信协议的信息。下列通信块可以

如何编程通信块 FB63 "TSEND", FB "TRCV", FB65 "TCON" 和 FB66 "TDISCON" 以实现用 S7-300 或 S7-400 CPU 的 PROFINET 口进行基于 TCP 协议的数据交换?

显示订货号

描述:

集成 PROFINET 口的 CPU 和 WinAC RTX ,支持开放式 IE 通信。

关于集成 PROFINET 口的 CPU 和 WinAC RTX 所支持的通信服务总览,请参见条目109487 。此总览包含有关集成 PROFINET 口的 CPU 和 WinAC RTX 所支持的开放式 IE 通信协议的信息。

下列通信块可以用于基于 TCP 协议的开放式通信:

∙FB65 "TCON" 用于建立连接

∙FB66 "TDISCON" 用于中止连接

∙FB63 "TSEND" 用于发送数据

∙FB "TRCV" 用于接收数据

这些通信块可以在 Standard Library -> Communication Blocks 下找到。 

从标准库中拷贝最新版本的上述通讯块到用户程序中,然后再编写程序中调用它们。

建立 TCP 连接的连接参数保存在一个数据结构中。

本例中,用到 UDT65 "TCON_PAR" 这个数据结构,它是由用户来完成参数化的。 这个 TCP 连接不在NetPro 中组态。

例程描述:

S7 程序中包含了对 FB65 "TCON" 的调用和带有建立 TCP 连接的连接参数数据结构 UDT65 "TCON_PAR" 。也包含了来自于 Standard Library -> Communication Blocks 下的 FB63 "TSEND" 和 FB "TRCV" 的调用。  FB63 "TSEND" 用于发送数据到 S7 站或 S5 站, 以及到 PC 站或到第三方系统. FB "TRCV" 用于接收来自其他 S7 站,S5 站,PC 站和第三方系统的数据。

首先为 S7-300 站创建硬件组态。注意配置 MB10 作为时钟存储器。发送请求由该时钟存储器触发。保存编译 S7-300 站的硬件组态,下载到 CPU。

STEP 7 程序由 OB100、OB1、 FB300、 DB300、 FC97、 UDT65 和 FB63、 FB、 FB65 以及 FB66 组成。

OB100:

OB100 是重启 OB 块,当 CPU 重新启动时 (暖启动) 执行一次.在 OB100 中,第一次通信由 M0.3 "START-UP" 触发。

OB1:

OB1 循环调用。 FB300 在 OB1 中被调用 (背景数据块: DB300) , M0.3 "START-UP" 作为 INIT_COM 参数。在 OB1 中调用 FB300 结束后,M0.3"START-UP" 被复位。

图. 01

FB300:

在 OB1 中调用 FB300。该 FB300 中调用了 FC97 "SET_TCP_ENDPOINTx" 和  FB65 "TCON"、FB63 "TSEND"、 FB "TRCV" 以及 FB66 "TDISCON"。

图. 02

TCP 连接的本地和远程参数通过 FC97 "SET_TCP_ENDPOINTx" 的输入参数来设置。

输入参数数据类型描述
IDWord连接ID

DEV_IDByte"local_device_id"是本地端口参数。通过此端口, FB65 "TCON" 建立 TCP 连接。

 关于"local_device_id"的信息,请参见条目51339682。通过配置输入参数 DEV_ID,FB65 "TCON" 建立 TCP 连接,是基于工业以太网的开放式通信。

ACTIVEBoolean0 = 被动建立连接

1 = 主动建立连接

LOC_PORTDIntCPU本地端口

名为 "System and Standard Functions for S7-300/400 Volume 1 and Volume 2" 的手册第24.2节,有关于建立 TCP 和 UDP 通信的端口号信息。该手册可在条目44240604中下载。 

REM_PORTDInt通信伙伴的远程端口

名为 "System and Standard Functions for S7-300/400 Volume 1 and Volume 2" 的手册第24.2节,有关于建立 TCP 和 UDP 通信的端口号信息。该手册可在条目44240604中下载。 

注意:

如果 CPU 连接的建立是被动的,如 ACTIV=0, 此时不需要指定通信伙伴的远程端口号,可以定义 REM_PORT=0.

IP_ADDR1Int通信伙伴的 IP 地址。

注意:

如果 CPU 连接的建立是被动的,如 ACTIV=0, 此时不需要指定通信伙伴的IP地址,可以定义 IP_ADDR1=0, IP_ADDR2=0, IP_ADDR3=0 以及 IP_ADDR4=0.

IP_ADDR2Int
IP_ADDR3Int
IP_ADDR4Int
注意:

在FB300 的 Network 2中定义连接号。它会存储在静态变量中,当然也存在于背景数据块 DB DB300.

图. 03

通过 FB65"TCON" 的输入参数 "REQ" 的上升沿触发来建立连接。FB300 的背景数据块中集成了带有连接参数的数据结构 UDT65 "TCON_PAR" 。

FB65 "TCON" 的输入参数 "CONNECT" 需要指定一个含有连接参数的存储区。

在系统启动时连接建立并保持,直到调用 FB66 "TDISCON" 来断开连接,或 让CPU 进入停止模式或关闭电源来断开连接。

图. 04

在 "FB63 "TSEND" 的输入参数 "REQ" 上施加上升沿以触发发送请求。发送任务的触发是由时钟标志 M10.6 和变量 "C1.SEND_BUSY" 来控制的。如果发送任务运行, "C1.SEND_BUSY"  则被置位,无法再触发新的发送请求。

可以为输入参数 "DATA" 指定包含要发送数据的存储区。

并在输入参数 "LEN" 填写要发送的字节数。

输出参数 "DONE", "ERROR" 和 "STATUS" 用于任务评价。

图. 05

如果发送任务成功完成, "C1.SEND_BUSY" 被复位。这时新的发送任务才可以被触发.

如果发送任务执行出错,那么 "C1.SEND_BUSY" 变量同样被复位,FB63 的输出参数 "STATUS" 的值被保存用于错误分析。

图. 06

图. 07

一旦 TCP 连接建立了,就能接收数据。

用输入参数 "DATA" 指定保存接收数据的存储的地址和长度。

图. 08

输出参数 "NDR" 用于表示已接收到新数据。输出参数 "LEN" 表明接收数据的长度。

如果数据未被成功接收,那么输出参数 "STATUS" 可以保存下来并用于评估状态。

图. 09

可以通过 FB66 "TDISCON" 有目的地结束 TCP 连接。在 FB66 "TDISCON" 的输入参数"REQ" 上施加上升沿以请求结束 TCP 连接。

图. 10

注意:

示例程序中TCP 协议用来数据传输,需在数据结构 UDT65 中设定参数 "connection_type" 为 "B#16#11" 。

S7-300 CPUs V2.3 支持 TCP (兼容模式)。如在S7-300 CPU V2.3 中运行示例程序,需在数据结构 UDT65 中设定参数 "connection_type" 为 "B#16#01" 。

STEP 7 项目下载

示例的 STEP 7 项目包含了调用 FB300 和 FC97 "SET_TCP_ENDPOINTx" 、FB65 "TCON"、 FB66 "TDISCON"、FB63 "TSEND" 和 FB "TRECV"以及状态评估。 该程序由 STEP 7 V5.5 创建。

 Sample_open_TCP.zip ( 286 KB )

配置额外TCP 连接

要配置其它的额外的 TCP 连接,将 FB300 复制一份命名为其它功能块 (如 FB301),修改参数并生成一个新的背景数据块。

注意:

∙在手册 "System and Standard Functions for S7-300/400 Volume 1 and Volume 2" 中提及的工业以太网开放式通讯协议的详细信息参见条目 44240604。

∙对于配置 S7-300 和 S7-400 工业以太网CP进行TCP连接的说明息可参见条目 22385024

 条目号:29737950

   日期:2012-05-03

 

文档

如何编程通信块 FB63 TSEND, FB TRCV, FB65 TCON 和 FB66 TD

如何编程通信块FB63"TSEND",FB"TRCV",FB65"TCON"和FB66"TDISCON"以实现用S7-300或S7-400CPU的PROFINET口进行基于TCP协议的数据交换?显示订货号描述:集成PROFINET口的CPU和WinACRTX,支持开放式IE通信。关于集成PROFINET口的CPU和WinACRTX所支持的通信服务总览,请参见条目109487 。此总览包含有关集成PROFINET口的CPU和WinACRTX所支持的开放式IE通信协议的信息。下列通信块可以
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top