1 Yale Autonomous Vehicle Project: Implementing an Embedded System with an EBX Form Factor PC System and PIC Microcontrollers.

Post on 20-Dec-2015

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

1

Yale Autonomous Vehicle Project:

Implementing an Embedded System with an

EBX Form Factor PC System and PIC Microcontrollers

2

Team Members:

Mike Liu Ethan Bregman Alan Ghelberg

Andy Nelson Andy Graham Jimmy Su

3

Presentation Outline

•Basic Overview of Robot

•Example Programs

•Benefits of the EBX-Form Factor

4

Yale Autonomous Vehicle Project:

5

Yale Autonomous Vehicle Project:

6

Yale Autonomous Vehicle Project:

7

Yale Autonomous Vehicle Project:

8

Yale Autonomous Vehicle Project:

9

Yale Autonomous Vehicle Project:

10

Basic Block Diagram

EBX-Form Factor

PC System

Compass

&

Odometry

LCD Output

&

Keypad Input

Motor Control Sonar/GPS

COM1 COM2 COM3 COM4

11

Basic Block Diagram

EBX-Form Factor

PC System

COM1 COM2 COM3 COM4

12

Basic Block Diagram (PIC Level)

EBX-Form Factor

PC System

COM1 COM2 COM3 COM4

13

Physical Locations of Systems

14

Example Programs

•Turn.c

•Forward2.c

•Full5.c

15

Example Programs

•Turn.c

16

Flow Chart

•Turn.cInitialize COM Ports

Initialize Display

Initialize Variables

Get Time

Check to see if 90 ms have passed

If so, parse COM1 RS232 String Packets

Yes

No

Print to Screen Results

Adjust Heading Subprogram

17

Flow Chart

•Adjust Heading Subprogram

Get Heading Error Given

Current Heading and Destination

Heading

Compute Left Speed

Compute Right Speed

Output to Motor Control

18

Flow Chart

•Get Heading Error Subprogram

Current Heading: 20

Current Heading: 300

Destination Heading: 10

Reference Point: 360Destination

Heading: 310

Error Formula=

Ref-Current+Destination

10 degrees to right

10 degrees to left

Error Formula = 360-20+10 = 350 degree clockwise

Error Formula = 360-300+310 =

370 degree clockwise

19

Flow Chart

•Get Heading Error Subprogram

Destination in counter clock wise direction?

Diff >= 180

Return Counter

Clockwise Spin Amount

(Negative)

-180<diff<-1

Yes

Destination Reached?

Diff==0?

Return O

Destination in clock

wise direction?

Diff < 180

Return Clockwise Spin

Amount (Positive)

1<diff<180

Yes Yes

Get Counterclockwise difference from

reference value of 360 degrees

20

Example Programs

•Forward2.c

21

Flow Chart

•Forward2.cInitialize COM Ports

Initialize Display

Initialize Variables

Get Time

Check to see if 90 ms have passed

If so, parse COM1 RS232 String Packets

Yes

No

Print to Screen Results

Update Global Variable Counters

Check to see if “#”

has been

pressed

Reset Global Variable Counters

Yes

No

22

Example Programs

•Full5.c

23

Flow Chart

•Full5.cInitialize COM Ports

Startup Display

Main Menu

Get Menu Selection

“#” Pressed?

No

Update Display Feedback

Playback program?

Recording program?

DiagnosticMenu?

Yes

Yes

Yes

Playback Program

Playback Program

Yes Yes

Yes

Diagnostic Menu

Get Menu Selection

“#” Pressed?

Update Display Feedback

No

Manual Control?

Connect the Dots?

Yes Yes

Manual Control Program

Connect the Dots Program

Yes Yes

Find Heading?

Yes

Find Heading Program

Yes

24

Benefits of the EBX-Form Factor

•Low-Power

•Small Size

•PC-Compatible

•PC/104 Compatible

•4 COM Ports Built-In

•Solid-State Flash Disk

25

Benefits of the EBX-Form Factor

•Low-Power

26

Benefits of the EBX-Form Factor

•Small Size

27

Benefits of the EBX-Form Factor

•PC-Compatible

28

Benefits of the EBX-Form Factor

•Powerful CPU

29

Benefits of the EBX-Form Factor

•PC/104 Compatible

30

Benefits of the EBX-Form Factor

•4 COM Ports Built-In

31

Benefits of the EBX-Form Factor

•Solid-State Flash Disk

32

Figure KEYPAD

1 2 3

4 5 6

7 8 9

* 0 #

B G L

C H M

D I N

E J O

top related