Still some way to go to automatize ball valve opening and closing

As part of the Alpha rocket plumbing, a ball valve is used to set off the flow of oxidizer (in our case, nitrous oxide) and possibly to stop it, too.

Last Tuesday at the Electrolab I spent the evening preparing the electronic circuit to control a Nema 17 stepper motor, through an Arduino sketch prepared by bazza.

The motor control alone worked as intended, as is shown in this video.


Once coupled with the ball valve however (video here), the torque it provided, even multiplied by 2 through the gear ratio, was not sufficient to rotate the ball valve mechanism. The ball valve itself is designed to withstand 300bars, a good security margin vs the 60-70bars pressure we plan in the oxidizer tank, yet it also requires a sizeable torque to rotate. With rudimentary tests, we had calculated the torque needed to rotate it to be 0.6Nm. As the Nema 17 stepper motor has a holding torque of 0.48Nm, we expected that with the multiple given by the gear it would be sufficient to activate the valve.

It does appear, as we were warned, that "holding torque" is not the same as the torque the motor can provide to actually move something.

So the next step here, rather than going for a bigger motor, is to go for bigger gears on the valve instead. The drawbacks of this is of course the size of the full system (but not much of an issue for a static ground test) as well as the time the motor will take to rotate the valve a quarter turn - we will have to see that through experimenting.


My next action that night was to saw the whipped cream siphon I purchased earlier this month to extract the small part that opens and discharges the whipped cream chargers that one can easily source (yes, you may have nitrous oxide in your kitchen without knowing it). A small test was performed to check that despite all the sawing and grating the part was not damaged - nice effect inside the video.

The plan is now to couple this part through plumbing to the empty paintball CO2 canister I have at the lab, and transfer the content of the now 49 chargers I have in the canister. Of course the resulting pressure will not be on par with the 72 bars in the chargers, but we hope to get to 40-50 bars, which should be enough to perform a small ignition and combustion test.

This will validate the later purchase of a professionnal nitrous oxide canister - 15L for about 650€, this is of course a purchase not to make lightly!


ryan.pulkrabek's picture

Exciting experiments, Damien! At least for me it is exciting. Even if the valve failed, we know immediately how to fix this. I will print out a new gear for you this weekend and ship it to you by Monday. I may even print a couple that are different sizes to be sure.

For the static test, we can make it as large as we want. The drawback of the large gear is that it takes up more space, but, as you said, it doesn't matter for the static test. If we see that this larger gear is not usable for an actual launch, we could get around the constraint by having a gear train. Let's see how this test goes first.

ryan.pulkrabek's picture

Gears are printed and are in the process of being placed in the mail.

These gears are 32 and 48 teeth. When combined with the stepper motor gear that you have, there will be gear ratios of either 8:32 (4x torque) or 8:48 (6x torque).

You should modify the Arduino sketch to accomodate these gears. If you need to rotate the valve gear 90deg, the 32t gear should rotate 360deg, and the 48t gear should rotate 540deg.

Also, you should modify for the amount of steps/rev your stepper has. If you are using this stepper motor, you will have 200steps/rev. Currently the sketch in GitHub is written for 90deg rotation of a 1:2 gear ratio at 400steps/rev.

For your gears and motor:

Change line 35 from:

Delay=60L * 1000L / 400 / Speed;//delay between steps in milliseconds


Delay=60L * 1000L / 200 / Speed;//delay between steps in milliseconds

And change line 46 to the appropriate number. For example, for 8:32 gear ratio (360 deg of rotation for the motor at 200steps/360deg -> 200steps), change from




Damien's picture

Thanks Ryan, I did receive the gears last week. The past 2 weeks have been very crowded. But I will make sure to try the gears on Tuesday, and I should also perform some welding on the plumbing that night. I'll keep you updated.