In the context of the ASHVIN project, we want to establish means to collect data generated during the process of building design, production, and maintenance. To do this, we need an all-encompassing IoT platform able to digitally represent real world devices, enable message exchange between devices and applications, persist messages in a database and, finally, filter and transform data gathered from the devices, preferably, on the very spot of data production.
However, the current situation in the world of IoT resembles the tower of Babel. There are a plethora of device types using different protocols to send and receive messages. Even when devices use the same protocol to communicate, they use different formats of messages. Likewise, applications speak different “languages” and form their “sentences” in different ways. As a result, device to device, application to application, and device to application communication lacks generality and is difficult and costly to implement and maintain.
The solution is not to establish one common “language” and one common “sentence” format. There is a reason why different protocols (LoRa, MQTT, OPC UA, HTTP,etc.) exist: though some of them are still there for legacy reasons, a good number of different protocols correspond to different real-world needs. The solution is, rather, to find a way to translate between different communication protocols (IoT “languages”).
Architecture for the ASHVIN platform is presented in the figure below.