CSE 477 Drone Defense Reece Beigh Peter Gagnon Jonah Nelson.

29
CSE 477 Drone Defense Reece Beigh Peter Gagnon Jonah Nelson

Transcript of CSE 477 Drone Defense Reece Beigh Peter Gagnon Jonah Nelson.

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?