Standard – Drone & Camera Manual - dl.djicdn.com – Drone & Camera Manual - dl.djicdn.com
CSE 477 Drone Defense
description
Transcript of CSE 477 Drone Defense
CSE 477Drone DefenseReece BeighPeter GagnonJonah Nelson
Investment Opportunity!• http://www.youtube.com/watch?v=6i-nMWgBUp0
Unveiling and Demo
• http://www.youtube.com/watch?v=sMXbHJMn2hI• We’ll Demo Sections as we talk about the• Ask questions! We want to answer them!
High Level Hardware Diagram
NERF Gun
• Modified NERF Stampede• Removed Air restrictors for Power• Removed Excess plastic and batteries for weight
Firing Circuit• NERF Gun requires 12V @ 2A to fire
Servos• It’s been a grim quarter for servos…• Started with a pair of Futaba S3306• One died; limping by with an Hobbico CS-75
Arduino• Does low level control of Servos• Receives serial commands from Either the Controller, Beagle
Board, or PC (Processing)
Relay Arduino• Both the controller and Beagle board talk to the Arduino over
serial, but only 1 port available• Solution: 2nd Arduino as Serial to I2C relay
Serial Inverter• Beagle board does serial over RS232• RS232 is -5 to 5V logic. Who new?!• A simple inverter = lucky fix
Let’s See The D@mn Thing Shoot!
ControllerFeatures:• Voltage Regulator• 4 Momentary Switches• LED’s• Rotary LED Array• 2 Two-Axis Joysticks• Laird Long Range Wireless Radio• Arduino Mega
Discussion:
• What the switches do• Rotary LED• Expandability
• Serial Commands• Laird Radio• The Brains
Serial Commands
102351298 102351298
Commands
• Up • Right• Don’t Fire
Commands
• ?• ?• ?
5
4
30 1 2
9
8
6
7
Laird Radio• Three wire interface• TXD, RXD, and CTS
• Ascii Steam• Cast (char)
The Brains
Positive Negative
• I/O• Laird Interface• Serial Pins
• Very Sensitive1. Laird2. Serial Com3. LED DRead
Arduino Mega 2560
Computer Program• Processing• Capabilities
• Video Input• Serial Output
• Uses Current/Future • Backup Controller• Controlled Over Internet• Controlled over Laird Wireless
BeagleBoard, Ubuntu and OpenCV Libraries
Autonomous Vision Detection
BeagleBoard (Rev C4)
Specifications:• OMAP3530 (720 MHz)• 256MB NAND and 256MB
SDRAM• Boots from NAND, USB, or
SD card• Has USB, S-video, HDMI,
Stereo Audio in/out, J-TAG debugger and Serial-out
• Chosen by us for its high-speed processor and large amount of RAM for video processing
CV_Median blur
cvSmooth() using a median blur over a 25 x 25 square
CV_THRESHOLD
Graphical descriptor of CV_THRESHOLD functionality.
Binary Inverted works alone, but the truncation gets rid of a few more blobs.
Original Image CV_MEDIAN smooth
After Blobs detection
BaseImg
Mask
After Threshold Truncation
After Inverted Binary Threshold
Original Image CV_MEDIAN smooth
After Threshold Truncation
After Inverted Binary Threshold
After Blobs detection
BaseImg
Mask
Original ImageCV_MEDIAN smooth
After Blobs detection
BaseImg
Mask
After Threshold Truncation
After Inverted Binary Threshold
Stuff that went wrong / Difficulties
• Installing the blobs libraries from scratch• Trying to turn off the console• Problems with the X-loader and U-boot• Driver issues with the Logitech webcam• Serial I/O communication problems• cvBlobsLib all done in grayscale• Not being able to see the images from the beagleboard to debug
what it saw• Integrating all of the systems to work together
Recommendations / Future Work
• Implement further image detection requirements or co-requisites (not just color blobs, but an actual shape)
• Control the whole system from the beagleboard (and the servos with PWM from a PIC)
• Not use a beagleboard. (Not enough usable IO)
Thanks!• We got a lot of help! Thanks Everyone!• Dustin, Ross Serial Help, Beagle/ linux help• Tom Hardware help• Gabe Cohn PCB Help• Arvind Drone Modeling• Fran OpenCV, Serial, 3D Printing• Bing Chen, Sami Kunze Mech E Help• Prof Patel A lot of work and $ into
making this class happen
Questions?