Utilizing Edge Computing and Cloud Computing in Industrial Automation
Edge computing and cloud computing both have their place in industrial automation and control systems. Learn about the uses and how far the two technologies have to go before they're universally adopted.
Robotics and automation have become an integral component of manufacturing, packaging, sorting, machine tending, and material handling industrial applications. Most of these robotics applications use artificial intelligence and machine learning in large amounts of process data obtained from visual and sensor feed. All these techniques need efficient and high-performance computational resources usually unavailable or expensive for setup in the industries.
This article discusses the compute requirements of Industry 4.0, the technical aspects of edge computing and cloud computing paradigms, and their comparisons with reference to satisfying the requirements of the industry.
Computing Needs of Robotics in Industrial Automation
The most common industrial automation solutions process realtime data through conventional machine learning algorithms like regression and genetic algorithms for general applications like workflow and process optimization. Robotics algorithms for computer vision and sensor data processing are primarily used for automated intelligent task execution using mobile robots or manipulators.
Computer vision is used for robot-aided visual inspection, bin-picking, process monitoring, visual servoing, safety management, and more. These processes perform operations like real-time object detection and recognition, 3D-camera-based depth estimation, and optical flow determination using deep learning and AI tools. Deep learning and AI in industries are largely limited to supervised learning where the algorithm learns on large volumes of data and then performs real-time inference on the test data. Heavy computational resources are needed to run online training or realtime quick inference with satisfactory performance.
Figure 1. Compute elements in the pipeline
Thus, industries need embedded platforms and processors to execute these algorithms. Conventional computational platforms are inflexible and cannot be scaled per specific need. Traditionally, heavy compute platforms have been very expensive.
Edge computing and cloud computing are the most important computation offload paradigms applicable to these tasks. Cloud computing executes the compute-heavy processes over the internet on high-performance servers, also called the cloud (essentially the more powerful computers owned by the service providers). Edge computing runs heavy computations as parallel processes on multiple threads of the multiple cores of a general-purpose GPU or other dedicated embedded platforms with visual or tensor processors.
Cloud computing technology deploys algorithmically-heavy processes to the cloud by transferring data over the internet for affordable and scalable products with centralized process management. Cloud computing essentially transfers the data from the local machine to a centralized, efficient, and high-power computer called a remote server and runs the algorithms there. Cloud compute allows for database, data storage, servers, and networking over the internet.
However, cloud computations need to transfer a lot of data over the internet, requiring a high bandwidth network. Sometimes, the network bandwidth may not be large enough to transfer the data in sufficient real-time performance. While this is satisfactory in slow applications, cloud computing is difficult to use in industrial applications that need very short cycle times and robustness to networking issues. Optimizations in this data exchange bottleneck exist to improve the performance but cloud computing is still very susceptible to slow operations.
Figure 2. Different services provided by AWS and Azure. Image Source: AWS Website and Azure Website.
Amazon Web Services (AWS) and Microsoft Azure are the most popular, widely used services. Industries with robotics and automation solutions have yet to adopt these cloud platforms due to the increased infrastructural requirements. Online learning applications where algorithms evolve as they consume the incoming data are difficult to deploy on cloud solutions due to the reasons mentioned above.
Edge computing is the concept of using computationally-efficient, high-performance dedicated embedded platforms to execute the algorithms on the data locally, very close to the source. Edge computing does not need a continuous network connection for real-time functioning but may need it for intermittent data logging or software version management.
Hardware platforms enabling edge computing include high-performance processors, graphical processing units (GPU), tensor processing units (TPU), visual processing units (VPU), and other custom platforms with data-specific architecture.
Figure 3. Nvidia Jetson Xavier NX Developer Kit, Coral Dev Board, BeagleBone AI Board. Image Sources: Nvidia Jetson Xavier NX, Coral Dev, BeagleBone AI)
The devices mentioned in Figure 2 are edge development boards meant for quick prototyping for hobbyists, tinkerers,and independent developers. However, the manufacturers also provide a production version of the same. Nvidia edge computing platforms are available as developer kits as well as SoC modules for production.
Cloud Computing vs. Edge Computing for Industrial Automation and Robotics
Cloud computing has matured over the past decade and become a reliable tool for industrial applications after having long been used for web-based software solutions. Edge computing has recently garnered more attention and big companies like Intel and Nvidia have rolled out dedicated hardware for accelerated computing. Edge computing has already disrupted the market with proven results and it possesses a serious threat to cloud computing platforms.
Cloud computing is readily scalable, on-demand flexible, and offers better mobility and safety against crashes. By storing the data and services closer to the user, the infrastructure provides better fetch speed. It shifts the onus of infrastructure management and optimizations on the cloud infrastructure providers.
Both of these characteristics are critically important for deploying all the computer vision and machine learning-based robotic solutions in emerging industries. The scalability and reliability aspects of cloud computing have an upper hand over edge computing. However, applications constrained with bandwidth and real-time behavior, like processing perception data on robotic tasks, are not the best fit for cloud computing. Edge computing trumps cloud computing in low latency decision making situations in robotic tasks like generating and running global planners for motion planning and depth-estimation-based collision detection and avoidance.
Review of the Computing Technologies
Edge-computing-based commercial platforms have not been in the market for long enough to decide their longevity and reliability. At this moment, the momentum is definitely shifting towards edge computing out of excitement in the industry. However, cloud computing still holds the fortress for a lot of these applications as edge computing still needs to have a higher adoption rate.
It will be interesting to see, as the cloud infrastructure gets better and more efficient and the edge computing paradigm attempts to become more stable and mature to appeal to industries that prefer conservative approaches to technology adoption. To conclude, cloud services will definitely have a market fit for all analytics and offline data processing and handling while they may mature to efficiently manage edge resources onsite as well.
Thank you for a fantastic read.
I absolutely agree with your viewpoint. The use of cloud computing has the ability to change the architectures of industrial automation systems that have historically been on-site systems that required capital investment to incorporate functions. The cloud computing model, on the other hand, offers on-demand storage, computing, and application software, with engineers only paying for what they use.