• No results found

Umanned aerial vehicule

N/A
N/A
Protected

Academic year: 2022

Share "Umanned aerial vehicule"

Copied!
109
0
0

Laster.... (Se fulltekst nå)

Fulltekst

(1)

Hovedoppgave

våren 2010

Geir Bø Lunde

Institutt for data- og elektroteknikk,

Det teknisk- naturvitenskapelige fakultet,

(2)

Deteridenneoppgavensettpåmetoderforåstabilisereethelikoptervedhjelpav

elektronikk.Hovedvektener dalagtpå ånne orienteringen tilhelikopteret ved bruk

avsoftsensor.

Deterbyggetetre-motorshelikopter.Dettestyresvedåendrepådragetpådeforskjel-

lige motorene.Deterogsåblittutvikletegenelektronikk,som kanstyremotoreneog

samle inn data fra sensorene. Denne sender i tillegg informasjonen tilbake til data-

maskinen. På datamaskinen er det utviklet et eget program, som presenterer denne

informasjonenforbrukeren.

Det er ingen lett oppgave å måle orienteringen til helikopteret. Det er blitt vist at

de billigesensoreneikkegirbranokmålinger for dette.Deterderforutvikleten soft-

sensor, somkombinererere målinger. Forå gjøremålingeneerdetbrukttre gyroer.

Disse liderav bias-drift og blirderfor feil over tid. For å kompenserefor bias-driften

erdetbruktettre-aksersakselerometer.Dettemålertyngde-akselerasjonenogbruker

denne til å beregne orienteringen. Allekreftene som virker på helikoptretvil også gi

utslagpåakselerometeret.Dennemålingenkanderforhellerikkestolespå.Foråkom-

bineredissemålingeneerdetblittsettpåereforskjelligesoftsensorer.Detervistaten

oppnårbestresultatvedåbrukeetandreordenskomplementær-lter.Foråvisedette

erdetblittgjortsimuleringeravdeforskjelligemetodeneiMatlab.Dissesimuleringene

erda basertpåvirkelig datahentetfrasensorenepåhelikopteret.Deteritilleggvist

atenikkeoppnårbedreresultatervedåbrukestøyfjernings-lterførsoftsensoren.

For å gjøre selvereguleringen er detbruktPID-regulatorer, som er implementert på

en mikrokontrollerfraAtmel.Dennehenterogså innall informasjonfra sensoreneog

kjørersoftsensor-algoritmen.Deterogsåblittdesignetetegetkretskort hvorallesen-

sorene ermontert.Brukeren kanda styrehelikopteret ved hjelpav enjoystik koblet

tilgjennomUSB-portenpådatamaskinen.

Systemet er utviklet med mulighet for modulbasering. De forskjellige modulene kan

dakoblessammenved hjelpavI2C. Dettegirmulighetfor viderearbeidutenformye

kjennskaptilhovedsystemet.Deterogsåblittutvikletenkommunikasjons-modul,som

larhelikopteretkommuniserermeddatamaskinenvedhjelpavZigBee.Detteereteget

kretskort,somerkoblettilhovedsystemetvedhjelpavenatkabel.

(3)

1 Viktige begreper 1

2 Introduksjon 2

2.1 Rapportens innhold ogstruktur . . . 5

3 Konstruksjon 6 3.1 Motorer . . . 6

3.2 Hastighets-kontroller. . . 7

3.2.1 PPM-signal . . . 7

3.2.2 I2C-styring . . . 8

3.3 Batteri . . . 8

3.4 Propeller . . . 8

3.5 Helikopterkroppen . . . 9

3.6 Koblingsskjema . . . 11

3.7 Pris . . . 11

4 Modulbasering 12 4.1 Modul-forslag . . . 13

4.1.1 Orienterings-estimator. . . 13

4.1.2 GPS/INU . . . 13

5 Valg av hjerne 14 5.1 Vanlig mikrokontroller . . . 14

5.2 FPGA . . . 15

(4)

5.4 Valg . . . 16

6 Måleinstrumenter 17 6.1 DierensiellGPS . . . 17

6.2 Termiske sensorer(IR). . . 17

6.3 Gyroskop . . . 18

6.3.1 Mekanisk. . . 18

6.3.2 Optisk gyro . . . 19

6.3.3 MEMS-gyro . . . 19

6.4 Akselerometer . . . 20

6.5 Magnetometer . . . 20

6.6 Valg . . . 21

7 Implementering av sensorer 22 7.1 Gryo . . . 22

7.2 Akselerometer . . . 25

8 Kretskort 27 9 Målestøy 31 9.1 Logisk lter . . . 32

9.2 Gjennomsitts-lter . . . 33

9.3 Avansert ltrering . . . 34

9.3.1 Digitalt lter . . . 36

(5)

10 Representasjon 43

10.1 Eulers-vinkler(enkel metode) . . . 43

10.2 Avansert ulineær metode . . . 45

10.2.1 Rotasjonsmatriser . . . 46

10.2.2 DCM Utledning . . . 47

10.2.3 Normalisering . . . 50

11 Beregning av orientering medakselerometer 51 11.1 Separate vinkler . . . 51

11.2 Metode 2. . . 53

12 Softsensor 54 12.1 Kalmanlter . . . 54

12.1.1 Kalman-implementasjon . . . 55

12.2 Kalmanlter påulineært system. . . 57

12.3 Komplementært-lter . . . 58

12.3.1 1.orden . . . 58

12.3.2 2.orden . . . 59

13 Resultat 61 13.1 Representasjon . . . 62

13.1.1 Lineær . . . 62

13.1.2 Ulineær . . . 63

(6)

13.2 Softsensor . . . 65

13.2.1 Lineær-representasjon . . . 66

13.2.2 Ulineær . . . 67

13.2.3 1.orden og2.orden . . . 69

13.3 Oppsummering . . . 73

14 Matematisk-modell 74 14.1 Parameter identikasjon . . . 77

15 Regulatordesign 79 15.1 Parameter-tuning . . . 80

16 Firmware 81 16.1 Kalibreringav hastighets-kontrollere . . . 83

17 Hovedprogrammet 84 18 INS 86 18.1 GPS . . . 86

18.2 Akselerometer . . . 86

18.3 Kamera. . . 87

18.4 Softsensor . . . 87

18.5 Beregningav høyde . . . 88

18.5.1 Sonar. . . 88

18.5.2 Barometer . . . 88

(7)

19.1 Analog-mottaker . . . 89

19.2 Zigbee . . . 89

20 Videre arbeid 92

21 Diskusjon og konklusjon 93

21.1 Diskusjon. . . 93

21.2 Konklusjon . . . 93

Referanser 95

Vedlegg 97

A integrer.m 97

B mitt_omp_lter.m 97

C euler.m 98

D DCM.m 99

E Kretsskjema 101

(8)

1 Viktige begreper

Helikopter og y har seks frihetsgrader. Dette gjørat en trenger egne navn for å beskrive

disse. For de som beskriver rotasjonen til objektet rundt massesentret brukes yaw, roll og

pith. I masteroppgaven vil det først og fremst være disse som skal reguleres. Å ha egne

navn forrotasjonen gjørdet svært mye enklere å forklare bevegelsen til helikopteret. Figur

1.1 viserhvilken vinkelhver avdisse beskriver.Ioppgaven erdet valgtåkallerotasjonentil

helikopteret,oreintering.

De tre siste frihetsgradene beskriver bevegelsen i X, Y og Z retningen. Disse kalles ofte

surge, sway og heave. Dissebliri oppgaven kaltposisjon.

Det er blitt valgt å bruke de engelske ordene. Siden disse brukes som norske innen dette

fagfeltet. Et annet begrep som kommer til nytte er hover, som er en fornorsking av det

engelske ordet.Dette brukes nårrollog pithernull og helikopteret altsåsvever.

(9)

2 Introduksjon

Det er iden senere tid blitt mer og mer oppmerksomhet rundt UAV-teknologi. Det nnes

mange bruksområder for en UAV, innen overvåkning, rekognosering, redningsarbeid og så

videre. Den kan brukesiallesituasjonerhvoren ikke ønskeråsende en pilot.Ellerhvor det

er såpassdårligplassaten ikkekansende et fartøy med plasstilpilot.Skalen foreksempel

innien krigssonevildet alltidvære fareformenneskeliv.Detteslipperen åtenkepånåren

bruker en UAV. Forskningen rundt dettejobbermed enormebudsjetter. Herer blant annet

NASA og det amerikanske forsvaretstoreaktører. Detervanskelig åkonkurrere med disse,

men utvikling på et lavt budsjett er svært forskjellig fra et høyt budsjett. Mesteparten av

forskningen somblirgjorterhellerikke gjorttilgjengelig.

InnenUAV-enmennesdetsværtmangeinteressanteproblemstillinger.Dissepasserperfekt

til kybernetikk-fagfeltet. Dette gjelder blant annet bruk av softsensor, regulering, signal-

forbedring og kommunikasjon. For åløse utfordringene måen nesten innomallefagene på

masterstudiet. Detble derfor valgtåutvikleet sliktsystem.

Det første valget som måtte tas, sto mellom helikopter eller y. Det nnes svært mange

fordeler med begge, men det er noe enklere å gjøre helikopter-testerinnendørs. Detnnes

også merferdig dokumentasjonrundt utviklingav y-systemer.

Det ble derfor valgt å utvikleet drone-helikopter. Disse er ofte svært dyre, men fremskritt

innenMEMS(MiroEletrialMehanialSystem)teknologihargjortdetmuligåutvikleen

billigversjon.Budsjettetgårut oversensor-kvalitetenog enstordelavoppgaven blirderfor

å estimere tilstanden til helikopteret. Som en ser nnes det svært mange problemer, som

må løses innen dette emne. For å begrense oppgaven noe er det satt et hovedmål. Dette

vil være å gjøre helikopteret stabilt i hover-tilstand.Altså å utvikleen stabil luftplattform,

som kan stabilisere segselv uten påvirkning av brukeren. Brukeren har kun mulighet forå

settereferansenetilregulatorene.Systemetskalderetterplasserehelikopteretidenønskede

orienteringen. En slikluftplattformkan blant annet brukesforålme ellerfotografere om-

råder.

For å begrense oppgaven enda mer er det lagt mest vekt på å nne orienteringen til he-

likopteret.Dettesidendeterumuligåskapetet stabiltsystemutenåkjenne denne.Denne

delen har også est interessante problemer. En kan nå sette opp en oversikt over hvilke

systemer, som måimplementeresioppgaven.

(10)

Valg av helikoptertype ble gjort allerede i forprosjektet,[36℄. Det ble her valgt å bygge et

re-motors helikopter. Siden dette har et enkelt mekanisk design og kan bygges relativt

billig.Designeter ogsåsværtstabilt.Her brukeren elektronikkforåbalansere vedhjelp av

åregulerehastigheten påde repropellene. Foråforklaredettedeler eninnitomotor-par.

En serdaatvedåendrehastigheten pådenenemotorenogøkehastigheten pådenandre.

Vildettegienendringirollellerpith.Etmotor-parstyreraltsåpith,mensdetandrestyrer

roll.Yawkontrolleresvedålade tomotor-pareneroterehversinvei.Hvisetpargårraskere

enn det andrevil en fåen endringi yaw.

Figur 2.2: Figurenviserhelikopteret,som skalbyggges ioppgaven

Etre-rotorshelikoptererikkenytt.Detnnesalleredeprosjekter,somjobbermedåutvikle

sliketilhobbybruk. Disseprosjekteneeroftesværtdårligdokumentert.Ogenfellesnevnerer

atdebyggerpåenprøvogfeilmetode.Eteksempelpådetteeratentarferdigregulatorkode

fra et annet prosjekt og implementerer dette direkte. Deretter prøver en nye regulator-

parametere til helikopteret blir nokså stabilt. Dette går igjen for alt som brukes på disse

systemene. Denne metoden gir helikoptre som er mulig å y, men krever svært mye av

piloten

.Det eraltsåikke etautonomt-system.

Denneoppgavenvilderforbaseresegpåågjøreetanalytiskstudie.Dettegjøresvedåhentet

data direkte fra sensorene og behandle disse i et simulerings-system på datamaskinen. På

denne måten vil en kunne se eventuelle problemer i plott i stede for å gjette seg frem på

parametere.En fårda se problemene de forskjellige sensoreneog metodenehardirekte.Og

kannne løsningerpådisseutenågjøretester medhelikopteretiluften. Deterikkefunnet

(11)

EtprosjektsomerblittbruktsomreferanseidetteprosjekteterAEROQAUD,[2 ℄.Herjobbes

detmedåutvikleethelikopter,sombaserersegpåArduino,[3℄.Detteeretutviklingssystem

somidetsisteerblittsværtpopulærtblanthobbyentusiaster. Firmwarenskrivesdaieteget

rammeverk, hvor de este metodene er ferdig skrevet i . Dette gjør at brukeren trenger

svært liteforståelse avhva somskjer ibakgrunnen, sidenalther erferdigskrevetavandre.

Determuligåydettehelikopteret,mendet kreverveldigmyeavpiloten.Deteraltsåikke

særligstabilt.Informasjonensomerhentetherfraerhovedsakeligmekaniskinformasjon,som

motor, bygging av selvehelikopteretog såvidere.

Informasjonen som nnes om detteemne er både vanskelig å nne og mye erdirekte feil.

Dettegjørlitteraturstudietilenomfattendeoppgave.Ogdeterbruktmyetidpålitteraturfra

forskjelligekilder,somvisersegåværefeil.Myeavlitteraturenerbasertpåbraoppgaverog

virkerderfortroverdig.Myeinformasjonerogsåkommetfremetterdiskusjonpåforskjellige

forum, daspessiletwww.rgroups.om.

Mange av elementene i oppgaven vil være felles for både y og helikopter. Dette gjelder

blant annet orienterings-estimeringen. Det erderforønskelig å utviklesystemet så generelt

som mulig. Slikat de med et rmware bytte kan brukes på det andre systemet. På denne

måten slipperen å utvikleny hardwareforforskjelligesystemer.

Detvilbliendelbegrensningerpåhvasomermuligåimplementerepåhelikopteret.Endelav

disse begrensningene oppstår på grunnav løftekraften og størrelsen tilhelikopteret. Imot-

setning til større helikopter må systemet implementeres på en liten mikrokontroller. Dette

girbegrensningerbådeinnenplassogprosessorkraft.Etviktigmåliprosjekteteratdetskal

kunnebyggessåbilligsommulig.Detskalogsåværemuligforen lekmannåbyggesinegen

versjon av helikopteret.Materialene sombrukes måderforværelett tilgjengelige ogbillige.

Dette setterytterlige begrensningerpå hva somermulig åoppnå.

Detnnessværtliteinformasjonomdynamikkentilsystemet.Deterderforvanskeligåvite

hvorgode målingenemåværeog hvorrasksampletiden trenger.Deterderforistedevalgt

åprøve ågjøredissebestmulig,med debegrensningenesystemet setter.Enkan seatetså

lite systemvilfå sværtraskdynamikk.Detvil derforbli forsøktå pressesampletiden lavest

mulig.Ogpådenne måtenfåmedmest muliginformasjon,som senerekanbrukestilålage

modell.

Foråoppsummere,vilproblemstillingenbliådesigneenstabilluftplattform.Hvorsystemene

testesietsimuleringsverktøyistedeforåimplementeresdirekte.Systemetskalogsåbygges

påetlavtbudsjettslikathvemsomhelstkanbyggesitteget.Enmådaførstutvikleelektron-

ikk, somkanhenteinndennødvendigeinformasjonen.Videremåselvehelikopteretbygges.

Deretter må en utvikleprogramvare, som kanbruke sensor-datatilå beregneorienteringen

(12)

2.1 Rapportens innhold og struktur

Kapittel 1gårgjennom viktigebegreperbrukti oppgaven.

Kapittel 2 eren kortinnledningsom tarforsegbakgrunn ogproblemstillingforoppgaven.

Kapittel 3giren beskrivelseav hvordanselve helikoptereterkonstruert.

Kapittel 4tarforsegmulighetenformodulbasering.

Kapittel 5gårgjennom valgav hjerne(

mikrokontroller

) tilhelikopteret.

Kapittel 6beskriverde forskjelligemåleinstrumentene,som erblittvurdert tiloppgaven.

Kapittel 7viser hvordan de forskjellige måleinstrumenteneerblitt implementert.

Kapittel 8eren kortbeskrivelseav kretskortdesignet

Kapittel 9viser metoder forå fjernemålestøy.Ved hjelpav støyfjernings-lter.

Kapittel 10beskrivermetoderforårepresentere orienteringentilhelikopteret.

Kapittel 11viser metoder forå beregneorienteringved hjelp avakselerometer

Kapittel 12 går gjennom forskjellige typer softsensorer, som kan brukes for å estimere

orienteringen

Kapittel 13 viser resultatet av å bruke metodene i de tidligere kapitlene. Valg av beste

metode blirogså tatther.

Kapittel 14gårgjennom metoder forånne denmatematiske-modellen.

Kapittel 15eren beskrivelseav regulator-designet.

Kapittel 16eren kortbeskrivelseav rmwarentilhelikopteret.

Kapittel 17eren kortbeskrivelseav dataprogrammet,utvikletioppgaven

Kapittel 18beskrivermetoderforånne posisjonentilhelikopteret

Kapittel 19beskriverkommunikasjons-modulen utvikletioppgaven

Kapittel 20gårgjennom muligheterforvidereutviklingav oppgaven

(13)

3 Konstruksjon

Det førstesom måttegjøresioppgaven varåbyggedet fysiskehelikoptret.Deterikkelagt

mye vekt påkonstruksjon idenne oppgaven.Og detteblirderforgjennomgodt noksåraskt.

Etavmålenevarheratdetskullekunnebyggesbillighjemme,utenformyeavansertutstyr.

Slik athvem som helstskullekunne bygge sinegen versjon.Elektronikken utvikleti resten

avoppgaven skalderetterkunnebrukesforåkontrollerehelikopteret.Dettegjøratbrukeren

ikketrengeren inngående forståelseav systemet.Designetblirderforgjortpåenklestmulig

måte. Mangeav ideene blehentet fra[2 ℄. Blantannet motorerog motorstyring.

3.1 Motorer

Noe av det første som måtte velges i oppgaven var hvilke motorer som skullebrukes. Her

nnes det et hav av muligheter. Dette er derfor et vanskelig valg, som må tas basert på

erfaring. Valget ble tattut fra anbefalinger på [2 ℄. Her ble det anbefalt å bruke børsteløse

motorerav typen,TowerProBrushlessOutrunner 13A.Disseersværtbilligeogløftekraften

skalværebra.Devarrelativlangbestillingstid,disseblederforbestillutenvidereoverveiing.

Motorene ble kjøptfra,[13℄

(14)

3.2 Hastighets-kontroller

Somenserhardebørsteløsemotorenetreledningerinn.Entrengerderforspesiellehastighets-

kontrollere,ESC(EletriSpeedController)foråkontrollerehastighetenpåmotorene.Disse

haregnemikrokontrollere,somstyrersekvensensomsendesinngjennomde treledningene.

Valget ble også her tatt basert på pris og anbefalinger fra, [2 ℄ Her ble det valgt å bruke

TURNIGY Plush 18amp. Disse kontrolleres ved hjelp av PPM-signal. Dette blir gjennom-

godt under. Disseble også kjøptfra [13℄

Figur 3.2: Bildeerhentetfra, [13 ℄

3.2.1 PPM-signal

Den valgte hastighets-kontrolleren styres som sagt ved hjelp av et PPM(Pulse Position

Modulation)-signal. Dette er samme signal som brukes for å styre vanlige servoer, [38℄.

Signalet kan sesigur 3.3.

(15)

Hersendesdetenpulssomliggermellom1til2ms,deretterkommerdetenpausepå20ms.

Forsåårepetere heleprosessen.Pulsen styrerdaaltsåpådragettilmotorene.En seratdet

da tarfra 20 l22 msforåoppdatere pådraget tilmotorene.Dette vilgi en oppdaterings-

frekvenspå(1/22ms)=45Hz.Dettebørværebranoktilvårtformål.AeroQuadprosjektet

kjører de samme kontrollerne ved hjelp av et vanlig PWM-signal. Hvor pulsen altså er like

lang sompausen.Detteblederforogsåtestetidetteprosjektet,med sværtgode resultater.

Dette gjøratde repådragene nå enkeltkangis fra re PWMkanaler.

3.2.2 I2C-styring

En annen måte å kontrollere hastighets-kontrollerne på, er å bruke I2C. Denne metoden

passer sværtbratildetteprosjektetsidenendakunnekobletsegrettinnpåI2C-nettverket.

En hadde på denne måte ikke brukt noen av timerene på mikrokontrolleren. Denne typen

kontrollerkan kjøpesferdig, men det vanligsteerå bygge om PPM-kontrollere.Siden kon-

trollerne inneholder en mikrokontrollerer det mulig å bytte programvaren. En kan da selv

velgehvordanenvil kommuniseremedkontrolleren.Detteerendelarbeid ogblederforikke

påbegynt i denne oppgaven. Denne oppdateringen kunne heller vært en ide til en senere

baheloroppgave.

3.3 Batteri

For å kunne y helikopteret var det tungvindt å være avhengig av strøm fra bakken. Det

varderfornødvendig med etbatteri.Igjenblevalget tattbasert påerfaringerfraAeroQuad

prosjektet. Valget faltpåZIPPY Flightmax 4000mAh 3S1P20C. Dette skalgi en ytid på

a 15min ogpasser derfornttildetteformålet.Ogsådetteble kjøptfra,[13℄.

3.4 Propeller

For at helikopteret skulle kunne y, var en avhengig av å montere propeller på motorene.

Siden de to motor-parene harpropellersom gårhver sinvei, trenger en to typer propeller.

Grunnen til detteerat hvis en snur retningen på en vanlig propell vil den presse luftenfeil

vei. Valget ble igjen tattbasert på tips fra AeroQuad. Her ble APC 10x4.7 Slow Flyer og

(16)

3.5 Helikopterkroppen

Detsistesommåbyggeserselvekroppentilhelikopteret.Hererdetsværtviktigmedsterke,

stive og ikke minst lette materialer. Det ble prøvd ere forskjelligematerialer bandt annet

PVC. Valgetfalt tilslutt påbruk av Aluminiumsiden detteer lett,sterkt og relativtbillig.

Trox Auranor,kunneskaeto1mlangealuminiumsbjelker.Dissevarformetsomrektangler

med mål1m x 2m.Dennetypen erakkurat bred nok tilåkunne festemotorene direktei

bjelken.Og ble derforvalgt tiloppgaven.

Figur 3.4: Figurenviserhvordanhelikopterkroppen ble sattsammen

I et optimalthelikopter vil alle motorene stå isamme høyde. For å gjøre designe så enkelt

sommuligbledetistedevalgtåkappebjelkenitolikedeler.Forsååleggedissedeleneover

hverandre forådanne etkryss.For åstabiliseredetteble detskårettilen aluminiumsplate.

Denneblelagtmellombjelkene.Deretterbledetbrukten håndholdtdrilltilålagehuller,til

skruer. Foråfesteelektronikkenble detbrukttovanliged-plater,somblelimtsammenfor

å gjøre dem stivere. Disse ble brukt forat en skalslippe å ha elektronikken i kontakt med

aluminium. Tre huller ble drillet helt ytterst på hver av bjelkene slik at en kunne montere

motoreneher.Motorenekommedaltfestemateriellipakken.Dettekanensepåbildeunder.

(17)

Figur 3.5:Bilde viserhvordanmotorenble montert.

Som en kan se er detteet relativtraskt bygg, men hoved-fokuset i oppgaven er ikke kon-

struksjon.Kravettildennedelenvarderforbareålagenoesomfungerte.Resultatetkanses

(18)

3.6 Koblingsskjema

En har nå alle delene som trengs for den mekaniske delen av oppgaven. Neste steg var å

koblealtsammen.Hvordan detteble gjortvises idet forenklede koblingskjemaet under.

Figur 3.6:Koblingskjema

3.7 Pris

Det her her tattmed en rask oversikt over prisen på de forskjelligedelene til helikopteret.

Som enserkandettebyggessværtbillig.Aluminiumsdelenevargratisogdet erderforikke

funnet prispådisse.

Del Navn Pris(USD) Antall Sum (USD)

Propell GWS HD8040 3 BladeProp 2PK 2.69 1 2.69

Propell GWS HD8040 3 BladeProp CR2PK 2.69 1 2.69

Motor TowerPro BrushlessOutrunner 13A 6.39 4 25.56

ESC TURNIGY Plush 18ampSpeedControll 11.31 4 45.24

Batteri ZIPPY Flightmax4000mAh 3S1P 20C 19.99 1 19.99

Som en ser kan hele systemet bygges for 96.17 USD eller 624 NOK. Dette blir da uten

(19)

4 Modulbasering

For å gjøre systemet så allsidig som mulig. Ble det valgt å gi systemet mulighetfor mod-

ulbasering. Disse modulene skal kunne operere uavhengig av hverandre. Slik at de enkelt

kan byttes ut, uten å påvirke resten av systemet. Det blir altså en hoved-enhet/kort og

ere slave-enheter. En kan foreksempelha to kommunikasjons-kort, ettsom kommuniserer

via ZigBee. Og ett som styres ved hjelp av vanlig kontroller. Eller skulle en ønske å styre

systemet ved hjelpav Wi erogså dettemulig.Disse kortene kan da enkeltbyttesut etter

hvilke spesikasjoneren ønskerpå helikopteret. Enav det store fordelene med modulbaser-

ing er at en kan spre arbeidsmengden over ere mikrokontrollere. Hvor hver slave gjør en

spesikkoppgave.Deretter kan masteren henteinninformasjon ogfordele dendataen som

trenges. Eteksempelkan væreenmodulsom gjørorienterings-estimering.Masterenkanda

hente inndenne informasjonenherfra foråsendedenvideretilenannenmodulsom tarseg

av reguleringen.

Modulbaseringen gjør også at systemet blir enklere å videre utvikle. Skal det legges til

funksjoner påhelikopterettrengeren ikkenødvendigvisforståhelesystemet.Enkan lageen

egen modulsom gjør dennye oppgaven. En trenger da bare en enkel oversikt over hva de

forskjellige modulene forventer innog ut.

Fåråfåsystemetmodulbasertmåkortenekunnekommunisere.Entrengerdaenkommunikasjons-

protokoll.ForågjøredetteenkeltbledetvalgtåbrukeI2C.Deestenyeremikrokontrollere

har dette innebygget. Det blir derfor en enkel sak å gjøre dette i praksis. En annen fordel

er at I2C er et bus-system.En trenger altså ikke en kabel fra hver modul. Det kan i stede

brukes en atkabel som går innom hver modul. Denne måha minimum tre ledere til jord,

data og klokke. Forå slippe åha egen spennings-regulatorpå hvert kortble det også lagt

til 5vog 3.3v idenne.

Figur4.1: Figurenviser bus-systemet

Hvertmodulbyggesdamedenegenmikrokontroller.DennesettesoppsomI2C-slave.Videre

stårenfritttilåbyggehva enønsker. Foråspareplassbyggessystemetietasjer,modulene

(20)

4.1 Modul-forslag

Her er det tatt med noe ideer til moduler som kan utvikles. Det vil senere i oppgaven bli

visten implementeringaven egen kommunikasjons-modul.Her vilrammeverketbli sattfor

hvordan moduler kan utvikles.

4.1.1 Orienterings-estimator

Det ble vurdert ågjøreorienterings-estimeringeni en egen modul.Denne kunne hatt egen

mikrokontroller,somhentetinndatafrasensoreneogkjørtedissegjennomlteralgoritmen.

Deretter kunne hovedsystemet hentet all data om orientering helt uten å måtte bruke tid

på dette. Siden detteville kunne skape mye problemer ble det valgtå laalt dettevære på

hovedkortet. Dettevilheller kunne gjøresi en senereimplementering.

4.1.2 GPS/INU

En annen interessant ide er å bygge en INS(Inertial Navigation System)-modul. Hvordan

en slik kunne fungert vil bli gjennomgått i et eget kapittel, men aldri implementert. Im-

plementerer en denne som en modul kan den beregne posisjonen til helikopteret.Modulen

kan videre bruke en regulator, som forteller master-modulenhvormye orienteringentil he-

likopteret måendres forå komme segtil den ønskede posisjonen. Dennepasser også godt

(21)

5 Valg av hjerne

Valgetav

hjerne

(mikrokontroller)tilhelikopteretvaretsentralttemaioppgaven,sidendet erdennesomskalgjørealttungarbeidet.Etviktigelementforågjørehelikopteretstabilterat

sampleratenblirhøynok.Denmåoppfatteendringeriorienteringenpåettidligtidspunktfor

å kunneoppdateremotor-pådragetraskt.Siden prosjektetbygges påbudsjettmåden også

være billig.Mikrokontrolleren må kunne hente inn ny data fra sensorene, behandle denne,

for deretter å kjøre softsensor-algoritmen. Den må videre bruke denne informasjonen til å

regulereorienteringentilhelikopteret.Påsammetidskaldatakunnehentesut frasystemet.

Forå kunne bruke denne informasjonentil simuleringog videreutviklingpå datamaskinen.

Mådenhentes utihverttidssteg.Detteblirrelativtmyedataog detstillerderforstrengere

krav tilmikrokontrolleren.

5.1 Vanlig mikrokontroller

Detmestnærliggendevalgetvaråbrukeenvanligmikrokontroller.Disseerlagetforågjøre

en oppgave(kjøre ett program). Mendet er mulig å fået tilnærmet

multitasking

system

vedåbrukekreativeavbrudd.Ogpassepåatsystemetikkeblirhengendemeden oppgaven.

Dette er også en svært billig løsning og nyere mikrokontrollere kan være svært raske. Det

ble valgt å bruke et utviklingskort for å slippe problemene som egne kort ofte fører med

seg. Sidenreferanseprosjektet, [2 ℄ brukerArduino, [3℄. Hadde det værtinteressant å bruke

denne også i denne oppgaven. Arduino er egentlig laget for hobbybruk og har som nevnt

tidligere et eget utviklings rammeverk. Hvor all lavnivå-koden er skrevet av andre. Dette

gjør det lett å utvikle en rask prototype, men ikke eksibelt nok til å desine programmet

helt etter kravene. Men ved å bruke en egen ash programmerer, er det mulig å laste sin

egen kode direkte inn. Denne koden kan da skrives dirkete i . Mikrokontrolleren som står

påkorteterAtmega328,[4 ℄.Denneersattopptilåkjørepå16mhz,somerrelativtbraetter

dagens standard. Den harogså 32 kbash-minne, altsågodplass tilprogrammet. Arduino

er laget forå festesåkalte

shields

toppen. Dette er egne kretskort. En kan da utvide

utviklingskortemed egne kretser.

(22)

5.2 FPGA

Et alternativ til å bruke mikrokontroller, var å bruke en FPGA (Field ProgrammableGate

Array). Her kan hele systemet implementere som logiske blokker. For å gjøre implemen-

tasjonen enklestmulig kan dette implementeresi HDL (Hardware Desription Languages).

De vanligste erVerilogog VHDL. Her designes systemeti et språk som ikke er for ulikt.

Fordelenmedågjøredenne implementeringeneratsystemetblirutroligraskt.Enkanogså

kjøre ere oppgaver i parallell. En kan foreksempel kjøre tre regulatorer på samme tid.Et

eksempel på en slik implementasjon kan ses i [22℄. Et slik system vil bli noe dyrere enn å

bruke mikrokontroller,men detnnes ogsåher blilligeutviklingskort.Eteksempelkanvære

et avplutokortene fra[16 ℄.Dissekosterikkemerenn39.95usdfordenbilligstetypen.Det

nnes også gratisversjoner avutviklings verktøyet sombrukes fordenne FPGA-en.

Figur 5.2: Bildeerhentetfra, [16 ℄

Problemet med denne typen design er at det er svært komplisert. Mens prosjektet er i

prototype-fasen gjøres det svært mange radikale endringer. Og ting skal testes opp mot

hverandre. Heleoppsette med derforbygges omere ganger.Dettekan derfor istedevære

en god oppgave for videre utvikling. Et alternativ til å implementere hele systemet. Kan

væreåutvikledettesomen modul.Dennekandaforeksempeltasegavreguleringogmotor

styring (ESC). Enkunne da gittmåleog referansedata direktetildenne modulenved hjelp

(23)

5.3 Sanntids linux

Her brukesen kraftig mikrokontroller,medmulighetforåkjøreet sanntids-operativsystem.

Dette kan foreksempelværeen spesiellversjon av linux. Dettegjørat denopererer som en

vanlig datamaskinog kan kjøreere oppgaver på samme tid.Mange av muligheten ilinux

kandaogsåbrukes,somwlan-kontrollogvideo-prosessering.Detvilaltsåblisomåplassere

en datamaskinpåhelikopteret.

Et eksempel på mikrokontroller kan være ARM9, denne kan kjøre en sanntid linux-kjerne.

Og kan ha en klokkefrekvens på 250 Mhz. Som en ser er dette en helt annen verden enn

vanligemikrokontrollere.

Figur 5.3: Bildeerhentetfra, [28 ℄

Bakdelen med denneeratdeteren dyrløsning, TS-4500koster92 USDfra[28 ℄.Altsålike

mye somhelehelikopteret.Hvissystemetsenereskalutvidesmederekrevendefunksjoner,

foreksempelvideo-prosessering. Vildettevære en mergunstigløsning.

5.4 Valg

Etter å ha gåttgjennom mulighetene over, seren atdet mest logiskevalget er ågå foren

vanlig mikrokontroller.Denneharallemulighetenesomtrengsiprosjektetogeritilleggden

(24)

6 Måleinstrumenter

For å kunne stabilisere helikopteret, trenger en informasjon om orienteringen. Det trengs

altså en IMU (Inertial Measurement Unit), denne bestårofte av ere sensorer. Den brukes

for å gi en nøyaktig måling av orienteringen til helikopteret. I store prosjekter kan dette

gjøresvedhjelp avsværtdyre ogtungemåleinstrumenter.Utfordringen vilherværeånne

orienteringenvedhjelpavbilligeoglettesensorer.Disseerkjentforåværesterktpåvirketav

bias-drift og støy.Sidenhelikopteret erså lite,blirdynamikken sværtraskog sensorenemå

være raske nok tilå oppfattedette.Løftekraften erogså begrenset, sålav vekt eret viktig

krav.Tilsluttmåogsåprisenværelav.Deterønskeligåmålebådevinkelogvinkelhastighet

siden vinkelhastighetenkanbrukesav regulatoren.Pådennemåten trengsingenderivasjon.

Det vilunder bligjennomgodt forskjellige metoderforåberegneorienteringenvedhjelp av

forskjellige måleinstrumenter.

6.1 Dierensiell GPS

DennemetodengårutpååhaereGPS-mottakeremonterforskjelligestederpåhelikopteret.

En får da informasjon om høydeforskjell og posisjonsforskjell mellom de forskjelligeGPS-

mottakerne. Dette kan videre brukes til å beregne pith, rollog yaw. Dette er den eneste

metoden hvor alle frihetsgradenekan beregnes. Denne metodenbrukes blant annet på he-

likopter som reparerer høyspentlinjeri USA. Problemeter her at helikopteret er så lite, en

kanikkeregnemedåfåbedrenøyaktighetennenmeterpåGPS-mottakeren.Nårhelikopter

kroppenikkeerstørreenn0.5x0.5mgirdettealtfordårligpresisjon.Ogerderforutelukket

forvårtformål.Metodenkomfram ettersamtaler med HansGunnarRihardsen.

6.2 Termiske sensorer (IR)

Denne metoden går ut på å ha sensor-par som måler temperaturen. Ved å la disse peke i

motsatt retning kan en utnytte temperatur-dieransen mellom himmelen og jorden. Him-

melen vil gi kald strålingmens jorden stråler en noe høyere temperatur. Ved å måle denne

dieransen kan enberegnebåderollog pithmed relativtgodnøyaktighet.Dennemetoden

harsinesvakheteriatdenvilkunnegifeilresultaternårterrengetendrerseg.Dennevilogså

væreumuligåbruke innendørsogallestedersomikkeharfrisikttilhimmelen.Eteksempel

på mulige sensorer erMLX90247ESF-DSA-ND fradigikey.om 17,12usdperstk.Metoden

(25)

6.3 Gyroskop

Et gyroskop brukes for å bestemme vinkel eller vinkelhastigheten. Det er nettopp dette

som skal bestemmesi denne oppgaven. Her nnes det svært mange typerå velge mellom.

De vanligste vil bli gjennomgodt. Et problem som er felles for alle typene er at de lider

av bias-drift. At det er bias-drift betyr at det er en sakte varierende bias, som legger seg

til målingene. Denne kommer av støy og temperatur endringer. Det er vanskelig å forutsi

hvordandenvilutvikleseg. Dettevil siatvinkelenvilbegynne ådriftevekk franullselvom

helikopteret står helt stille.Målingen vil altså bli upåliteligeover tid.En kan best sedette

ut fra målelikningen,se ligning6.1. Dennedelen avoppgaven bygger på datafra [41℄

ω m = ω + b + µ

(6.1)

ω

er sann vinkelhastighet.

µ

er gausisk målestøy. b er en sakte varierende bias (ikke-

stokastisk). Og

ω m

er målt vinkelhastighet. Biasen kommer av temperatur eekter og vi- brasjon.

6.3.1 Mekanisk

Den eldstemekaniske typen er den mest kjente. Denne har et roterende hjul som erhengt

opp slikatdet kan bevegesegfritt.Herbrukesprinsippetombevaringav bevegelsesenergi.

Og dette hjulet motvirkerderfor bevegelse og ønsker å holde samme stilling som det har.

Rammen som hjulet henger i vil derimot bevege seg med y-kroppen. Hvis en da måle

forskjellen mellom rammen og hjulet får en vinkel. Denne typen gyro måler altså vinkler i

motsetning til mermodernetypersom måler vinkelhastighet. Denne typen ble blant annet

brukt iv2 raketten under2.verdenskrig. Her var også problemet bias-drift.Rakettenhadde

derforenunøyaktighetpåstørrelsemedenby.Somvarakkuratdetsomtrengtesforåtree

London. Dette var på den tiden svært bra, men ikke bra nok for denne oppgaven. Denne

typen gyro inneholder mange mekaniske deler. Og friksjon gjør at den er sterkt utsatt for

(26)

6.3.2 Optiskgyro

Her nnes det to hovedtyper, beroptisk gyro (FOG) og Ring laser gyro (RLG). Begge

opererer på sammeprinsippet.Enlysstrålesplittes, derettersendesde tostråleneimotsatt

retning rundt en ring. Hvis systemet roterer vil den lysstrålen som går samme vei som

rotasjonen oppleve en lengre vei enn den andre. Dette kalles Sagna eekten. Når dette

måles er det mulig og regne ut vinkelhastigheten. Denne typen gyro kallesogså et Sagna

interferometer,[26℄.Dennetypenharingenbevegeligedelerogersværtnøyaktige.Bias-drift

er ned mot 0.0035

◦ /h

Problemet med denne er at slike gyroer er ekstremt dyre. Denne

typen brukes blant annet i F16 og er ikke funnet til salg for privatpersoner. GG1308 skal

være av de billigste.Vektenerogså relativthøy 454g forGG1308. Selv omdenne ville løst

svært mange problemer i oppgaven er den dessverre utelukket på grunn av tilgjengelighet

og pris.

6.3.3 MEMS-gyro

Den desidertbilligsteløsningen eråbruke MEMS-gyroer(Miro Eletrial MehanialSys-

tem). Dette er gyroskopersom erimplementert på en IC. Disse bruker Coriolis-eektentil

å beregne vinkelhastighet. Inne iIC-en vibrerer et objekt i en bestemt retning. Når gyroen

roteres, vil det oppstå vibrasjon som står vinkelrett på den første vibrasjonen på grunn av

Coriolis-eekten. Ved å måle denne vibrasjonen kan vinkelhastigheten beregnes. MEMS-

sensorer erikke inærheten avpresisjonentiloptiske,mendeterantattatdenkanværedet

i fremtiden. Disse er svært billige og vekten er sværtlav. Denne har større problemer med

bias-drift enn denoptiske-gyroen. Denervanligvis oppmot

70 /h

.

(27)

6.4 Akselerometer

Akselerometerbrukessom navnettilsiertilåmåleakselerasjon.Dennetypensensoreridet

sisteblittsværtsmåogbillige.Ved hjelpavettre-aksersakselerometerhvorakseneståror-

togonaltpåhverandrefåren allakselerasjons-dataomhelikopteret.Idenne oppgavenerdet

hovedsakeligorienteringeneruteetter.Forånne dennebrukeren attyngdeakselerasjonen

er en tilnærmetkonstant loddrett kraft på 9.81

m/s 2

. Hvis en da lar disse tre målingene

danne etvektorpunkt irommetkanen brukevektorteoritilånne vinkelen.Er foreksempel

Xog YmålingenliknullogZlik9.81vildenne vektorenpeke rettned. Envetdaatrollog

pith erliknull. Måleren derimotZog XliknullmensYblir9.81 vildet bety atroller90

grader ogpithernull.

Et av det store problemene med bruk av akselerometer til orienterings-bestemmelse.Er at

det nnesmange forstyrrende-elementer,somvilgiutslag påakselerometeret.Detteerele-

mentersomvibrasjonfrapropelleneogsentripetalkraft.Foråbrukegravitasjons-vektorener

det ønskeligå skillemellom systemetsakselerasjon ogdenne. Dette kan en sei målelignin-

gen, ligning6.2

a m = g + a + v

(6.2)

Hererggravitasjons-vektoren,aersannakselerasjonforsystemetogvergaussiskmålestøy.

a m

ermåltakselerasjon.

Fordettesystemetnnesdetingenmodellsomergodnoktilåskillemellomakselerasjonen

tilsystemetogtyngdeakselerasjonen.Mensidensystemetharsomhovedoppgave åhovreer

det en god tilnærmingog si atakselerasjonen igjennomsnittvilvære liknull. Enkanaltså

si at ved lave-frekvenser er den målte akselerasjonen tilnærmet lik tyngdeakselerasjonen.

Dette siden helikopteret hovedsakelig skal brukes som en luft-plattform. Akselerometer gir

oss altså informasjon nok til å beregne roll og pith ved lave frekvenser. Det vil også gi

akselerasjons-informasjonssom senerekanbrukestilnavigering.

6.5 Magnetometer

Magnetometer brukes for å måle retningen på et magnetfelt. Jorden omgis som kjent av

magnetfelt.Vedåmåleretningenpådetteiforholdtilhelikopteret,kanenberegnehvasom

er magnetisk nord. Det kan altså brukes som en kompass-modul. Honeywell har designet

en ferdig modul som bruker et to aksers magnetometer til å bestemme magnetisk nord

HMC6352, [ref℄. DennebrukerI2Cforåkommuniseremed mikrokontrollerenåkandermed

koblesdirektetilI2Cbussen.Dettevildagienmetodeforånneretningenhelikopteretyr.

En harfraførdenne informasjonenfragyroen,mensomnevnt tidligerevil dennedrifteover

tid.Foråkunneholderetningennøyaktigtrengerendenneinformasjonen.Pågrunnavdere

motorenesomomgirhelikopteretvildetkunneoppståproblemervedbrukavmagnetometer.

Disseinneholderstoremagnetersomvilkunnegifeilresultaterpåkompasset.Deteridenne

oppgaven valgtåikke implementeremagnetometer,sidendet ikke ernødvendig foråholde

helikopteret stabiltiluften.Om retningendrifterlittharikkemye åsi,sidenhovedmåleter

(28)

6.6 Valg

Med bakgrunn i informasjonen over ble det valgt å bruke MEMS-gyro på grunn av pris,

tilgjengelighet,lavtstrømtrekkogvekt. Disseleverervinkelhastighetsomtrengtesforregu-

latorene.Siden disselider avbias-drift ble det også valgt åbruke akselerometer sidendisse

ikke lider av drift. Dette giross to målinger hvor den ene oppveier for problemene til den

andre. Detvilsenere ikapittelet bligjennomgodt hvordan dissemålingenekankombineres.

(29)

7 Implementering av sensorer

Det vil i denne delen bli gjennomgodt hvilke fysiske sensorer som er blitt valgt og imple-

menteringen av disse.Valgene erogså herhovedsakelig tattetter prisog vekt.

7.1 Gryo

MEMS-gyroene leveres i svært små pakninger og lodding er derfor svært vanskelig. Det

varderforønskelig med et utviklingskort.Forå kunnedetektere alle de treaksene trengtes

tre gyroer. Etter tips på et forum viste deg segat Wii MotionPuls fra Nintendo inneholdt

tre gyroer. Dette er et tillegg som gjør Nintendos Wii kontrollerbedre. Dette tillegget har

mulighetforåmålevinkelhastighetpåalletreaksene.Deterakkurathvasomtrengsidenne

oppgaven. Den harogså innebygd14-bitA/Domformer,sik atdatakan hentes utvia I2C.

Dette blir ikke en løsning som passer for masseproduksjon, men en perfekt løsning for et

gjørdet selvprosjekt.Sidendenne er billigogenkel åfåtakiforprivatpersoner.

Problemetmed denne eratdet ikkennes datablad. Denerikkelagetfordenne bruken og

Nintendo har derfor ikke gitt ut noen form forspesikasjoner. Det er derforvanskelig å si

noe om presisjonen. Men siden den er så billig blirden likevelkjøpt. Skulle den vise segå

være fordårligforoppgaven kan denbyttesut.Enheten kan sesiguren under.

Figur 7.1: WiiMotionPlus

Foråoppnå detsamme kunne enforeksempelbrukdisse produktene fraSparkfun.

http : //www.sparkf un.com/commerce/product i nf o.php?products i d = 9410(39.95usd) http : //www.sparkf un.com/commerce/product i nf o.php?products i d = 9165(19.95usd)

Dette girossen samletprispå 59.9USDførfrakt ogtoll. Enbilligkopi av WiiMotionPuls

ble funnethosDealextreme.om.Denne kosterikke merenn15.03 USDmedfrakt.Detvar

(30)

WM+ bledemontert oginneholdt etsværtlitekretskort.Pådettefantesdet togyro IC-er.

DenenevarIDG600,sommålerbåderollogpith.MensdenandrevarX3500W sombrukes

for å måle yaw. Det er ikke funnet datablad på noen av disse.De er nokså sikkert spesial

designet forNintendo.IstedeerdatabladetforIDG650blittbrukt,[14 ℄. Littenkelt lodding

ga tilgangtilI2C klokkeog data. Kortetopererer på3.3v.

Figur 7.2:Kretskortetfunnet iMotionPlus

Foråtestekretsen ble detdesignet etlite grensesnittkortmeden spenningsnivåomformer.

Forå gjøre omformingen ble TXS0104EDR,[29℄brukt. Dette eren IC, som konverterte fra

3.3v logikk til 5v logikk. Og WM+ kunne dermed enkelt kobles til mikrokontrolleren for

testing. Denneomformingskretsenble senere implementert på samme måte på kortet. I2C

var allerede implementert for å kunne kommunisere mellom modulene og kortet ble derfor

koblet direkteinnpå denne bussen.

Neste steg var å dekode protokollen. WM+ er ikke beregnetfordenne typen bruk og pro-

tokollen er derfor ikke gjort tilgjengelig av Nintendo. Denne informasjonen måtte derfor

nnesvedhjelpaven logisk-analyse.Dettevaralleredegjortavandreogallinformasjonom

WM+ og andreWii kontrollereble funnet påhttp://wiibrew.org/.

Kommunikasjonen skjersom nevntover vedhjelpav I2C.ForåaktivereWM+sendesførst

0xFE04tiladresse0x53.WM+vildaskifteadressetil0x52.Foråleseavgyroenesendesnå

0x00tiladresse0x52og6bytekanderetterlesesav.Disse6 bytene inneholderinformasjon

om de trevinkelhastigheten. De inneholder også informasjon om skaleringen på målingen.

Gyroeneharnemlig toskaleringer,en foråmåle raskebevegelser(2000deg/sek) ogen forå

måle sakte(500 deg/sek) mer nøyaktig. Deter viktig atprogrammet også henter ut denne

for å bruke rettskalering. Det trengs mer enn 1 byte for å representere vinkelhastigheten.

(31)

Tabellunderviser en oversikt over hvordan informasjonenhentes ut.Tabellenerhentet fra

wiibrew.org. Nede til høyre i tabellen kan en se f/s. Dette bitet forteller hvilken skalering

målingen er gjortmed (raskellersakte).

bit

byte 7 6 5 4 3 2 1 0

0 yaw<7:0>

1 roll<7:0>

2 pith<7:0>

3 yaw<13:8> yaw f/s pithf/s

4 roll<13:8> rollf/s ext.

5 pith<13:8> 1 0

Dette ble implementer på mikrokontrolleren å data ble hentet ut ved hjelp av USB. Disse

dataene ble såhentet inntilMatlab forvidere behandling. Figure 7.3viser et plottav roll-

data sentrertomnull. Helikopterethar herblittholdtihanden, mensdet roteres90grader

i alle retninger.Støyen på signalet kommerav at det er vanskelig åholde helikopteret helt

stille.Det kan tydeligsesfra plottet nårrollgjøres.X-aksenerantallsampler.

0 500 1000 1500 2000 2500 3000 3500

−80

−60

−40

−20 0 20 40

Roll data fra gyro deg/sek

(32)

7.2 Akselerometer

Detvaralleredeførmaster-oppgaven blepåbegyntkjøptetakselerometerforeksperimenter-

ing. Detteble kjøptfraSure-Eletronis,[27℄ påebay.Akselerometeretvaralleredemontert

påetutviklingskortogogvardermedenkeltåimplementere.AkselerometeretvarMMA7260,

[19 ℄. Dette har høy sensitivitet 800mV/g som gjør at det ikke har problemer med å måle

tyngdeakselerasjon. Dethar også innebygd lavpass-lter og temperatur-kompensering. Det

børderforpassegodttiloppgaven.

Akselerometeretgirutakselerasjonensomtreanalogespenninger.Detblederforkoblettilde

analoge inngangene på mikrokontrolleren.Det nnes bare en A/D omformer påmikrokon-

trolleren, denleser derforav akseneen etteren. Dette gir noe unøyaktighet med tanke på

at helikopteret kan ha yttetseg påden tiden dettetar. Disse verdiene lesesheller ikke av

på samme tid som gyroen. Det er valgt å se bort fra dette i denne oppgaven siden dette

skjer så raskt atdet børvære neglisjerbart. Ifølge databladet til mikrokontrolleren,[4℄ tar

en avlesningfra13 til260

µS

.Enløsningkunneeventuelt værtåbruke eneksternA/Dsom

kommuniserte med mikrokontrolleren over I2C. Dette ville også gjort det mulig å lese av

gyro og akselerometerdata på sammetid. Etforslagtil dettekan være å bruke MAX1238

som eren 12 kanalers A/Domformer.

(33)

Dettebleogsåimplementertpåmikrokontrolleren.DatableherhentetutfraA/Dkanalene.

Figur 7.5 viser data fra x og z aksen på akselerometeret. Også her blir helikopter hold

i handen, mens det roteres 90 grader i alle retninger. Det kan også her tydelig ses når

vridningen avhelikopteretskjer.Yaksenerherspenningenfraakselerometeret,representert

med 10bit(800mV/g).Detteeraltsåakselerasjonentilsystemet.Xaksenerantallsampler.

0 500 1000 1500 2000 2500 3000 3500

−400

−200 0 200 400

0 500 1000 1500 2000 2500 3000 3500

500

600

700

800

(34)

8 Kretskort

Forat allesensorene skalkunne kommunisere med mikrokontrolleren.Var det nødvendig å

utvikleetgrensesnitt-kort.SomkjenterdetvalgtåbrukeenArduino,[3 ℄somutviklingskort.

Dettegjøratkretskortetmåbyggessometsåkaltskjold(shield).Dettebetyratgrensesnit-

tkortet har pinnersom er slikat det kan settes direkte ned i Arduinokortet, Se gure 8.1.

Selve skjoldet var det allerede lageten ferdig malpå denne ble funnet hos, [17 ℄. Dette var

bareplasseringen av pinnene,restenav kortetble designeti oppgaven.

(35)

Kretsen må da basere seg på skjemategningene for Arduinokortet. Disse kan ses på [3℄.

Hvordan alle sensorene og motorene skal kobles til, er blitt beskrevettidligere. I tillegg er

det ogsåblittlagetenegentilkoblingforenatkabel.Slikatdeandremodulenekankobles

til her.Undererdet sattoppen oversikt somviser helesystemet iett,segur8.2.

(36)

Arduinokortet har alt som trengs for å kjøre mikrokontrolleren. En kan også hente 5v og

3.3vherfra.Dettegjøratenslipperegnespenningsregulatorerpågrensesnitt-kortet.Somen

huskeropererer gyroen på 3.3vlogikk, mensArduinokortetkjører på5v. Detteerblittløst

med enenkelICsomoversetterfra3.3vlogikktil5vog omvendt,TXS0104EDR,[29 ℄.Neste

steg i prosessen er nå å utvikle selve kortet. Dette ble designet ved hjelp av programmet

EagleCad,[12℄.Detteprogrammetkanbrukesgratistilikkekommersielledesign.Resultatet

ble som vistigurene under.

(37)

Figur8.4: Figurenviser det ferdigekretskortet, toppog bunn

Kretsskjemakansesi vedlegg,E. Deterblittbruktsværtmye tidpå kretskortet,siden det

har oppstått små kortslutninger. Disse har vist seg å være svært vanskelige å nne. Etter

(38)

9 Målestøy

Detvarmedregnetatnoemålestøy villeoppståpågrunnavpropellene.Detvarogså antatt

atdettevilledempessterktavlavpasslteret,somvarpåutviklingskortettilakselerometeret.

Alletestenesomblegjortførsystemetvarferdigbyggetvisteogsåatdetteburdegåbra.Da

systemetvarferdigimplementertvistedet segallikevelatstøyble etstortproblem.Nåralle

deremotorenegårpåetrelativthøytturtallblemåledatauleseligepågrunnavvibrasjonen

som oppstår. Dettevises tydeligi gur,9.1.

0 500 1000 1500 2000 2500

−400

−300

−200

−100 0 100 200 300 400

Figur9.1: Datahentet fraakselerometer, utenltrering

Det var spesieltakselerometeret dette ga utslag på, siden det måler vibrasjon. Flere tiltak

ble gjort for å løse dette. Det ble blant annet gjort tester med bruk av skumgummiplater

for demping mellom kretskortet og selve helikopterkroppen. Dette gjorde dessverre bare

problemet endastørre og ble derfor fjernet.Det var altsåvanskelig ågjørenoe med støyen

rent mekanisk.Lengesådet utsomakselerometerdataskulleværeheltubrukelige. Detvar

også for sent å gjøre noe med elektronikken. Et digitalt lter måttederfor implementeres.

(39)

9.1 Logisk lter

En svært enkel måte å fjerne noe av feilbidraget på var å lage et logisk lter. Dette er et

enkeltlter,somfjerneulogiskeverdier.Detvilsiathvisakselerometeretmålerverdiersom

er større en 9.81. Kan en trykt anta at dette ikke er tyngdeakselerasjon. Dette kan gjøres

som iligningene under.

− 9.81 > a m (k) > 9.81 a m (k) = a m (k − 1)

− 9.81 < a m (k) < 9.81 a m (k) = a m (k)

Dette ble implementert ved hjelp av ifsetninger iMatlab og garesultatersom i gur, 9.2.

Yaksen erherspenningenfraakselerometeretrepresentertmed10bit (800mV/g).Detteer

altsåakselerasjonen tilsystemet.Xaksen erantallsampler.Eng ersom kjent9.81

m/s 2

.

0 500 1000 1500 2000 2500

−400

−200 0 200 400

Uten filter

0 500 1000 1500 2000 2500

−400

−200 0 200 400

Med filter

Figur 9.2: Sammenligningmed oguten logisklter

Somen kanseredusererdettestøyen noe,menresultatetblirikkeperfekt.Styrken eratdet

fjerner ekstremalverdierog er sværtliteressurskrevende. Detteer derfor blittimplementert

(40)

9.2 Gjennomsitts-lter

Dette eren annenenkel måteåfåltrertdataene på.Her kjøresmålingen ereganger,for

deretter å regne et gjennomsnitt av disse. Som en husker tar en måling

13 − 260µS

. Det

blir altså ikke store forsinkelsen. Dette bør fjerne mye av den høyfrekvente dataen. Denne

metoden ble også implementert på mikrokontrolleren, målingene kjøres her åtte ganger.

Dette garesultatersom igur, 9.3.

0 200 400 600 800 1000 1200 1400 1600 1800

−200

−150

−100

−50 0 50 100 150 200 250

Figur 9.3:Plot av dataltrertmed gjennomsnitts-lteret.

Hvisensammenlignermedgur9.1erdetenklarforbedring,menlangtfraperfektresultat.

(41)

9.3 Avansert ltrering

Siden de forrige eksperimentene ikke ga tilfredsstillenderesultater, vil det i denne delen bli

forsøkt en mer avansert fremgangsmåte.Istede forå implementeretest-ltrenedirekte på

mikrokontrolleren,vildatahentesfrahelikopteretogbliforsøktltrertiMatlab.Matlabhar

svært mange kraftige ltrerings-verktøy tilgjengelig.Envanlig måte åstartelterdesign på

er å nne frekvensinnholdet i signalet. Dette kan en gjøre ved hjelp av FFT (Fast Fourier

Transform). Det nnes en kommando i Matlab, som gjør dette. Denne er dessverre ikke

helt rett fremåbruke, det måttederforskrivesen liten kode. Dennevil nå giut et plot av

frekvensinnholdet isignalet.

funtion plot_fft(inn , Fs) % Signal ,samplerate

L = length(inn );

NFFT = 2^nextpow2(L);

Y = fft(inn ,NFFT)/L;

f = Fs/2*linspae(0,1,NFFT/2+1);

%% Plot

figure

plot(f,2*abs(Y(1:NFFT/2+1)))

xlabel('Frekvens (Hz)')

ylabel ( '|Y(f )|')

Det var et håp at frekvensen på støyen skulle være direkte avhenging av frekvensen til

propellene. En kunne da brukt et båndstopp-lter til å fjerne dette. Filteret kunne yttet

stopp-båndet etter frekvensen på propellene. Når FFT ble kjørt viste dette seg å være en

umulighet. Somen serfragur,9.4liggerstøyensprettoverhelefrekvensspekteret.Detbør

allikevelværemuligåfjernemyeav dettevedhjelpavet godt lavpass-lter.Nestestegblir

(42)

0 5 10 15 20 25 0

5 10 15 20 25 30 35

Frekvens (Hz)

|Y(f)|

Data fra akselerometerets x akse

0 5 10 15 20 25

0 5 10 15 20 25 30

Frekvens (Hz)

|Y(f)|

Data fra akselerometerets y akse

(43)

Etter mye forskning ble det valgt å bruke et Butterworth-lter. Dette er et IIR-lter som

gir så at frekvensrespons som mulig i passbåndet. Dette lteret bør passe svært bra til

vårtformål.Dethadde værten fordelåimplementert lteret ihardware. Dette forå slippe

de ekstraberegningene, somfører tillaveresamplerate. Problemetvarathardware allerede

var konstruert og det var derfor for sent å endre dette. Det ble derfor valgt å utvikle et

digitalt-lter. Dennedelenbygger på [8℄,[11℄og [9℄.

9.3.1 Digitaltlter

Det vil her bli designet et digitaltButterworth-lter, som kan implementeres påmikrokon-

trolleren. Forå designe et digitaltIIR-ltermå en førstnne lter-koesienten. Dettekan

enkelt gjøresiMatlab vedhjelp av kommandoen [B,A℄ =butter(N,Wn). Dennegirossko-

esientene til et n.ordens-Butterworth-lavpass-lter, med Wn som knekkfrekvens. Wn må

være ettallmellom1 og0,hvor1girenknekkfrekvens påhalvpartenav samplefrekvensen.

Wn kan derfor regnes ut ved hjelp av ligningen under. Her er

f c

knekkfrekvens(Hz) og

f s

samplefrekvens(Hz).

W n = 2f c f s

(9.1)

For å nne utgangen fra lteret kan en bruke den generelle dierensiallinkningen for et

LTI(lineærttids-invariant)lter,seligning9.2.En serher aten regner utnestesample ved

å bruke tidligere sampler. Siden dette er et IIR-lter vil M være ulik null. Dette gjør at

en også må tahensyn til tidligere utgangs-sampler. Alle disse samplene må derforlagres i

minnet. Hervil denstørsteavMog N væreordenen tillteret.Deterderforen fordelåha

så lavorden som mulig.Detteforågjøre lteretminst muligressurskrevende.

y[k] =

N

X

j=0

b j · x[k − j] +

M

X

i=1

(−a i ) · y[k − i]

(9.2)

Foråtestelteret i Malabkan en enkelt regne uthva utgangen blirved hjelpav komman-

doen

y =lter(b,a,signal)

.Enkan datesteforskjelligeknekkfrekvenserog orden.Filteret ble testet med forskjellige parametere. For å få en eektiv implementasjon ble 2. orden

brukt. Dettegjørogsåatdenanaloge-implementeringeninestedelkapittelblirmyeenklere.

Resultatet vises i gurene under. Her er data hentetfra akselerometeret med motorene på

(44)

0 500 1000 1500 2000 2500

−200 0 200

Uten filter

0 500 1000 1500 2000 2500

−200 0 200

fc = 3 Hz

0 500 1000 1500 2000 2500

−200 0 200

fc = 1 Hz

0 500 1000 1500 2000 2500

−200 0 200

fc = 0.1 Hz

(45)

0 500 1000 1500 2000 2500

−200 0 200

Uten filter

0 500 1000 1500 2000 2500

−200 0 200

fc = 3 Hz

0 500 1000 1500 2000 2500

−200 0 200

fc = 1 Hz

0 500 1000 1500 2000 2500

−200 0 200

fc = 0.1 Hz

(46)

Som en ser utfra plottet kan en fjernesvært mye støy vedhjelp av denne typen lter.Når

knekkfrekvensen kommer ned i 0.1 Hz er signalet tilnærmet perfekt. Problemet med alle

typerlter er atsignaleti passbåndet kan bli dempetog faseforskjøvet. Deterderforlaget

et bode-plott av lteret, se gur 9.7. Her ser en at alt utenom svært lave frekvenser blir

dempet og fase forskjøvet. En ønsker selvsagt at frekvensene i stopp-båndet skal dempes.

Men problemer oppstår når frekvenser i passbåndet også endres. For å teste dette ble det

laget et sammenlignings plot,se gur 9.8. Her er et støyfritt signal kjørtgjennom lteret.

Begge signalene erså plottet i samme gur. En serher at det er noe dempning og ganske

betydelig forskyvning.Såpass lav knekkfrekvens kan derfor gi problemer. Dette gjørat når

knekkfrekvensen er lav nok tilå fjerne allstøy blir signalet forskjøvet. En måta hensyntil

dette når en implementerer, slik at verken støy eller forskyvning skaper problemer. Atmel

har et omfattende implementerings-eksempel for nettopp dette lteret, se [11℄. Her følger

det med kode skreveti ASM.Denne koden kan da enkeltimplementeres,og koesientene

endres tilde funnetmed Matlab.

0 0.5 1 1.5 2

−200

−150

−100

−50 0

Frequency (Hz)

Phase (degrees)

0 0.5 1 1.5 2 2.5

−100

−50 0

Frequency (Hz)

Magnitude (dB)

(47)

0 500 1000 1500 2000 2500

−300

−200

−100

0

100

200

300

(48)

9.3.2 Analogt lter

EnseroveratetdigitalButterworth-lterkangisterkesignalforbedringer.Detsammenkan

en også oppnåvedhjelpav etanalogt-lter.Pådenne måtenslipperen deekstraberegnin-

gene, som fører tillavere samplerate. Denne delen vilikkebli implementert siden hardware

alleredevarferdigdadetteblepåbegynt.Deteristedetenkttilsenereimplementering.Det

nnes ere måter å implementere et analogt Butterworth-lter. Før var det vanlig å bare

bruke passivekomponenter.Dettegiretsværtenkeltlter,menbrukavinduktansergirofte

lavere nøyaktighet.Sidendetervanskeligåproduseredisselike.Detble derforvalgtågjøre

en Sallen-Key implementering. Her bruker en istedet en operasjons-forsterker. Kretsen ble

utvikletogsimulertiprogrammetMultisim,[20 ℄. Kretsenvisesigur,9.9.Frasimuleringen

ble bode-plottethentet ut,detteble plottetved hjelpav Matlabsegur9.10.

Figur9.9: AnalogtButterworth-lter

Verdiene på komponentene i kretsen ble beregnet ved å bruke kalkulatoren på, [9 ℄. Her

kan en legge inn lter-spesikasjonene og enkelt designe om lteret etter behov. Filter-

(49)

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35

−20

−15

−10

−5 0

Frekvens (Hz)

Magnitude (dB)

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35

−200

−150

−100

−50 0

Frekvens (Hz)

Fase (grader)

Figur 9.10: BodeplotforanalogtButterworth-lter,med knekkfrekvens 0.1Hz

Som en ser fra bode-plottet bør det væremulig åoppnå samme resultatsom veddet digi-

tale lteret. Dettelteret kan enkel implementeresmellomakselerometeret og de analoge-

inngangene på mikrokontrolleren.Men som nevnt over er dettenoe som mågjøres ineste

(50)

10 Representasjon

Harnåvinkelhastighetenforalletreaksene.Harogsånokakselerasjons-datatilåberegneroll

ogpith.Nestestegeråberegneorienteringenogutvikleenmetodeforårepresenteredenne.

Det er mest nærliggende å bruke gyro-data til å beregne orientering, for deretter å bruke

akselerasjons-datasomsannmålingforårettegyro-målingen.Foratregulatoreneskalkunne

bruke gyro-dataene må det utvikles en likning,som gjør vinkelhastighetom til orientering.

Det trengtesaltså en ligningeller lignings-settsom tar gyro-data inn og girorientering ut.

Dette eretav temaenesom hartattoppmyetid idenne master-oppgaven. Detvili denne

delen bli gjennomgått tometoder forå representere orienteringentilhelikopteret.En enkel

lineær ogen avansert ulineær.

10.1 Eulers-vinkler (enkel metode)

DenenklesteogmestintuitivemetodenerenbeskrivelsevedhjelpavEulers-vinklerroll,pith

ogyaw.Herbehandleshveravaksenehverforseggjennomheleprosessen.Problemstillingen

er å lage tre likninger som tar inn vinkelhastighet fra gyroen og gir ut orienteringen til

helikopteret.

Som kjent er den deriverte av vinkelen med hensyn på tid, vinkelhastighet, se ligningene

under. Forånnevinkel fravinkelhastighetkanendaintegrererutgangenfragyroen.Dette

girtreenkleoglineæreligningersombeskriverorienteringentilhelikopteret.Dennemetoden

gjøratde treaksenebehandles hver forseggjennom heleprosessen.

θ(t) = ˙ dθ(t)

dt = ω =

vinkelhastighet (10.1)

θ(t) = Z t

0

ω(t) dt

(10.2)

I mikrokontrolleren kan det ikke brukes kontinuerlige ligninger. Må derfor nne en diskret

integrator. For å gjøre dette så enkelt som mulig er det i denne oppgaven valgt å bruke

Eulersforover,ligning10.3.Dettevilikkegietnøyaktigsvar,menvilsparemyeprosessering

iforholdtilmeravanserteintegrasjonsmetoder.EtalternativkunneværtåbrukeenRunge-

Kutta integrator. Denneernoe merkrevende,men giren bedre tilnærming[25 ℄.

˙

ω(k) ≈ 1

T ω(k + 1) − ω(k)

(10.3)

ω(k + 1) = ˙ ω(k)T + ω(k)

(10.4)

(51)

Ligning 10.4 kan nåenkelt implementeresi ellermatlabsom:

roll = roll + inn* T;

Hvorinnervinkelhastigheten og Tersampletiden.

Det ernå utvikleten enkel lineærmetode somgirossvinkel fra vinkelhastighet. Problemet

med denne metode erat det er en lineærtilnærming tilet ulineært problem.Det er heller

ikke tilstrekkelig å beskrive orienteringen til helikopteret med Eulers-vinkler. Rotasjon kan

ikkegjøresi tilfeldigrekkefølge.Dette kan bestforklares gjennomet eksempel.Laosssiat

du roterer ipith retningen90 grader. Deretter gjørdu en rollpå 90 grader. Dette gjørat

nesen/x-aksen påhelikopteretpekerrettopp. Gjøres dettederimotiomvendtrekkefølgevil

retningen blihelt forskjellig.X-aksen vilnå peke motsiden.

Siden helikopteret hovedsakelig skaloperererundt hover-tilstand,vilde trevinklene oftebli

null. Når alle vinklene er null må helikopteret stå som i utgangspunktet. Dette blir altså,

som åstartepåny.Allefeilsom erakkumulertfjernesaltsåhver gang helikopterethovrer.

Siden vinkelutslagene rundt hover skal væresmå. Blirdette også som ådenere et arbeid-

(52)

10.2 Avansert ulineær metode

Problemstillingen er her å lage en likning som kan gi orienteringen til helikopteret over

hele spekteret, altså ikke bare rundt hover-tilstand. Isteden for å beskrive Eulers-vinklene

direkte, bruker en to koordinatsystemer og beskriver sammenhengen mellom disse. Dette

er en metode som først ble brukt i satellitt-teori. Et koordinatsystem er koblet til jorden

og ett til helikopteret. Det første er statisk og vil ikke endres, mens koordinatsystemet til

helikopteret endresmed helikopterkroppen. Foråbeskrivesammenhengenmellomdissekan

en bruke quaternations eller rotasjonsmatriser. I studiene er det rotasjonsmatriser som er

blitt brukt.Det erderformest nærliggendeå bruke disse.Dennedelen bygger på [41℄,[10℄

og [31℄.

Figur 10.1:Kordinatsystemenebrukidennedelenav oppgaven.Bildeerhentetfrawww.r-

(53)

10.2.1 Rotasjonsmatriser

Rotasjonsmatriser brukes for å konvertere vektorer og koordinater fra ett koordinatsystem

til etannet. Det vil altsåkunne inneholdeallinformasjon omoreinteringentil helikopteret.

En annen fordel med denne metoden er at matrisen også kan inneholde informasjon om

posisjonen tilhelikopteret gjennomtranslasjon.

Foren fullstendig beskrivelseav orienteringentrengs det tre rotasjons-matriser,en for hver

akse. Ved å multiplisere disse får en en 3x3 matrise, som gir en fullstendig beskrivelse. I

ligningene nedenforer

φ

=roll,

θ

=pith,

ψ

=yaw. For en detaljertbeskrivelsese[31℄.

R 3D =

1 0 0

0 cosφ sinφ 0 −sinφ cosφ

cosθ 0 −sinθ

0 1 0

sinθ 0 cosθ

cosψ sinψ 0

−sinψ cosψ 0

0 0 1

(10.5)

=

cosθcosψ sinφsinθcosψ − cosφsinψ cosφsinθcosψ + sinφsinψ cosθsinψ sinφsinθsinψ + cosφcosψ cosφsinθsinψ − sinφcosψ

−sinθ sinφcosθ cosφcosθ

(10.6)

Hvisen nåmultipliseredennemeden vektorfradet enekoordinatsystem,fårendensamme

vektoren i det andre koordinatsystem. For å gå tilbake, bruker en den inverse av matrisen

multiplisert med vektoren. En spesiell egenskap for rotasjonsmatrisen er at den inverse av

rotasjonsmatrisenerdet sammesom dentransponertetilrotasjonsmatrisen.Den transpon-

erte er som kjent å bytte rader og kolonner og altså svært mye enklere enn å nne den

inverse. Kolonnene og radene i matrisakanses påsom enhetsvektorer. Utfra dettekanen

si atkolonnen imatriseerakseneidet enesystemetmensradeneerakseneidet andre.En

kan altsåla kolonnene beskrivede tre aksene på helikopteret (subskript h). Da vil radene

beskriveaksenepå kordinatsystemetpå bakken (subskript j).Dettekansesiguren under.

Harnåenfullverdigmetodeforåbeskriveorienteringen.Videremådetutviklesenmetodefor

åoppdatererotasjons-matriserenvedhjelpavvinkelhastighetenefragyroen.Dennemetoden

er ikke ny,men det erikke funnetsimulerings-resultaterrundt den.

X h Y h Z h

r xx r xy r xz

r yx r yy r yz r zx r zy r zz

 X j

Y j

Z j

(54)

10.2.2 DCM Utledning

Det skal her utvikles en metode for å nne rotasjonsmatrisen i neste tidssteg. Hvis en

da tenker som i den enkle metoden, delkapittel 10.1. Hvor en bruker en enkel integrator

og summerer opp rotasjonen. Kan en ta rotasjonsmatrisen fra forrige tidssteg og leggetil

rotasjonen som er skjedd til neste tidssteg. Dette blir altså en Eulers forover-integrasjon.

Som kjent vil en multiplikasjon mellom to rotasjonsmatriser gi en rotasjonsmatrise med

begge rotasjonene. Detvil si hvis

R 1

har en rotasjon 30 grader om X aksen og

R 2

har

en rotasjon på 10 grader. Vilen multiplikasjonmellom disse resultere i en matrisesom gir

en rotasjonpå 40grader omXaksen.

For å summere opp rotasjonen kan en derfor ta rotasjonsmatrisen fra forrige tidssteg og

multiplisertdennemedenoppdaterings-matrise(

),somharrotasjonenmellomtidsstegene.

Dette vil gi summen av rotasjon så langt. Altsåen rotasjonsmatrise R som gir fullstendig

informasjon omorienteringentilhelikopteret.

R(t + dt) = R(t) · Ω

(10.7)

Videre må

nnes. Dette skal være en rotasjonsmatrise med rotasjonen fra forrige tid- spunkt tilnå. Tar en da utgangspunkt i en vanlig rotasjonsmatrise, ligning 10.6. Og antar

at tidsintervallet (dt) er lav, vil vinkelendringen(dVinkel) mellom hvert tidssteg bli svært

liten.Matrisakandaforenklesvedågjøretilnærmingeneunder.Dettegirossen sværtenkel

matrisesom iligning10.11.

dt lim → 0 cos(θ) ≈ 1

(10.8)

dt lim → 0 sin(θ) ≈ θ

(10.9)

dt lim → 0 sin(θ) · sin(ψ) ≈ 0

(10.10)

Ω = lim

dt → 0 R =

1 −dψ dθ

dψ 1 −dφ

−dθ dφ 1

(10.11)

Referanser

RELATERTE DOKUMENTER

påføring av fysisk eller psykisk lidelse vedén eller flere personer på egne eller myndigheters vegne, for å tvinge et annet menneske til å gi informasjon, kommemed en tilståelse

• Hidra, hvorfra vindmøllene kun vil være synlige fra toppene […] Som synlighetskartet i figur 6.2 illustrerer, vil vindparken kun være synlig fra de høyeste områdene på

På den ene siden snakker de om hvordan de som eldreråd skal være bidragsytere for å fremme utvikling og læring blant eldre, mens de på den andre siden tydelig tar avstand fra

Konfirmantleiren i Håkons Hall ønsker å bidra til at alle skal kunne være med og trives.. Det er derfor helt avgjørende at vi på et tidlig

Og når denne fabrikk selv har sagt at dette regner de med vesentlig å eksportere, og de har meddelt i komiteen at de er så konkurransedyktig på denne vare at de skal klare sig

Det må synlig- gjøres at ikke alt kan løses av noen få, derfor skal vi i frimodighetens navn ikke være tilbakeholden med å påpeke dette. Samtidig skal vi tilpasse ressurs- bruken

– Ylf står fast på sitt standpunkt om at vi ønsker sentral lønnsdannelse for våre medlemmer, sier Per Meinich, men understreker at dette standpunktet først og fremst er

Derfor er det ikke umulig å tenke seg at også Luther, som beskrev ekteskapsinngåelsen som en verdslig (men guddommelig innstiftet) ordning, kanskje heller ikke , etter sin målestokk