meta data for this page
OPC UA
This page describes the installation and configuration of the following OPC UA functionality:
- LDS from the OPC foundation on BBB
- OPC UA server from the OPC foundation on BBB
- OPC UA server from the FreeOpcUa project on BBB
- OPC UA server from the open62541 project on BBB
- OPC UA GUI client from the FreeOpcUa project on PC
The operating system on the BBB is Debian/stretch.
OPC foundation LDS
Preprequisits for compiling and installing the LDS on the BBB
- Avahi libdnssd compatibility layer (development files)
- OpenSSL (development files)
- cmake and compiler
~# apt-get install libavahi-compat-libdnssd-dev libssl-dev cmake build-essential
Getting the source code for the LDS and the OPC-UA ANSI-C stack from github and link the ANSI C stack into the LDS directory:
guest:~$ mkdir OPC guest:~$ cd OPC guest:~$ git clone https://github.com/OPCFoundation/UA-LDS.git guest:~$ git clone https://github.com/OPCFoundation/UA-AnsiC.git guest:~$ cd UA-LDS guest:~$ rmdir stack guest:~$ ln -s ../UA-AnsiC stack guest:~$ chmod u+x build_linux.sh
FreeOpcUa python client
This is a GUI client written in python3 which has following prerequisits from stretch and buster:
~# sudo apt-get install python3 python3-pip python3-setuptools python3-pyqt5 python3-cryptography python3-opcua python3-pyqtgraph
The GUI client from python repo needs to be installed with python pip3 like this:
~# sudo pip3 install opcua-client
Start GUI as normal user:
guest:~$ opcua-client
FreeOpcUa python modeler
tbd,
open62541 server
Get latest open62541 sources:
guest:~$ git clone --recurse-submodules https://github.com/open62541/open62541.git
Create build dir:
guest:~$ cd open62541 guest:~$ mkdir build
Create makefiles:
guest:~$ cd build guest:~$ ccmake ..
Build all:
guest:~$ make
Results of examples are in bin/examples.