Arduino Servo Control… Screw It, I am Going To Learn Some Assembly
Controlling a servo with Arduino is easy, as shown in a previous post. What I have found difficult is getting multiple servos and serial data processing to play nice together. Processing serial data is screwing up the timing of the software PWMs. There are several libraries written for Arduino to control servos, check them out here and here. The first library looks great as it is a hardware based solution that changes the arduino PWMs to be servo friendly but is limited to two servos. My plan is to learn some AVR assembly so that I can extend that library for more then 2 servos. My goal is to create a complete servo control system for Arduino which will include a shield and control software written in flash.
November 17th, 2007 at 7:30 pm
I know, controlling servos with Arduino which includes a shield in Flash is a bitch. Totally feel your pain brother.
November 19th, 2007 at 9:39 am
Ah Busse… this is why I love you. Is this you asking if I can explain it to you?
December 12th, 2007 at 1:33 am
I’m not the one that wrote this, but thought you could use the link: http://www.uchobby.com/index.php/2007/11/24/arduino-interrupts/
Basically, there are 3 timers: 0, 1, and 2.
Timer0 affects the system, PWM 5, and 6.
Timer1 (as in the playground) affects PWM 9 and 10
Timer2 affects 3 and 11.
At most, you can only directly drive 4 servos. Any more than that and you’ll have to suck up the software PWM or interface to a dedicated driver, I suppose.
December 12th, 2007 at 3:28 pm
cool thanks. I have seen an ATmega 168 system out there used to control up to 32 servos here. The software is open source but i haven’t looked at it. I guess I should.
December 30th, 2007 at 5:17 pm
Here is a short video of Arduino and Papervision
http://www.youtube.com/watch?v=-syL88Wjanc
December 31st, 2007 at 6:17 am
How can I control multiple servo motors using arduino?
I would like to know how I should connect hardware and how I should write software.
Could anybody please tell me?
June 5th, 2008 at 7:02 pm
Is there any way to create an application that could drive maybe 8 servos and set an angle for each at the same time?
June 5th, 2008 at 9:19 pm
Yup. There are other systems out there. I believed that I could do it with arduino but I was beyond my abilities, interest and time. The Pololu is one and the SSC-32 is another.
November 8th, 2011 at 10:39 am
Hii any one can help me to control a 6 micro servo motor from arduino duemilanove 168 ???
i m making a uav (using trex 450 ) for navigation & surveillance purpose.
i’ ve frustated from googling for servo control.
can nyone help me??
November 8th, 2011 at 10:43 am
Hello Ashish,
Not sure I completely understand the issue. Are you trying to control 6 servos? or a specific type of servo? With the servo library in Arduino it is quite easy to control a servo in general. http://www.arduino.cc/playground/ComponentLib/Servo Can you add some more details?