This article is part of our series, “Four keys to developing a winning IoT service.” For more from this series, visit William Dupley.
In my last two articles, I covered the business and functional views of developing a successful IoT system. The business view defines the challenges that the business is facing that demands the need for a new IoT system. The functional view then defines the new IoT service functions that enable the business to address those challenges.
I compared the development of a new system to constructing a building:
The third key to successful IoT implementation is to define the best technical architecture to implement the use case stories described in the functional view. There are two design domains: software and infrastructure. In this article, I will address the software technical view.
IoT Technical Architecture overview
The software and infrastructure required varies significantly depending on the different types of sensors, measurements, communication protocols, data volume, response time and analytics. There are four domains in the IoT technical architecture.
Domain 1: Sensors/actuators collect the data from the things. Sensors can be simple (current loop), Intelligent (Uart), or Smart (WiFi accessible).
Domain 2: Data aggregators and IoT gateways: Collects the data from the sensors, performs digital to analog conversion and provides secure access controls to the network.
Domain 3: Edge computing: Performs real-time predictive analytics and alarming, facilitates video processing and data reduction functions.
Domain 4: Datacenter/cloud: Contains the at-rest analytics and data presentation functions of the IoT solution.
The software use cases are segmented into two categories: Real-Time Analytics and At-Rest Analytics. Both of these use cases collect data from physical objects or “things” as sensors. The first step is to develop an IoT sensor model. The model describes the physical item and the attributes of the data to be collected. Here’s an example:
IoT Sensor Model
General Information: Name, description, and an identifier.
Data: The data description, and type of data.
Data Value Streams: Data that when analyzed will show a trend.
Data Incident: A change in the data that demands action.
Response: An action associated to a data incident.
IoT Real-Time Analytic Use Cases
The next step is to define use cases in detail that support the user stories. An IoT solution has four different types of use cases. They are:
- Automate: Enable automation
- Optimize: Improve efficiency or quality
- Control: Automate a response to an event
- Monitor: Temperature, vibration, count
The Automate and Optimize use cases produce the most significant value, however, they are built on the Control and Monitor use cases. It’s best to start by defining the Automate and Optimize use cases, followed by the Control and Monitor use cases.
Fish tank example
Title: Response to pH change
Use Case type: Automate
Description: When the pH level drops below 6.5 or rises above 8, an alarm is activated
Systems Interaction: The IoT system must be integrated with the control room dashboard and email system
Initial State: pH Level must between 6.5 and 8
Event flow: Every 15 minutes the IoT system scans the pH sensor and measures the pH Level. When the pH level exceeds 8, a ‘high pH level’ alarm is sent to the dashboard. If the pH level drops below 6.5 a ‘low pH level’ alarm is sent to the dashboard. In both cases, an email is sent to the service rep on duty to manually adjust the pH level
IoT At-Rest Analytics Use Case Model
There are several types of IoT At-Rest Analytic use cases. The following are two of the most common:
- Normal Operating Parameter Determination: In some cases, the normal operating parameters are not known. In this case, the analytic use case identifies the normal operating parameters by analyzing historical data and determining the upper and lower control limits of a distribution model.
- Predictive Analytics: A predictive analytic use case foresees the future by developing a predictive model based on real-time and historical data. This type of use case predicts when an incident will occur with a sensor and proactively notifies the operator when a device will fail. There are several types of predictive models. They include Linear Regression, Logistic Regression, Decision Tree and other models. A predictive analytic use case also describes a prescription that directs an operator on what to do to resolve the incident.
The development of software use cases provides the criteria necessary for determining the best IoT software to acquire. IoT platforms are now available which eliminate much of the complexity and provide the security, data aggregation, and presentation services needed. Our next article will discuss the infrastructure technical view and explore the impacts of real-time alarming, data volume, variety and analysis on the infrastructure design and IoT platform.