在 OPC UA 命名空间中设置浮点变量的精度

Set precision of float variable in OPC UA namespace

提问人:sjoene 提问时间:10/4/2023 更新时间:10/4/2023 访问量:40

问:

我有一个 XML,它保存了包含浮点变量的 OPC UA 命名空间的信息模型。我希望能够设置此变量的精度。

我知道 DataItemType 类型的变量具有一个名为 ValuePrecision 的属性,用于指定精度,但我不知道如何将其转换为我的 XML。

是否可以通过此 ValuePrecision 属性设置浮点变量的精度?如果是,有人知道如何在XML中配置它吗?

我尝试了以下XML,但没有成功:

<?xml version="1.0" encoding="utf-8"?>
    <UANodeSet LastModified="2023-10-03T09:41:55Z" xmlns="http://opcfoundation.org/UA/2011/03/UANodeSet.xsd" xmlns:uax="http://opcfoundation.org/UA/2008/02/Types.xsd" xmlns:si="http://www.siemens.com/OPCUA/2017/SimaticNodeSetExtensions">
      <NamespaceUris>
        <Uri>test</Uri>
      </NamespaceUris>
      <Aliases>
        <Alias Alias="FLOAT">i=10</Alias>
        <Alias Alias="DOUBLE">i=11</Alias>
        <Alias Alias="Organizes">i=35</Alias>
        <Alias Alias="HasTypeDefinition">i=40</Alias>
        <Alias Alias="HasProperty">i=46</Alias>
      </Aliases>
      <UAVariable NodeId="ns=1;i=1" BrowseName="1:float" DataType="FLOAT" AccessLevel="3">
        <DisplayName>float</DisplayName>
        <Description>float</Description>
        <References>
            <Reference ReferenceType="HasTypeDefinition">i=2365</Reference>
            <Reference ReferenceType="HasProperty">ns=1;i=3</Reference>
            <Reference ReferenceType="Organizes" IsForward="false">i=85</Reference>
        </References>
        <Value>
          <uax:Float>12.3456789123456789</uax:Float>
        </Value>
      </UAVariable>
      <UAVariable NodeId="ns=1;i=3" BrowseName="1:ValuePrecision" DataType="DOUBLE" AccessLevel="3">
        <DisplayName>ValuePrecision</DisplayName>
        <Description>value precision</Description>
        <References>
          <Reference ReferenceType="HasTypeDefinition">i=68</Reference>
          <Reference IsForward="false" ReferenceType="HasProperty">ns=1;i=1</Reference>
        </References>
        <Value>
          <uax:Double>-1</uax:Double>
        </Value>
      </UAVariable>
    </UANodeSet>
舍入 精度 OPC-UA

评论


答: 暂无答案