A certain amount of computing is incorporated in every IoT Thing. Computing is after all required to translate information available in electrical signal format into data that can be transmitted over a connection to the Internet/Mobile/Business applications associated with a specific IoT implementation. Computing is also required for a Thing to receive data and commands from the same or other applications. Although edge computing is used in every Thing, the amount of processing power available and how it is used is unique for each IoT design dependent on available computing capabilities at the the time the Thing is developed and manufactured. Moore’s law continuously moves price/performance/power requirement curve so that a 3-year-old design is different from today’s design that has more processing at lower price and requiring less power. This is all part of the vibrant field of Embedded computing supported by hundreds of chip, board and solution manufacturers around the world. While edge computing is technically a sub-set of embedded computing it uses the same underlying components and software with the only difference that Edge is also used to connect to the internet and run IoT processing oriented functions, software and applications instead of just ‘embedded control’ ones.

Edge Computing in IoT

What are some of the functions performed by embedded or edge computing in IoT? Let us separate this between Basic Edge Computing functions implemented in all IoT devices –

  • Implement a data model (defining each data item type and how it is represented)
    • Name, Type, Values, Time, Other, _______, ______
      • Velocity, mph, time stamp, weekday, _______, ________
      • Status, Boolean, On/Off, weekend, _______, ________
  • Provide electrical and protocol connection to sources of IoT data on the device (sensors, switches) and translate this data to a data model.
  • Manage IoT Connectivity
  • Receive IoT data sent from IoT applications and translate this data to electrical and protocol to device recipients of this data.
  • Decide when data is sent (and when received data is processed) – important for power consumption and power budgets.
  • Data item conversion and filtering.
  • Data item and data storage.

and more Advanced Edge Computing implemented on IoT devices with more processing power like embedded boards with full OSs (Operating Systems) –

  • Processing and Transformation of IoT data
    • Filtering of irrelevant or repetitive information
    • Lambda Functions
    • Statistical Analysis
    • Correlation Analysis
    • Probability Analysis
    • Inference
  • Conversion of IoT Data
    • Events
    • States
    • Distributions
  • Modeling of Things and IoT Data
    • State conversion
    • Stream Conversion
  • Advanced Processing Software Packages
    • Machine Learning
    • Artificial Intelligence
  • Storage of larger amounts of data

Whether an IoT device supports only basic functions or mode advanced is based on the hardware/software design. Regardless, this processing power can add a lot of capabilities and greatly enhance the value of an IoT implementation if utilized to the fullest.  

The Case & Value of Edge Computing in IoT

The common belief that all data is valuable and should be collected and stored for later analysis by trained ‘Data Scientists’ is a fallacy accompanied by overflowing databases with years of unusable information. With little pre-processing, these data lakes (yes, they have a name) can be better described as data swamps where any attempt to coerce information is hindered by the lack of forethought about what information is of interest for the business or users.

Real IoT solutions are about the collection of information that is valuable for the business and Edge Computing is the main vehicle for turning raw IoT data into meaningful information.

Three examples illustrate the point.

  • Failures and what leads to them are of great interest in machine or systems monitoring. An IoT solution should therefore focus on collecting data that leads up to such ‘events’. This may be vibrations, temperatures, or long-term operational performance. Edge processing should be designed to collect such information and create an operational model around failures using for example a state machine representation supported by statistical means and distributions of operating parameters.
  • Usage Patterns for a connected device are of interest to marketing, support and product designers. Implementing algorithms that tracks usage characteristics in the form of events (on/off), time and duration and classifying these into categories instead of just collecting time-stamped events can offer this information to the parties in easy-to-understand applications built in as part of the initial design.
  • Resource and Capital Asset Utilization is of interest in a large number of business areas from transportation to equipment, recreational facilities, events, tourism and shipping. The metrics used or preferred vary widely by industry and user and edge computing is ideal for implementing customized versions taking a wide variety of specific information and merging it with stored ‘typicals’ — comparing them with stored events and statistical information, thereby creating more meaningful information.

As shown in these examples, edge computing can refocus an IoT solution from data collection to information delivery, providing value to all intended users from its inception. Accomplishing this requires a different approach when developing the IoT solution; putting business needs in the driver’s seat.

Implementing the Right IoT Edge Computing

What are some of the functions performed by embedded or edge computing in IoT? It can be helpful to divide them between Basic Edge Computing functions implemented in all IoT devices and Advanced Edge Computing. The former includes tasks such as providing electrical and protocol connection to sources of IoT data on the device (sensors, switches) and translating this data to a data model.  It could also include managing IoT connectivity or receiving IoT data sent from IoT applications.

In contrast, Advanced Edge is implemented on devices with more processing power like embedded boards with full embedded OSs (Operating Systems) or IoT specific OSs or Software agents. Advanced Edge can handle processing and transformation of IoT data, filtering of irrelevant or repetitive information, Lambda Functions, Statistical Analysis and even things like machine learning.

So, how do you identify and implement the right edge computing capabilities when developing your IoT solution? These 11 questions can serve as a guide:

  1. Business Perspective & Need? Start with the business perspective of what the IoT solution is expected to deliver. What are the short- and long-term results? Who are the users? How will they use the IoT solution?
  2. IoT Applications? What are the IoT applications that will be developed?
  3. IoT Information? What IoT information are these applications dependent on? What is required and what is nice to have? How is this information best derived from data and events in the IoT device? The result should be a complete list of information requirements used to drive the IoT data needs.
  4. IoT Data Needs? A complete data model for the IoT device with source, value, units etc.
  5. Edge Device Computing Capabilities? Basic or Advanced depending on what is available.
  6. Edge IoT Processing Needs? The amount of processing needed to derive the information.
  7. Edge IoT Processing Software, Software Packages and Development Tools? The possibilities available as well as the capabilities required to implement delivery of the IoT information.
  8. Edge Implementation Plan? How will the IoT device be developed and implemented?
  9. Actual Edge Implementation Development? What needs to be done?
  10. IoT Solution Integration? Integration of Edge processing solution with the rest of the IoT solution (connectivity, IoT data handling platform and applications)?
  11. Who is going to do it? Staffing and who does what?

Conclusion

IoT Edge Computing provides a way to develop superior IoT solutions delivering derived information to users through applications instead of just transmitting available IoT data hoping it can be mined for information at a later time. In its simplest use, turning data into events dramatically reduces the amount of data sent. In its most advanced form, it delivers ML and AI at the Edge delivering IoT information that can be synthesized and used by the rest of the IoT solution.

Triotos is focused on providing a rapid IoT on-boarding solution complete with applications in months instead of years for a fraction of the cost of doing it yourself. By providing a complete integrated IoT back-end solution using the AWS IoT cloud, our customers can focus on their IoT Business (Applications of IoT Things) and develop the value in record time. As part of this we advise on how to incorporate the right and best Edge Processing solutions and provide simulation tools to speed up development and implementation.

About the Author

Mats Samuelsson

Mats Samuelsson is the CTO & VP Marketing and Business Development for Triotos. In this role, he is responsible for the new business, development, integration, and deployment of Triotos technology initiatives.