为了对远程设备及其正在运行的应用程序进行读/写访问,可以在应用程序中添加一个数据源管理器,其中包含一个或多个数据源。
数据源管理器的功能允许与远程设备建立连接和通信,并通过数据源变量提供数据。此时,合作伙伴通过点对点连接进行通信。根据控制器所在的网络,通过CODESYS 数据源类型或CODESYS ApplicationV3 建立连接。
数据源类型CODESYS 符号
CODESYS 符号数据源类型仅适用于 和CODESYS HMI 设备。不过,使用这种类型也有好处。
在CODESYS HMI 设备下面,可以通过数据源类型CODESYS Symbolic 或数据源类型CODESYS ApplicationV3 配置数据链路。我们建议,只有在远程设备上没有可用的符号配置资源时,才选择数据源类型CODESYS ApplicationV3。例如,嵌入式或微型 PLC 就属于这种情况,其应用通常不包含符号配置。
连接设置的要求是,远程设备中已经配置了符号,因此存在一个符号文件。远程设备中的应用程序有一个符号配置。然后通过符号监控进行数据连接。
在符号监控的情况下,读取远程设备上的符号文件,并将存储的变量信息用于数据源变量和数据传输。这样做的好处是,当有人修改远程应用程序而不更新其符号配置时,无需在本地设备中更新应用程序。如果符号文件也位于开发系统中(文件或作为项目一部分的符号配置对象),则也可以读取本地符号文件。这样,您就可以在开发阶段离线工作。
在开发阶段,可以通过本地符号配置文件离线创建变量列表。这样,您就可以根据符号信息离线开发本地应用程序,而无需连接数据源。
可以使用以下连接类型:
-
“CODESYS V2” :
设备存在于同一个网络中。远程 PLC 上的 V2 运行时提供了一个通信接口。
-
“CODESYS V2(通过网关)”
设备不在同一个网络中。它们通过 V2 网关连接。
请注意:为此,必须在运行 CODESYS V3 的开发计算机上安装 “CoDeSys V2.3 Gateway Server” (V2 网关)。
-
“CODESYSV3”
设备存在于同一个网络中。远程 PLC 上的 V3 运行时提供通信接口。
-
“CODESYS V3 (通过网关)” :
设备不在同一个网络中。它们通过 V3 网关连接。
数据源类型CODESYS ApplicationV3
该数据源类型适用于所有设备类型。
与CODESYS ApplicationV3 数据源类型的数据链接是通过地址监控实现的。这就要求远程 PLC 和本地设备之间的地址信息相匹配。本地应用程序的运行系统需要有效的通信参数才能建立连接。
网络扫描功能可在配置数据源时为您提供支持。
缺点如果您修改了远程应用程序,那么之后还必须更新本地应用程序(例如人机界面应用程序)。
其优点是无需在远程应用程序中进行符号配置。
数据传输
在本地应用程序运行时,出现在“变量” 标签数据源编辑器中的数据源变量会以可配置的时间间隔更新。此时也会执行远程应用程序。在可视化、趋势、警报或配方中配置的变量会自动传输和存储。仅在 IEC 代码中访问变量时,变量不会自动更新。在这种情况下,必须在“变量”选项卡的数据源编辑器中选择 “Update always” 选项。
数据源类型支持对以下数据类型的源 PLC 变量进行(读或写)数据访问:
-
顶层标量值
例如
PLC_PRG.hugo
-
当程序或 GVL 的属性被标记为
{attribute monitoring := 'call'}
时,它将通过调用的方式进入程序或 GVL。例如
PLC_PRG.PropertyCall
-
映射到位地址的变量
PLC_PRG
中的示例:x AT %MX0.5 : BOOL;
-
功能块中的变量(类型
BIT
)示例:在
DUT
:x, y : BIT
中声明,位访问:PLC_PRG.dutInst.y
-
结构化可获取变量
例如
PLC_PRG.outerInst.innerInst.dwVar
-
当 POU 实例被标记为
{attribute monitoring := 'call'}
时,它的属性也会被标记。例如
PLC_PRG.instance.PropertyCall
-
属性的最高级别,而当一个实例被标记为
{attribute monitoring := 'variable'}
时,该属性也被标记为最高级别。请注意:这不能通过监控或数据源来编写。
-
使用字面索引访问数组
例如
PLC_PRG.arrOfInts[3]
,PLC_PRG.inst.arrOfBool[1]
-
嵌套访问(例如,结构数组或数组结构)




小心

通过数据源连接功能传输的可视化内容中使用的位访问,只有当它们包含字面偏移规格时才会使用。可视化无法处理由已定义常量指定的偏移量。