For a project, I am using a servo which needs pulses of increasing length to move the arm. I can easily do this with a PIC. But if I can somehow achieve this without a PIC, e.g. 555 combination; then this would be even better.
Is there some sort of configuration to increase the time period over time- but not gradually, it has to be at precise moments?
This is most precisely done with two 555s or a 556. The first is an astable that sets the period between pulsed...~20mS. The second is a monostable triggered by the astable, to vary the pulse width...1mS to 2mS.
Are you using model aircraft servos, or something you cobbled yourself?
Do you want constant frequency with variable pulse width like KMoffet referenced?
Or, do you want constant pulse width with varying frequency (period)?
Finally, you want to automatically sweep the variable, but at what rate? How many seconds? What triggers a sweep?
Post a sketch of the desired waveform out of pin 3 of the 555 which will drive the servo.
That said, I don't think that is what the OP (AppleMac) wants. Apparently, he wants something that will automatically change the position in precise steps over some period.
Obviously, as AppleMac states, that can easily be done with an MCU. But before making suggestions for using 555's, counters, etc. to solve the problem, it would help if he gave a little more information:
1) What period and how many or what steps does he want the servo to make?
2) Will it be a one time deal from start to finish, or will it be repeating until power is removed?
3) Is he using analog servos or digital servos? In accord with Ken (post #3), I have found that single-555-based controllers do not work well with digital servos. They work fine with analog servos.
Thanks for all the replies, I will check out the links.
In response to the qus:
1) The servo requires pulses varying from 75-225ms, and I will need 10 changes at 60 second intervals, but it has to stay in the same place until then.
2) As soon at it reaches the end, it need to go back to the start (repeating)
3) Futuba S3003, I think it may be digital
MikeMI:
It's my own little project, not for any RC vehicles.
The pulse length needs to change- but there needs to be a pulse every 20ms- so the frequency can stay the same
EDIT: Perhaps there is a way to change the resistance over time. If I change R2, then the mark time would increase- but the space time would stay the same - this would be the easiest configuration.
Frankly, the best way to do this is a PIC. You could do it easily with one of the minimalist 10F series (the ones with only 8 pins and couple of timers).
The second best way would be a mix of digital CMOS and 555s. Use a 555 as a clock running at a period of 6s (0.166Hz). Use it to advance a decoded CMOS counter (4017b). Take each decoded output and use it to switch a resistor into the timing network of the 555 used to create the pulse width.
That leaves the 20ms(50Hz) fixed period, sounds like a third 555.
Here's a cruise control I made using 2 555 timers to control a servo for radio control and it varies the pulse via the voltage input from a freq to voltage converter. It may have something you can use.