Implementation of a Data Pump with Ignition by Inductive Automation
There are many tools on the market for historizing process data. These tools typically treat each point of data individually when historizing, which works great for trend screens and instrumentation reporting. However, it is often desirable to log a “set” or “group” of data together, associating many data points with a single event. This use case is particularly common with batching operations, where detailed records must be kept. This can be accomplished in many different ways. One such approach, that of a so-called “data pump,” is described below.
One of our solutions to this challenge is to create and log a “payload” of data each time an operation is completed on a piece of equipment. For example, consider a bulk material addition into a mix tank. This operation contains several pieces of relevant information that can be historized, such as:
- Start Time
- End Time
- Unit (Ex: Mix Tank 102)
- Batch ID
- Event Description: (Ex: “Sucrose Addition”)
- End Condition (Completed Naturally or Manually Aborted)
- Setpoint Amount (Requested Quantity)
- Actual Amount (Delivered Quantity)
- Error % ( [Actual – Setpoint] / [Setpoint] x 100 )
- Pump Speed
In order to capture this information, PLC logic is built into each operation to collect the pertinent data. At the completion of the operation, this data is then consolidated into a single record object, typically a User Defined Data Type, in the PLC. Then this record is placed into a queue object on a “First In, First Out” basis. Elsewhere in the control system (external to the PLC), this queue is monitored for new records. As new records appear, the control system reads the appropriate data from the front of the queue, logs it to a SQL database table, and handshakes with the PLC to indicate that the record has been successfully processed.
Once the handshake is received at the PLC level, the queue is then indexed to discard the previous record and move the next record forward for processing. No records are removed from the queue until the control system acknowledges successful processing of that record. In this architecture, queued data is essentially guaranteed to be logged. Even if the mechanism processing the queue fails, the PLC (and more importantly, the automated process) can continue to run as normal. In this scenario, the queue may accumulate a backlog of unprocessed records, but once the processing mechanism is brought back online they can be quickly processed. Providing a large enough queue object is important because it gives the data pump a buffer. This allows the control system to weather any interruption of communications that might occur between the PLC and the mechanism that processes the records. (more…)
Ignition by Inductive Automation Dataset Tags for Performant Dashboards
How ECS Solutions uses dataset tags in Ignition by Inductive Automation, updated periodically by gateway timer scripts, to drive graphics on dashboard displays.
This allows the dashboard to simply display the datasets rather than execute queries. This results in better overall performance of the gateway (queries are only running one time), faster load times for displays (data is already available and just has to be rendered), and transparent updates over time (no application hang for periodic data refresh).
Creating informative dashboards, especially dashboards that provide data analytics, can be challenging. Oftentimes the requirements for the dashboard will evolve as it is developed. Over time, the queries and scripting functions and analyses that drive the data behind the dashboard start to pile up. This drains resources and drags down performance. This can also leave end-users with a (technically) functional but inefficient, slow, or even “clunky” result. If the analyses are being performed on the clients (a common pitfall for an inexperienced Ignition developer), this problem is compounded as more and more users start to access or view the application, each client running its own separate queries and analyses.
5 Reasons Why Ignition is the Future of the Food & Beverage Industry
*Thank you to Inductive Automation for including us in this important piece!
In today’s world, automation is a necessity for all manufacturers. Food and beverage manufacturers in particular face a variety of challenges that make an investment in automation and supervisory control essential to remaining competitive. The market changes abruptly and often: recipes need to be reformulated to accommodate diet trends, the constant demand for innovative packaging to attract new customers, and seasonal variance of production requirements are all factors that must be considered.
Beyond FDA and FSMA regulations, manufacturers must also take into account classification and segregation of allergens during formulation and equipment cleaning, a process that mirrors requirements in the pharmaceutical industry. “The way we’ve been doing things for a long time is based on our pharmaceutical experience and seeing how food and pharmaceutical are kind of like coming closer and closer. In terms of the automation solution, it will look the same to us. It doesn’t matter if it’s food or if it’s medicine,” said John Parraga of ECS Solutions. Simply put, insufficient interoperability can endanger both public health and an organization’s bottom line.