从服务器到客户端的OPC UA字符串

时间:2016-06-15 11:51:28

标签: c# string int32 opc-ua

我想从我的底层系统通过服务器向我的客户端发送一个字符串。我在OPCModeler(Unified Automation)中制作了一个模型。

OPC Model in OPCModeler

现在要将底层系统连接到nodemanager,我使用了以下xml代码。 Int32的变量是好的。 字符串得到错误:

  

BadNodeIdUnknown。

<UnderlyingSystem.Configuration
xmlns="http://yourcompany.com/underlyingsystem"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
 <GModel>
<Name>GMaschine</Name>
<Type>1</Type>
<Properties>
  <Name>actChannelNo</Name>
  <DataType>i=6</DataType>
  <Value>0</Value>
  <Range>0:10000000</Range>
</Properties>
<Properties>
  <Name>axisName</Name>
  <DataType>i=12</DataType>
  <Value>"0"</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>axisNo</Name>
  <DataType>i=6</DataType>
  <Value>0</Value>
  <Range>0:10000000</Range>
</Properties>
<Properties>
  <Name>axisType</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>cleaningProgramPath</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>connection</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>feed_value</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>guid</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>hardware_SN</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>hardwarePlatform</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>id</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>ipAddress</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>loadUnloadProgramPath</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>location</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>machineReady</Name>
  <DataType>i=1</DataType>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>motionStatus</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>name</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>platformVersion</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>timezone</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
<Properties>
  <Name>type</Name>
  <DataType>i=12</DataType>
  <Value>0</Value>
  <Writeable>false</Writeable>
</Properties>
</GModel>
 </UnderlyingSystem.Configuration>

1 个答案:

答案 0 :(得分:0)

也许有点拿铁但是为了将来参考,nodeIds存储在csv文件中,而不是存储在xml文件中。

对于xml中的每个节点,csv中都有相应的节点。一个好的起点是OPCU基金会,你可以在这里看到基本模型:https://opcfoundation.org/UA/schemas/