更新数据接口
数据源变量在运行时循环更新。仅更新在当前可视化中使用或具有属性的数据 随时更新.
您可以定义时间间隔。此外,您可以定义在每个更新间隔中传输其数据的变量,因此它们始终是更新的。要更新应用程序代码中未使用的变量,您可以借助数据源管理器的接口函数以编程方式实现更新。
重要
如果远程设备和本地设备之间的数据流量过高,则刷新率会自动降低。这可能导致不完整的传输。
设置刷新率
打开数据源的编辑器。
选择标签 一般与诊断.
在 刷新率 场地。
例子:
100
从远程设备到本地设备的数据每 100 毫秒传输一次。
为变量选择 随时更新
重要
避免总是更新太多的变量。每次更新都会在远程和本地设备之间的连接处产生额外的数据流量。当数据流量过高时,刷新率会自动降低。这可能导致不完整的传输。
打开编辑器 数据源.
激活选项 随时更新 对于一个变量。
变量的数据在每个更新周期传输,即使数据没有改变。
以编程方式更新数据
数据源管理器提供接口功能 Datasources
图书馆。如果数据源管理器集成在应用程序代码中,则全局变量 g_Datasources
是自动实例化的。这提供了对接口功能的访问。
然后,您可以更新未在活动可视化中调用的各个变量。
变量 ivar
被激活和停用的方法从方法 Datasources
库,以便转移其价值。此外,您可以配置变量仅在定义的持续时间内更新,以节省传输容量。
//Synchronize with DatasourcesTask and block until access is possible //Regard the feedback in ERR_OK or in ERR_DE_MULTITASKING_LOCKED g_Datasources.BeginDataConfiguration(TRUE); // Activate variable g_Datasources.UseData(ADR('RemoteDevice.Application.PLC_PRG.iVar')); // Deactivate variable //g_Datasources.ReleaseData(ADR('RemoteDevice.Application.PLC_PRG.iVar')); g_Datasources.EndDataConfiguration();
数据配置开始于 BeginDataConfiguration(TRUE)
,从而初始化任务的同步 DatasourceTask
与应用程序任务。价值 TRUE
阻塞处理,直到可以访问变量; FALSE
重复访问尝试而不阻塞。返回值 ERR_OK
和 ERR_DS_MULTITASKING_LOCKED
提供有关访问尝试的反馈。
当同步成功时,变量通过 UseData
方法。然后数据配置就完成了 EndDataConfiguration
方法和与任务再次触发的同步 DatasourceTask
.
这 ReleaseData
方法以相同的方式用于在所需的处理时间再次停用变量。