09.07.2015 Views

Bacheloroppgave - Elektra - Linjeforeningen for elektro ved HiST

Bacheloroppgave - Elektra - Linjeforeningen for elektro ved HiST

Bacheloroppgave - Elektra - Linjeforeningen for elektro ved HiST

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

KAPITTEL 6. FIRMWARE6.5. KOMPASS6.5 KompassOperasjonsmoduserKompasset har 3 operasjonmoduser, standby, query og continuous.ˆ Standby mode er fabrikkstandard. Kompasset venter på kommando fra masterenhet før den målerog kalkulerer retning. Data som leses ut er retningen fra 0 til 3599. Masterenhet må altså sendekommando <strong>for</strong> hver gang den skal ha retning.ˆ Query mode. Samme som i standby mode, men denne gangen utfører kompasset en ny utregningrett etter første utregning og avventer med ny utregning til første utregnet verdi er lest.Masterenhet må bare sende kommando en gang, de neste retningene får master <strong>ved</strong> å lese frakompasset.ˆ Continous mode. Kompasset måler og regner ut retning konstant, den er ikke avhengig avkommando fra masterenhet. Måling og utregning kan skje i intervaller på 1Hz, 5Hz, 10Hz eller20Hz. Når masterenhet leser fra kompass, får den siste verdi.Gradene er standard (heading mode) fra fabrikk, men man kan også velge å få ut raw magnetometerX/Y mode og magnetometer X/Y mode. Dette settes i register adresse 0x4E. [13]Raw magnetometer mode gir oss de magnetiske feltene.Magnetometer mode er som raw mode, men med oset og skalering som er satt <strong>ved</strong> hjelp avkalibrering.KalibreringDet er en innebygd kalibreringsmodus i kompasset. Dette kan vi bruke til å kompensere støy fra motorenepå helikopteret. Kalibrering utføres optimalt på et att område, 2 fulle runder iløpet av 20 sekunder ertilstrekkelig <strong>for</strong> en nøyaktig kalibrering. Dette lagres i EEPROM i kompasset.KommunikasjonKommunikasjonsprotokollen til kompasset er I2C. Kompasset trenger pull-ups på 10kΩ på SDA- ogSCL-linjene. For å starte kommunikasjonen, må en først sende enten les (0x42) eller skriv (0x43).For å lese ut retning, må en sende skriv-kommandoen etterfulgt av start-konvertering (0x41). Derettertrenger kompasset 6000µs til å kalkulere. Så sender en les-kommandoen og får lest in<strong>for</strong>masjonen. Envil da få ut 2 byte med in<strong>for</strong>masjon, som vist i tabell 1, response 1 og response 2 side 5 i databladet.En må huske at lesing er avhengig av påfølgende kommando. Det vil si at en ikke kan lese når enhar sendt kommandoen skriv til RAM eller EEPROM.33

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!