Pilot One

29
PilotOne H o v e r c r a f t a u t o p i l o t PilotOne - ESE HAN University Arnhem

description

Tweedejaars project HAN Embedded Systems Engineering over de hoovercraft.

Transcript of Pilot One

Page 1: Pilot One

PilotOneH o v e r c r a f t a u t o p i l o t

PilotOne - ESE HAN University Arnhem

Page 2: Pilot One

PilotOneInleiding

PilotOne - ESE HAN University Arnhem

Projectgroep 1

Ewout Boks Opdrachtgever Hugo Arends Projectmanager Roy van Dam Projectleider

Freek Albers Marco Grintjes Bram Meijers Jeroen Peters Sebastiaan Veldkamp

Page 3: Pilot One

PilotOneInhoud

PilotOne - ESE HAN University Arnhem

Casus Specificaties Overzicht Hardware Wiskunde Software Conclusie Vragen

Demonstratie

Page 4: Pilot One

PilotOneCasus

PilotOne - ESE HAN University Arnhem

Besturingssysteem voor een hovercraft

Koers van de hovercraft Stand van de hovercraft Snelheid van de hovercraft Afgelegde weg van de hovercraft

Page 5: Pilot One

PilotOneSpecificaties

PilotOne - ESE HAN University Arnhem

EigenschappenAfmetingen (lxbxh): 25 x 15 x 13 cmAccu Motoren: 9,6V 1800mAhAccu elektronica: 9V DC (6x 1,5v cell in serie)Adapter: 12V DC - 400mABesturing: Draadloze RS232 433MHz dataverbindingVoeding RF transceiver: Via USB-poortLaadtijd accu: Minimaal 6 uurMaximum snelheid: Theoretisch 5 m/sRange: Maximaal 250 m (in line of sight)MTBF: 18,3 jaar

Absolute maximumwaardenWerktemperatuur: 0°C tot 30°COpslagtemperatuur: -10°C tot 50°CLaadspanning minimaal: 9,6VLaadspanning maximaal: 12V

Page 6: Pilot One

PilotOneOverzicht

PilotOne - ESE HAN University Arnhem

Onderdelen Hardware

Overzicht Mainboard Acceleratie sensor Motor driver USB-RF transceiver

Wiskunde Overzicht Positiebepaling

Natuurkundige benadering Simpson’s Rule

Rotatiebepaling

Software Overzicht Shell

Scheduler Navigatie

Sensoren Positiebepaling Rotatiebepaling

PID regelaars Hoekregelaar Snelheidregelaar

Motorbesturing Motordriver PWM driver

Page 7: Pilot One

PilotOneHardware

PilotOne - ESE HAN University Arnhem

Overzicht

Hardware Overzicht Mainboard Acceleratie sensor Motor driver USB-RF transceiver

Page 8: Pilot One

PilotOneHardware

PilotOne - ESE HAN University Arnhem

Mainboard

uC 1 uC 2

RF transceiver

FTDIusb-rs232

PWM

Leds

Switches Adc’s sensorI2C

SW2

SW1

Seriële data

Hardware Overzicht Mainboard Acceleratie sensor Motor driver USB-RF transceiver

Page 9: Pilot One

PilotOneHardware

PilotOne - ESE HAN University Arnhem

Acceleratiesensor

Adc’ssensor

Liftmotoraansturing

i2C naar mainboard

Signaal van uC1

Hardware Overzicht Mainboard Acceleratie sensor Motor driver USB-RF transceiver

Page 10: Pilot One

PilotOneHardware

PilotOne - ESE HAN University Arnhem

Hardware Overzicht Mainboard Acceleratie sensor Motor driver USB-RF transceiver

Motor driver

Demux

H-bridge StuwmotorPWM

Select

StuwmotorH-bridgeSelect

PWM

9,6 V voeding

vooruit

vooruit

achteruit

achteruit

Page 11: Pilot One

PilotOneHardware

PilotOne - ESE HAN University Arnhem

USB-RF Transceiver

Mini usb aansluiting

Usb-rs232 converter

Seriele data transceiver TX / RXConnector

Data

Data

Power

Hardware Overzicht Mainboard Acceleratie sensor Motor driver USB-RF transceiver

Page 12: Pilot One

PilotOneWiskunde

PilotOne - ESE HAN University Arnhem

Overzicht

Meet nieuwe a

Vergelijk met vorige a

Bereken v

Bereken δx

Bereken δy

Bereken hoek α

Bereken hoek β

Bereken hoek γ

Verhouding

Begrenzing

Stuur de motoren aan

Wiskunde Overzicht Positiebepaling Rotatieberekening

Page 13: Pilot One

PilotOneWiskunde

PilotOne - ESE HAN University Arnhem

Wiskunde Overzicht Positiebepaling Rotatieberekening

PositiebepalingNatuurkundig

Formules:• x [m]= x0 + ½a0 δt² + v0.δt • v = v0 + agem δt

0.0

200.0

400.0

600.0

800.0

1000.0

1200.0

1 3 5 7 9 11 13 15 17 19

tijd

afg

eleg

de

weg

[m

]

0.0

10.0

20.0

30.0

40.0

50.0

60.0

70.0

80.0

1 3 5 7 9 11 13 15 17 19

tijd

snel

hei

d [

m/s

]

0.0

2.0

4.0

6.0

8.0

10.0

12.0

1 3 5 7 9 11 13 15 17 19

tijd

vers

nel

ling

[m

/s2]

t a y v1 0.0 0.0 0.02 0.0 0.0 0.03 10.0 0.0 5.04 10.0 10.0 15.05 10.0 30.0 25.06 9.5 60.0 34.87 9.0 99.5 44.08 8.0 148.0 52.59 7.0 204.5 60.0

10 5.0 268.0 66.011 3.0 336.5 70.012 0.5 408.0 71.813 0.0 480.0 72.014 0.0 552.0 72.015 0.0 624.0 72.016 0.0 696.0 72.017 0.0 768.0 72.018 0.0 840.0 72.019 0.0 912.0 72.020 0.0 984.0 72.0

Page 14: Pilot One

PilotOneWiskunde

PilotOne - ESE HAN University Arnhem

PositiebepalingSimpson’s Rule

Wiskunde Overzicht Positiebepaling Rotatieberekening

Page 15: Pilot One

PilotOneWiskunde

PilotOne - ESE HAN University Arnhem

Rotatieberekening

S1

S2

Y

X

Y’

X’

r x

r y αβ

Nullijn

Middenlijn

Eindpunt

γ

Wiskunde Overzicht Positiebepaling Rotatieberekening

Page 16: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Overzicht

Page 17: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

ShellUART driver

Command intepreter

zoek applicatie pointer

Opdracht verwerking

Main process

Software DMA

Callback applicatie

pointer

applicatie

Scheduler

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 18: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

Shellscheduler

Stack schrijfactie

Applicatie pointer

FiFo Stack

Stack leesactie

Applicatie executable

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 19: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

NavigatieSensoren

Sensor driver

TWI driver

Proces

Positieberekening rotatieberekening

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 20: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

NavigatiePositiebepaling

Vorige afstand

Nieuwe positie

Realtimeversnelling

Simpson’s rule

Opgegeven hoek

Afstand

Positieeindcoördinaat

AfstandSnelheid

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 21: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

NavigatiePositiebepaling

Simpson’s Rule

Sample drie keer de acceleratiesensoren

Bereken de integraal volgens Simpson’s Rule

Sample één waarde van de acceleratie sensoren

Snelheid

Afstand

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 22: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

Navigatie Rotatiebepaling

1

2

3

4

5

6

1

2

3

4

5

6

1

2

3

4

5

6

1

2

3

4

5

6

b > 0 b < 0

positie boot

1 4

2 3 5 6

m

m

m

m

m

m

ee

e

ee

e

oooo

m m

m m m m

m m

e e e e

e e e e e e e e

e e e e

y – b

y + (360 – b)

-(b – y)

y – (360 + b)

y – b

-((360 – b) – y)

180 – b – y

(180 – y) + (360 – b)

-(y + (b – 180))

(180 – y) – (360 + b)

(180 – y) – b

- ((180 + b) + y)

180 – b + y

- ((180 – y) + b)

- (b – 180 – y)

(180 + b) + y

- ((180 – y) + (360 + b

- ((180 + b) – y)

b – 180 – y

- (y + b)

- (y – (360 + b))

- b – y

- ((360 + b) + y)

- (y + b)

m

mm

mm

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 23: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

PID regelaarHoekregelaar

PID hoekregelaar

Bereken error

Bereken P regeling

Bereken I regeling

Bereken D regeling

Bereken output waarde

Waarde 0° tot 90°?

Waarde -90° tot 0°?

Waarde > 90°?

Waarde < -90°?

nee

nee

nee

Motor links a.d.h.v. hoekMotor rechts 100%

Motor links 100%Motor rechts a.d.h.v. hoek

Motor links -100%Motor rechts 100%

Motor links 100%Motor recht -100%

ja

ja

ja

ja

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 24: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

PID regelaarSnelheidregelaar

PID snelheidsregelaar

Bereken error

Bereken P regeling

Bereken I regeling

Bereken D regeling

Bereken output waarde

Output waarde / 100Motor links * factorMotor rechts * factor

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 25: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

MotordriverMotordriver

Is percentage positief?

Is percentage negatief?

Stuur PWM-driver aan

Is linker motor geselecteerd?

Is rechter motor geselecteerd?

Stuur directionlijn linker motor aan

Stuur directionlijn rechter motor aan

Stuur directionlijn linker motor aan

Stuur directionlijn rechter motor aan

nee

nee

nee

nee

ja

ja

ja

ja

Throttlewaarde en motornummer worden naar PWM-driver gestuurd

Input is percentage van -100% tot 100% en motornummer

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 26: Pilot One

PilotOneSoftware

PilotOne - ESE HAN University Arnhem

PWM driver

PWM driver

Is linker motor geselecteerd?

Is rechter motor geselecteerd?

ja

ja

Set PWM dutycycle voor linker motor

Set PWM dutycycle voor rechter motor

OCR0 = percentage * 2,55

OCR2 = percentage * 2,55

nee

nee

Input is percentage van -100% tot 100% en motornummer

Software Overzicht Shell Navigatie PID regelaars Motorbesturing

Page 27: Pilot One

PilotOneConclusie

PilotOne - ESE HAN University Arnhem

Conclusie

Werkende hardware Geavanceerde software met eigen shell Met pijltjestoetsen bestuurbare boot

Aanbevelingen

Digitale acceleratie sensoren Gyroscoop en Euler assenstelsel Kwalitatief betere hovercraft Optimalisatie wiskunde

Page 28: Pilot One

PilotOneVragen?

PilotOne - ESE HAN University Arnhem

Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9

Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15

Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21

Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27

Page 29: Pilot One

PilotOneDemonstratie

PilotOne - ESE HAN University Arnhem

ShellDoxygenHovercraft