Esempio n. 1
0
 def test_reference_description(self):
     rd = opcua.ReferenceDescription()
     self.assertEqual(rd.browse_name, opcua.QualifiedName())
     self.assertEqual(rd.is_forward, False)
     self.assertEqual(rd.reference_type_id, opcua.NodeId())
     self.assertEqual(rd.target_node_class, opcua.NodeClass.Unspecified)
     self.assertEqual(rd.target_node_id, opcua.NodeId())
     self.assertEqual(rd.target_node_type_definition, opcua.NodeId())
Esempio n. 2
0
 def test_add_numeric_node(self):
     objects = self.opc.get_objects_node()
     nid = opcua.NodeId(9999, 3)
     qn = opcua.QualifiedName('AddNodeVar1', 3)
     v1 = objects.add_variable(nid, qn, 0)
     self.assertEqual(nid, v1.get_id())
     self.assertEqual(qn, v1.get_browse_name())
Esempio n. 3
0
 def test_add_string_variable(self):
     objects = self.opc.get_objects_node()
     v = objects.add_variable('ns=3;s=stringid;', '3:stringnodefromstring', [68])
     nid = opcua.NodeId('stringid', 3) 
     qn = opcua.QualifiedName('stringnodefromstring', 3) 
     self.assertEqual(nid, v.get_id())
     self.assertEqual(qn, v.get_browse_name())
Esempio n. 4
0
 def test_add_string_node(self):
     objects = self.opc.get_objects_node()
     qn = opcua.QualifiedName('AddNodeVar2', 3)
     nid = opcua.NodeId('AddNodeVar2Id', 3)
     v2 = objects.add_variable(nid, qn, 0)
     self.assertEqual(nid, v2.get_id())
     self.assertEqual(qn, v2.get_browse_name())
Esempio n. 5
0
 def test_add_read_node(self):
     objects = self.opc.get_objects_node()
     o = objects.add_object('ns=2;i=102;', '2:AddReadObject')
     nid = opcua.NodeId(102, 2)
     self.assertEqual(o.get_id(), nid)
     qn = opcua.QualifiedName('AddReadObject', 2)
     self.assertEqual(o.get_browse_name(), qn)
Esempio n. 6
0
 def test_add_numeric_variable(self):
     objects = self.opc.get_objects_node()
     v = objects.add_variable('ns=3;i=888;', '3:numericnodefromstring', 99)
     nid = opcua.NodeId(888, 3)
     qn = opcua.QualifiedName('numericnodefromstring', 3)
     self.assertEqual(nid, v.get_id())
     self.assertEqual(qn, v.get_browse_name())
Esempio n. 7
0
 def test_add_string_array_variable(self):
     objects = self.opc.get_objects_node()
     v = objects.add_variable('ns=3;s=stringarrayid;', '9:stringarray', ['l', 'b'])
     nid = opcua.NodeId('stringarrayid', 3) 
     qn = opcua.QualifiedName('stringarray', 9) 
     self.assertEqual(nid, v.get_id())
     self.assertEqual(qn, v.get_browse_name())
     val = v.get_value()
     self.assertEqual(['l', 'b'], val)
Esempio n. 8
0
 def test_strrepr_nodeid(self):
     nid = opcua.NodeId('ns=2;s=PLC1.Manufacturer;')
     self.assertEqual(str(nid), 'ns=2;s=PLC1.Manufacturer;')
     self.assertEqual(repr(nid), 'ns=2;s=PLC1.Manufacturer;')
Esempio n. 9
0
 def test_qualifiedstring_nodeid(self):
     nid = opcua.NodeId('ns=2;s=PLC1.Manufacturer;')
     self.assertEqual(nid.namespace_index, 2)
     self.assertEqual(nid.identifier, 'PLC1.Manufacturer')
Esempio n. 10
0
 def test_numeric_nodeid(self):
     nid = opcua.NodeId(999, 2)
     self.assertEqual(nid.namespace_index, 2)
     self.assertEqual(nid.identifier, 999)
     self.assertTrue(nid.is_integer)
Esempio n. 11
0
 def test_string_nodeid(self):
     nid = opcua.NodeId('titi', 1)
     self.assertEqual(nid.namespace_index, 1)
     self.assertEqual(nid.identifier, 'titi')
     self.assertTrue(nid.is_string)
Esempio n. 12
0
 def test_zero_nodeid(self):
     self.assertEqual(opcua.NodeId(), opcua.NodeId(0, 0))
     self.assertEqual(opcua.NodeId(), opcua.NodeId('ns=0;i=0;'))
Esempio n. 13
0
 def test_equal_nodeid(self):
     nid1 = opcua.NodeId(999, 2)
     nid2 = opcua.NodeId(999, 2)
     self.assertTrue(nid1 == nid2)
     self.assertTrue(id(nid1) != id(nid2))
Esempio n. 14
0
 def test_objects(self):
     objects = self.opc.get_objects_node()
     self.assertEqual(opcua.QualifiedName('Objects', 0),
                      objects.get_browse_name())
     nid = opcua.NodeId(85, 0)
     self.assertEqual(nid, objects.get_id())
Esempio n. 15
0
 def test_root(self):
     root = self.opc.get_root_node()
     self.assertEqual(opcua.QualifiedName('Root', 0),
                      root.get_browse_name())
     nid = opcua.NodeId(84, 0)
     self.assertEqual(nid, root.get_id())
Esempio n. 16
0
 def test_write_value(self):
     wv = opcua.WriteValue()
     self.assertEqual(wv.node_id, opcua.NodeId())
     self.assertEqual(wv.attribute_id, opcua.AttributeId())
     self.assertEqual(wv.index_range, '')
     self.assertEqual(wv.value.value, None)
Esempio n. 17
0
 def test_attribute_valueid(self):
     avid = opcua.ReadValueId()
     self.assertEqual(avid.node_id, opcua.NodeId())
     self.assertEqual(avid.attribute_id, opcua.AttributeId())
     self.assertEqual(avid.index_range, '')
     self.assertEqual(avid.data_encoding, opcua.QualifiedName())
Esempio n. 18
0
        #self.c = Condition()
    def data_change(self, handle, node, val, attr):
        print("Python: New data change event", handle, node, val, attr)
        self.val = val


if __name__ == "__main__":
    client = opcua.Client(True)
    client.connect("opc.tcp://utgaard:4841")
    #s.connect("opc.tcp://192.168.56.101:48030")
    try:
        root = client.get_root_node()
        print("I got root: ", root)
        print("Childs are: ", root.get_children())

        #getting node by id since nodejs seems not to support  browsepath
        myvar = client.get_node(opcua.NodeId("ns=1;i=1001"))
        #myvar = root.get_child(["0:MyDevice"])
        #print("yvar is: ", myvar,get_children())
        #myvar = root.get_child(["0:MyDevice", "0:MyVariable1"])
        print("myvar is: ", myvar)

        sclt = SubClient()
        sub = client.create_subscription(100, sclt)
        handle = sub.subscribe_data_change(myvar)
        print("Subscribe handle is: ", handle)

        embed()
    finally:
        client.disconnect()