# ABB Ability™ Edge Overview

The Ability Edge is an on-premise gateway solution that provides reliable and secure connectivity for industrial devices' cloud computing needs. If your solution involves connecting non-native devices to the ABB Ability™ Platform then it is necessary to use an Ability Edge Device to bridge that connection. Please note that the Ability Edge is a custom solution made by ABB, it is not to be confused with Microsoft's IoT Edge solution.

It is possible, and common, for the Edge device to run additional program modules developed by independent business lines, delivered from the cloud registry to control desired functionality on your industrial devices.

Docker Images

These program modules are expected to be encapsulated in a Docker container and distributed as Docker container images to allow the edge architecture to be completely modular. Allowing you to drop new functionality in and out with ease.

Popular use cases for module development are:

  • collection of telemetry data
  • send arbitrary files
  • download new controller firmware

Edge Module API

You can find information about the Edge Module APIs here.

# Quick Start Ability SDK Virtual Machine

To simplify the setup process for an Edge, images are available which contain the matching Edge software for your platform. These images can be imported into common virtualization software. This will be sufficient to run simple tutorials and begin development. Once the basics design and use of the Edge is understood, the following sections can be used to create a custom environment suitable for applications specific development and testing.

# Edge Architecture Overview

At a very high level the architecture of the edge device consists of an object model in the cloud that contains information on the configuration of the device, custom modules developed by the BL, and the common edge modules. Specifically, the common modules, proxy and broker, offer the following features:

  • Implement an abstraction of cloud endpoints for devices to interact with.
  • Perform preliminary processing and analysis for data about to be delivered to cloud.
  • Provide protocol translation (MQTT, AMQP, HTTPS, etc.) and data aggregation services to brown field devices that do not yet support common protocols.

Review the object model functionality for a complete list of supported features.

# Core Modules

The modules that are provided by Ability team are listed below:

# edge-proxy

As the name implies, the edge-proxy acts as a forward/reverse proxy to the rest of the modules and is the only component that communicates with Azure IoT Hub. The proxy module uses client certificate to communicate with Azure IoT Hub and uses AMQP over WebSockets (on HTTPS port 443). The proxy module facilitates the communication to and from on-premises to cloud.

The proxy module is also responsible for instantiating, managing, monitoring and updating the rest of the modules running on the Edge. It also emits life-cycle events when the modules are stopped, started, etc. The proxy module also emits telemetry data reporting the health of the Edge gateway such as the CPU, memory, disk space, etc.

# edge-broker

MQTT is chosen as the messaging protocol and the modules, built by the business lines, connect to MQTT bus to send and receive messages. edge-broker takes a role of MQTT broker, hence all communication between other modules is enabled by this core module.

# edge-router

This is an optional module that can be run on your device, if needed. It allows to route telemetry messages to various endpoints. Read more about it here.

Last updated: 9/6/2021, 1:25:50 PM
Feedback