SmartGridready is the label for a standardized, secure communication between products, systems and electricity networks. Further information are findable on our SmartGridready website.
SmartGridready provides a software stack that enables easy integration of SmartGridready compliant products and devices into communicator and controlling applications such as energy managers and network flexibility managers:
Figure 1 Basic SmartGridready architecture. Refer to the readme's of the projects SGrSpecifications, SGrJavaSamples and SGrJavaDrivers for a detailed description.
- Developers of SmartGridready client devices, called communicators in SmartGridready terminology are users of the SmarGridready commhandler library.
- Developers of the SmartGridready core library component, called commhandler in SmartGridready terminology are contributors to the SmartGridready opensource software stack.
- Developers of device drivers who want to integrate their own device driver (e.g. modbus driver) into the SmartGridready software stack may contribute their own driver to the SmartGridready opensource software stack.
To learn about the SmartGridready concepts and the specification, use the SmartGridready Online Documentation as a starting point.
The online documentation mainly provides an overview and directs you to the correct location, when specific details are needed.
| Project | Target User Group | Description |
|---|---|---|
| SGrSpecifications | All developers | SGrSpecifications defines the XML-schemes for the SmartGridready functional-profiles and the XML-schemes for device descriptions in XML, called EID-XML (External Interface Description XML). It also contains the EID-XML for SmartGridready declared devices. The EID-XML are read by the commhandler and defines the interface conversion from the generic SmartGridready interface to the device specific interface. |
| SGrJavaSamples | Communicator developers that use Java as programming language | SGrJavaSamples provides starter projects for communicator developers. The projects contain samples on how to use the SmartGridready API. The samples describe how to load a device description EID-XML, define how to read/write device data-points and can handle specific datatypes such as arrays, enums and bitmaps. Furthermore there are samples on how you can use the commhandler library when applying an asynchronous programming model. |
| SGrJava | Communicator developers that use Java as programming language | SGrJava contains the commhandler library code which is the core component of the SmartGridready soft ware stack. The commhandler core library provides the interface conversion from the generic SmartGridready API to the specific device API based on EID-XML device description files. |
| SGrJavaDrivers | SmartGridready core developers, 3rd party device driver developers | Within the SGrJavaDrivers project you find the device driver adapter interface specification (Java interface) and a specific device driver implementation for modbus, called 'EasyModbus'. |
| SGrJavaIntermediary | Communicator develpers | SGrJavaIntermediary contains a Gateway that allows easy access to the Java communication handler through a REST-API. This is in particular useful when the communicator is written in a programming language where no native SmartGridready communication handler library exists. The SGrJavaIntermediary is available as Docker image and easy to install. |
| SGrPythonSamples | Communicator developers that use Python as programming language | SGrPythonSamples provides starter projects for communicator developers. The projects contain samples on how to use the SmartGridready API. The samples describe how to load a device description EID-XML, define how to read/write device data-points and can handle specific datatypes such as arrays, enums and bitmaps. Furthermore there are samples on how you can use the commhandler library when applying an asynchronous programming model. |
| SGrPython | Communicator developers that use Python as programming language | SGrPython provides a commhandler library written in Python. It also contains an example folder with code samples on how to use the commhandler library within communicator applications. |
