Application Programming Interfaces (APIs) have been used for many years to allow computer programs to exchange information. A common example is with Websites, where one site will use data from another site, like a LinkedIn or Twitter feed. However, they have not been commonly used in manufacturing systems. As more systems are connected through Industry 4.0 initiatives, APIs will be more commonly used. But what exactly are APIs? And how can they be used for Smart Manufacturing and Industrial Internet of Things (IIoT) applications?
What is an API?
An API is a set of definitions and protocols that are used for building and integrating different application software, so that they can communicate with each other. It can be thought of as an agreement between an information provider and consumer. The consumer will make a call or request (ask for information) and the provider will provide a response (give the information). The API defines how the question needs to be formulated in order to get the desired answer. The API also defines how the answer will be provided.
Types of APIs
There are many APIs that can be used, but Representational State Transfer (REST), or RESTful APIs, are the most common. They are a defined structure using common Web protocols and data formats. When a consumer application wants information, it will make a hypertext transport protocol (HTTP) request to the provider which responds with the formatted data. Like APIs, there are many data formats that can be used, but JavaScript Object Notation (JSON) is the most popular in most applications due to its simple data structure. It should be noted that while it has Java in its name, JSON is language-agnostic, taking advantage of how data is assembled.
Another API that is sometimes used is a Simple Object Access Protocol (SOAP) API. Unlike REST, SOAP is much more structured, and little needs to be known about the request and response format. When using SOAP, the information provider uses a Web Services Description Language (WSDL) file to facilitate the data exchange. While this might seem easier, it has specific requirements which often makes it slower and heavier.
Applications
Within the context of Industry 4.0, many more manufacturing systems will be connected using APIs. For instance, a supervisory control and data acquisition (SCADA) system will connect directly to a computerized maintenance management system (CMMS) for creation and management of work orders. Quality information, like instrument calibration data, will be historized along with process data. Data from disparate systems will easily be visualized from a common platform.
A typical scenario would include a line operator and a downtime event. Traditionally, when the event occurs, the operator will attempt to fix the problem. If it requires a maintenance person, the contact is done through other means, like a radio or telephone. The technician will arrive at the line, make the repair and the line will start running again. Only the line stop-time and start-time events are captured in real time. Other events (such as work order, dispatch, arrival at the line) wouldn’t be known.
Using an API, the operator can generate a work order or work order request, directly from the control system. The maintenance person will be dispatched through the maintenance system. The technician will log into the control system, make the repair, and then update the status of the work order at the line. In this case the work order generation, dispatch, and arrival times are all captured along with the downtime and start events.
APIs are not just limited to software systems. As more data is available from edge devices, such as instruments and sensors, the hardware that is used to connect these devices will use APIs. For instance, using a similar scenario outlined above, a programmable logic controller (PLC) controlling a remote asset, like a compressor, will use an API to make the request directly to the work order system based on operating conditions and states. The upside is that APIs are used to connect disparate devices and systems so that they can function more effectively and efficiently.
Moving Forward
In the future, there will be an increased need to support the use of APIs on a lot of equipment. It will be critical for people who have not used them, like control systems engineers and technicians, to be able to make requests and parse the responses. Familiarity with REST and JSON will become required for these roles. Along the same lines, more hardware will need to support this functionality in order to be considered within Smart Manufacturing applications.
While I have mentioned manufacturing systems and devices, there are many more uses for APIs. Industries that have remote assets, like oil & gas or water, will use APIs to get geolocation data. Weather data could be captured along with location data to view them in context. In the agricultural industry, APIs are used to display information like commodity pricing. It may be beneficial to consider some of these to include in a manufacturing environment.
As managers look to close the so-called skills gap, they will need to consider these capabilities when adding or replacing roles in a plant. It is highly recommended that managers learn these skills as well. When Industry 4.0 initiatives are planned and executed, the capabilities of the new systems and equipment will need to be considered as part of the technology stack.