在编写XML文件以导入到OPC UA的模型编译器时,我找不到任何指定如何选择“ i”值的文档。我正在引用由建模工具生成的代码,以帮助我进行常规格式化。
例如下面的代码片段:
<Alias Alias="Boolean">i=1</Alias>
<Alias Alias="Byte">i=3</Alias>
<Alias Alias="UInt16">i=5</Alias>
<Alias Alias="Float">i=10</Alias>
<Alias Alias="String">i=12</Alias>
<Alias Alias="DateTime">i=13</Alias>
<Alias Alias="ByteString">i=15</Alias>
<Alias Alias="Organizes">i=35</Alias>
<Alias Alias="HasModellingRule">i=37</Alias>
<Alias Alias="HasTypeDefinition">i=40</Alias>
<Alias Alias="HasSubtype">i=45</Alias>
<Alias Alias="HasComponent">i=47</Alias>
<Alias Alias="NumericRange">i=291</Alias>
</Aliases>
<Extensions>
<Extension>
<ua:ModelInfo Tool="UaModeler" Hash="uA8gb4iKYIgjKYj3GAUpcQ==" Version="1.6.0"/>
</Extension>
</Extensions>
<UAObjectType NodeId="ns=1;i=1002" BrowseName="1:Alarm">
<DisplayName>Alarm</DisplayName>
<References>
<Reference ReferenceType="HasSubtype" IsForward="false">i=58</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6006</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6001</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6002</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6003</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6007</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6005</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6004</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6008</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6010</Reference>
<Reference ReferenceType="HasComponent">ns=1;i=6009</Reference>
</References>
选择“ i”的值背后的基本逻辑是什么?
答案 0 :(得分:3)
如果您从标准名称空间(ns = 0)引用节点,则所有节点ID均来自OPC UA规范,您只需使用它们即可。您不能添加新的逻辑,并且如果标准名称空间中的ID背后有任何逻辑,则该逻辑与您无关。如果您引用的是其他地方的其他人定义的节点,例如在OPC UA伴随规范中为各种问题域定义的名称空间中的节点,则同样适用。
如果要创建自己的名称空间(可能在ns = 1下,请参见ns = 1),则可以按任意方式定义节点ID(在本例中为带有整数标识符的节点ID),并使用任何您会发现有用(或者只要您的节点保持唯一,就完全没有逻辑)。另外请注意,您可以使用其他形式的节点ID,例如字符串(s =),GUID(g =)或不透明。