NETWORK RC CAR © James Crosetto BS (Computer Science and Computer Engineering) Jeremy Ellison BS...

Post on 23-Dec-2015

217 views 2 download

Tags:

Transcript of NETWORK RC CAR © James Crosetto BS (Computer Science and Computer Engineering) Jeremy Ellison BS...

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