<< 点击显示目录 >> 主页 OPC UA使用助手 > OPC UA 帮助 > 在AS中配置 > 启用OPC UA服务器 > 采样 |
下图说明了数据取样的原理:
在采样或报告模式下,被监测的项目使用配置的采样时间间隔进行扫描。如果该值自上次采样以来发生了变化,那么这两个值将对照过滤条件进行检查。如果该值通过了过滤器,它将被收集到采样队列中。对于配置为抽样模式的项目,服务器使用发布间隔来发布样本队列的值。
只有在创建订阅时或使用SetPublishingMode服务时启用了发布模式,值才会被发布到客户端。
对数据源(PV)的大小没有限制。数据源的大小仅仅指定了样本队列中一个条目的内存使用量,以及检测一个变化所需的计算时间。
8字节以下的基本数据类型会被不断记录。对于数组、结构和字符串,记录可以被控制程序打断,这意味着一致性不能被保证。
如果以下参数之一被改变,必须启动REBUILD。
参数 |
版本说明 |
描述 |
Number of timers |
A4.32 |
提供给服务器用于监测数据修改的定时器数量。 |
Timer interval |
A4.32 |
根据定时器的数量,将显示一个参数列表,以便配置间隔时间。最短的时间间隔是10ms。间隔必须以10毫秒为单位进行配置。 |
Default timer |
A4.33 |
选择默认的定时器。如果客户端没有提供采样间隔,默认的计时器将用于被监测项目。有些客户端不为用户提供定义采样间隔的方法。在这种情况下,自动使用最小的间隔没有多大意义,因为这可能导致非常高的CPU负载,这取决于监测项目的数量。 |
Filter 过滤
该过滤器可以被客户端用来检测一个变化的值。
目前有以下的过滤标准。
•没有过滤器
o自上次跟踪以来的每个变化都被记录下来。
•PercentDeadBand
o滤波值决定了自上一次跟踪以来从EURange开始的最小必要值变化的百分比,以便触发新的记录。
•绝对死区(AbsoluteDeadBand
o滤波值决定了自最后一次跟踪以来的绝对值的最小必要变化,以便触发新的记录。
Sample queue 采用队列
如果不应该丢失数值,客户必须预先定义与采样和发布间隔有关的样本队列的大小。样本队列的最大尺寸可以通过 AR配置中的参数 "最大样本队列尺寸 "来限制 。
在实践中,异步记录并不能保证服务器检测到每个变化的值。
Publishing interval 发布间隔
发布间隔是由客户端预先定义的。该间隔是根据 配置来限制的 。客户端通过响应中的RevisedPublishingInterval的方式被告知发布间隔的调整。