GeneralModelChange
Moderator: uaexpert
-
- Full Member
- Posts: 9
- Joined: 12 Oct 2009, 11:13
GeneralModelChange
Hello,
The UAExpert is subscribing to the GeneralModelChangeEventType at startup. It is only subscribing to the "Change" property though.
We still don't know that much about events yet, but does that mean that we shouldn't return things like "EventId", "SourceName" etc.?
Does the DemoServer support the GeneralModelChange somewhere? Or is there some way for us to see the GeneralModelChange in action in the UAExpert?
Regards,
The UAExpert is subscribing to the GeneralModelChangeEventType at startup. It is only subscribing to the "Change" property though.
We still don't know that much about events yet, but does that mean that we shouldn't return things like "EventId", "SourceName" etc.?
Does the DemoServer support the GeneralModelChange somewhere? Or is there some way for us to see the GeneralModelChange in action in the UAExpert?
Regards,
- Support Team
- Hero Member
- Posts: 3078
- Joined: 18 Mar 2011, 15:09
Re:GeneralModelChange
Hello,
UaExpert is subscriping to the 'Changes' event field only, as the other event fields are not of interest for evaluating the changes in the model change event.
However, when sending a model change event, the event has to conform to the UA specification and hence have all mandatory event fields filled with reasonable values. Please refer to the UA specification for details about events and event fields.
You can use our AnsiC SDK Demoserver for an example of model change events. The 008_DynamicNodes folder contains methods to create and delete a node dynamically, this leads to model change events being sent. You can subscribe to the 'Server' object in order to see the model change events being fired.
Best regards
Unified Automation Support Team
UaExpert is subscriping to the 'Changes' event field only, as the other event fields are not of interest for evaluating the changes in the model change event.
However, when sending a model change event, the event has to conform to the UA specification and hence have all mandatory event fields filled with reasonable values. Please refer to the UA specification for details about events and event fields.
You can use our AnsiC SDK Demoserver for an example of model change events. The 008_DynamicNodes folder contains methods to create and delete a node dynamically, this leads to model change events being sent. You can subscribe to the 'Server' object in order to see the model change events being fired.
Best regards
Unified Automation Support Team
Best regards
Unified Automation Support Team
Unified Automation Support Team
-
- Full Member
- Posts: 9
- Joined: 12 Oct 2009, 11:13
Re:GeneralModelChange
Hmm, I can't seem to find the 008_DynamicNodes. But I think it answered my question anyway. Ty.
-
- Full Member
- Posts: 9
- Joined: 12 Oct 2009, 11:13
Re:GeneralModelChange
Isn't the UAExpert supposed to do a Browse/Refresh or something when receiving a GeneralModelChange event?
It doesn't seem to.
It doesn't seem to.
- Support Team
- Hero Member
- Posts: 3078
- Joined: 18 Mar 2011, 15:09
Re:GeneralModelChange
Hello,
the UaExpert will do a rebrowse on the according node when receiving a GeneralModelChangeEventType in the 'Address Space' widget. Please take care that the 'Changes' property is filled correctly with reasonable values.
Also, please ensure that you are using the latest UaExpert (V1.2.2) and the latest AnsiC SDK (V1.3.0).
Best regards
Unified Automation Support Team
the UaExpert will do a rebrowse on the according node when receiving a GeneralModelChangeEventType in the 'Address Space' widget. Please take care that the 'Changes' property is filled correctly with reasonable values.
Also, please ensure that you are using the latest UaExpert (V1.2.2) and the latest AnsiC SDK (V1.3.0).
Best regards
Unified Automation Support Team
Best regards
Unified Automation Support Team
Unified Automation Support Team
-
- Full Member
- Posts: 9
- Joined: 12 Oct 2009, 11:13
Re:GeneralModelChange
Ok, I think I've located the problem now.
When the UAExpert receives the "ModelChangeStructureDataType" value from the "Changes" property, it displays "Unknown Encodeable Object". (I've attached a screenshot)
The "Encodeable Object" is correct though. Wireshark has no problem deserializing it. And I'm using NodeId 879 (ModelChangeStructureDataType_Encoding_DefaultBinary) as defined by OPC: http://opcfoundation.org/UA/2008/02/NodeIds.csv
The "AnsiC SDK Demoserver" that you've mentioned. Do you have a download link or something for that? (The "008_DynamicNodes" isn't in the version, that I've got.)
Edit: It cannot add the screenshot it seems.
Edit edit: The screenshot: http://tinypic.com/r/2wfoig3/6
When the UAExpert receives the "ModelChangeStructureDataType" value from the "Changes" property, it displays "Unknown Encodeable Object". (I've attached a screenshot)
The "Encodeable Object" is correct though. Wireshark has no problem deserializing it. And I'm using NodeId 879 (ModelChangeStructureDataType_Encoding_DefaultBinary) as defined by OPC: http://opcfoundation.org/UA/2008/02/NodeIds.csv
The "AnsiC SDK Demoserver" that you've mentioned. Do you have a download link or something for that? (The "008_DynamicNodes" isn't in the version, that I've got.)
Edit: It cannot add the screenshot it seems.
Edit edit: The screenshot: http://tinypic.com/r/2wfoig3/6
-
- Full Member
- Posts: 9
- Joined: 12 Oct 2009, 11:13
Re:GeneralModelChange
I also have a screenshot of Wireshak, displaying the correct deserialized object:
http://tinypic.com/r/33ue4cn/6
http://tinypic.com/r/33ue4cn/6
- Support Team
- Hero Member
- Posts: 3078
- Joined: 18 Mar 2011, 15:09
Re:GeneralModelChange
Hello,
under http://www.unified-automation.com/view- ... -win32.htm you find the current version of the AnsiC SDK which includes the AnsiC Demo Server.
The current version of the UaExpert (V1.2.2) is not able to display values of type ModelChangeStructureDataType in the event view; this will be supported in the next version of UaExpert. However, this is only a displaying issue and does not affect the evaluation of ModelChangeEvents in general.
If the setting 'General.SubscribeForModelChangeEvents' is set to 'true' and a ModelChangeEvent is received, UaExpert will do a rebrowse on the affected node in the Address Space View.
Best regards
Unified Automation Support Team
under http://www.unified-automation.com/view- ... -win32.htm you find the current version of the AnsiC SDK which includes the AnsiC Demo Server.
The current version of the UaExpert (V1.2.2) is not able to display values of type ModelChangeStructureDataType in the event view; this will be supported in the next version of UaExpert. However, this is only a displaying issue and does not affect the evaluation of ModelChangeEvents in general.
If the setting 'General.SubscribeForModelChangeEvents' is set to 'true' and a ModelChangeEvent is received, UaExpert will do a rebrowse on the affected node in the Address Space View.
Best regards
Unified Automation Support Team
Best regards
Unified Automation Support Team
Unified Automation Support Team
-
- Full Member
- Posts: 9
- Joined: 12 Oct 2009, 11:13
Re:GeneralModelChange
Ok, I got it now. Phew. Here's what I found:
- The mandatory event fields shouldn't be sent in the "Changes" PublishResponse. (UAExpert isn't subscribing for them either.)
- UAExpert only responds to ModelChangeStructureVerbMask.ReferenceAdded and ModelChangeStructureVerbMask.ReferenceDeleted. Eg. value 4 & 8 in the "Verb" value. Other values like "NodeAdded" (1) are ignored.
- Property "NodeVersion" + value is ignored. (Nice)
- The mandatory event fields shouldn't be sent in the "Changes" PublishResponse. (UAExpert isn't subscribing for them either.)
- UAExpert only responds to ModelChangeStructureVerbMask.ReferenceAdded and ModelChangeStructureVerbMask.ReferenceDeleted. Eg. value 4 & 8 in the "Verb" value. Other values like "NodeAdded" (1) are ignored.
- Property "NodeVersion" + value is ignored. (Nice)
- Support Team
- Hero Member
- Posts: 3078
- Joined: 18 Mar 2011, 15:09
Re:GeneralModelChange
This topic is solved and has been locked by the administrator.
Best regards
Unified Automation Support Team
Unified Automation Support Team