Here’s how I would approach your requirements.
I would use a UDC (Up Down Counter) to keep track of how many pumps need to be run. So if you need one pump the current value of the UDC will be 1, if you need 6 pumps the UDC current value will be 6. Each time you need another pump you increment the UDC, if you need one less pump you will decrement the UDC.
Now you need some logic to set the pump sequence. You associate a V memory location for each pump, this memory location will be used to set the order in which the pumps will run. So you could use V2001 = Pump 1, V2002 = Pump 2 ... V2012 = Pump 10. Then you assign a value to the V memory locations for the pump run sequence. You will use two counters to do this, one to keep track of the last pump run and another to assign the number. So lets say that Pump 3 was the last pump run, when we go assign the next sequence we will assign a value of 1 to V2004 (Pump 4), a value of 2 to V2005 (Pump 5), a value of 3 to V2006 (Pump 6) and so on. For any pump that is not available you would assign a value of 20 to it’s V memory location.
Now the pump run logic is pretty simple. The logic to run the pumps is –
If V2001 >= UDC (current value) then run Pump 1.
If V2002 >= UDC (current value) then run Pump 2.
If V2003 >= UDC (current value) then run Pump 3.
If V2004 >= UDC (current value) then run Pump 4.
If V2005 >= UDC (current value) then run Pump 5.
If V2006 >= UDC (current value) then run Pump 6.
If V2007 >= UDC (current value) then run Pump 7.
If V2010 >= UDC (current value) then run Pump 8.
If V2011 >= UDC (current value) then run Pump 9.
If V2012 >= UDC (current value) then run Pump 10.
So here’s an example, we’ll say Pump 3 was the last pump run and Pump 6 and Pump 2 are not available to run, here is what your run logic will be -
If 7 >= UDC (current value) then run Pump 1.
If 20 >= UDC (current value) then run Pump 2.
If 8 >= UDC (current value) then run Pump 3.
If 1 >= UDC (current value) then run Pump 4.
If 2 >= UDC (current value) then run Pump 5.
If 20 >= UDC (current value) then run Pump 6.
If 3 >= UDC (current value) then run Pump 7.
If 4 >= UDC (current value) then run Pump 8.
If 5 >= UDC (current value) then run Pump 9.
If 6 >= UDC (current value) then run Pump 10.
Now the UDC current value will determine how many pumps will be on.