Flow control of paint dosing machine (at Balta group)


The Balta Group in Belgium produces carpets. Some of the carpets are dyed with different colors. In order to apply the dye correctly, the flow control system of the dye machine must be fast and accurate. The Balta Group was not satisfied with the accuracy and suspected the PID controllers for flow control were not tuned correctly. Therefore, the Balta Group purchased a PID Tuner license that comes with DotX support.

The figure below shows an open loop step response of the flow, and the model fit to it. We then went on to the PID Tuning section. However, we could stop right there because the simulation with the 'old' PID parameters predicted instability while that did not occur in practice!


Figure 1: open loop step response


Finding the cause of the problem (part 1)

In such a case (where the model predictions are incorrect) the first thing you must realise is that there is something wrong! Apparently, the assumptions of the PID Tuner were incorrect, meaning that either the PID controller in the PLC behaves differently from what the PID Tuner thinks, or the Model Fit (i.e. the open loop process model that was fit to the open loop step experiment results) was incorrect, or both. We ran a verification test with the old PID parameters (this is possible with the PID Tuner), and generated a report. The report shows a check if the PID in the PLC behaves in the same way as the PID assumed by the PID Tuner.
The figure below (Figure 2) shows that the shape of the assumed PID controller is correct, but there seems to be a scaling in the PLC that was not passed on to the PID Tuner. The PID Tuner comes with an estimate of this scaling factor, but it is always better to find out in the PLC exactly how this scaling is defined. And then pass it on the PID Tuner!


Figure 2 Simulated and measured response of the PID controller.


Finding the cause of the problem (part 2)

After we had sorted out the scaling issue (the correct scaling factor was passed on to the PID Tuner), the PID Tuner still predicted unstable closed-loop bahvior with the 'old' 9existing) PID settings (Kp = 1, Ti = 0.3s). We therefore investigated the open loop response more closely. If you look closely at the measured open loop response in Figure 1, you will see that the response looks 'block-like'. The control engineer of the Balta Group observed the signals in the PLC and noticed that also there, the flow signal changed block-like, while the actual raw flow signal was smooth. He later send me a picture of this, see Figure 3. The yellow line is the raw flow signal, and th ebleu line is the signal that entered the PID block.


Figure 3: Measured flow in two ways. Yellow: raw flow signal entering the PLC. Bluelin: flow signal as it entered in the PID block.


Finding the cause of the problem (part 2)

Clearly, there was something wrong in the way that the PLC treated the flow signal. The control engineer of Balta fixed the problem, after which we got a much better open loop step response, without strange blocky behaviour! Figure 4 shows the open loop response after the 'repair' and Figure 5 shows a verification experiment with the new PID settings as calculated with the PID Tuner (SIMC tuning rules). Clearly, the simulated closed-loop response now closely resembles the measured one, indicating that the PID controller behaves as expected (by the PID Tuner) and indicating that the Model Fit (i.e. process model assumed by the PID Tuner) is suitable.


Figure 4: Open loop response with the 'repaired' PLC code. Clearly, now the flow signal is much more accurate.


Figure 5: Measured and simulated response with the PID controller tuned by the PID Tuner.



What was the result? Figure 6 shows a comparison of the closed-loop responses 'New' versus 'Old'. The 'New' response is about 4 times faster, and the control accuracy has improved to such an extend that rejections on quality hardly occur anymore. Changing the PLC code to make the flow signal sufficiently accurate was one of the biggest contributors, but the fact is that this was not considered a major problem until we applied the PID Tuner to this case. Thanks to the model-based approach of the PID Tuner, we were able to detect that this was a major issue. Moreover, we were able to verify that the new PID closed loop behavior is close to optimal!


Figure 6: Old versus new response.