Recently there has been increasing activity on gathering information from IoT devices that are connected, but not necessarily able to communicate with a cloud service. These “Edge” devices generally live on the Edge of the Network within an enterprise. They are specific hardware sensors, industrial controllers, or other industrial devices residing on private or potentially proprietary networks at a physical location.
Edge devices are creating quite a challenge for systems integrators since most are generally building cloud-based applications which rely on receiving information from IoT devices to accomplish the business goal. There are many challenges that exist in developing a path for this information flow, including: message/network protocols, bandwidth requirements, redundant data reporting and data routing/orchestration.
While we like to think about IoT devices as being able to communicate over TCP/IP with some well-known protocol, like http, the majority of devices that are currently deployed were developed long before modern web applications. Devices were built and deployed to report using a proprietary protocol to a singular application which more-than-likely ran on a single PC somewhere near the device. Data was relayed to these applications for display, but not much attention was given to using the data for a much broader business integration. Today businesses want to integrate multiple systems to help them achieve efficiencies and that requires the data to be consumed by much more intelligent applications.
In order to accommodate this variety of proprietary protocols, gateways were deployed in the network to support multiple physical and message protocols. The problem with these older gateways is how do you program the gateways to handle all these different protocols. No one wants to write Python or some other code that can run on the gateway and deal with the headache of maintenance.
Many of the newer gateways operate on standard compute platforms and operating systems which can accommodate software platforms to make the device integration process much smoother. In addition, you can convert the data into a common format making it easier for application developers. Communicating with these new platforms can be as simple as making a standard web-services call using a variety of modern application development tools.
Another common challenge involves the bandwidth that is required to transmit the device data to the application. Many IoT devices send data at a very high rate which can sometimes swamp your available network bandwidth. Even with a Gateway, this is becoming an increasingly huge problem. I’ve seen temperature sensors send 100’s of bytes of data just milliseconds apart which could generate GB’s of data in a single month’s time generating potentially very large data transport bills.
In addition to the bandwidth requirements for the device data, much of that data is redundant. While the temperature sensor may send 100 reports per minute, it is likely sending almost the same reading for a room temperature every time. Why should you burden your application or network with sending this non-data data?
Smarter gateway platforms now are incorporating specific rules or orchestrations which allow an application to define what data should be relayed based on specific business requirements. In effect, it allows the application developer to define what data is actionable and which data is redundant. No longer does the application or network have to deal with the potential flood of data. Just react to real, actionable data without all the overhead and costs.
Orchestrations is another method to allow developers to send data to multiple systems/applications simultaneously, possibly using different methods or protocols. As an example, you might want to send parts of an IoT devices information to one system while relaying other portions to another. This can be particularly helpful in exposing information to various parties for action while maintaining security over the data.
MachineShop Edge is our industry leading software platform to help integrators and application developers overcome these problems inherent in gathering IoT data from the Edge.