Instal·lació de l'OPC-UA a la Raspberry Pi, fent servir Python, i control des d'Indusoft

De Wiki d'en Jordi Binefa
Dreceres ràpides: navegació, cerca

Per a fer un servidor OPC-UA, basat en Python 3, a la Raspberry Pi ens caldrà instal·lar una biblioteca de dependència i el paquet opcua:

sudo aptitude install libxslt1.1
sudo pip3 install opcua


Per a instal·lar exemples de servidor OPC-UA en Python ho podeu fer així:

mkdir ~/code
cd ~/code && mkdir opc-ua && cd opc-ua && wget https://binefa.cat/IoT/RPi/opc-ua/python-opcua-master.zip && unzip -a python-opcua-master.zip

o així:

mkdir ~/code
cd ~/code
mkdir opc-ua
cd opc-ua
wget https://binefa.cat/IoT/RPi/opc-ua/python-opcua-master.zip
unzip -a python-opcua-master.zip


Navegueu fins al directori d'exemples i executeu-ho:

cd python-opcua-master/examples/
python3 server-example.py


L'inici d'execució d'aquest programa pot trigar entre tres i quatre minuts a una Raspberry Pi 3 Zero W. Estarà carregat un cop hi veiem:

Python 3.5.3 (default, Jan 19 2017, 14:11:04) 
[GCC 6.3.0 20170124] on linux
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> 


Per a canviar el valor de la variable d'exemple i per a sortir:

>>> myvar.set_value(5)
>>> myvar.set_value(3)
>>> myvar.set_value(45)
>>> myvar.set_value(4)
>>> quit()


Configureu a l'InduSoft la connexió OPC-UA amb la Raspberry Pi. En aquest exemple l'adreça IP de la Raspberry Pi és 172.20.19.86 i el port OPC-UA és el 4840:

opc.tcp://172.20.19.86:4840
caption


I hi afegim un client OPC-UA:

caption


Premeu el botó dret de la primera casella del Browse Path i escolliu la variable MyVariable. Relacioneu-la amb un nou punt (tag) anomenat nMyVariable.

Verifiqueu que quan canvia el valor de la variable a la Raspberry Pi també canvia a l'InduSoft.