本文简单介绍OPC HDA规范的基本概念,更多通信资源请登录网信智汇(wangxinzhihui)。
6、定义
OPC HDA规范中使用的以下术语和概念通常在 historian中使用,但可以由不同的供应商定义,以具有略微不同的定义。以下列出了本规范中使用的定义。
1)Attribute(属性): 特定项目可能与其关联的附加限定符。例如,“项目值”属性可能具有与其关联的以下属性:“数据类型”(VT_R4)、“阶梯式”(0)和“存档”(1)。,即“项目值”返回一个4字节的实数,该值可以显示为插值(斜线),并且数据正在存档。
2)Aggregate(绑定值): 汇总数据值的方法。常见的聚合包括均匀时间范围内的平均值、时间范围内最小值和时间范围内最大值。这些聚合是在检索数据的过程中执行的。
3)Annotations (总计): 操作员或用户输入的与项目相关联的注释,通常在给定的时间点。此时不必存储值。
4)Bounding Values(绑定值): 客户端在请求某个时间范围内的原始数据时需要绑定值来确定入口点和出口点。如果原始数据值存在于入口或出口点,则即使它是数据请求的一部分,也会将其视为边界值。如果入口点或出口点不存在原始数据值,则范围之外的下一个数据点被视为边界值。
5)Interpolated Data(插值数据): 从存档中的数据派生而来,但没有存储值的数据。这可以从所请求的时间戳两侧的两个存储的数据点线性导出,也可以通过更复杂的方法从档案中的数据外推。
6)Item Handles: ItemHandle可以是客户端值或服务器值。所有者使用它来加快对项目的访问。其数据类型为OPCHandle(DWORD)。
如果客户端打算使用OPC HDA接口的任何异步功能,则预期客户端将为客户端句柄分配一个唯一值。但是,服务器不应该对客户端句柄做出任何假设,客户端也不应该对服务器句柄做出任何假定。项句柄的唯一性取决于实现。
7)Item ID: 字符串,它是对服务器地址空间中数据项的唯一引用。
8)Modified values(修改的值): 存储在历史记录中后更改的值。实验室数据输入值不是修改后的值,但如果用户更正了实验室值,则原始值将被视为修改值,并将在请求修改值时返回。假设所有接口上的所有方法都基于指定时间戳处指定项的当前值或最新值。对修改值的请求用于访问已被取代的值。
9)Properties(属性): 在Automation接口中,属性是指示其操作方式的历史服务器的属性。
10)Raw Data(原始数据): 存储在历史记录中的数据。数据可以被压缩,也可以是为项目收集的所有数据,这取决于保存项目值时调用的历史记录和存储规则。
11)Start Time / End Time(开始时间/结束时间): 限制历史请求的时间,用于定义请求的时域。对于所有请求,位于时域末尾的值不包括在域中,因此,为连续的、连续的时域发出的请求将只包括存档中的每个值一次。
12)Time Domain(时域): 特定请求或特定响应所覆盖的时间间隔。通常,如果开始时间早于结束时间,则时域被认为从开始时间开始,并在结束时间之前结束;如果结束时间早于开始时间,则时域仍然从开始时间开始,并在结束时间之前结束,对于特定的请求和响应,时间“向后运行”。在这两种情况下,任何正好落在时域结束时间的值都不包括在域中。
请注意,FILETIME中可以合法表示的所有时间戳都是有效的时间戳,并且服务器可能不会返回E_INVALIDARG,因为时间戳超出了服务器拥有数据的范围。服务器应该能够优雅地处理越界的时间戳,并向客户端返回正确的错误代码和值,例如OPC_S_NODATA或OPCHDA_NOBOUND。
7、边界值和时域
时域包括开始时间和结束时间之间的所有值,以及正好落在开始时间上的任何值,但不包括正好落在结束时间上的任意值。因此,对于不请求边界值的情况,如果从1:00到1:05,然后从1:05到1:10请求数据,则正好在1:05存在的值将被包括在第二请求中,但不包括在第一请求中。
假设历史记录的值存储在5:00、5:02、5:03、5:05和5:06,从RAW数据调用返回的数据由下表给出。在表中,FIRST代表一个值为VT_EMPTY、指定StartTime的时间戳和质量为OPCHDA_NOBOUND的元组。LAST代表一个值为VT_EMPTY、指定EndTime的时间戳和质量为OPCHDA_NOBOUND的元组。文章来源:https://www.toymoban.com/news/detail-625227.html
未完待续。更多通信资源请登录网信智汇(wangxinzhihui)。文章来源地址https://www.toymoban.com/news/detail-625227.html
到了这里,关于通讯协议031——全网独有的OPC HDA知识一之基本概念(二)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!