Skip to main content

网络变量

网络变量的值可以在网络中的不同 PLC 之间交换。变量必须在发射器设备和接收器设备中以严格的、相同的列表定义,其中只有一个设备的应用程序可以定义网络变量。这些列表可以在一个或多个项目中。

发送方中的网络变量列表是一个全局变量列表,其中特定的日志和传输参数在其对象属性中定义。通过添加这些属性,您可以从普通的 GVL.您还可以插入一个 icon_nvl_sender.png 网络变量列表(发件人) 当该对象已经设置了这些参数时,该对象直接进入设备树。

接收器中的网络变量列表是 icon_nvl_sender.png 网络变量列表(接收方) 类型。创建一个时,选择服务器的相应网络变量列表。作为替代方案,您可以从从发件人列表生成的导出文件中读取此变量列表。无论如何,在另一个项目中定义发件人列表都需要一个导出文件。

网络变量仅在一个方向上作为广播传输:发送方到接收方。但是,设备也可以同时包含发送者和接收者列表。

为了 NetVarUdp 库版本 3.5.7.0 及更高版本,未选择确认传输时不再分配接收器通道。因此,一个硬件设备上的两个控制器之间也可以进行网络变量交换。

重要

  • 如果交换设备应该是发送方和接收方,那么变量列表标识符必须是唯一的,以防止异常操作。变量列表标识符在 特性 一个对话 GVL 目的。

  • 在以下情况下,无法通过网络变量进行数据交换:

    • 如果设备(目标系统)不支持

    • 防火墙阻止通信。

    • 如果另一个客户端或应用程序正在使用在网络变量列表的属性中设置的 UDP 端口

    • 如果每个发送设备和接收设备有多个应用程序使用网络变量列表

  • 只有具有用文字或常量定义的限制的数组才会传输到接收器应用程序。为此目的不允许使用常量表达式。

    例子: ”arrVar : ARRAY[0..g_iArraySize-1] OF INT ;“不传输,但”arrVar : ARRAY[0..10] OF INT ;"被传送。

  • 网络变量的最大大小为 255 字节。网络变量的可能数量是无限的。

  • 如果 GVL 的大小超过网络报文的最大长度,则数据被拆分为多个报文。根据配置,这可能会导致数据不一致。

重要

在通过 UDP 从发送方到接收方传输数据的过程中,每个周期中的以下位置或事件都可能丢失数据:

  • 发送方(网络驱动程序,-堆栈)

  • 路由器

  • 转变

  • 网络冲突

  • 接收器(网络驱动程序,-堆栈)

这就意味着接收方在一个周期内接收到的数据可能不是最新的,而是过时的。

提示

当 PLC 与来自不同版本的开发系统(V2.3, V3)。但是,在这种情况下,您不能使用导出/导入机制来精确匹配发送方和接收方项目中的变量列表。原因是一个变量导出文件(*.exp) 从 V2.3 生成的不包括创建接收 NVL 所需的信息量 V3.没有相应的网络参数配置作为 GVL 文件,您之前从发送方导出了该文件。要获取此文件,您必须在中重新创建 V2.3 NVL V3 第一的。然后你可以生成一个导出文件并在其中创建一个接收NVL V3 基于此。

提示

PLC 之间数据交换的替代方法是使用数据源。与交换网络变量的广播方法相反,定义的点对点连接是在一个应用程序和一个远程数据源之间创建的。

有关更多信息,请参阅: 网络变量