|
@@ -390,10 +390,10 @@ void appMockup_init() {
|
|
UA_ExpandedNodeId ObjId_TypesFolder = NS0EXPANDEDNODEID(86);
|
|
UA_ExpandedNodeId ObjId_TypesFolder = NS0EXPANDEDNODEID(86);
|
|
UA_ExpandedNodeId ObjId_ViewsFolder = NS0EXPANDEDNODEID(87);
|
|
UA_ExpandedNodeId ObjId_ViewsFolder = NS0EXPANDEDNODEID(87);
|
|
UA_ExpandedNodeId ObjId_Server = NS0EXPANDEDNODEID(2253);
|
|
UA_ExpandedNodeId ObjId_Server = NS0EXPANDEDNODEID(2253);
|
|
- UA_ExpandedNodeId ObjId_ServerArray = NS0EXPANDEDNODEID(2254);
|
|
|
|
|
|
+ //UA_ExpandedNodeId ObjId_ServerArray = NS0EXPANDEDNODEID(2254);
|
|
UA_ExpandedNodeId ObjId_NamespaceArray = NS0EXPANDEDNODEID(2255);
|
|
UA_ExpandedNodeId ObjId_NamespaceArray = NS0EXPANDEDNODEID(2255);
|
|
UA_ExpandedNodeId ObjId_ServerStatus = NS0EXPANDEDNODEID(2256);
|
|
UA_ExpandedNodeId ObjId_ServerStatus = NS0EXPANDEDNODEID(2256);
|
|
- UA_ExpandedNodeId ObjId_ServerCapabilities = NS0EXPANDEDNODEID(2268);
|
|
|
|
|
|
+ //UA_ExpandedNodeId ObjId_ServerCapabilities = NS0EXPANDEDNODEID(2268);
|
|
UA_ExpandedNodeId ObjId_State = NS0EXPANDEDNODEID(2259);
|
|
UA_ExpandedNodeId ObjId_State = NS0EXPANDEDNODEID(2259);
|
|
|
|
|
|
// FolderType
|
|
// FolderType
|
|
@@ -462,10 +462,10 @@ void appMockup_init() {
|
|
server->browseName = UA_QUALIFIEDNAME_STATIC("Server");
|
|
server->browseName = UA_QUALIFIEDNAME_STATIC("Server");
|
|
server->displayName = UA_LOCALIZEDTEXT_STATIC("Server");
|
|
server->displayName = UA_LOCALIZEDTEXT_STATIC("Server");
|
|
server->description = UA_LOCALIZEDTEXT_STATIC("Server");
|
|
server->description = UA_LOCALIZEDTEXT_STATIC("Server");
|
|
- AddReference((UA_Node*)server, &(UA_ReferenceNode){RefTypeId_HasComponent, UA_FALSE, ObjId_ServerCapabilities}, ns0);
|
|
|
|
- AddReference((UA_Node*)server, &(UA_ReferenceNode){RefTypeId_HasComponent, UA_FALSE, ObjId_NamespaceArray}, ns0);
|
|
|
|
- AddReference((UA_Node*)server, &(UA_ReferenceNode){RefTypeId_HasProperty, UA_FALSE, ObjId_ServerStatus}, ns0);
|
|
|
|
- AddReference((UA_Node*)server, &(UA_ReferenceNode){RefTypeId_HasProperty, UA_FALSE, ObjId_ServerArray}, ns0);
|
|
|
|
|
|
+ //AddReference((UA_Node*)server, &(UA_ReferenceNode){RefTypeId_HasComponent, UA_FALSE, ObjId_ServerCapabilities}, ns0);
|
|
|
|
+ //AddReference((UA_Node*)server, &(UA_ReferenceNode){RefTypeId_HasComponent, UA_FALSE, ObjId_NamespaceArray}, ns0);
|
|
|
|
+ //AddReference((UA_Node*)server, &(UA_ReferenceNode){RefTypeId_HasProperty, UA_FALSE, ObjId_ServerStatus}, ns0);
|
|
|
|
+ //AddReference((UA_Node*)server, &(UA_ReferenceNode){RefTypeId_HasProperty, UA_FALSE, ObjId_ServerArray}, ns0);
|
|
Namespace_insert(ns0,(UA_Node*)server);
|
|
Namespace_insert(ns0,(UA_Node*)server);
|
|
|
|
|
|
// NamespaceArray
|
|
// NamespaceArray
|
|
@@ -553,60 +553,84 @@ void appMockup_init() {
|
|
/*******************/
|
|
/*******************/
|
|
|
|
|
|
// WORKS
|
|
// WORKS
|
|
-UA_ExpandedNodeId ObjId_temperature1 = (UA_ExpandedNodeId){.nodeId = (UA_NodeId){.encodingByte = UA_NODEIDTYPE_TWOBYTE, .namespace = 0, .identifier.numeric = 110}, .namespaceUri = {-1, ((void *)0)}, .serverIndex = 0};
|
|
|
|
-
|
|
|
|
-// temperature sensor
|
|
|
|
-UA_VariableNode *temperature1;
|
|
|
|
-UA_VariableNode_new(&temperature1);
|
|
|
|
-temperature1->nodeId = ObjId_temperature1.nodeId;
|
|
|
|
-temperature1->nodeClass = UA_NODECLASS_VARIABLE;
|
|
|
|
-temperature1->browseName = UA_QUALIFIEDNAME_STATIC("temperature1");
|
|
|
|
-temperature1->displayName = UA_LOCALIZEDTEXT_STATIC("temperature1");
|
|
|
|
-temperature1->description = UA_LOCALIZEDTEXT_STATIC("temperature1");
|
|
|
|
-
|
|
|
|
-//Set node value
|
|
|
|
-UA_Variant *tmpNodeValue;
|
|
|
|
-UA_Float *tmpFloat;
|
|
|
|
-UA_Float_new(&tmpFloat);
|
|
|
|
-*tmpFloat = -133.2f;
|
|
|
|
-UA_Variant_new(&tmpNodeValue);
|
|
|
|
-tmpNodeValue->arrayDimensionsLength = 0;
|
|
|
|
-tmpNodeValue->arrayLength = 1;
|
|
|
|
-tmpNodeValue->data = (void*)tmpFloat;
|
|
|
|
-tmpNodeValue->vt = &UA_.types[UA_FLOAT];
|
|
|
|
-UA_Variant_copy(tmpNodeValue, &temperature1->value);
|
|
|
|
-
|
|
|
|
-AddReference((UA_Node*)root, &(UA_ReferenceNode){RefTypeId_Organizes, UA_FALSE, ObjId_temperature1}, ns0);
|
|
|
|
-
|
|
|
|
-Namespace_insert(ns0,(UA_Node*)temperature1);
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-UA_ExpandedNodeId ObjId_led1 = (UA_ExpandedNodeId){.nodeId = (UA_NodeId){.encodingByte = UA_NODEIDTYPE_TWOBYTE, .namespace = 0, .identifier.numeric = 111}, .namespaceUri = {-1, ((void *)0)}, .serverIndex = 0};
|
|
|
|
-// led1 sensor
|
|
|
|
-UA_VariableNode *led1;
|
|
|
|
-UA_VariableNode_new(&led1);
|
|
|
|
-led1->nodeId = ObjId_led1.nodeId;
|
|
|
|
-led1->nodeClass = UA_NODECLASS_VARIABLE;
|
|
|
|
-led1->browseName = UA_QUALIFIEDNAME_STATIC("led1");
|
|
|
|
-led1->displayName = UA_LOCALIZEDTEXT_STATIC("led1");
|
|
|
|
-led1->description = UA_LOCALIZEDTEXT_STATIC("led1");
|
|
|
|
-
|
|
|
|
-//Set node value
|
|
|
|
-UA_Variant *tmpNodeValue1;
|
|
|
|
-UA_Boolean *ledVal;
|
|
|
|
-UA_Boolean_new(&ledVal);
|
|
|
|
-*ledVal = UA_FALSE;
|
|
|
|
-UA_Variant_new(&tmpNodeValue1);
|
|
|
|
-tmpNodeValue1->arrayDimensionsLength = 0;
|
|
|
|
-tmpNodeValue1->arrayLength = 1;
|
|
|
|
-tmpNodeValue1->data = (void*)ledVal;
|
|
|
|
-tmpNodeValue1->vt = &UA_.types[UA_BOOLEAN];
|
|
|
|
-UA_Variant_copy(tmpNodeValue1, &led1->value);
|
|
|
|
-
|
|
|
|
-AddReference((UA_Node*)root, &(UA_ReferenceNode){RefTypeId_Organizes, UA_FALSE, ObjId_led1}, ns0);
|
|
|
|
-Namespace_insert(ns0,(UA_Node*)led1);
|
|
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+ UA_ExpandedNodeId ObjId_temperature1 = (UA_ExpandedNodeId){.nodeId = (UA_NodeId){.encodingByte = UA_NODEIDTYPE_TWOBYTE, .namespace = 0, .identifier.numeric = 110}, .namespaceUri = {-1, ((void *)0)}, .serverIndex = 0};
|
|
|
|
+
|
|
|
|
+ // temperature sensor
|
|
|
|
+ UA_VariableNode *temperature1;
|
|
|
|
+ UA_VariableNode_new(&temperature1);
|
|
|
|
+ temperature1->nodeId = ObjId_temperature1.nodeId;
|
|
|
|
+ temperature1->nodeClass = UA_NODECLASS_VARIABLE;
|
|
|
|
+ temperature1->browseName = UA_QUALIFIEDNAME_STATIC("temperature1");
|
|
|
|
+ temperature1->displayName = UA_LOCALIZEDTEXT_STATIC("temperature1");
|
|
|
|
+ temperature1->description = UA_LOCALIZEDTEXT_STATIC("temperature1");
|
|
|
|
+
|
|
|
|
+ //Set node value
|
|
|
|
+ UA_Variant *tmpNodeValue;
|
|
|
|
+ UA_Float *tmpFloat;
|
|
|
|
+ UA_Float_new(&tmpFloat);
|
|
|
|
+ *tmpFloat = -273.15f;
|
|
|
|
+ UA_Variant_new(&tmpNodeValue);
|
|
|
|
+ tmpNodeValue->arrayDimensionsLength = 0;
|
|
|
|
+ tmpNodeValue->arrayLength = 1;
|
|
|
|
+ tmpNodeValue->data = (void*)tmpFloat;
|
|
|
|
+ tmpNodeValue->vt = &UA_.types[UA_FLOAT];
|
|
|
|
+ UA_Variant_copy(tmpNodeValue, &temperature1->value);
|
|
|
|
+
|
|
|
|
+ AddReference((UA_Node*)root, &(UA_ReferenceNode){RefTypeId_Organizes, UA_FALSE, ObjId_temperature1}, ns0);
|
|
|
|
+
|
|
|
|
+ Namespace_insert(ns0,(UA_Node*)temperature1);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ UA_ExpandedNodeId ObjId_redLED = (UA_ExpandedNodeId){.nodeId = (UA_NodeId){.encodingByte = UA_NODEIDTYPE_TWOBYTE, .namespace = 0, .identifier.numeric = 111}, .namespaceUri = {-1, ((void *)0)}, .serverIndex = 0};
|
|
|
|
+ // redLED sensor
|
|
|
|
+ UA_VariableNode *redLED;
|
|
|
|
+ UA_VariableNode_new(&redLED);
|
|
|
|
+ redLED->nodeId = ObjId_redLED.nodeId;
|
|
|
|
+ redLED->nodeClass = UA_NODECLASS_VARIABLE;
|
|
|
|
+ redLED->browseName = UA_QUALIFIEDNAME_STATIC("redLED");
|
|
|
|
+ redLED->displayName = UA_LOCALIZEDTEXT_STATIC("redLED");
|
|
|
|
+ redLED->description = UA_LOCALIZEDTEXT_STATIC("redLED");
|
|
|
|
+
|
|
|
|
+ //Set node value
|
|
|
|
+ UA_Variant *tmpNodeValue1;
|
|
|
|
+ UA_Boolean *ledVal;
|
|
|
|
+ UA_Boolean_new(&ledVal);
|
|
|
|
+ *ledVal = UA_FALSE;
|
|
|
|
+ UA_Variant_new(&tmpNodeValue1);
|
|
|
|
+ tmpNodeValue1->arrayDimensionsLength = 0;
|
|
|
|
+ tmpNodeValue1->arrayLength = 1;
|
|
|
|
+ tmpNodeValue1->data = (void*)ledVal;
|
|
|
|
+ tmpNodeValue1->vt = &UA_.types[UA_BOOLEAN];
|
|
|
|
+ UA_Variant_copy(tmpNodeValue1, &redLED->value);
|
|
|
|
+
|
|
|
|
+ AddReference((UA_Node*)root, &(UA_ReferenceNode){RefTypeId_Organizes, UA_FALSE, ObjId_redLED}, ns0);
|
|
|
|
+ Namespace_insert(ns0,(UA_Node*)redLED);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ UA_ExpandedNodeId ObjId_yellowLED = (UA_ExpandedNodeId){.nodeId = (UA_NodeId){.encodingByte = UA_NODEIDTYPE_TWOBYTE, .namespace = 0, .identifier.numeric = 112}, .namespaceUri = {-1, ((void *)0)}, .serverIndex = 0};
|
|
|
|
+ // yellowLED sensor
|
|
|
|
+ UA_VariableNode *yellowLED;
|
|
|
|
+ UA_VariableNode_new(&yellowLED);
|
|
|
|
+ yellowLED->nodeId = ObjId_redLED.nodeId;
|
|
|
|
+ yellowLED->nodeClass = UA_NODECLASS_VARIABLE;
|
|
|
|
+ yellowLED->browseName = UA_QUALIFIEDNAME_STATIC("yellowLED");
|
|
|
|
+ yellowLED->displayName = UA_LOCALIZEDTEXT_STATIC("yellowLED");
|
|
|
|
+ yellowLED->description = UA_LOCALIZEDTEXT_STATIC("yellowLED");
|
|
|
|
+
|
|
|
|
+ //Set node value
|
|
|
|
+ UA_Variant *tmpNodeValue2;
|
|
|
|
+ UA_Boolean *ledVal1;
|
|
|
|
+ UA_Boolean_new(&ledVal1);
|
|
|
|
+ *ledVal1 = UA_FALSE;
|
|
|
|
+ UA_Variant_new(&tmpNodeValue2);
|
|
|
|
+ tmpNodeValue2->arrayDimensionsLength = 0;
|
|
|
|
+ tmpNodeValue2->arrayLength = 1;
|
|
|
|
+ tmpNodeValue2->data = (void*)ledVal1;
|
|
|
|
+ tmpNodeValue2->vt = &UA_.types[UA_BOOLEAN];
|
|
|
|
+ UA_Variant_copy(tmpNodeValue2, &yellowLED->value);
|
|
|
|
+
|
|
|
|
+ AddReference((UA_Node*)root, &(UA_ReferenceNode){RefTypeId_Organizes, UA_FALSE, ObjId_yellowLED}, ns0);
|
|
|
|
+ Namespace_insert(ns0,(UA_Node*)yellowLED);
|
|
#if defined(DEBUG) && defined(VERBOSE)
|
|
#if defined(DEBUG) && defined(VERBOSE)
|
|
uint32_t i;
|
|
uint32_t i;
|
|
for (i=0;i < ns0->size;i++) {
|
|
for (i=0;i < ns0->size;i++) {
|