Last month, I presented a one-hour webinar (seen below) on the industrial Internet of Things (IoT). After describing what the industrial IoT means to Kepware, I explored three real-world use cases by Kepware customers:
- Industrial data over web services for manufacturing execution
- Mobile and web interfaces for manufacturing systems
- Industrial data for Cloud and Big Data systems
These use cases demonstrate how real-world companies are solving their industrial connectivity challenges and improving traceability, visibility, and product quality with industrial IoT solutions. But with so much to cover during the webinar, I didn't have time to answer each question that was asked. With topics spanning everything from IoT Gateway agent features to data buffering and vendor-specific connectivity, I thought it would be helpful to re-visit and share them. Please find these Q&A pairs below.
IoT Gateway Agent Features
Q: Can you explain what other transfer protocols are supported besides MQTT?
A: The IoT Gateway also supports HTTP (RESTful client and server).
Q: Do you provide MQTT with SSL?
A: Yes, our MQTT Client agent uses SSL/TLS for encryption.
Q: Does the IoT Gateway support HTTPS (secure HTTP)?
A: Yes, both the REST Client and REST Server agent types support HTTPS.
Q: Is it possible to use the IoT Gateway's ThingWorx agent type to write to a PLC?
A: No, the ThingWorx agent does not support writes to PLCs; however, the ThingWorx Native Client Interface support does (and is available in KEPServerEX version 5.21 and above).
Q: Are store and forward built into the MQTT or REST clients in case you lose connection to the Cloud?
A: There is currently a fixed buffer built in (10,000 updates buffered per agent), but we are looking to enhance this to be more robust.
Q: What is the best way to configure security?
A: Utilize username and password authentication as well as SSL/TLS when available.
Q: What is the method for refreshing data?
A: Sample rates are configured as a property of each tag added to gateway agents.
Q: Do we need to poll every X amount of time or are you using WebSockets?
A: The MQTT, ThingWorx, and HTTP client agents push/publish messages at a specific interval. Of the three, only the ThingWorx agent uses WebSockets.
Q: How do you make certain that all data reads belong to the very same part?
A: This is handled by the handshaking that is built within the messaging between the MES and the PLC, which ensures deterministic data flow between the different components. The PLC can also be configured to store related data as an array; arrays are read with a single read transaction.
Q: Can you please explain what support KEPServerEX has for mission-critical, low-latency types of data traffic and applications?
A: For low-latency requirements, it's important to know that the maximum processing interval for KEPServerEX is 10 ms, so it's not suited for all environments. However, if by "low latency" you mean 50 to 100 ms, that's a more realistic performance expectation.
Q: How is raw unstructured data ingested into KEPServerEX? Can KEPServerEX take unstructured IoT sensor data and apply formatting to normalize it?
A: Yes, KEPServerEX helps to structure unstructured data. The agents that publish data to web server endpoints have flexible data modeling features that help add context. Some of the formats that can be created are XML, CSV, and HTML.
Q: Does KEPServerEX contain an edge analytics server capability, so that not all data has to be sent up to the cloud analytics engine (such Microsoft stream analytics service)?
A: Analytics capabilities are not built into KEPServerEX. Many tools (like Azure, AWS, ThingWorx, and so forth) have toolkits that can be used to build analytics tools to operate locally without needing to send the data to the Cloud.
Q: Is there a solution for getting data from EtherNet/IP and HART IP instrumentation in process automation?
A: Kepware currently lacks native support for EtherNet/IP and HART IP, but gateway devices can be employed to convert these protocols to other standards that are supported (such as Modbus TCP).
Q: The beginning of the webinar showed an app called "RST KEP IoT Explore". Is this available for common use?
A: No, this is a test client developed by a Kepware partner.
Q: Can we write to OSI and Azure at the same time (same data)?
A: Yes, you can.
Q: Is Node Red something you have to get separately from Kepware?
A: Yes, it is an open source tool built upon Node.js. You can find information about it at nodered.org.