01The water batch
Finding
A mixer transferred 5,000 L of water to the tank as lemon syrup.
Cause
An aborted batch had left 2,600 L of water in the mixer. The next batch started without a level check, and setpoints were booked.
Solution
A batch only starts on a free and empty mixer. The measured actual quantities are booked, not the setpoints.
02One row per second
Finding
At every order change, the MES reported “Error recording OEE values” – in exactly the second of the change.
Cause
The OEE recording of the MES modules from Sepasoft writes only one row per second and per line. We ended the old run and started the new one in the same call.
Solution
Changeover in two stages: end the old run, start the new run in the next 10-second cycle. This way, each run gets its own row.
03Traceability without gaps
Finding
82 of 391 syrup batches over three days had no output lot. That is where traceability broke off.
Cause
A withdrawal could not be split across several lot states. Our workaround, “Blend Lot”, booked incorrectly: for tank TK01, 50,271 L against 24,213 L physically present.
Solution
First, the booking chain was repaired: after that, 57 of 58 batches were complete. Then the comparison with the vendor documentation: the intended Auto Lot Completion function instead of a custom solution, with the threshold sized to the smallest withdrawal.
04Capacity, not a bug
Finding
Lines stood idle although orders were pending. First suspicion: a bug.
Cause
The bag-in-box line fills pure syrup and drew 31,000 of 34,324 L of syrup demand. Four syrup tanks are not enough for this order mix.
Solution
No code was “fixed”; instead, the bottleneck was proven. The scheduling board now tracks tank levels per type and reports a syrup shortage as a planning alarm.
05History −93 %
Finding
The tag history wrote 28.6 samples per second, around 235 MB per day.
Cause
Too much was recorded, too often. On top of that came write amplification of 437 partition copies per hour.
Solution
Signals selected, tag groups and deadbands set (values are only stored above a minimum change): 2.05 samples per second, around 17 MB per day – no trend is missing.
06The PLI bridge
Finding
Sepasoft Batch Procedure and the controller did not understand each other: commands and state numbers did not match.
Cause
The controller has its own state machine. That is exactly how it looks in existing plants, too.
Solution
A bridge translates commands and states at the PLI (Phase Logic Interface, the interface between batch control and plant). The first real batch ran through on the first night of the project.