As a general rule, we can define a platform as a set of tools that allows to build more complex systems. IoT platforms facilitate the development and deployment of IoT systems, allowing end users to focus on what is most important to them: operating their business.
When referring to a Platoform would be something like a bunch of Lego pieces, each with a different shape and colour, that we can assemble as we need to create any (virtual ) model.
The principle behind the notion of a platform is the usual «don’t re-invent the wheel» and instead, rely on the experience of others who have already built systems similar to the one we are about to create. This approach speeds up implementation time, avoids the typical mistakes, and more importantly allows the user/ the enterprise to focus on what they do best: their business logic.
Platforms are in vogue in many areas but in particular, in the IoT world. According to Gartner, these layers of abstraction, which shield developers from the complexity of the underlying system, encourage widespread adoption of IoT and Edge Computing, especially as functionalities become more sophisticated. These platforms therefore, fill the gap that the lack of standards for IoT application deployment and orchestration, have created. But which pieces do we need for our system? Or, let´s put it like what are the typical components of an IoT platform?
The scope of IoT is very broad, covering environments as diverse as wearables, smart cities and Industry 4.0. In this article we will focus on industrial applications, where our expertise lies, although many of the elements featured below are also extensible to other environments such as smart homes or smart cities.
Any IoT application could be summarised as the connection of assets in the field to those assets in the clou. The devices in the field – the IoT nodes – are generally responsible for collecting the necessary data and the assets in the cloud are responsible for storing it and facilitating its analysis. IoT connectivity is the backbone of any IoT application. Recently we have seen how decision-making is moving closer to the edge, towards IoT nodes or Edge nodes. But despite this, the umbilical cord that connects the edge to the core systems, is still paramount for the application to work properly.
At the lowest hierarchical level of the application we have the IoT devices, IoT nodes or Edge nodes, whatever we want to call them. These devices are often connected to other devices in the field such as sensors, actuators or industrial equipment. These industrial equipment come from different vendors, each with their own hardware and firmware, and speak very different protocols, which can range from widespread industry standards such as Modbus, to more specific or even proprietary protocols. The role of connectors in allowing the nodes to understand these protocols is also key when collecting data from the equipment.
As IoT deployments grow in numbers and also are geographicaly dispersed, the need for a centralised management system becomes apparent. This management is usually handled by a fleet management module, which provides basic information of the status of the devices displayed and allows to perform software updates remotely.
The data collected (through the protocol connectors mentioned above) and sent it to the Cloud (using IoT connectivity) is usually done by an application deployed on the devices. In Edge Computing this application will also perform more complex processing within the nodes, i.e. it will contain part of the business logic. In any case, many platforms already include an integrated environment for application development and debugging. And they incorporate low-code functionalities, allowing users to implement their systems using simple graphical interfaces and dragging and dropping elements, connecting them together or simply selecting the options from drop-down menus.
Applications running inside devices need to be deployed remotely and securely. All IoT platforms include an application orchestration module directed to send applications to devices, updating them, getting information about their status, etc…
In recent years we have seen a shift towards more device-side analysis and decision making also known as – Edge Computing-, but despite this, databases remain a central element in any application. We can have centralised databases in the cloud (with their redundancies) or partial databases on each device that are ideally synchronised with the central databases.
Raw data has limited utility and it is not until we analyse it in detail that we can extract value from it. Most platforms include processing and visualisation tools or facilitate integration with third-party tools. Data analysis ranges from simple data crunching to the more complex artificial intelligence models.
Once the data has been processed, applying our own business logic to make decisions, we need those decisions to be turned into actions. In other words, they need to be passed downstream, so that devices actively participate in running the business. This is not always desirable, but sometimes it is interesting for IoT nodes to act on their environment, in which case the platforms include a module that allows these commands to be sent to devices.
Any IoT platform must be robust operationally but, in particular, it must be robust in terms of cybersecurity. Especially in the industrial world. In fact, security is one of the most important barriers to the adoption of IT technologies by established companies with a strong OT heritage. These security features include: as data encryption, port cancellation, network service limitation, authentication enforcements, etc…
There are many types of platform and the above breakdown is only intended to present some of the services that these platforms can offer. When selecting an IoT platform, it is useful to distinguish between generic platforms and more specific products.
Generic platforms are those from providers such as Azure, AWS or Google, which offer a comprehensive ecosystem of tools. The options on these platforms are virtually endless, but they tend to have a considerable learning curve and are not tailored to the specific needs of certain customer segments.
At the other side of the spectrum, we can find more specific platforms, such as Barbara´s Industrial Edge Platform, with more limited capabilities, but adapted to specific verticals, in our case to sectors such as the electricity sector, water management and railways. These platforms tend to provide better user support and much shorter development and deployment times.
If you are interested in this article and want to know more about how to get started with an IoT project, do contact us.