I need a stepper motor and a driver to control it. But I don't know which would meet my needs. I have an Arduino MEGA 2560 if that's relevant.


I need to close and open a Nupro valve with precision. I will use some kind of gear to join the motor to the key. The most important is to detect when the stress of the motor changes and stop it when the valve is completely closed, to prevent any damage.



I have been taking a look and I think the driver TMC2130 could suit my needs. It has the stallGuard2 technology that detects the motor stress and reduces the consumption when the motor is idle. It is common in 3D printers, but it has many other applications.

Is there any better driver? If there is a shield for my Arduino would be more convenient.

Stepper Motor

I would like to know which should be the minimum features of the stepper motor that I need:

  • Torque. I don't know how much is 1Nm or 1mNm. I mean, I don't know how much I need and how to calculate it
  • Voltage. 0..46V DC
  • Current. The driver can work with stepper motors up to 2.0A coil current (2.5A peak)
  • Wires. I didn't find how many wires are supported by the driver I suggested
  • Step angle. I think 1.8º would be enough, but I am not so sure

I think one equivalent to this continous servo would be enough. That motor has the maximum of 6V and 190mA.

Would this NEMA 17 stepper motor work?

Update (15 March 2020)

  • Torque:

    • I have realised that in the datasheet of the servo is written 38 oz in of maximum torque, 0.27 Nm aproximately. So that should be enough for the Stepper Motor I hope, I will also add some gear and the torque will be a little bit higher and precise

    • Valve. The documentation of the Swagelok Valve (S Series) is here. The working pressure is 2000 psig = 137 bar.

      However, I am going to work just with gas, so I think that 0.27 Nm would be enough so far.

  • Wires. I will work with bipolar mode. So I just need to pay attention to the cables that go in each coil

  • Step angle. I will improve the precision adding a gear to the stepper motor. And I will use "Full Step" to keep the motor in the right position as Tony suggests

  • \$\begingroup\$ I would start with researching the first bullet. It is not a rocket science and the information is free. But before calculating for a motor you need to measure how much you actually need with your actual load.. \$\endgroup\$
    – Eugene Sh.
    Mar 10, 2020 at 21:02
  • 1
    \$\begingroup\$ @RonBeyer nupro valve specs are here: swagelok.com/downloads/webcatalogs/EN/MS-01-142.PDF A lot of specs but nothing about needed torque \$\endgroup\$
    – avelo
    Mar 12, 2020 at 8:05
  • 1
    \$\begingroup\$ Furthermore, swagelok indicates this about needle valves (like this one): Valves that have not been cycled for a period of time may have a higher initial actuation torque \$\endgroup\$
    – avelo
    Mar 12, 2020 at 8:12
  • 1
    \$\begingroup\$ Gears improve torque but add backlash \$\endgroup\$ Mar 15, 2020 at 15:56
  • 1
    \$\begingroup\$ No I Meant what I just said. the results are easy, but writing good specs are hard. E.g. the torque might damage the valve and a spring coupler might be needed. \$\endgroup\$ Mar 16, 2020 at 22:06

1 Answer 1


This is not how you make a simple hydraulic linear fluid valve, but one that is precision controlled to your specs.

enter image description here

In order to make it linear, you need to know the torque transfer function might not be position-dependent with ageing on the valve or water pressure. But you do need to control torque with a motor. The best way is to use current to control the motor torque limit, but you need to define position, velocity and acceleration as ther emay be some backlash. You can attempt to measure it and then do the same for your stepper motors vs voltage or current limit then define a,v,x transfer functions. To allow cogging with low torque limit, recal is needed to home position. Full Steps can be used.

  • \$\begingroup\$ Thanks for answering. I think the driver I am suggesting can measure well the stress to detect if the valve is already closed. Also, I will use Full Step as you suggest to keep the valve in the right position better. To get more precision (to close and open the valve in more steps) I will add some gears as well \$\endgroup\$
    – ChesuCR
    Mar 15, 2020 at 0:55
  • \$\begingroup\$ As you can see I have updated my question. I added the pressure that the valve can bear. I don't really know how can I calculate the torque with that datum, but as I will work with gass, I think that 0.27Nm would be enough for me \$\endgroup\$
    – ChesuCR
    Mar 15, 2020 at 1:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.