Liz Lyons Mike Scherban Oscar Orihuela. What Is Knightro Kart? An interactive, Android controlled...
48
Knightro Kart Liz Lyons Mike Scherban Oscar Orihuela
Liz Lyons Mike Scherban Oscar Orihuela. What Is Knightro Kart? An interactive, Android controlled vehicle race system consisting of two independent cars
What Is Knightro Kart? An interactive, Android controlled
vehicle race system consisting of two independent cars and
controllers. Vehicles are controlled by Android powered mobile
devices or tablets Consists of two independent vehicles, a track
utilizing infrared, and two independent remote controls
Slide 3
System Block Diagram
Slide 4
Walkthrough
Slide 5
System Specifications Bluetooth Communication Range1 hr Number
of Users2
Slide 6
Remote Control Mobile device is used in landscape mode. It
utilizes hardware level sensor data, and interprets it to tell the
MSP430 how to direct the vehicle.
Slide 7
Why Android? Essentially free No new hardware costs, free SDK,
familiar languages Open source platform, easy to learn Programming
Language Devices Readily Available? FamiliarityCost to Develop
AndroidJava/XMLYesHighFree iOSObjective-CNoMedium$99/year Windows
Phone.NET framework/ Visual C++/XNA NoLowFree
Slide 8
Target APIs 10 (Android 2.3.3 Gingerbread and higher),
approximately 94.2% of Android market Ice Cream Sandwich Jelly Bean
Eclair Froyo Gingerbread Honeycomb
Slide 9
Target APIs 10 (Android 2.3.3 Gingerbread and higher),
approximately 94.2% of Android market Ice Cream Sandwich Jelly Bean
Eclair Froyo Gingerbread Honeycomb
Slide 10
Wireless Communication Choices Bluetooth (Class 2) Wi-Fi
DirectWi-Fi (traditional) ProtocolLMP, L2CAP, SDPIEEE 802.11
a/g/nIEEE 802.11 Communication Distance Radio dependent, 10 meters
min 200 meters MAX Speed3 Mbps MAX250 Mbps MAX API Requirement5 or
higher14 or higher1 or higher Power2.5 mWVariesVaries, may be 40x
Bluetooth ISM Band2.4 to 2.485 GHz2.4 GHz or 5 GHz
DifficultyLowHigh
Slide 11
Remote Control Requirements Android device must: Have Bluetooth
capability Contain accelerometer sensors Have touch screen Run
Android 2.3.3 Gingerbread or newer OS
Slide 12
User Interface Home screen displays current lap, accelerometer
values, and connected devices (if any) Menu allows user to control
the state of the remote control application Connect A Device
connect to a vehicle Start send signal to BT module signifying
ready to race Reset Remote Control reset application variables,
sever connections Exit close the application and disconnect any
active Bluetooth connections
Slide 13
User Interface When user selects Connect a Device from the menu
they are presented with a list of paired devices. User can also
search for unpaired, discoverable devices in the area If connection
is successful, the name of the connected device will be displayed
on the main remote control screen.
Slide 14
User Interface Home screen displays current lap, accelerometer
values, and connected devices (if any) Menu allows user to control
the state of the remote control application Connect A Device
connect to a vehicle Start send signal to BT module signifying
ready to race Reset Remote Control reset application variables,
sever connections Exit close the application and disconnect any
active Bluetooth connections
Slide 15
Handling Accelerometers Accelerometers are seen by the devices
relative to an imagined coordinate system. We use the Y
(left/right) and Z (forward/back) axis values to control the
cars
Slide 16
Bit Assignment 76543210 LEFTRIGHTSPEED
4SPEED3SPEED2SPEED1STOPREVERSE Special Signals WAKEUP: 0xFF RESET:
0xBB
Bluetooth Module Roving Networks RN-41 Minimal configuration
Baud rate Auto slave, SPP Built in antenna Automatically pushes
& pulls data via UART RX/TX pins Runs own Bluetooth stack Low
power 3.3V 100m range
Microcontroller MSP430G2553 3.3V 16KB flash C, Assembly 16MHz
UART & PWM support Same voltage as Bluetooth module No voltage
level shifting More feature rich IDE Viewable registers Real time
setting/variable adjustment Disassembly SW breakpoints G2553
variant HW UART support
Slide 21
Microcontroller MSP430G2553 (28 pin TSSOP) Surface mount
package Function# of Pins UART2 Start Line Signal1 LEDs5 Motors4
Start Alert Signal2
Slide 22
Programming and Debugging Code Composer Studio free license
JTAG used to take advantage of IDE debugging features Connect
through TI USB FET device to 14 pin header
Slide 23
Motor Signals LEFT/RIGHT uses digital signals FWD/REV take
advantage of hardware PWM support PWM used to add variable speed
Slow Fast!
Slide 24
Microcontroller Comm. MSP430 Module: UART, 9600 baud rate,
interrupts* Track Vehicle: Port interrupt*, debounced Vehicle
Vehicle: Watch for port low to high change *Interrupts: To catch
events when they happen, opposed to hanging code and waiting to
catch them Interrupt code is ran regardless of which code is
currently being executed
Slide 25
Low Power Mode Bluetooth module separate from MSP430 Allows BT
pairing while MSP430 is asleep MSP430 goes to sleep at power on and
when not in race mode Turns off clocks and CPU Command from phone
will wake the car for use Only executes code in an interrupt
Slide 26
MSP430 Software Flowchart
Slide 27
Printed Circuit Board Most components will be on a custom
printed circuit board designed in Eagle
Slide 28
Printed Circuit Board LEDs MSP430 JTAG BT Module and status
LEDs Power Motors Ready signals Track signal
Slide 29
Infrared Features Each race vehicle contains IR
phototransistors Biased by IR light START line consists of an array
of IR LEDs Triggers phototransistors on vehicle, enables lap
counter Infrared also used for vehicle to vehicle
communication
Slide 30
Race Vehicle 9.6V battery pack required Potential to travel 20
mph 2 D.C. motors 1 st Motor controlling FWD and REV motion 2 nd
Motor controlling turning left and right 17 inches long 7 inches
wide 8 inches tall
Slide 31
Motor Options Race car requires 2 motors 1 st Motor controls
FWD & REV motion D.C. motor 2 nd Motor controls Turning - D.C.
or Servo D.C. MotorServo Motor Less ExpensiveMore Expensive
Requires Less Voltage to function Requires Higher Voltage to
function Slower Reaction TimeFaster Reaction Time
Slide 32
H-Bridge MSP430 does not have sufficient voltage to run motors
H-bridge directs secondary power supply to motors High/low signals
received by H-bridge cause motors to spin in a certain direction
Ex: Clockwise / Counter-Clockwise / Stand Still
Slide 33
H-Bridge - Typical Typical H-Bridge configuration Motor
represented by inner circle Switches represent transistors Motor is
at a stand still
Slide 34
H-Bridge - Clockwise The H-bridge is causing the D.C. motor to
spin clockwise
Slide 35
H-Bridge Counter Clockwise The H-bridge is causing the D.C.
motor to spin counter clockwise
Slide 36
SN754410 vs. L298N SN754410L298N Max Motors2 DC motors2 DC
motor Max Continuous Current 1 Amp2 Amp VCC1 Supply Voltage Range
3.3V - 5.5V4.5V 7V Max VCC2 Supply Voltage 36V46V
Slide 37
SN754410 Cost efficient : $2.16 per chip Detailed documentation
Manufacturer: Texas Instruments 2Chips per car needed due to
current restrictions Each motor takes up to 1 Amp
Slide 38
SN754410 Pin Out
Slide 39
Car Interior Schematic
Slide 40
Cooling SN754410 includes built in thermal shutdown Generates
enough heat to trigger shutdown Aluminum heat sinks added to
prevent shutdown Fans to assist in cooling
Slide 41
Power Supply Input Voltage Voltage Regulator SN7544109V5V Race
Car9.6VDoes Not Require MSP4309V3.3V
Slide 42
Testing Had LEDs light up at certain events. Connection
successful Byte received Once we knew communication was successful,
we tested with LEDs, SW breakpoints, and the register viewer to
confirm correct bytes. LEDs were used to confirm the correct motor
output from PCB, using the tilt of the phone Tested that the
H-bridge received the correct logic and output the correct signals
using a multimeter and motors Finally tested that the car moved in
accordance with the orientation of the phone
Slide 43
LED Notifications MSP430 asleep. Awaiting wake up Ready to
race, waiting for other car Racing!
Slide 44
Issues Encountered UUID assignment varies based on device
receiving connection, had to look for the UUID corresponding to
hardware (not android devices) Surface mount devices smaller than
anticipated Overheating of the H-Bridge, heat sinks required
Syncing vehicles to start at the same time
Slide 45
Roadblocks App occasionally takes more than one attempt to make
a connection Track LED spacing may be too large to trigger
phototransistor 100% of the time Cars slow down after continuous
usage Heat issue: heatsinks and fans multiplied the usage time
Needs a few seconds to cool down and run at normal speed
Unavoidable infrared light occasionally triggers
phototransistors
Slide 46
What We Would Do Differently For a more successful project we
could have combined headers on the PCB to make the wiring easier
and less cluttered Use modulated infrared to prevent accidental
triggers and allow outside usage Use an H-bridge that supports more
current and heat
Slide 47
Expenses To Date Costs Passive Comonents $ 20.00 RC Vehicles $
102.00 PCBs $ 45.00 Remote Control $ - MSP430s $ 6.00 Photo
Transistors $ 2.00 IR Lights $ 5.00 H-Bridge Chip $ 8.00 Bluetooth
Modules $ 50.00 JTAG Programmer $ 100.00 Batteries $ 10.00 Wood For
Track $ 8.00 Fans $ 28.00 Aluminum Heatsinks $ 6.00 Wiring and
Cabling $ 20.00 Total: $ 410.00