April 09 - On the Enhanced
Speed SPU page I described a development of the servo
system Signal Processor Unit which runs at higher
serial communications rates than the
Basic SPU. And on the
MA3 Encoder page I
described the use of absolute position encoders to obtain
smoother position feedback signals.
With the recent release of the PICAXE 28X2
micro-controller chip I've had another look at the SPU
design and have been able to take advantage of the 28X2's
higher performance to further improve the motion platform
servo control system. The improvements stem from the 28X2's
faster speed - with an external 10 MHz resonator fitted the
28X2 runs at 40 MHz - that's 2.5 times faster than the 28X1
used in the Enhanced SPU. This faster chip speed
increases the processing speed of the servo system, but it
also allows PWM pulse length measurements down to 1 μs which
allows the US Digital MA3 position encoder to be used at
it's full 12 bit resolution (effectively 4096 counts per
rev).
The net result is consistent servo loop
refresh speeds of about 50Hz on my PC and clean high
resolution position feedback data. The faster refresh speeds
generally improve the system performance by allowing the
control system to react quicker to the position errors as
they develop, and the higher resolution feedback helps by
allowing the KD term of the PID controller to be used more
effectively. Generally the KP (proportional) term can also
be strengthened so that the system reacts more quickly to
position errors. The overall effect is to improve the higher
frequency response whilst maintaining stability and
smoothness of motion - the servo system can be run with
higher "gains".
An example
actuator trace
(using the PID
Controller's built-in
virtual
oscilloscope). |
The improvement is mainly noticeable in
effects such as touch-down bumps, runway vibrations and in
reacting to lower levels of heave "bobbing" motions and to
the higher frequency components of the heave cues - most
pitch and roll cues are of low frequency.
To use the 28X2 chip the PID Servo Controller
software needed to be revised to handle the 12bit resolution
on the feedback data, and the Motion Driver software revised
to export its position demands in better than 12 bit
resolution to match the feedback. The 28X2 off course also
requires a new flash program. There are no wiring changes
needed to implement the High-Speed SPU other than to
replace the 16 MHz resonator on the
Enhanced SPU with a 10
MHz one and to fit a 28X2 chip.
Off course this is still a low-cost DIY servo
system and can't be expected to match the best industrial
controllers used in commercial motion platforms, however it
does perform fairly well and costs a fraction of an
industrial servo system.
One draw-back of improving the control system
performance in a DIY system is that it starts to show up the
limitations in the other elements of the low cost motion
platform. Although the low-level amplitude motion is better
than before it is now clear that further improvement in this
area would probably need lower stiction drives and in
particular better quality drive motors and gearboxes.
Although the servo control can improve things it's difficult
for it to compensate for friction in the drives when driving
low amplitude oscillations.
Hmm.... yet another improvement on the
horizon!
UPDATE - The enhanced features of the new
28X2 chip described above have now been built into the new
40SPU-1 signal processor card which is now available to buy
as a ready-built card. See the main
40SPU-1 page for more details....
© This site is
copyrighted, If you'd like more information or have any
comments please contact me at