555 IC as servo driver

I've only used the Servo.h library and read the specs on common servos.
50Hz and 1-2mS wide are the usual frequency & range.

Simulations, I don't do that. Only real hardware.

Try connecting a scope and see what you really get out.

My approach to the circuit would be using two 555s. One astable, the second monostable. The astable for the frequency, triggering the monostable for the actual pulse length. That allows you to adjust both independently.

I don't recognize the way you wired it, have to study your circuits in more detail.

as per my calculations:

R1=2.2kohm
C1=10uf

R2:270ohm=2ms

R2:120ohm=1ms

R2:190ohm=1.5ms

Note that those diodes will throw off the actual timing.

You will have to measure the pulse length you get to know for sure - either by connecting a scope, or connecting it to an Arduino and read the pulses (to measure length and frequency).

forgot to mention I have only 1n4007 diodes but I know they are slower than 1n4148 can this make any issues ? Will test with arduino tomorrow.

It's the voltage drop over the diodes that will affect it most. That affects the voltages at the timing cap and the trigger pin. Trig works at 1/3 Vcc and 2/3 Vcc which is 1.7V and 3.3V, the 0.5-0.7V drop over the diode is a lot compared to those voltages.\

Did you (try to) measure the pulse you actually get already?

Just posting these photos, from the OP, so they can be seen:

wvmarle:
Did you (try to) measure the pulse you actually get already?

No i didnt was concentrated on datasheet too long. Tomorrow will measure the frequency and pulse length with arduino and will update. Then second question arises what are professional hardware simulators for ? I even chose exact models of what Im using except servo motor model. There is scope too inside proteus I checked the pulse length and frequency with it but when its time to do in real world everything needs to be rechecked again. Im thinking of resistor and capacitor tolerances too now. IF they will be off 5% thats enough to shift the pulse.

Lots of real world variance.
I don't know how well they take the diodes into account - that's definitely a tricky one.
Tolerance of the parts indeed, resistors often <1% but caps can be 10% or more, especially electrolytics.
Internal resistance of the 555's pins.
Internal resistance of the capacitors (ESR).
Stray resistance & capacitance of the wires (though that's usually small enough to ignore, it's usually in the order of a few mΩ and a few pF).

wvmarle:
Lots of real world variance.
...
Tolerance of the parts indeed, resistors often <1% but caps can be 10% or more, especially electrolytics.

And, potentiometers can be 20% and even 30%!

Check this out:

http://www.seattlerobotics.org/encoder/200210/servoex/ServoExcerciser.htm

That's pretty much what I had in mind.

Saves a whole lot of balancing frequency/pulse length (those are linked if using a single 555).

Thanks for the link. As was mentioned in one of my posts 556 was in my mind if this option will fail I wasnt thinking of monovibrator mode as wvmarle suggested I was thinkinf of adjusting one 555 for 1ms pulse and second 555 for 2ms pulse with fixed resistors. though monovibrator approach is interesting too one for frequency second one for duty cycle. Purpose is to make 1 device which can turn motor arm to +90 and -90 depending what circuit will be triggered. Price,size and power consumption of circuit matters in my case.

So there's no Arduino or other MCU in the mix? Because that'd be the cheapest option.

Otherwise as you want two 555s anyway, go for that circuit in #15. A transistor allows you to switch on/off a resistor based on an external signal, changing the pulse time (so two resistors in parallel - one with the transistor in series - so if the transistor is off you have high resistance, if on you have the resistors effectively in parallel and a low resistance).

surepic:
But dont this servos have pretty wide permissible range ? Over 2ms is they count same as 2ms and below 1ms is same as 1ms.

No that is not how servos work, not the ones I have seen anyway.

I used a 555 as a pen lift servo control in a drawing machine. However the noise made it too jittery to use in the finished project.

Mike i noticed that noise too while experimenting, via arduino its kinda smoother.

Wvmarle how via mcu is cheaper?
555 timer is 5cents.

If there's an MCU in the mix already, using it doesn't cost anything extra, making it cheaper than adding the 555. That's why. It's an Arduino forum after all here!

surepic:
forgot to mention I have only 1n4007 diodes but I know they are slower than 1n4148 can this make any issues?

Insignificant at 50 Hz.

surepic:
Mike i noticed that noise too while experimenting, via arduino its kinda smoother.

Wvmarle how via mcu is cheaper?
555 timer is 5cents.

Yeah, I puzzled over that, too, but then realized two things:

  • It's more than just the cost of the 555. There's also the support components and the cost of designing, producing, and stuffing the PCB.
  • He was speaking in terms of an Arduino already present -- which means, the expenditure, already happened.

:grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning: :grinning:

surepic:
Mike i noticed that noise too while experimenting, via arduino its kinda smoother.

Well the noise I am talking about is electrical noise which manifests its self as jitter. This is due to noise on the supply line to the 555 timer. And as I had other servos in the circuit it would have taken a lot of filtering out. This was because I was working on a Raspberry Pi and it only has sufficient hardware to drive two servos. I wanted a third for a pen lift.