Skynet An Autonomous Quatrocopter Designed by Andrew Malone And Bryan Absher Introduction • • • • • Flying robot Self stabilizing Able to fly in preprogrammed patterns Autonomous Low cost Outline • • • • • • • • • Block Diagram PWM Control Motor Driver Circuit Wireless Communications Sensors Control System Results Applications Future Improvements Power Consumption • Logic Power – 2 x PICLF877A Microprocessor • 0.6mA at 3 V and 4Mhz – 3 x LY530ALH 1 Axis Gryroscope • 5mA at 3 V – ADXL335 3 axis Accelerometer • 3 uA at 3 V • Use 2 button batteries at 150mAh each Motor Driving System • Control of High-Current Motors with a Microprocessor • Microprocessor Output – PIC16F877A – 2V to 5V max ~25mA • Motor – GWS EDF50 – ~4 Amps at 10.8 V PWM Characteristics • Output Voltage is Simulated – Device is Switched On and Off • PIC PWM max 25mA • Magnifies Motor Driving Concerns – Inductance – Generation – Noise – Power on Ground System Requirements • Extremely High Current Gain – ~1000A/A • 10V Maximum Output from 11V Supply • High Current Output – ~5A per Motor • Fast Switching Time – < 20µs • Complete Electrical Isolation – No Common Ground Optical Isolation • Anode and Cathode Voltages drive infrared LED • Light Modulates Phototransistor Base Voltage • Complete electric isolation • Cheap ($0.60 EE store) • Fast (5 – 10 µs) • TIL111 • Perfect for PWM Darlington Transistor TIP 122 – 5A Max Current – β >1000 at 5A – ~1V VCE – < 20µs Switching Time Delivery to Motor • AC Output Interacts with Inductance • Motors Prefer DC inputs • Low-pass Filter http://www.zen22142.zen.co.uk/Design/dcpsu.htm Final Circuit Design Wireless Communication • IEEE 802.15.1 (Bluetooth) – – – – Low power (100mA Tx, 20mA Rx) Complex Protocol Stack Small Network Size Fast Data Rates (1.5 Mbit/s, or 3 Mbit/s) • IEEE 802.15.4 Zigbee – – – – Low power Low overhead Slower data rates Large network size Our Implementation • Simple configuration • UART communications – 115 kBaud (Limited by PIC16LF877A) – 3.3 V • RN-41-SM – Light weight – Low power – High data speed • Good for tuning PID Sensor Theory • Accelerometer – Charged cantilever – Change in acceleration changes the capacitance of the cantilever Sensor Theory • Gyroscopes – MEMS gyroscopes consist of a vibrating structure – Angular velocity changes the vibration Sensor Implementation • Ideal implementation: – Initial angles = arctan(x/z) and arctan(y/z) – ω from gyroscope reading – Subsequent angles = initial angles + ∫ω*dt – Accelerations relative to ground derived from accelerometer combined with gyroscope angle readings – Velocity = ∫a*dt – Position = ∫v*dt Sensor Implementation • Accelerometers and Gyroscopes vary widely from specification – Accelerometer bias must be calibrated – Gyroscope bias varies over time • Inaccurate over long periods • Readings can be corroborated using a Kalman Filter • Integrals rely on fast sampling rate Sensor Implementation Angle – Assume gravity is greatest acceleration – Angle = arctan(r/z) – Extremely accurate • Change in Altitude – Integrate Z-axis acceleration • Accurate for very small accelerations System Control • PID control – Proven method – Standard Tuning methods • Ziegler–Nichols – Effective at controlling high order systems de PID (e(t )) Kp e(t ) KI e(t ) Kd dt Our Control System Results • • • • PID-controlled power output Accurate angular orientation measurement Sufficient lift, battery life Wireless feedback Applications • Aerial Displays – MIT Flyfire • Flying sensor network • Autonomous surveillance Improvements • 32 or 16bit ARM processor at 100 Mhz • Horizontal motion measurements – Local or Global GPS – SONAR • Environment sensors – CO2 – Visual – Wind Speed • ZigBee mesh network – Create a flying sensor network – Distributed intelligence • Kalman Filter – Reduce noise in angle measurements