Avatar
Please consider registering
guest
sp_LogInOut Log Insp_Registration Register
Register | Lost password?
Advanced Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
sp_Feed Topic RSSsp_TopicIcon
Observations when "triggering" Alarms
September 20, 2026
20:26, EEST
Avatar
hbrackel
Member
Members
Forum Posts: 160
Member Since:
February 21, 2014
sp_UserOfflineSmall Offline

Hi,

I created a couple of Alarms (subtype of AlarmConditionType) using UaModeler. I am only using objects/variables/properties with ModelingRule==Mandatory.
All alarm instances are created in UaModeler as part of custom object definitions as instance declarations, not directly in the instance tree underneath the objects folder. Only an instance of the custom root application objectType is added to the objects folder.

Code has been generated and the model has been registered and nodesets have been loaded. SDK version is 5.8.0

1. when calling alarm.setActive(true) in the server code, the SDK throws an exception

Cannot invoke "java.lang.Boolean.booleanValue()" because the return value of "com.prosysopc.ua.types.opcua.server.TwoStateVariableTypeNode.isId()" is null

After setting the ActiveState/Id value directly once (or, in UaModeler, uncheck the “null” checkbox for the value), subsequent calls succeed. This indicates, that the ActiveState/Id property is created only after writing a value directly to it

2. upon calling alarm.disable(), the toolkit triggers an event on its own. This came unexpected, because, if unaware of this behaviour, other alarm properties need to be adjusted before calling disable(). It looks like method calls are routed through the event manager. If this is the expected behaviour, maybe a note in the ServerTutorial could be added.

3. depending on how exactly the alarm instance (instance declaration) is setup in the model, different event properties are published:

version 1: customAppRootObjectType/customObjectType1/customObjectType2/AlarmInstanceDeclaration => all properties are received in UaExpert; sourceName = Server
version 2: customAppRootObject/objectInstanceDeclaration(BaseObjectType)/customObjectType3/AlarmInstanceDeclaration => only base event properties plus activeState/Id and enabledState/Id.; no SourceName, no “IsActive” in UaExpert

For this observation it is not entirely transparent, what UaExpert is doing behind the event subscription logic.

I’d appreciate your comments on these observations.

Thanks, HU

Forum Timezone: Europe/Helsinki
Most Users Ever Online: 2206
Currently Online:
Guest(s) 40
Currently Browsing this Page:
2 Guest(s)
Top Posters:
Heikki Tahvanainen: 402
hbrackel: 149
rocket science: 128
pramanj: 86
Francesco Zambon: 83
Ibrahim: 78
Sabari: 62
kapsl: 57
gjevremovic: 49
Xavier: 43
Member Stats:
Guest Posters: 0
Members: 912
Moderators: 7
Admins: 1
Forum Stats:
Groups: 3
Forums: 15
Topics: 1599
Posts: 6757
Newest Members:
a.santos.meb, owlsky, estelakirkland9, tanyawang, VandornNogsjessy, quincyhuskey8, itilgabut, Frankliant, wp_admin_bdeca9, wp_service_3d79f8
Moderators: Jouni Aro: 1059, Pyry: 1, Petri: 1, Bjarne Boström: 1106, Jimmy Ni: 26, Matti Siponen: 372, Lusetti: 1
Administrators: admin: 1