Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Electrical (http://www.chiefdelphi.com/forums/forumdisplay.php?f=53)
-   -   Servo question (http://www.chiefdelphi.com/forums/showthread.php?t=111830)

Micah Chetrit 22-01-2013 19:57

Servo question
 
Hello,
This is not about FRC, just a project, and CD is my go to place for electronics and such.

I am not an expert on circuit theory or servos, and I am trying to help a friend on a project. He wants it cheep (so no arduinos), and he needs it so when you flip a switch, the servo goes from full forwards, and when you switch it again, it goes full backwards (if it can only go to center, that's fine too). Is there an easy way to do this? I would think that putting the switch inline with the white signal wire would do the trick for center to one end. Can I get some expert advice?
Thanks for your time,
Micah

Ether 22-01-2013 20:38

Re: Servo question
 
Quote:

Originally Posted by Micah Chetrit (Post 1220239)
Hello,
This is not about FRC, just a project, and CD is my go to place for electronics and such.

I am not an expert on circuit theory or servos, and I am trying to help a friend on a project. He wants it cheep (so no arduinos), and he needs it so when you flip a switch, the servo goes from full forwards, and when you switch it again, it goes full backwards (if it can only go to center, that's fine too). Is there an easy way to do this? I would think that putting the switch inline with the white signal wire would do the trick for center to one end. Can I get some expert advice?
Thanks for your time,
Micah

How are you generating the PWM signal that the servo requires?



Sparks333 22-01-2013 20:48

Re: Servo question
 
I'd recommend a 555 timer - there are circuits online that do this. They're known rather humorously as 'servo exercisers'. They work by having one 555 generate a pulse train at the required frequency (usually around 50 Hz) and sending it to a second 555 in monostable multivibrator mode that controls the duty cycle. By changing the RC set circuit on the second 555, you can make the servo move back and forth. Find a combination that gets you the two positions you want (most likely by having two different resistors) and use a switch to choose between which one connects to the 555.

Here's a schematic from the good people at the Seattle Robotics Society:

http://www.seattlerobotics.org/encod...Excerciser.htm

Good luck!

Sparks

Micah Chetrit 22-01-2013 21:05

Re: Servo question
 
Quote:

Originally Posted by Ether (Post 1220256)
How are you generating the PWM signal that the servo requires?



Can you not give it a solid voltage and have it think that the signal is constantly high? Or does that not work?

Sparks333 22-01-2013 21:17

Re: Servo question
 
I think I see the confusion. I'm afraid servos are a bit more complex than that - they depend on seeing a pulse-width modulated (PWM) input as sort of a heartbeat, so they can tell the difference between being given a signal and being unplugged (it's a safety thing, and it's good, trust me). A typical hobby servo PWM signal pulses at 50 Hz and has a pulse width of between 1 mS and 2 mS - the wider the pulse width, the greater the angle (with 1.5 mS being neutral). Unfortunately, no servo I know of will respond in any way to a constantly-high or constantly-low signal - they specifically require that they be pulsed at 50 Hz (though that spec can be a little loose) with a pulse width between 1 mS and 2 mS. If you want dead-simple low-power full-CW or full-CCW and don't have the patience to do hobby servos, you might try wiring to a motor directly to a double-pole double-throw switch that either makes the motor rotate CW or CCW, and use limit switches to break connection when you get to your desired angle.

Luck,

Sparks

Micah Chetrit 22-01-2013 21:23

Re: Servo question
 
Quote:

Originally Posted by Sparks333 (Post 1220276)
I think I see the confusion. I'm afraid servos are a bit more complex than that - they depend on seeing a pulse-width modulated (PWM) input as sort of a heartbeat, so they can tell the difference between being given a signal and being unplugged (it's a safety thing, and it's good, trust me). A typical hobby servo PWM signal pulses at 50 Hz and has a pulse width of between 1 mS and 2 mS - the wider the pulse width, the greater the angle (with 1.5 mS being neutral). Unfortunately, no servo I know of will respond in any way to a constantly-high or constantly-low signal - they specifically require that they be pulsed at 50 Hz (though that spec can be a little loose) with a duty cycle between 1 mS and 2 mS. If you want dead-simple low-power full-CW or full-CCW and don't have the patience to do hobby servos, you might try wiring to a motor directly to a double-pole double-throw switch that either makes the motor rotate CW or CCW, and use limit switches to break connection when you get to your desired angle.

Luck,

Sparks

Thanks for that explanation, I didn't realize the safety feature. I think I may try the limit switch idea, thanks for all the help!

Ether 22-01-2013 22:01

Re: Servo question
 
Quote:

Originally Posted by Micah Chetrit (Post 1220271)
Can you not give it a solid voltage and have it think that the signal is constantly high? Or does that not work?

That doesn't work. The circuitry in the servo is looking for edge transitions in the input signal, and it measures the time between rising and falling edges. The time between rising and falling edges is the pulse width. If you give it a constant DC voltage as you proposed, there are no transitions, so the servo does not respond.




All times are GMT -5. The time now is 11:17.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi