Group D ECE 496: Gyrobot Project Ray Price Matt Vaughn Cyrus Griffin David Epting John Abbott
Introduction The Gyrobot is an underactuated pendulum, consisting of a single link with a flywheel driven by a dc motor mounted at the free end.
Topics Group Structure / Schedule Project Specifications Mechanical Design Fabrication Status Problems Software Webpage Future Plans
Group D Structure Ray Price – Group Leader Matt Vaughn – Software Design Cyrus Griffin – Software Design John Abbott – Mechanical Design David Epting – Mechanical Design
Group D Structure Gant Chart
Project Specifications The Gyrobot had to fit the following criteria: Must comply to the mechanical specification of thesis by Adrian Jenkyn Lee out of the University of Illinois at Urbana-Champaign. Must utilize motor/flywheel inertia to invert pendulum and then balance. Utilizes Simulink RTW controller.
Mechanical The Gyrobot shaft: Design Fabrication Status Problems Dimensions: 18” Material: Aluminum Mounting: threaded shaft utilizing 3/8” nuts and a lock washer Fabrication Milliken Status The arm is in place with motor attached Problems None
Mechanical The Gyrobot arm: Design Fabrication Status Problems Shape: Dumbbell shape Dimensions: 17 ½’’ long ¼’’ thick ½’’ wide along shaft ¾’’ radius at circular ends and center Material: Aluminum Mounting: held onto threaded shaft with 2 3/8” nuts and a lock washer Fabrication Milliken Status The arm is in place with motor attached Problems None
Mechanical The flywheel Design Fabrication Status Problems Dimensions 3 ½’’ total radius 2 ½’’ radius to lip ½’’ thick at lip ¼’’ thick inside lip Material: Brass Mounting: Pressed onto motor Fabrication Milliken Status The flywheel is currently attached to the motor Problems A bit of wobble, but hopefully not detrimental.
Mechanical Position Encoder: Product: Current Status Problems Arm position/speed Encoder: US Digital E3 Stats: 1024 CPR Mounted utilizing USD mounting plate and metal bracket. Current Status The Encoder is attached to the Gyrobot shaft and operational Problems Encoder was a tight fit onto shaft
Mechanical The Motor: Pittman 9237S011 Problems Current Status No Load Speed: 5,331 rpm Continuous Torque: 11.5 oz-in Peak Torque: 77 oz-in Weight: 19 oz Motor is mounted to base by 4 6-32 screws Encoder: 3 Channels with 500 CPR Problems Arrival Time Bad Encoder Current Status New Motor should be here Thursday
Mechanical Base Large piece of channel iron Used because of weight and cost Unistrut is utilized to secure bearings and position encoder base Position encoder is attached to a piece of 1/32” sheet steel bent at a 90 degree angle with slot cut in middle for shaft connection Position encoder base is attached to a perpendicular piece of unistrut mounted with 4-40 screws which is mig welded to the base. Fabrication was done by Milliken Problems Did not sit stable on the table Current Status Base was attached to the table using 2 C clamps and rubber matting was placed underneath to help stabilize Gyrobot base is stable and robust
Mechanical Bearings ½” Pillow block bearings manufactured by NKB Brass sleeves were used to reduce the size down to the 3/8” shaft size Bearings are mounted to base via a perpendicular piece of unistrut which is mig welded to the base Bearings were pressed onto unistrut Problems Brass sleeves were difficult to install Bearings were tight after sleeves were installed Current Status Bearings were reeled and aligned which created a good fit Arm swings freely with little resistance
Software Collocated Swing Up Non-Collocated Swing Up Sinusoidal Swing Up
Software Swing Up Control Status Problems Decided to go with the Sinusoidal Swing Up Smoother Faster due to the harmonics Less bouncing in controls compared to other two. Problems Deciding to use radians or degrees for the angle
Software Switch from Swing up to balance Design Problems Position Speed factor Problems Determining the negative and positive angle and how the computer will be able to distinguish quickly. Determining where the cut off angle is going to be for swing-up and balancing.
Software Balance Control - The Model
Balance Control Important Variables: Arm position (theta 1) Arm velocity (theta dot) Flywheel velocity (theta2dot)
Balance Control Arm Position Must add enough energy to move mass of assembly to the highest position. Fighting gravity Gain based on center of gravity and mass of the mobile assembly (motor, flywheel, arm, shaft). Considering trying using cosine function to expand functional range (making it a non-linearized system).
Balance Control Arm Velocity First goal is to have the arm slow as it approaches vertical. Second goal is to have arm fight acceleration if it falls away from vertical. Gain based on rotational inertia of the whole mobile system.
Balance Control Flywheel Velocity Goal is to stop the flywheel when the arm is balancing. Gain made to be small, in effect creating an underdamped system, so slowing the flywheel doesn’t seriously affect the balance. Gain is negative to bring the speed of the flywheel to zero (instead of slowly ramping up).
Encoder Processing Getting Velocity from Position Obvious way is by taking derivative of position, but there are limitations in simulink. So, better solution, and solution used in the thesis, was to estimate the derivative through a frequency-domain formula. This yields far more smooth, continuous results than the built-in derivative functional block.
Webpage
Future Plans Replace Motor Ensure action of Windows/Simulink environment Finish balancing routine Finish swing up / switching routine