While the term ‘Internet of Things’ may be used way too often and sounds too vague when applied to any and every network that connects – say – home appliances, it’s actually a name with meaning and history behind it. I’ve discussed it with Marcin Sikorski, who works as a Lead QA Automation Software Engineer at Spyrosoft, in the latest interview on the blog, so you can check it if you’d like to know more about it >>> Introduction to Internet of Things: an interview with Marcin Sikorski.
There’s no doubt that the Internet of Things is here to stay with the ever-increasing importance of data in all sectors, especially Industry 4.0. Today, I’d like to dig a little deeper and explore the Internet of Things architecture.
The questions I will be answering in this article are:
- How do you build a sustainable IoT system?
- What are its essential elements?
- What to include and what to omit?
Let’s explore it together below.
What is IoT architecture?
As much as the ‘Internet of Things’ sounds like a buzzword and it’s often perceived as a solution to resolve all of your business and technology problems, it’s one of those concepts which requires meticulous planning and where progress happens not in giant leaps but with micro-changes implemented incrementally.
When you think about the IoT architecture in general, you may imagine it as a machine with multiple cogs that have to work together in order for the whole system to function as intended. Please note that when you plan it, you should include not only the physical components, but also the data formats that will be used, organisational procedures and the business context of the system.
As a rule, and in order to function without fail, the IoT architecture has to include these 4 building blocks:
All of these are crucial, with scalability considered the most important for growing organisations with the increasing number of projects to be managed via IoT architecture.
4 stages of the IoT architecture
Once you start putting an Internet of Things system together, there are 4 stages or layers you should include. Please note that these layers also represent the data processing process.
1. Sensors and controllers
This layer can also be described as all of the devices that are connected to the network. This can include but is not limited to sensors that collect data such as temperature, movement and air quality, and controllers that can be used to steer the devices and send requests to them. These can alter physical reality – i.e. they can open doors, switch on alarms in case of fire or property infringement or stop an assembly line. Once the sensors collect the data, they can send it to the network for processing.
The network layer is represented by the Data Acquisition System (DAS) and gateways. DAS is used for aggregating and converting raw data into formats accessible for all layers of the system. Gateways work as a connecting level between the sensors and the Internet, but they can also complete basic functions such as data filtering and malware prevention.
3. Applications and edge IT
This layer consists of any element that uses the collected data in any shape or form. It could be machine learning tools, a data visualisation technology or an external system that inspects and evaluates everything happening at a plant or a public property. This layer also includes applications that can send information to the networked devices or manage them in any way.
4. Cloud or data centre
This is where the correctly formatted and processed data is stored and can be further analysed. This can also mean that the cloud or the data centre need to be supplied with information from other sources outside of the IoT system. Depending on the volume of data you need to keep and process, using the cloud such as Microsoft Azure Cloud or Amazon Web Services may be an ideal solution.
For more information about IoT hubs, check our latest article >>> IoT hub: what it is and how to incorporate it in your IoT system.
What are the common mistakes when planning IoT architecture?
According to Jaroslaw Dzikowski, who works as a Senior Embedded Software Engineer at Spyrosoft, there are 4 crucial challenges that any company wanting to introduce the Internet of Things into its operations should take into account and seek ways to resolve them.
Unclear requirements without thinking about the bigger picture
Make sure that a list of your system requirements is clearly defined right from the start and that you know the responses to the following questions: What problem do you want to solve with the IoT system? What to do with the data when the devices are not connected to the Internet? How to make the system easy to scale? The IoT systems are often designed without a clear vision of their scale in mind – planning for a system that will include a few hundred devices is very different from designing a system for millions of devices.
Inaccurate estimations about the foundational elements of your system
Clients often make mistakes at the very beginning: picking inadequate components for the IoT platform or wrongly estimating how much power/electricity the system will need. There’s also the matter of estimating how much computing power, RAM and resources to allocate on the device’s side and what to place on the cloud’s side.
No clear definition of where data should be processed
There’s often not enough thinking and planning for what data the device will be sending to the cloud. You need to define it as precisely as possible to avoid stretching the resources or even using more of them than expected – i.e. does the device need to continuously send the data to the cloud for processing or would alerting it once a certain range is exceeded be enough?
Not accounting for remote firmware upgrades
It often happens that after the IoT system is up and running you need to update the software on your devices for the correct data to be collected and processed, and an upgrade is necessary. Make sure that you can complete it remotely before you place the devices on-site.
Here’s the advice from Jarosław Dzikowski once again:
‘There are certain applications such as fleet tracking, remote machinery monitoring or logistics, where the IoT solutions excel. However, in certain products, the IoT mechanisms are introduced just for the sake of implementing them. In the latter case, using the IoT not only becomes inconvenience for the user and does not resolve any issues, but it also creates new ones. Clearly defining what will be the function of each and every device within the IoT system and the system itself way before the implementation process, at the very beginning of the project, is the key to developing a solution that will be scalable and easy to maintain in the long run. Any mistake you’ll make in this first stage will be costly and time-consuming to clear up down the line.’
Over to you
As you can see, building a sustainable Internet of Things is a complex process that requires detailed planning. At Spyrosoft, we’ve been working with multiple companies from the Industry 4.0 sector and we can support your team as they develop and implement an IoT system. Visit our Industry 4.0 website for more information about what we do and contact us so we can learn more about your project.