SparkFun Forums 

Where electronics enthusiasts find answers.

For the discussion of Arduino related topics.
By SodBuster493
#193067
I have an application where I want to control a 3-way valve. I am also very new at Arduino programming. When an input is received, I need the valve to index 180 degrees CCW and 180 CW, I won't be able to just continue in the same direction because of hard stops on the valve. Because of this, I plan on monitoring the position state of the valve via reed switches and magnets.

My question is this - what motor style would be recommended? My initial thought was stepper. I could use the step functions to control how far to index, and use the inputs from the reed switches to control the direction. But because I'm using reed switches for feedback, I could use by-pass the counting and use just a regular gear motor to spin the direction needed until the appropriate reed switch is triggered. So, what would be easier to program and which would be more appropriate for the application? A stepper, DC gear motor, or even servo? This is a 1/2 ball valve, so a fair amount of torque will be needed, but I can take care of this through gearing if needed.

Thanks
By lyndon
#193081
If you have limit switches and only need the two stopping points, then a gearmotor or a servo will be fine. Steppers add complexity and they're pretty inefficient to boot.
By SodBuster493
#193094
Thanks lyndon. This complexity is what I was starting to notice. Controlling a DC Gear motor is much cheaper and easier.
By lyndon
#193103
Glad I could help. I used to post a schematic showing how to do this (run a motor between two points) with just a couple of relays and no electronics. However, prices have come down to the point where it costs less to do it with a motor driver and a small Arduino than with the relays!