90 likes | 237 Views
Design Of A Controlled Platform Using Open Source Hardware. Manuel Zeno 10/26/2011. Platform Designs. There are many types of controlled platforms Some are autonomous, i.e. self-leveling to the horizon Others can be controlled remotely
E N D
Design Of A Controlled Platform Using Open Source Hardware Manuel Zeno 10/26/2011
Platform Designs • There are many types of controlled platforms • Some are autonomous, i.e. self-leveling to the horizon • Others can be controlled remotely • The proposed platform is designed to be autonomous while providing the user with angular control while costing less than $100 • Applications include nautical satellite tracking, camera stabilization, etc.
Proposed Design • The concept design uses inexpensive parts to prove the open source hardware control works • The platform will autonomously control two axis of rotation, pitch and roll using an Arduino Board
The Control System • The platform is controlled via an open source Arduino microcontroller board • The Arduino platform uses a variation of the C programming language as input and a ATMega microcontroller chip.
Tilt Sensing Using an Accelerometer • The Arduino board reads data from an accelerometer to measure tilt angle • The measurement is indirect • In reality the accelerometer is measuring the acceleration due to gravity in a given sensing axis • The sensed acceleration allows the board to infer the angle the accelerometer is at any given time
Going from Gs to Degrees • The accelerometer measures acceleration due to gravity in this case • As the sense axis is tilted, the acceleration due to gravity sensed changes by the cosine of the angle of tilt • Nothing in real life is ever linear… • Sensing sensitivity drops off as the sense angle increases • The sensitivity drop-off can be approximated using the inverse sine (arcsine) function • Some error remains, but its smaller than the mechanical slop exhibited by the servos and hardware
Control System 2 • Arduino programs are called “sketches” • The Arduino program includes all the aforementioned control schemes and also an “averaging” function • Raw data from the accelerometer is “twitchy” and prone to outliers • The code includes an “outlier eliminator” function which removes readings higher than limits from being averaged • Averaging function allows for bulk measurements to be read
Control System Concluded • What distinguishes this design from others is the ability to control the angle at which the platform attempts to remain at autonomously • This is done by having the user control the angle using potentiometers • Twisting the potentiometers in one direction or another will change the resistance of the pot • The resistance change read by the Arduino board will change the default angle value sent to the servos
Platform Demonstration • Goto webpage