Eclipse Unide – Steps to understand industry devices
When going on vacation to a foreign country, I often learn a few words of the local language to get by. There’s no time or need to be fully fluent, but it’s useful to know a handful of simple phrases. There are these mini phrasebooks containing the basics (hello, I am hungry, etc.) and over time, I’ve assembled a collection that has helped me a lot.
We face a similar situation in Industry 4.0: There are lot of different machines out there, using a lot of different languages and accents. Older machines in particular don’t speak new protocols (e.g. OPC-UA). And yet we need to understand how to monitor their condition or interpret specific measurements.
If there was a simple approach we could take to send and understand such industry-specific content implemented for multiple systems, we would be well on the way to a connected industry.
Through hands-on experience and collaboration with customers and partners, we have learned which information is key to understanding industrial devices. When sending measurement data, for example, the only way to interpret this information is if we also have the currently produced part or lot number, and machine identification.
We started to capture this information in a simple payload. Just like in the real-life example I mentioned, where you can use the same phrases on a phone, in a letter or in person, the payload is meant to be sent over different protocols (REST, MQTT, AMQP).
After successful use in a production environment with partners and customers, we want to develop sample implementations of exchanging such payloads together with the Eclipse Community.
Noticeably in recent years, there’s been a continuous increase in demand, price pressure, and complexity in manufacturing. Things need to move faster, be more flexible, and fulfill higher quality standards. Often, optimization in this regard is referred to as Production Performance Management (PPM). The basis for this optimization is information from the machines and devices related to a product, such as:
- Torque and angle for a tightening process
- Influx / efflux of a throttle plate test station
- Power consumption of spindles in a cutting process
Nowadays, brand new machines and software are often shipped with powerful communication capabilities. For older machines, smaller factories, and SMEs (Small and Medium Enterprises), it can be a challenge to catch up with the complex IT standards that emerge. In fact, sometimes the hardware itself imposes limits.
Nevertheless, in a manufacturing environment, monitoring makes most sense if there are no blind spots. One way to achieve that is by upgrading machines and software; retrofitting is another. For the latter, the hurdle should be as low as possible. However, there should be a few guidelines for a one-way exchange of the most necessary information (machine messages, measurements):
The structure of the data shall be:
- flexible enough to be carried via multiple transport protocols,
to avoid reinventing the wheel and to leverage on existing technology;
- similar in each case,
to allow the use of the same software to interpret the data;
- easily understandable,
to ensure implementation in a custom environment won’t be a hurdle;
- as simple as possible,
to avoid producing an opinionated framework;
- and yet containing enough information for the use cases,
to fulfill the functional requirements.
We decided that the lowest common denominator of necessary information comprises the mandatory fields, that common relevant information should be optional, and that there should be the option to add extension points through metadata.
Industry benefits of Unide
This open-source project aims to make PPM affordable for smaller organizations by reducing the cost and complexity of data communication. Through sample implementations of a simple information structure (PPMP) tailored to manufacturing environments, we want to encourage the community to use, share, and evolve this structure together.
PPMP has been introduced as part of a PPM testbed at a medium-sized Bosch plant, working with many SMEs as partners and suppliers. This testbed aims to create an ecosystem that will allow SMEs and larger companies to collaborate efficiently.
PPMP takes on an important role by ensuring interoperability between different types of devices and software. It is designed to gather and aggregate machine and sensor data from different devices. It focuses on defining JSON payload, which can be transferred via a variety of transports (REST, AMQP, MQTT, etc.). The primary goals of PPMP are:
- To integrate devices (across domains, e.g. manufacturing or energy) for data aggregation and gathering purposes
- To provide a very lightweight and easy-to-use solution for small and medium-sized enterprises (SMEs)
Why open source? And why Eclipse?
PPMP extends the existing Eclipse IoT world by providing an easy and lightweight format for gathering data from industry sensors and machines, with a focus on normalizing time series and alert messages. It can be transported by protocols including REST, AMQP, and MQTT. Like PPMP, these technologies do not require complex and expensive middleware, nor do their systems cause additional license fees.
Eclipse is an excellent platform for developing PPMP sample implementations and evolving the format hands-on with the community. In fact, this effort could even join forces with existing Eclipse IoT projects like Eclipse hono, Eclipse Paho or Eclipse Kura. Overall, Eclipse has the perfect global IoT ecosystem for starting this project and for learning from several community members. We can provide our industry know-how for a sustainable and industry-specific development of the IoT ecosystem, and for a successful Eclipse Unide project as well.
Our move towards open standards for a digital factory is also backed by a recent survey (only in German): 55% of the responding participants of an Industry event stated that open standards are important to implement Industry 4.0.
The Eclipse Unide project publishes the current version of Production Performance Management Protocol (PPMP) and develops simple server/client implementations. The implementations store the payloads in a database and display them through a simple user interface. Everyone can then use these samples for their custom condition monitoring applications.