...
OPC-UA protocol S/W and microservices
...
Code repository
https://github.com/mgjeong/edgexfoundry-holding/protocol-opcua-c
https://github.com/edgexfoundry-holding/protocol-opcua-java
https://github.com/mgjeongedgexfoundry-holding/device-opcua-java
Current status
...
- OPC-UA protocol stack library has been provided in C and Java
- Verified the CTT
- test using OPC-UA protocol S/W written in Java.
- Verified the interoperability with PROSYS OPC-UA S/W.
- Verified the interoperability with EdgeX core components ( Metadata , Command, Coredata, Registry&Config )
- One proposal related Command microservice is going to be raised.
- OPC-UA Device Service in Java from Smart Factory Project has been provided as an experimental version to EdgeX core working groups, and being developed from Device and Device SDK Working Group as one of the functionalities of the EdgeX regular release.
- More information is available from Device and Device SDK Working Group Wiki.
Command Data Model
Command Data Model is for command of metadata. It will get you a easy expression of your request or response data which has a lot of categories and attributes. And Also, it's good at expressing a complex data which has depths. because Attribute Category can contain another Attribute. It provides some mandatory categories in below.
- version - version of the datamodel (default : edge-1.0)
- dataTitle - protocol or data title
- edgeElements - element unit like command of metadata.
- elementTitle - each element of edgeElements list can be expressed as operation of metadata.
- edgeAttributes - attribute list
- name - attribute name
- dataType - data type
- value - actual value of the data
Code repository
https://github.com/edgexfoundry-holding/datamodel-command-go
https://github.com/edgexfoundry-holding/datamodel-command-java
Current status
- Command Data Model in Go and Java (which is command of metadata) are available.
Data Representation for AutomationML
Data Representation is for offering the schema the collected data in manufacturing domains in a standardized way. Currently Smart Factory Project has provided AutomationML, which is one of the global standard data representation in manufacturing industries. Per language, Data Representation with AutomationML is a library, which provides the way to present raw data (key/value based) to AutomationML standard format. C++, Go, Java, and Node.js libraries of Data Representation for AutomationML are bindings written over the C library of Data Representation for AutomationML.
- Transform raw data to AutomationML data in XML.
- Serialization / Deserialization AutomationML data using Protobuf.