Knight Brawlers Allen Davila Carlos Davila Will Allen Josh Thames Group 1 Motivation • Create a fun gaming system that all group members would enjoy building • Include streaming video into the project • Build something that would provide a first person experience from the vehicles • Create something where all members of the group could keep a functional piece of the project Goals • 2 RC cars controlled by 2 users by their mobile device’s accelerometer • On board cameras mounted to the cars that would provide a live first person view from the RC cars • A competition mode that would provide a competitive game where the cars would fight each other • An app that would create a friendly user interface Specifications System Parameter Design Spec Camera Resolution VGA 640x480 Camera Frame Rate 5 fps Radio Communication Wi-Fi 2.4 GHz Wi-Fi Range 30 m Wi-Fi Data Rate 150 Mbps max App User Interface Android 2.2+ App Vehicle Control Tilt Battery Life 1 hour Frame Scale 1/10th User Input App Create Profile Load Profile Wifi System Block Diagram Raspberry Pi Camera Sync Car Bluetooth Start Game! Bumpers Control Car End Game and Report Scores Motor H-Bridge Microcontroller LEDs indicating “Health” Bumpers Steering Motor User Input App Create Profile Load Profile Wifi System Block Diagram Raspberry Pi Camera Sync Car Bluetooth Start Game! Bumpers Control Car End Game and Report Scores Motor H-Bridge Microcontroller LEDs indicating “Health” Bumpers Steering Motor Hit Locations • Sensors on the rear, right, and left sides • Triggered by collisions Sensors Piezo Disks Vs. Microswitches Piezo Disks Microswitch Small easy to fit Small easy to fit Creates electric pulse on impact 2 state single pole double throw Price range: 30 cents- 10 dollars Price range: 90 cents- 5 dollars High tolerance High tolerance Microswitches • Lever Microswitch for added surface area for impact • No debounce circuit needed • Reverse connection for component reduction User Input App Create Profile Load Profile Wifi System Block Diagram Raspberry Pi Camera Sync Car Bluetooth Start Game! Bumpers Control Car End Game and Report Scores Motor H-Bridge Microcontroller LEDs indicating “Health” Bumpers Steering Motor Scoring System Full Health One Hit Two Hits LEDs • Super Bright LED headlights for extra visibility working at 7000 mcd • Bright Red LEDs that activate when the car is idle and turn off when in forward or reverse motion • Red, yellow, and green high brightness for top LED Forward Voltage Forward Current Intensity Headlights 3.3 - 3.6 V 25 mA 7000 mcd Tail Lights 1.8 – 2.0 V 20 mA 1200 mcd Top Lights 1.8 – 2.0 V 20 mA 600 mcd User Input App Create Profile Load Profile Wifi System Block Diagram Raspberry Pi Camera Sync Car Bluetooth Start Game! Bumpers Control Car End Game and Report Scores Motor H-Bridge Microcontroller LEDs indicating “Health” Bumpers Steering Motor Camera – Previous Pros OmniVision 9655 • Delivers 30 fps at 640x480 VGA Video • Supports Compressed YCbCr 4:2:2 Format • Microcontroller Compatible ▫ Fully configurable • Some Factory Support (STM) 36 mm 27 mm Camera – Current OmniVision 5642 Pros • Supports MJPEG and H.264 hardware compression • Raspberry Pi Compatible • Factory Support for stills and video • Max 5 MP, 30fps • Size: 25mm x 20mm x 9mm • Weight: 3g Compression? Yes! Previous Current • Real-Time JPEG is optional (RTJPEG) ▫ Must write in native code ▫ Effort > value • MJPEG, MPEG-4 etc. not optional • Sub sampled RAW images • MJPEG Supported with hardware acceleration • Instead, we are opting for subsampled images • Software support User Input App Create Profile Load Profile Wifi System Block Diagram Raspberry Pi Camera Sync Car Bluetooth Start Game! Bumpers Control Car End Game and Report Scores Motor H-Bridge Microcontroller LEDs indicating “Health” Bumpers Steering Motor Wi-Fi Module Requirements EW – 7811Un • • • • • • • • • • • • Simple Configuration Low Cost Good Documentation Modest Data Rate Modest Range Low Power EZmax support $20 WPS, WPA2 150 Mbps 802.11 b/g/n Greater Range Than Bluetooth Raspberry Pi compatible User Input App Create Profile Load Profile Wifi System Block Diagram Raspberry Pi Camera Sync Car Bluetooth Start Game! Bumpers Control Car End Game and Report Scores Motor H-Bridge Microcontroller LEDs indicating “Health” Bumpers Steering Motor Bluetooth MATE Silver Bluetooth MATE Silver • • • • • Roving Networks Class 2 RN-42 Bluetooth v2.0+EDR 26uA Sleep, 3mA connected, 30 mA transmit UART data connection to MC 115200 bps User Input App Create Profile Load Profile Wifi System Block Diagram Raspberry Pi Camera Sync Car Bluetooth Start Game! Bumpers Control Car End Game and Report Scores Motor H-Bridge Microcontroller LEDs indicating “Health” Bumpers Steering Motor Motor Control • DC motors already available on RC car will be used to reduce project cost. • 2 DC motors: 1 for steering and 1 for forward/reverse control. • Forward/Reverse and Steering motor will be combined with H-Bridge for function. H - Bridge Considerations DVR 8833 L293D Max Output 10 .8 V 36 V Peak Output Current 2A 1.2 A Operating Temp -40 to 85 C 0 to 70 C Supply Range 2.7 – 10.8 V 4.5 – 36 V Control I/F PWM PWM Package Type Surface Mount mini Through Hole L293D H-Bridge Driver • Two motors per driver. • Max current output 1.2 A, Max temperature 70 C degrees Fahrenheit. • Pulse Width Modulation (PWM) input interface controls forward/reverse control and right/left steering. • Low Power Sleep mode and internal shutdown functions for over temperature protection. PWM Control Using H-Bridge • H-Bridge driver will use two PWM signals from the STM32 to generate Fwd/Rev and Steering function of the DC motors. IN1 IN2 Out1 Out2 Fwd/rev Motor Steering Motor 0 0 Z Z Coast Straight 0 1 L H Reverse Left 1 0 H L Forward Right 1 1 L L Brake - Motor Control Characters Motor Function Character Slow Forward/ Forward / Fast Forward A/B/C Slow Reverse/ Reverse / Fast Reverse D/E/F Brake/Right/Left G/w/y Medium Right and Slow Forward/Forward/Fast Forward (For Left) H/I/J (T/U/V) Hard Right and Slow Forward/Forward/Fast Forward (For Left) K/L/M (W/X/Y) Medium Right and Slow Reverse/Reverse/Fast Reverse (For Left) N/O/P (Z/a/b) Hard Right and Slow Reverse/Reverse/Fast Reverse (For Left) Q/R/S (c/d/e) Remote Control • Landscape mode • Direct the RC Car • Compatible with the newest version of Android phones and older Remote Control Requirements Android Device Must: Have Bluetooth Capability Contain Accelerometer Sensors Have Touch Screen Run Android Android 2.2(Froyo) or higher Motor Control Using Accelerometer • RC car will be controlled by Y and Z coordinates. • Z direction(into out of page) will control Fwd/Rev motor function. • Y direction will control left and right steer. • Sent Through Bluetooth Handling Accelerometers Y Axis Calibration Z Axis Calibration -Axis’ must be calibrated so that the user can view the device at an optimal angle. Accelerometers must consider effect due to gravity, linear acceleration = acceleration - acceleration due to gravity. Smartphone Operating System Android Free – No new hardware costs, free SDK, familiar languages Open source platform, easy to learn Programming Language Cost to Develop Devices Readily Available? Familiarity Android Java/XML Free Yes Medium iOS Objective-C $99/year Yes Medium Windows Phone .NET framework/ Visual C++/XNA Free No Low Target APIs 8 (Android 2.2 Froyo and higher), approximately 99.9% of Android market Froyo Version Code name API level Distribution Ginger- Bread 2.3-2.7 4.3 Jelly Bean 18 0% 4.2.x Jelly Bean 17 8.50% 4.1.x Jelly Bean 16 36.60% 4.0.3–4.0.4 Ice Cream Sandwich 15 21.70% 3.2 Honeycomb 13 0.10% 3.1 Honeycomb 12 0% 2.3.3–2.3.7 Gingerbread 10 30.70% 2.3–2.3.2 Gingerbread 9 0% 2.2 Froyo 8 2.40% 2.0–2.1 Éclair 7 0% Honey- Comb 3.2 Ice Cream Sandwich Jelly Bean 4.2 Jelly Bean 4.1 Knight Brawlers App Power Supply Current and Voltage Requirements Component Voltage Needed (V) Current Drawn (A) Raspberry Pi 5 0.5 PCB 3.3 0.16 Discovery Board 5 0.3 Bluetooth Module 5 0.12 max Wi-Fi Module Regulated by Pi 0.15 max Camera Regulated by Raspberry Pi Unknown but Negligible Power Supply • Rechargeable Batteries • Nickel Metal Hydride Remote Control Car • • • • 18.8 inches Long 5.76 inches Wide 4.8 Inches Tall Top speed of 2 mph User Input App Create Profile Load Profile Wifi System Block Diagram Raspberry Pi Camera Sync Car Bluetooth Start Game! Bumpers Control Car End Game and Report Scores Motor H-Bridge Microcontroller LEDs indicating “Health” Bumpers Steering Motor Microcontroller Atmega328 MSP430 STM32F4 AM3359 Dev Board Arduino Uno MSP430 STM32F4 Launchpad Discovery BeagleBone Black Speed (MHz) 16 16 168 1 GHz Language C, Assembly C, Assembly C, C++, Assembly C, C++, C#, Java Dev Board Cost Est. PCB Cost $35.00 $50.00 $9.99 $50.00 $14.25 $50.00 $45 $100+ PWM support Yes Yes Yes Yes Max Temp. (F) 185 185 221 221 Flash Memory 32kB 16kB 1MB 512 MB Interrupt Yes Yes Yes Yes ARM?? No No YES! =D YES! STM32F407VGT6 • ARM 32 bit Cortex M4F • PWM for motor control and Plenty of GPIO available (82) • Low power modes • Serial Wire and JTAG interfaces for debugging • External Interrupt/Event Controller ST-Link/V2 Debugger & Programmer • In circuit debugger and programmer for the STM32 available on Dev. Board • Supports JTAG/Serial Wire Interface Schematic Design In Eagle CAD PCB Division of Labor Josh Will Allen Carlos PCB Design Motors Power Smartphone Interface Sensors LED Network/Scoring System Camera Wireless Connectivity All members will lend a hand in any area that may need additional assistance Budget and Finances Cost Per Unit ($) Already Purchased Units Cost ($) Lever Micro Switch Sensors 2.00 9 18.00 RC Cars 40.00 3 120.00 Experimental boards 20.00 3 60.00 Cameras Modules 10.00 3 30.00 Wifi Modules 20.00 3 60.00 Bluetooth Modules 35.00 3 105.00 Raspberry Pi 30.00 3 90.00 PCB 45.00 2 90.00 Power Systems 40.00 3 120.00 Miscellaneous (Wires, LEDs, Perf Boards, Epoxy, etc.) Total NA NA 200.00 893.00 Progress 100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% Research Design Prototyping Testing Project Completion Issues • • • • Connectivity Consistency Soldering Video Quality Any Questions?