This would be extremely accurate and could control the total volume also.
I bought this driver to run that motor:
https://www.mpja.com/Stepmotor-Driver-3A-Max-TB6560/productinfo/31306 MS Those are all gone but you can find similar on line.
You hook the motor directly to the board. You put power to the board, 12 or 24 volts.
The board wants 2 more inputs. The direction input wants 5 volts to turn the motor one way and 0 volts (ground) to turn the other way. The step input wants a 0 volts to 5 volts pulse. On the above motor, one step will turn the screw 1/200th of a revolution. 200 steps for a full revolution.
I started playing with these long ago by writing Basic programs that sent the outputs to the parallel printer cable.
If you are not a programmer, I think you could use this interface.
**broken link removed**
And the free version of the MACH3 CNC controller program.
If you set it up that one motor is the X axis and the other motor is the Y axis, you can enter a “G-Code” command that will run both motors a precise amount.
I’m not very familiar with it yet but I think “G0 X400 Y100” would step one motor 400 times and the other 100 times.
You will find an overwhelming amount of info on this subject at
https://www.cnczone.com/forums/index.php