loading

555 frequency control another 555 controlling a servo motor.?

Hey guys, I have another question. I'm in the planning stages of a project, It's basically supposed to be an astable 555 sending out a frequency that's supposed to control the mark space ratio of another 555 that's going to send a signal to a servo motor, causing it to oscillate back and forth.

Tl;dr, I want to make a servo wiggle around with two 555s. I have used the output of a 555 to modulate another one before, but I understand that using a 555 to control a servo is slightly different than just audio output.

So is there anything I should be aware of? Is there anything I can read or look at to point me in the right direction? Thanks.

EDIT: I just had an idea. What if I took the output of the first 555 (thus forth referred to as IC1) and used it to turn on a transistor, which connects a resistor in parallel to some part of the IC2 which decreases mark space and turns the servo.

https://www.instructables.com/id/Simple-Servo-Tester/

This one uses some pots to control rotation, if a resistor is connected in parallel using a transistor... something will happen. It moves.

sort by: active | newest | oldest
Its going to take you three 555 timers, but here's the circuit for the hard bit.

You need to sort out your position signal, a 50Hz square wave reference and the scaling for the whole shebang, but....

The UN modulated pulse width = 1.1 x R x C.

You'll need the usual supply reservoir caps, and a 100nF across that.

Steve
Darn.
Bigger picture
555 PWM.jpg
mrmerino (author)  steveastrouk4 years ago
Three timers? Yikes. Ok then, how would that work?
Read the circuit.....

1.) As shown,
2.) one to make a 50Hz 90% pulse train.
3.) One to provide your 0...3V modulation signal

Three.
fliboyzz4 years ago
Hi,
if you haven't found your solution yet. there is another post on here for a single servo walking robot that uses a different type of logic chip that seems to accomplish what you are looking for. search this site for "one motor walker", write-up by robomaniac
What kind of frequency do you want to wiggle it at ?
mrmerino (author)  steveastrouk4 years ago
I want it to go back and forth at maybe one or 1.5 hertz, but I want to put a trimpot so I can fine-tune it. The first 555 is the easy bit, I'm not worried about that, it's how do I get the output of the first one to modulate the second one.
rickharris4 years ago
Understand how the servo works - I assume your talking an RC servo

If so assuming an analogue servo not digital:

They are operated by a pulse width modulation - changing the pulse width changes the position so it is the mark space ratio (off on ratio) you need to change not the frequency.
mrmerino (author)  rickharris4 years ago
Right, yeah. I was somewhere else when I wrote that. But you understand what I want to do right? I want to use one 555 to alter the duty cycle of another. Can I do that?
mrmerino (author)  mrmerino4 years ago
Duty cycle. Shut up Mr. Merino, you have no idea what you're talking about. Let the nice man explain how to modulate the mark space.
To be honest I am not too sure - The M/S of the 555 is set by the Resistor and Capacitor connected to Pins 6 and 7 trig and threshold.

http://en.wikibooks.org/wiki/Practical_Electronics/Astables

shows a way to alter the M/S ratio by altering the resistor R1 R2 values. I can see you doing this with another 555

To be honest I would use a PIC micro - My choice would be from www.PICAXE.com

They interface direct to the servo and program in basic which is way easier than the A'duino and battling with C
mrmerino (author)  rickharris4 years ago
I kind of need this to be as simple as possible, since I need this done in a few days. I also don't have quick access to a microcontroller, so I figured that 555s would be easy (if I clean my desk I could probably find 30 of them).

Again, thanks.
https://www.google.co.uk/search?num=10&hl=en&safe=off&site=imghp&tbm=isch&source=hp&biw=1760&bih=842&q=555+servo+driver&oq=555+servo+driver&gs_l=img.3..0i24.1781.5421.0.5548.16.9.0.7.7.0.128.879.8j1.9.0...0.0...1ac.1.ty-X3oMHPrk

may be useful