I have spent the last two days trying to get to the bottom of our servo loop issues, and at the end of today things were looking up! First of all I added a graphic display to the servo setup uttility which shows the desired and actual position as the ram moves. This highlighted a couple of issues, particularly the fact that there was an offset between desired and actual positions. I tried to remove the offset with the ( I) term, but this produced an overshoots in one direction of travel. Eventually I had the idea that the offset was probably caused by the bore/anulas offset of the ram, and a drive
offset may resolve the issue.
So after adding a drive offset term this morning, I started the loop tuning again. The drive offset worked a treat, and essential removed the need of the (I) term from the loop, which in turn removed the overshoots :). So having retuned all the servo loops the leg is running much better.
Next on the agenda is to remove as much play as possible room the mechanism whic is also reducing performance. We added a large garage spring to the coxa ram which keeps a constant load on the push stroke, this has the effect of removing play in the mech, which again improved