Attachment Controller
The attachment controller determines position deltas, and thus velocities, for each limb assuming that limb is trying to attach. It is up to the higher level controller to choose a delta for each motor from the correct controller.
The controller operates in four distinct phases. In the first phase, the wing motor has a target position given by
Wnom, the stroke has a target force of 0, and the foot motor holds its position. Once the wing motor reaches its position target, the controller enters phase two.
In phase two the wing motor has a position target given by
Wload, the stroke still has a target force of 0, and the foot motor has a target position given by
Fdown. Once both the wing and foot have reached their position targets, the controller enters phase three.
In phase three the wing and foot both hold their positions and the stroke motor has a target force given by
fdes. Once the limb is taking at least that force, the controller enteres phase four.
In phase four, the foot holds its position, the stroke continues with a target force of
fdes, and the wing has a target position given by
Wnom.
Stroke Motor Control
The stroke motor is force controlled, where it is given a desired force,
fdes, and a proportional gain of
Kstroke.
Foot and Wing Control
The foot and wing motors are controlled by either holding a position or giving a target position. When a target position is specified, the motor moves towards that target at a maximum speed of
vfoot and
vwing, for the foot and wing motors respectively.
--
BarrettHeyneman - 08 Aug 2006