Upload
reynold-cox
View
217
Download
2
Tags:
Embed Size (px)
Citation preview
NETWORK RC CAR©
James Crosetto BS (Computer Science and Computer Engineering)Jeremy Ellison BS (Computer Engineering)Seth Schwiethale BS (Computer Science)
Member Bio’s
James Crosetto Computer Science and Computer Engineering Little Caesar’s Pizza Guru
Seth Schwiethale Computer Science
Music Diversity Contributor
Jeremy Ellison Computer Engineering Anti-Coldplay
Advisor Bios
Tosh Kakar Group Advisor
Work Enforcer
Dr. Hauser Capstone Advisor
Presentation Outline
Objectives Goal Setting Innovate & Design
Requirements Necessary Equipment
Implementation Code Review
Future Development Where to go from here
Objectives
Goal Setting Project Overview Functional Objectives Learning Objectives
Innovative development Radio Frequency vs. Internet Internet vs. Network Computer vs. IP Camera
Goal Setting Innovative Development Design Development Research Products
Project Overview Expanding the range of a remote control car Control car over network, similar to a printer Be able to have first person view of car’s
location Build something cool
Goal Setting Innovative Development Design Development Research Products
ObjectivesGoal Setting
Functional Objectives Establish connection between RC car and
driver’s computer Get real time visual feed Control RC car User friendly GUI
Goal Setting Innovative Development Design Development Research Products
ObjectivesGoal Setting
Learning Objectives Understand Wireless Communication
Efficient methods of sending and receiving data Embedded Systems
Microprocessors Assembly Language Linux / C
R/C car design and functionality Servos Pulse Width Modulation
Goal Setting Innovative Development Design Development Research Products
ObjectivesGoal Setting
Radio Frequency 350-400ft Line-of-sight Object interference
Internet Network Advanced Range Non-line-of-sight
Goal Setting Innovative Development Design Development Research Products
ObjectivesInnovative Development
Goal Setting Innovative Development Design Development Research Products
ObjectivesAnimated Design Progression
Requirements
Necessary Components Car Camera Microprocessor User’s PC
Goal Setting Innovative Development Design Development Research Products
RequirementsThe Car
3 Leads: Ground Vcc
Pulse width modulation
Goal Setting Innovative Development Design Development Research Products
RequirementsThe Car
Goal Setting Innovative Development Design Development Research Products
RequirementsThe Car
Square Pulse wave of 1.0-2.0ms repeats every ~20ms
Width of pulse determines the position of the servo with 1.5ms as the normal center
The amplitude of the pulse is from the reference level to the Vcc
Vcc = 4.6-6.0V
Goal Setting Innovative Development Design Development Research Products
RequirementsThe Car
Power: 5.1 V DC, max 3.5 W
Alarm output (motion, audio, external)
Open API for software integration
CPU, video processing and compression; Ram: 32MB Flash: 8MB
Goal Setting Innovative Development Design Development Research Products
RequirementsIP Camera
Receives and translates signals from the transistor output of the IP camera
Sends translated signals to steering box and speed control
Programmed with C and Assembly
Goal Setting Innovative Development Design Development Research Products
RequirementsMicroprocessor
DragonFly12
Processing Can communicate
directly to RTSP server on camera
Have an instance of a client
Goal Setting Innovative Development Design Development Research Products
RequirementsFunctional GUI
SETH HAS
NEW UPDATED
SLIDE TO
PLACE HERE
Unexpected outcome of design…
Swarmed with applications to be our advisor:
Project Costs:
Camera One time Purchase: $275
Little Caesars Hot-N-Ready: $600 annual cost
Traveling Costs Seminar in Hawaii - $800/member Still pending department approval…
Implementation
PARTYING?How to accomplish our goals?
NO!!!
STUDYING?
YES!
Implementation
3 Major Lines of Communication PC Camera Camera Microprocessor Microprocessor Car
1. PC to Camera
2. Camera
to
Microprocessor
3. Microprocessor to Car
PC Camera Camera Microprocessor Microprocessor Car
ImplementationAnimated Diagram
This slide and those following will discuss the code from the pc to the camera Code Screen shots GUI Screen shots
Discuss Issues
PC Camera Camera Microprocessor Microprocessor Car
ImplementationCode Review – Part I
1. PC to Camera
2. Camera
to
Microprocessor
3. Microprocessor to Car
PC Camera Camera Microprocessor Microprocessor Car
ImplementationAnimated Diagram
Using a microprocessor Initial coding/design on Dragon12
development board (MC9S12DP256) has a bus speed of 24MHz has registers for a Pulse Width Modulator and an
Enhanced Capture Timer Transferred to DragonFly12 (on the car)
Bus speed 48MHz Fewer ports
PC Camera Camera Microprocessor Microprocessor Car
ImplementationCode Review – Part II
Design: Camera to Microprocessor
Camera’s alarm output can be activated about every 10 ms
Initially 10-120 ms speed and 130-240 ms steering in increments of 10 ms (alternating) Problems encountered:
Camera couldn’t be activated this fast when using the camera’s program for activating the output
Slowed to around 0.1 second when streaming video
Very inconsistent signal
Design: Camera to Microprocessor
Changed to four bit signal in the form XXXX Still takes on the order of 250 ms
to send signal Solved using hexdump, Google, and beagle
Speed Steering
Design: Camera to Microprocessor
Solution: Using ioctl system call, output can be
activated in less than 1 ms Number of signals sent (0-14) determine
speed and direction of car Longer signal sent to mark end of signal
sequence
Design: Camera to Microprocessor
Still needed
End of signal
ImplementationCode Review – Part II
PC Camera Camera Microprocessor Microprocessor Car
2N2222
0
0
Rc10k
V15Vdc
V1 = 0V2 = 3.3
V-out
0
V-in
ImplementationAmplifier
1. PC to Camera
2. Camera
to
Microprocessor
3. Microprocessor to Car
PC Camera Camera Microprocessor Microprocessor Car
ImplementationAnimated Diagram
Talk about microprocessor code Dragon12
Screen Shot of Code EmbeddedGNU
Screen Shot of Program DragonFly12
Screen Shot of Revised Code Issues – Issues – Issues
PC Camera Camera Microprocessor Microprocessor Car
ImplementationCode Review – Part III
ImplementationCode Review – Part III
Problems we encountered…. Getting camera feed displayed on GUI Axis not being any help whatsoever
Many emails, one helpful reply Setting up a cross compiler for the camera
Tried six distributions of Ubuntu Create cross compiler with build root and uclibc Creating cross compiler using gcc
Broken Ubuntu installations Fixing Axis cross compiler
Tried creating our own cross compiler Used build root and
Triggering camera alarm fast enough Output activation took around 0.1 seconds using program on camera Solved using hexdump, Google, and Beagle
Putting code onto DragonFly12 Can’t download from CodeWarrior directly CodeWarrior s19 file has to be converted for the DragonFly12
Camera not cooperating
Future Development
What could we do if we had more time? Put everything on a separate car with reverse
(maybe need to explain why we’re using this car with no reverse in the first place)
With above ability, apply backtracking idea? (application of a stack storing commands of steering and compliments of speed)
Wireless strength monitor?
Sales and Marketing
You can place order for yours TODAY! $700…. Next year capstone students? Cash and Visa No Checks w/o valid drivers license
Special Thanks
George Hauser Ph.D., University of Rochester
Tosh Kakar Ph.D., Washington State University
Wayne Chu Frank Wornle Make-a-wish foundation Little Caesars Delivery guys who deliver straight to Morken 212a Ourselves