geek camp 2014: game of drones - algorithms and hardware designs for quadcopters
DESCRIPTION
For Geek Camp 2014.TRANSCRIPT
![Page 1: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/1.jpg)
Algorithms and hardware designs for Quadcopters
Shipeng Xu 18 Oct 2014
!github.com/BillHsu
![Page 3: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/3.jpg)
MiniQ - Demo Video
![Page 4: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/4.jpg)
Barometric Pressure!sensor
Accelerometer!+Gyroscope
Magnetometer
Transistors
![Page 5: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/5.jpg)
STM32!(32bit ARM CPU) Bluetooth SPP!
(Serial Port Profile)
JTAG
![Page 6: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/6.jpg)
Yaw Pitch Roll
![Page 7: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/7.jpg)
Propeller rotation
![Page 8: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/8.jpg)
Rotate
![Page 9: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/9.jpg)
Move forward
![Page 10: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/10.jpg)
Propeller installations
![Page 11: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/11.jpg)
Stabilization
![Page 12: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/12.jpg)
Attitude estimation• Demo
• WebSocket Server on Android
• “Rotation Vector Sensor” data
• WebSocket Client on browser side
• Receiving sensor data
• Render altitude with WebGL
![Page 13: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/13.jpg)
Accelerometer
Gx
Gz G
![Page 14: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/14.jpg)
Accelerometer data: acclX, acclY, acclZ
![Page 15: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/15.jpg)
![Page 16: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/16.jpg)
Demo - Accelerometer
![Page 17: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/17.jpg)
Noise :(
![Page 18: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/18.jpg)
Gyroscope• measuring angular velocity
![Page 19: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/19.jpg)
Gyroscope data: gyroDataX, gyroDataY, gyroDataZ
integration
![Page 20: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/20.jpg)
Demo - Gyroscope
![Page 21: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/21.jpg)
Drifting :(
![Page 22: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/22.jpg)
Attitude estimation
• Accelerometer
• Noise
• Gyroscope
• Drifting
![Page 23: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/23.jpg)
![Page 24: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/24.jpg)
Sensor Fusion
![Page 25: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/25.jpg)
Sensor Fusion
![Page 26: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/26.jpg)
Demo - Fusion
![Page 27: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/27.jpg)
![Page 28: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/28.jpg)
![Page 29: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/29.jpg)
Rotation Vector Sensor in Android
• services/sensorservice/Fusion.cpp
![Page 30: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/30.jpg)
Control rotor speed
![Page 31: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/31.jpg)
Demo• Cannon.js
• A physics engine written in JavaScript.
• WebGL
![Page 32: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/32.jpg)
PID Controller
![Page 33: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/33.jpg)
PID Controller• Proportional(the present error)
• Thrust = Error * alpha;
• Integral(accumulation of past errors)
• integral = integral + error * dt;
• Derivative(prediction of future errors)
• derivative = (error - lastError) / dt;
![Page 34: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/34.jpg)
PID Demo
![Page 35: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/35.jpg)
PID Controller
![Page 36: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/36.jpg)
Sum up
![Page 37: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/37.jpg)
MiniQReal-time attitude data 3D attitude visualisation
Seria
l por
t sel
ectio
n
Quadcopter control
![Page 38: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/38.jpg)
MiniQ
github.com/billhsu/AndroidAHRSView
![Page 39: Geek Camp 2014: Game Of Drones - Algorithms and hardware designs for Quadcopters](https://reader034.vdocuments.mx/reader034/viewer/2022042816/5599b07c1a28ab0f2b8b47b6/html5/thumbnails/39.jpg)
Thank you:)Demos can be found@
https://github.com/billhsu/geekcamp2014/ Demo videos can be found @
https://www.youtube.com/watch?v=AYtps6Gd9b0&list=PL-0UH2MdcDCfnZyLsbi_pZnb6fK4Vb9an