Fix rudder drive latency issues.
Fix rudder drive latency issues.

Hi Luuk,
The current drive interface is broken in a few aspects. Currently
each change of the desired position needs a complete
sequence of several activation steps of the drive and
after the target is reached the drive is shut down.
This basically adds a position control on-top of the
position control in the drive, but a very slow one.

The current drive + interface has an end-to-end-latency (the only thing we
can measure) of 350ms, partly due to this bad intermediate shutdown.

The EPOS client must transform the reference positions
from application values into encoder count, manage
homing, the transition from homing into normal operation
and keep the drive running.
This procedure is documented in the application notes.

There is the idea to save power by switching the drive off,
but if the drive stays at its position then there is no
current flowing and if not then we want the position to
be corrected. That is the job of the drives position control.
So we can simplify the EPOS client a lot. Tell me if you want
to fix this yourself or want me to do it and test it on Monday.

I supplied a copy of rudderctl_main.c, merge or replace at
your convenience.

Steffen


denidoank/avalonsailing,denidoank/avalonsailing,SteffenGrundmann/avalonsailing,SteffenGrundmann/avalonsailing,denidoank/avalonsailing,denidoank/avalonsailing,SteffenGrundmann/avalonsailing,SteffenGrundmann/avalonsailing,denidoank/avalonsailing,SteffenGrundmann/avalonsailing,denidoank/avalonsailing,SteffenGrundmann/avalonsailing