网络变量列表(接收器)用在软件目录 > 变量 > 全局变量视图中以及应用程序树中。它定义了一些变量,这些变量被指定为网络内其他设备中的网络变量。
注意: 网络变量的最大大小为 255 字节。网络变量数不受限制。
因此,如果包含特殊网络属性(网络变量列表)的网络变量列表(发送器)在其他任一网络设备中可用,您就可以将网络变量列表(接收器)对象添加到应用程序中。这与是否在相同项目或不同项目中定义无关。如果在当前网络的当前项目中发现若干合适的网络变量列表(发送器),则在通过添加对象 > 网络变量列表(接收器)对话框添加网络变量列表(接收器)时,应从发送器选择列表中选择所需的网络变量列表(发送器)。必须按照本章节所述的那样导入来自其他项目的网络变量列表(发送器)。
这就意味着,每个网络变量列表(接收器)与另一设备中的一个网络变量列表(发送器)确切对应。
添加网络变量列表(接收器) 对话框
在添加网络变量列表(接收器)时,除了名称,还可定义任务,用于处理网络变量。
或者,如要直接从另一设备选择网络变量列表(发送器),您可以通过选项从文件导入指定网络变量列表(发送器)*.GVL 导出文件。这个网络变量列表(发送器)文件先前已通过视图 > 属性 > 链接到文件对话框从网络变量列表(发送器)生成。在任何情况下,如果在另一个项目中定义了所需的网络变量列表(发送器),这都是必要的。为此,在发送器选择列表中选择选项从文件导入并在从文件导入文本字段中输入文件路径(或者单击 ... 按钮来打开用于在文件系统中浏览的对话框)。
您可稍后通过视图 > 属性 > 网络设置对话框来修改设置。
NVL 编辑器会显示网络变量列表(接收器),但是无法修改。它显示相应网络变量列表(发送器)的内容。如果您修改了基本网络变量列表(发送器),则会相应地更新网络变量列表(接收器)。
会自动在网络变量列表(接收器)的声明部分顶部添加注释,提供有关发送器(设备路径)、网络变量列表(发送器)名称以及协议类型的信息。
网络变量列表
注意: 仅会将其界限由文字或常量定义的阵列传输至远程应用程序。在该情况下不允许将常量表达式用于界限定义。示例:arrVar : ARRAY[0..g_iArraySize-1] OF INT ; 不被传送 arrVar : ARRAY[0..10] OF INT ; 被传送
有关更多信息,请参阅登录通讯一章。
在下面的示例中,将建立一个简单的网络变量交换。在发送端控制器中创建网络变量列表(发送器)。在接收端控制器中创建相应的网络变量列表(接收器)。
在缺省准项目中做好下列准备,该项目的设备树中有发送端控制器 Dev_Sender 和接收端控制器 Dev_Receiver:
o在 Dev_Sender 的应用程序节点下,创建一个 POU(程序)prog_sender。
o在该应用程序的任务配置节点下,添加调用 prog_sender 的任务 Task_S。
o在 Dev_Receiver 的应用程序节点下,创建一个 POU(程序)prog_rec。
o在该应用程序的任务配置节点下,添加调用 prog_rec 的任务 Task_R。
注意: 必须在 Ethernet 网络的同一子网内配置这 2 个控制器。
步骤 |
动作 |
注释 |
---|---|---|
1 |
在软件目录 > 资产视图 > POU 中,选择控制器 Dev_Sender 的应用程序节点,并单击绿色加号按钮。执行网络变量列表(发送器)命令。 |
网络变量列表(发送器)的属性对话框随即显示。 |
2 |
输入名称 GVL_Sender,然后单击添加,创建一个新的全局变量列表。 |
GVL_Sender 节点出现在应用程序树中的应用程序节点下,并且编辑器在 EcoStruxure Machine Expert 屏幕的中间打开。 |
3 |
在编辑器中,输入以下变量定义: VAR_GLOBAL iglobvar:INT; bglobvar:BOOL; strglobvar:STRING; END_VAR ![]()
|
– |
步骤 |
动作 |
注释 |
---|---|---|
1 |
在应用程序树中,选择 GVL_Sender 节点,单击绿色加号按钮,并执行命令属性...。 |
随即显示属性 - GVL_Sender对话框。 |
2 |
打开网络属性选项卡,并按下图所示配置参数: ![]()
|
– |
3 |
单击确定。 |
对话框会关闭,网络变量列表(发送器)网络属性得以设置。 |
步骤 |
动作 |
注释 |
---|---|---|
1 |
在应用程序树中,选择控制器 Dev_Receiver 的应用程序节点,单击绿色加号按钮,并执行命令全局网络变量列表...。 |
随即显示添加全局网络变量列表对话框。 |
2 |
按下图所示配置参数。 ![]()
|
此全局网络变量列表对应于为发送端控制器定义的网络变量列表(发送器)。 |
3 |
单击打开。 |
对话框会关闭,GNVL_Receiver 显示在 Dev_Receiver 控制器的应用程序节点下方: ![]()
此网络变量列表(接收器)自动包含与 GVL_Sender 相同的变量声明。 |
步骤 |
动作 |
注释 |
---|---|---|
1 |
在设备树窗格中,右键单击 GNVL_Receiver 节点并选择命令属性...。 |
随即显示属性 - GNVL_Receiver 对话框。 |
2 |
打开网络设置选项卡。 |
– |
步骤 |
动作 |
注释 |
---|---|---|
1 |
在控制器 Dev_Sender 的应用程序节点下,双击 POU prog_sender。 |
会在右侧打开 prog_sender 的编辑器。 |
2 |
为变量 iglobvar 输入下列代码: ![]()
|
– |
3 |
在控制器 Dev_Receiver 的应用程序节点下,双击 POU prog_rec。 |
会在右侧打开 prog_rec 的编辑器。 |
4 |
为变量 ivar_local 输入下列代码: ![]()
|
– |
5 |
在同一网络内使用发送器和接收器应用程序登录并启动应用程序。 |
接收器中的变量 ivar_local 获得发送器中当前显示的 iglobvar 的值。 |