The rise of edge computing
Edge computing in IoT is opening new opportunities for embedded designers. FPGAs can be used to aggregate data, and once in place can also process that data and deliver real time analytics. Coupled with DSP and multicore processors, intelligent nodes and gateways can provide more useful information back to the cloud, reducing power consumption and extending battery life.
By Mark Patrick, Mouser Electronics Download PDF version of this article
Through the advent of the Internet of Things (IoT), there has been significant interest generated in edge computing. Like Cisco fog computing, this means putting more processing power at the edge of the cloud, which helps to reduce the overall power consumption from the sensor node to the data centre. This represents a significant opportunity for embedded designers, who are demanding more sophisticated algorithms at the sensor and the gateway. While there has been considerable activity over the last few years in apps and software to support data centre hardware, the move to edge computing will need a much broader base of software, running on higher performance embedded systems. Hardware is becoming available in both the embedded and industrial markets that will address this. It generally utilises dual or quad-core processors, such as the KeyStone system-on-a-chip offering from Texas Instruments at the nodes and Intel Corei7 in gateways from suppliers like ADLINK that are capable of handling both the sensor data and the analytics. This will be essential with tens of billions of IoT devices expected to connect to the network. Current IoT architectures tend to only deploy analytics in a data centre context once all the information has been collected, but as IoT deployments increase, data will simply not be provided quickly enough. To be truly useful, analytics will really need to be placed at the true edge, directly into the devices.
“The situation we have at the moment is that data is being sent to a massive data lake where it is not being used,” said Chad Boulanger, Global VP of Business Development for IoT Analytics at software development company Greenwave Systems. “As the IoT continues to grow, this is not going to add value. The only way to do that is to do as much as possible at the true edge of networks - within the actual devices - so that the machine knows that something is wrong right there and can take appropriate action. If the data has to travel from another part of the network, that could have a detrimental impact.”
According to a report by market researchers Gartner, there will be 20.4 billion connected IoT devices in use globally by 2020. The sheer quantity of data that will be transmitted from these devices is driving adoption of edge computing, where connected devices and sensors transmit data to a local gateway device instead of sending it back to the cloud or a designated data centre.
Figure 1. Moving processing to the edge of the network is becoming essential for IoT. (Source: EdgeX Foundry)
Edge computing is well suited for IoT applications because it allows for quicker data analytics and reduced network traffic. Real-time data analysis for decision making purposes is thus possible - aiding in factory optimization, predictive maintenance, remote asset management, building automation, fleet management and logistics. But edge computing is not just about analytics. Adding more energy-efficient methods for handling algorithms quickly and locally can save power reserves in remote battery-based nodes, reducing the amount of data traffic and thereby extending operational lifespan. Using digital signal processing (DSP) provides the ability to use more sophisticated algorithms for analytics and data processing, while increased memory capacity allows data to be buffered for longer low-power states. Flexible I/Os enable a more distributed heterogeneous processing architecture. This combination provides the flexibility needed for OEMs to quickly deliver new innovations.
The challenge is providing the right level of performance in embedded devices. Alongside analytics, one of the first steps is to increase the prevalence of computer vision. This requires more dedicated DSP blocks in the embedded processors, as well as much greater focus on the skills of the embedded designer. This focus on edge processing is also driving programmable logic technology further into embedded sensor systems, with products such as the iCE40 UltraPlus FPGAs from Lattice Semiconductor leading the way. This has eight times more memory and twice the DSP resource, plus improved I/Os over previous generations. As a result it can provide the higher levels of performance needed by edge computing devices that are constantly on, always ready to instantly process commands locally without going to the cloud. There is support for functions such as gesture detection, facial recognition, audio enhancement, audio beam forming, phrase detection, double tap, shake-to-wake and pedestrian dead reckoning (PDR). As well as 1.1 Mbits of SRAM and 8 DSP blocks, the FPGAs in this family incorporate up to 5K look-up tables (LUTs) and non-volatile configuration memory (NVCM) for instant-on applications. With under 100 µW used in standby and compact QFN packages, they are highly suited to deployment in space-constrained environments with power limitations. Key applications include always-on sensor buffers and distributed processing for mobile devices at sub-1mW power consumption, always-on sensor functionality while the AP is in sleep mode, etc.
Figure 2. iCE40 FPGAs can be used for aggregating and accelerating data handling at the edge of the IoT network.
But edge computing is not just about more powerful hardware. FogHornSystems for example has developed a platform that it says can provide real-time analytics on ultra-small footprint edge devices. This allows developers to get data from IoT applications, reducing bandwidth usage and cost. It minimizes latency and increases reliability, as well as providing real-time responsiveness. The embeddable software Lightning Micro of the company has a small memory footprint (less than 256 MBytes) for data processing and real-time analytics at the edge using a C++ SDK. The data is fed in via IoT protocols, such as OPC-UA, MQTT and Modbus, and the real-time streaming analytic engine can be configured through an easy-to-use expression language and hundreds of built-in functions. Greenwave Systems is also looking at how analytics can be implemented at the edge of the network. It has teamed up with Wind River to port its AXON Predict analytics engine to VxWorks - allowing customised analytics that boost computational power and real-time intelligence in industrial IoT designs. To give VxWorks developers a tool to analyse and autonomously respond to high-volume streaming sensor data at the source, AXON Predict will provide developers with embedded analytics that learn patterns, provide insights and take actions inside connected device operations and behaviours. This edge analytics engine allows developers to build a set-and-forget application with intelligence and process critical data at the edge of a network in real-time. This enables machines and smart sensors to collect information at every step of the network, automatically detect anomalies and take immediate action right at the source of input. Enhanced security features bolster the analytics engine and will provide enterprises with yet another layer of data and device protection.
Figure 3. Handling more of the IoT processing at the edge of the network (Source: EdgeX Foundry)
Bringing all the elements together, the Linux Foundation has launched the open source EdgeX Foundry project in order to build an open framework for edge computing. This will involve developing a range of microservices that can sit on a various operating systems and hardware (from x86 to ARM). AMD, Analog Devices, Dell and sensor company RFmicron, as well as energy harvesting specialists EnOcean Alliance, have all signed up. The Linux Foundation points to industry fragmentation and the lack of a common IoT solution framework continuing to hinder widespread adoption and stalling market growth. The complexity of the current landscape and the broad variety of components creates paralysis. EdgeX is intended to solve this by making it easy to quickly create IoT edge solutions that have the flexibility to adapt to changing business needs. Businesses currently have to invest a lot of time and energy into developing their own edge computing solutions, before they can even deploy IoT solutions to address business challenges, EdgeX will foster an ecosystem of interoperable components from a variety of vendors, so that resources can be spent on driving business value instead of combining and integrating IoT components. Adopting an open source edge software platform is going to be the way forwards. This will allow hardware makers to scale faster with an interoperable partner ecosystem, benefiting from more robust security and system management, while sensor/device makers can write an application-level device driver with a selected protocol through use of an SDK. Likewise system integrators can get to market faster by combining together plug-and-play ingredients with their own proprietary technology.