Python实现OPC读写
- Python版本:3.7
在Python中通过opc ua通讯方式向PLC中读写数据,是可以通过opcua库实现的。
1.安装opcua
首先安装一下opcua。输入以下命令即可。
pip install opcua
2.实现与PLC的交互。
这里我们构造一个客户端实现PLC中变量的读写。PLC中的变量通过UA Expert查看得到:
from opcua import ua, Client
client = Client('opc.tcp://192.168.2.130:4840')
try:
client.connect()
var = client.get_node('ns=3; s="Mutual"."Vision"."Request"')
print(var.get_value())
dv1 = ua.DataValue(True)
var.set_value(dv1)
print(var.get_value())
var1 = client.get_node('ns=3; s="Mutual"."Vision"."Serial"')
print(var1.get_value())
dv = ua.DataValue(ua.Variant(200, ua.VariantType.UInt16))
var1.set_value(dv)
print(var1.get_value())
finally:
client.disconnect()
最终的代码结果为:
False
True
100
200
以及PLC中的变量的值为:
至此,实现了PLC中变量的读写。
3.需要注意的地方
主要是再往PLC中写值的时候,注意转换一下写入值的类型,否则无法写入。
|