Analogy to DataSet |OPC UA Standard|Forum|OPC Foundation

Avatar
Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
sp_Feed sp_PrintTopic sp_TopicIcon
Analogy to DataSet
Avatar
Aydin Homay
Member
Members
Forum Posts: 22
Member Since:
04/22/2021
sp_UserOfflineSmall Offline
1
07/14/2021 - 05:53
sp_Permalink sp_Print

Hi,

I have the following data structure in my system, call it PV: 

  • PvName
  • DataType (Boolean , int, string, double, array (one diamentional), etc) 
  • ServerTimeStamp
  • Value
  • Unit                   
  • Size (size of data stored in the value field)
  • quality
  • alarm

Now I wanna create DataSet for the following structure on the PubSub communication model. I came up with the following structure: 

<Fields>
  <FieldMetaData>
     <Name>DSS:FDS_SVC:CON_FDS_SVC</Name>
     <Description>
        <Locale i:nil="true" />
        <Text>FDS SVC Client Connection</Text>
     </Description>
     <FieldFlags>0</FieldFlags>
     <BuiltInType>6</BuiltInType>
     <DataType>
        <Identifier>i=6</Identifier>
     </DataType>
     <ValueRank>-1</ValueRank>
     <ArrayDimensions />
     <MaxStringLength>0</MaxStringLength>
   <DataSetFieldId>
<String>1bc6c8dd-724d-4f39-884c-630175bf37df</String>
</DataSetFieldId>
<Properties>
   <KeyValuePair>
     <Key>
        <NamespaceIndex>0</NamespaceIndex>
        <Name>Unit</Name>
     </Key>
   <Value>
      <Value>
      <String xmlns="https://opcfoundation.org/UA/2008/02/Types.xsd" />
   </Value>
   </Value>
</KeyValuePair>
<KeyValuePair>
<Key>
<NamespaceIndex>0</NamespaceIndex>
<Name>Alarm</Name>
</Key>
<Value>
<Value>
<String xmlns="https://opcfoundation.org/UA/2008/02/Types.xsd">HH</String>
</Value>
</Value>
</KeyValuePair>
</Properties>
</FieldMetaData>
</Fields>

Now I have two questions:

1- Does the analogy created by me correct? Does it make sense? 

2- When I change the value I only receive the value on the subscriber side not the properties. Why is that? 

 

Thank you for your support. 

Avatar
Randy Armstrong
Admin
Forum Posts: 1465
Member Since:
05/30/2017
sp_UserOfflineSmall Offline
2
07/14/2021 - 08:08
sp_Permalink sp_Print

The properties are reported with the metadata.

If you want them in every message you need to create a field for them.

ServerTimeStamp, Value and quality (a.k.a. StatusCode) are part of the DataValue and can set the DataSetFieldContentMask to include information.

The generic word "alarm" should be replaced with something more specific.

i.e. LevelAlarmMessage.

Avatar
Aydin Homay
Member
Members
Forum Posts: 22
Member Since:
04/22/2021
sp_UserOfflineSmall Offline
3
07/14/2021 - 08:27
sp_Permalink sp_Print sp_EditHistory

So you mean alram (LevelAlarmMessage) and Unit they need to be independent Fields? If I want to receive them every time that the value of my dataset (DSS:FDS_SVC:CON_FDS_SVC) is changing.

Avatar
Randy Armstrong
Admin
Forum Posts: 1465
Member Since:
05/30/2017
sp_UserOfflineSmall Offline
4
07/14/2021 - 09:04
sp_Permalink sp_Print

You can configure delta frames so the metadata does not need to be sent every time if it is not changing.

But yes, you would need more fields if you want to receive that information inline with the value.

Forum Timezone: America/Phoenix
Most Users Ever Online: 510
Currently Online:
Guest(s) 22
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Forum Stats:
Groups: 2
Forums: 10
Topics: 1357
Posts: 4606