Dynamically Adaptive Inverted Pendulum Platfom 2009 Colorado Space Grant Symposium Jonathon Cox Colorado State University Undergraduate in Electrical Engineering Email: csutke@gmail.com Web: www.campusaudio.com
What Is an Inverted Pendulum? Uses the acceleration of the drive wheels to maintain balance Similar to the Segway human transporter
Project Goals Develop an algorithm that allows an inverted pendulum platform to be stable with a changing center of mass Build and test a demo platform as a proof of concept Make the system easily upgradeable for the future addition of an articulated arm
Why Use An Inverted Platform? Some of the major benefits Smaller and lighter than a statically stable design of the same dynamic stability Much more maneuverable in small spaces due to a smaller footprint Safer to people and objects in indoor situations due to the nature of the drive system Much greater heights achievable in a small footprint
Why a Changing COM? Allows the inverted platform to be practically used in many more applications that require a more stable platform Picking up/moving Objects Extending Tools or Sensors Reacting to weather conditions such as rain or snow Almost anything but driving around changes the center of mass To my knowledge, has never been done before
The Modular Control System Each module represents a class in the code or a physical peice of hardware Allows for easy development of individual systems Each module simplifies the task of the next module Provides an alternative to the transfer function approach Provides hardware abstraction for cross platform compatibility
The Sensors Uses Micro Electromechanical Sensors (MEMS) Gyroscope to sense the rate of rotation (fast and noisy) Accelerometer to sense the actual tilt angle (slow and precise)
The Kalman Filter Used to predict the state of a system given noisy measurements, often used in radar applications Uses a recursive guess and check method In this case, uses the accelerometer to estimate the gyro drift Recursive Kalman Filter Recursive Kalman Filter Raw Tilt Raw Tilt Angle Angle
Dynamic Center Of Mass Uses the distance away from a pre-defined setpoint and the 'raw' tilt angle to guess the COM Recursive Kalman Filter Recursive Kalman Filter Raw Tilt Raw Tilt Angle Angle Dynamic Center Of Mass Algorithm Dynamic Center Of Mass Algorithm Tilt From Tilt From Vertical Vertical
Balancing PID Implements a Proportional Integral Derivative (PID) loop to maintain basic balancing Uses the tilt angle and calculates the needed motor speeds Recursive Kalman Filter Recursive Kalman Filter Raw Tilt Raw Tilt Angle Angle Dynamic Center Of Mass Algorithm Dynamic Center Of Mass Algorithm Motor Motor Speed Speed Tilt From Tilt From Vertical Vertical Basic Balancing PID Basic Balancing PID Distance Distance Taveled Taveled
PID Motor Drivers The motor drivers implement the same type of PID loop to drive the motors at the given speed They use the quadrature encoders to track position and speed A fourth term added to compensate for backlash Recursive Kalman Filter Recursive Kalman Filter Raw Tilt Raw Tilt Angle Angle Dynamic Center Of Mass Algorithm Dynamic Center Of Mass Algorithm Motor Motor Speed Speed Tilt From Tilt From Vertical Vertical Basic Balancing PID Basic Balancing PID PWM PWM PID Motor Driver PID Motor Driver Drive Motors Drive Motors Distance Distance Traveled Traveled Quad. Quad. Encoder Encoder
The Hardware Implementation Uses three processors that communicate on a serial bus Sensors use an A/D module for interface to processor Motor driver processors have encoders and PWM peripherals Accelerometer X Y A/D Module Main Processor Motor Driver 1 PWM Module Vreff UART 1 UART 2 UART 2 M1 QEM Module Enc. Wireless Modem 9600 Baud Gyro Rate Motor Driver 2 PWM Module UART 2 M2 QEM Module
The Demo Platform Made from COTS components Designed to be extremely rigid to prevent complex oscillations Ribs made out of polycarbonate for impact resistance if it falls over Tires are foam filled for greatest traction Custom etched PCBs (made by me) that allow for SMD parts and in-circuit serial programming Every board but the modem designed by me
Budget Aluminum ~ $15 Nuts/Bolts ~ $20 Paint ~ $10 Wheels ~ $50 Sensors ~ $100 Processors Free (sampled) Other Electronic Components ~ $50 Total: ~$345
The Demo Platform Hardware R/F Computer/Remote Link Easily Accesible Electronics Upgrade Space 5Ah Sealed Lead Acid Battery Independent Motor Drivers Extremely Rigid Backbone Design EMF Shielded Encoder Wires High Torqe Drive Motors High Traction Off-Road Tires Quadrature Encoders
Practical Applications Short range scout for moon/mars colonies that are cheaper due to the reduced size/weight. Human transport for Paraplegics or Quadraplegics that allows a standing position Indoor service robots for simple tasks such as mail distribution or product stocking Large event mobile surveillance Tour Guides, Virtual Presence, Automated Receptionist...
Frequently Asked Questions How is it different than a Segway? The Segway relies on the rider to position their COM in order to drive forward or backward. My platform uses the drive wheels to position its own COM for balancing and driving Does it ever fall over? Yes. Often. The control system is still very much under development so the demo platform is designed to withstand a fall.
Questions?