Down-to-Earth Cloud: Fog Computing on Edge Devices

When a cloud comes to earth–hitting a mountain, or rolling in at ground level–we call it fog. In the same way, cloud computing conducted at the local level is sometimes referred to as “fog” computing or “edge” computing. Wikipedia defines edge computing as “pushing the frontier of computing applications, data, and services away from centralized nodes to the logical extremes of a network.” In other words, fog or edge computing brings data processing out of the clouds and down to earth.

In a recent blog, New in IIoT: Fog Computing Leverages Edge Devices and the Cloud, Al Presher describes how edge devices are being used in commercial and industrial applications to provide computing power to interface between the real world and the cloud. Putting computing power as close as possible to the data collection, detection or control can mean quicker response, and more efficient and meaningful data collection.

For example, a simple device might send a simple message “I’m switched on and working” every second. A control system that interacts with the device needs that message the first time, but not every second. Maybe it could use an hourly or daily update as a status report, but sending the message more frequently would just waste resources and bandwidth. With the thousands or millions of such devices that the IoT promises, we need a way to send only meaningful messages.

This is where edge computing comes in. A program on the device can throttle the messages down to once an hour, or once per day, or whatever. It can read and interpret messages such as “I’m switched off” or “I’m not working properly“, and forward them immediately. For more sophisticated devices, an edge computing solution could send ordinary status messages when things are normal, and then open a real-time data flow during any abnormal conditions, so that every single data change, no matter how brief, can be collected and recorded.

In addition to decreasing data volume, edge computing can also reduce the amount of processing done on the receiving end of the data. For example, unit conversions, linear transformations, and simple analytical functions can be run on the data before it gets sent to the cloud. Spread out over hundreds or thousands of devices, this relatively simple, decentralized processing can translate into significant cost savings.

The Skkynet Embedded Toolkit supports edge computing in several ways on devices where it is used. It has a built-in command set, and a scripting language specifically designed for mission-critical industrial applications, with a wide range of functions for interacting with the real-time data as it flows through the system. Being able to access each data point in the system, it can support both monitoring and control functionality, as needed.

What will be the impact of fog or edge computing? At this point it is difficult to predict, exactly. However, it seems that for industrial systems, edge computing can provide many of the benefits of a SCADA (Supervisory Control And Data Access) system, for a much smaller up-front and ongoing investment. By plugging edge devices into an existing data communications infrastructure like SkkyHub, much of the heavy lifting for data monitoring and supervisory control has already been done.