Rotary Inverted Pendulum with PF-XL Motor and GlideWheel-M
PF-XL Motor Version
This rotary inverted pendulum (Furura pendulum) is built by using a "PF(power functions)-XL motor" and two angle sensors "GlideWheel-M".
We realized the swing-up control based on an energy method and the stabilized control based on LQ control.
Software for programming and control system analysis/synthesis is MATLAB/Simulink.
"Target for Use with LEGO MINDSTORMS NXT Hardware (Simulink Support Package for LEGO MINDSTORMS NXT Hardware)" is installed.
More information is as follows:
http://www.mathworks.com/help/simulink/lego-mindstorms-nxt.html
You can download some MATLAB/Simulink files (only stabilized control) and pictures about "PF-XL motor version" from the following URL.
http://www.maizuru-ct.ac.jp/control/kawata/lego_NXT_RoTH/matlab_pend_simple.zip
The folder "sfbk_crane_discrete" includes some files about the state feedback control of a crane.
The folder "sfbk_ip_discrete" includes some files about the state feedback control of an inverted pendulum.
We compared four kinds of LEGO motors (NXT, RCX, PF-XL and PF-M motors).
As a result, PF-XL motor is the best selection.
PF-M Motor Version
PF-M motor has a big deadzone, therefore, the response is not so good.
NXT Motor Version
NXT motor's backlash cannot be ignored, therefore, the response is not so good.