Servo Calibration Exercise

After the non-ideal response observed in the inverse-kinematic exercise, I got to wondering where these inaccuracies came from. Assuming that the software controlling the legs was accurate, all that was left was the calibration or physical implementation (e.g. servos accuracy or the laser cut pieces).

Measurement setup for calibration of servos.

Measurement setup for calibration of servos.

Given that the Hexy kit came with a spare servo, I decided to try to accurately measure the position of the servo horn at a number of different demand angles.

My camera was set-up over a servo (held in place by a clamp) and requested to be positioned in a number of angles. Photos taken at each position, then used to indirectly measure the angle of the servo horn. These figures were compared to the demanded positions and used to make the graph below.

Measured servo error, measured using camera. Sample of one.

Measured servo error, measured using camera. Sample of one.

The vertical offset can be calibrated out by the zero-offsetting of the PoMoCo controller, but the y-range of that curve might be a problem. If this is representative of what the servos can do, we'll have to hope that they all do the same sort of thing, or that the positional codes are tolerant enough to a few degrees of error.

I also did some repeated measurements by pulling the servos to \pm 70^{\circ} then running them up and down for ~30s then back to \pm 70^{\circ}. I was very pleased to see that the accuracy of the return was always within about 0.5^{\circ}. Of course between these measurements there was no loading of the servos (as you would have in Hexy), so perhaps in a joint it will be worse. At least the unloaded case is very repeatable though.

Another problem I've noticed is that there's a certain degree of "slop" in the Hexy's joints. At least three of the feet will move \pm 5mm about their neutral position. It appears that this is due to the servos having a slight amount of play in their mounting positions (particularly in the hip joint). Might think (in the future) about shimming the servos in their mounts.