Close

Firmware/Software

A project log for Robot arm

Small robot arm based on common hobby servos and pipe supplies.

rue-mohrRue Mohr 08/13/2014 at 14:370 Comments

I have written and posted the firmwares. My standard board is an atmega32 board. I'v written it ground up to provide about 12 bit, glitchless servo pulses. To that effect, it only has 8 channels, anymore than 10 requires having two timers at once, and then you have interrupt stalling which leads to timing glitches in the pwm, which leads to twitching of the servo. NO TWITCHING!

(and no, arduino cannot do any better, you just dont have a scope to see the glitches)

Its serial controlled, with a protocol based roughly on the SSC16 

The pc software does basic axis interpolating (using my interpolation library!) and timing. it reads from a simple file with lines consisting of a time offset and a list of targets for each servo. It makes sure to take the specified time to get to the position specified on the line. (need a delay? Tell it to take the required time to move one of the axies by .001 units)

I'll get into IK later.

THIS  is the firmware for the avr board.

it seems that had links dont work, its:

http://ruemohr.org/~ircjunk/robots/arm7/hobbydriver/

THIS is the PC side software.

http://ruemohr.org/~ircjunk/robots/arm7/pc_software/

huh, it auto href'd it

Discussions