Robot Pages of Jaap Havinga  

Mechanics Simulator
Snuf
BiPed
BiPed II
Mini Biped
Battery Charger
Hardware Programmer
RC Servo controller
CNC
Links to other sites

RC Servo Controller with preset

Below you find the schematics of the servo-controller I use. It is based on the PIC 16F84A from Microchip. To obtain a good resolution, I use a version of 20 MHz. It's interfacing to the serial port with a rate of 38400 baud. The PIC is controlling 12 servos in parallel with a resolution of 240 steps over 90 degrees rotation.

Look at the code for more details.

Each servo is controlled by first sending a command byte (0xf0 + iS) and then a data byte D, representing the desired servo-output. iS is the index of the target servo 0,1,..,11; D = 1,2,..,239. The controller maintains each servo-output until changed by command.

When writing command 0xff followed by a databyte equal to 0x00, the current servo-values are stored as preset values into the eeprom of the PIC. At startup the PIC will initialize the servo-values with these preset values. This mechanism provides a convenient way to maintain presetvalues up to date.