The MKS Industrial Internet of Things (IIoT) Software Development Kit (SDK) consists of MKS API C++ libraries and a background process that handles IIoT gateway functionality such as The Object Management Group® Data-Distribution Service (DDS) for creating a publishing and subscribing application running on INtime for Windows, Windows 7, and Windows 10-64 IIoT Long-term Servicing Branch (LTSB) Enterprise. The MKS SDK shortens development time for the application developer and creates a robust application by leveraging the DDS protocol for distributing data in an IIoT environment. A client application built with MKS' SDK communicates seamlessly with MKS' gateway process, included with the SDK, via an MKS proprietary inter-process communication protocol which sends and receives DDS data via the gateway. The MKS gateway application uses an SDK from Real-Time Innovations (RTI), a leading developer of DDS. Leveraging this architecture frees the user from maintaining third-party DDS development licenses. The SDK supports:
The MKS IIoT Gateway SDK uses the DDS protocol. DDS is a deterministic, low-latency protocol designed for real-time or near real-time operations and accommodates high data rates and high performance. It's key benefit is that applications using this protocol are decoupled. This means that little design time is needed for handling interactions between nodes. The applications transparently handle message delivery without any requirement for intervention by user applications and never need information about other participating applications, including their location. DDS has 23 Quality of Service (QoS) policy levels including but not limited to security, priority, reliability, urgency, and durability. It is optimized for distributed processing in decentralized networks, avoiding single point of failure (SPOF) concerns. DDS is a scalable protocol optimized for distributed processing. The DDS protocol can be difficult to implement and devices using the DDS protocol need sufficient RAM and processing power. DDS uses User Datagram Protocol (UDP) to avoid large numbers of connections. Because of its beneficial features, DDS finds broad application in industrial environments that require real-time data exchange. These include aerospace/defense, medical devices, robotics, power generation, and semiconductor device manufacturing.
The MKS SDK comes complete with Visual Studio plugins, sample project and detailed online documentation for quickly creating a client application that can send and receive data to and from the gateway using a few simple steps. The SDK comes with a standard data definition to handle a wide range of data definitions. Additional custom data definitions can be created on request.
INtime Publisher and Subscriber applications both performed at less than 2 milliseconds over the network and 500 microseconds between applications using shared memory.
Publishing and Subscribing of data between applications running under control of separate operating systems on the same hardware system can also be accomplished using a shared memory interface.
Below is a representative real-world application of the MKS HyperPAC Industrial PC in an IIoT setting. The HyperPAC is employed as a chamber controller that collects data and controls the chamber along with any ancillary instruments using EtherCAT® or DeviceNet™ protocols, processes this data and passes it on to Edge Analytics, cluster controller, and client databases using the DDS communication protocol. It can function as the Fieldbus Master, running recipes and control algorithms, as well as a gateway to higher level controllers or analytics servers via IIoT protocols such as DDS via the MKS SDK. The HyperPAC features 5 Ethernet ports, with DDR4 ECC memory, two SSDs, one removable and one internal. It has an Intel Xeon CPU with C236 PCH that supports Windows®10 IoT Enterprise LTSB, TenAsys INtime Real-time Operating System (RTOS) for Windows. Using system partitioning to support real time control performance, process control and critical applications run under control of the real time OS while the IIoT gateway functions run under Windows control. Furthermore, the MKS SDK provides an interface between the Windows and INtime Processes. The MKS SDK provides the IIoT with a great deal of flexibility. The MKS IIoT gateway runs either an EtherCAT or DeviceNet master that provides data communication by EtherCAT or DeviceNet from device to device. The IIoT gateway in the HyperPAC converts data from EtherCAT or DeviceNet slave networks to DDS for publication to client systems such as Edge Analytics and fab enterprise systems. The EtherCAT Master allows the configuration and management of EtherCAT networks with configurators supporting detection, configuration, and debugging. The MKS IIoT gateway SDK uses a Visual Studio plugin that allows for convenient browsing of online programming documentation, GUI based configuration of DDS QoS settings, code generation, and Visual Studio solution/project creation. The HyperPAC supports configuration tools for streamlined support of fieldbus devices and a Performance Diagnostics Dashboard to facilitate optimal performance.
MKS' IIoT Gateway and SDK speeds time to market by providing developers access to built-in libraries and plug-ins, enabling users to write high level code in the API, without having to dive deep into the DDS, network, and OS layers. The SDK has a Visual Studio plug-in such as C++ project template or Document Viewer that allows the user to create features more easily than writing code from scratch. MKS' SDK reduces the effort needed to expand functionality or add new features to the systems over time; the loose coupling of data-centric publish/subscribe fosters modularity and good architecture. MKS SDK integrates multiple fieldbus's from 3rd party I/O cards or Ethernet IP data streams, acting like a data gateway consolidating into a single path.