This is an example application that shows how to build an IOC that connects to an OPC UA server.
The only intention is to get you started. The examples are not necessarily intended as a template for a real world application. They don't cover all features, and they are not the one and only way to do things.
Run make at the top level of the module.
Edit the example IOC startup script (iocBoot/iocopcuaEx/st.cmd):
-
Change the call to
opcuaCreateSessionto match your OPC UA server URL. -
Uncomment the
dbLoadRecordscommands loading the example databases for your server, adapting their macro settings if necessary.
Run the IOC, loading the startup script.
Look at the database files to see which records are available.
Template databases used by the device example databases.
AnyServerDb contains templates for namespace 0 (server namespace) that
should be implemented by any OPC UA server.
Example databases for different OPC UA servers.
Please refer to the README files inside the device directories for details.
The directory .Db is not being built, but intended as a template
when creating example databases for a new OPC UA device.
The documentation folder of the Device Support module contains the Requirements Specification (SRS) giving an introduction and the list of requirements that should convey a good idea of the planned features.
The Cheat Sheet explains the configuration in the startup script and the database links.
Please use the OPC UA Device Support Module's GitHub issue tracker.
Contributions are welcome, preferably in the form of GitHub pull requests.
An example for a new OPC UA device should contain:
-
a
DeviceDbAppsub-directory that creates all necessary EPICS databases -
a
README.mdfile describing how to prepare the device to work with the example application -
a snippet for the startup script that loads the example databases.
This example application is part of the OPC UA Device Support module that is distributed subject to a Software License Agreement found in file LICENSE that is included with its distribution.