To decrease the number of pumps, I am pretty sure it need only change the Not(Pump[X].Running) to Pump[X].Running.
You also need to shut down the biggest runtime, not the smallest. So seed the runtime check register with 0 not 999999999
When I do this, runtime is only part of the criteria for starting the pump. Some clients also want to intentionally take a pump out-of-service so that it's not included in the "sort". Some do this with the HOA switch; others are content with an HMI selector.
Similarly, if a pump trips, the "selection sort" needs to run again and ignore the failed pump. Hence those criteria are in the "Who's Up Next?" logic.
But obviously are not needed for the "Who's Down Next?" logic.
-------- EDIT --------
There's debate about the value of trying to maintain a balanced runtime on multiple pumps:
On one hand, it does ensure that one doesn't sit idle for too long and then fail just when you need it most.
On the other hand, it also means that they'll all hit their "Maintenance Required" time fairly simultaneously.
Last edited: