Accelerometer. Rikard Ekström Mattias Kindborg. Informationsteknologi Lunds Universitet

Relevanta dokument
Laboration 5. Temperaturmätning med analog givare. Tekniska gränssnitt 7,5 p. Förutsättningar: Uppgift: Temperatur:+22 C

RemoteBud. Inlämnas: Patrik Johnsson, e01pjo Viktor Karlsson, e01vk

AVR 3 - datorteknik. Avbrott. Digitala system 15 hp. Förberedelser

Mätning av W-värde i Bromsprovare med MKII enhet

Uppmätning av W-värde i bromsprovare med OPTIMO

Innehållsförteckning. Figur- och tabellförteckning. Figure 1 Blockschema över hårdvaran...4 Figure 2 Blockschema över programet...

Avståndsmätare. Digitala System EITA Grupp 7. Abdelsalem Yabrag, Abdulhadi kikar, Fredrik Peterson, Jesper Annefors

DIGITALA PROJEKT Väderstation

Projektrapport i Digitala System

Snake. Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola,

Projektlaboration 4, synkronisering av klockan

Styrsystem till ABAB 255.

Moment 1 - Analog elektronik. Föreläsning 4 Operationsförstärkare

Uppdrag för LEGO projektet Hitta en vattensamling på Mars

TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1

GPIO - General Purpose Input Output

Introduktion. Torsionspendel

Effektpedal för elgitarr

Systemkonstruktion Z3 (Kurs nr: SSY-046)

Grundläggande A/D- och D/A-omvandling. 1 Inledning. 2 Digital/analog(D/A)-omvandling

Digitala projekt, EDI021 Rapport Handledare: Bertil Lindvall

Att läsa en manual. Exempel Timern ECT_16B8C. Läs den allmänna beskrivningen (Overview) Vi ser att grundfunktionen är en räknare med prescaler

Digitala projekt rapport

Laboration 4: Knappstuds Drivrutiner för att eliminera störningar.

Andra ka llan till ro relse

PlantPuppy Räddaren för den som inte kan hålla växterna vid liv

Lärarservice: Studs, rörelse och energi

Digital Projekt EDI 021 Konstruktion av talande nummerpresentatör VT1 2004

Chalmers Tekniska Högskola och Mars 2003 Göteborgs Universitet Fysik och teknisk fysik Kristian Gustafsson Maj Hanson. Svängningar

INSTRUKTIONSMANUAL QHW+

Om instruktionen Varning Introduktion Standardfunktioner Specifikationer Display... 4

Projekt EITA15. Väckarklocka. LTH Ingenjörshögskolan vid Campus Helsingborg Datateknik

Innehåll. 1 Inledning 3

Konstruktion av en radiostyrd legobil. Digitala projekt av Arbon Vata Leonardo Vukmanovic Amid Bhatia

Digitala kretsars dynamiska egenskaper

Elektro och Informationsteknik LTH. Laboration 3 RC- och RL-nät i tidsplanet. Elektronik för D ETIA01

TETRIS. LTH, Campus Helsingborg EITA15 Digitala System

Digitala Projekt(EITF40) - Larm

Lösningar Heureka 2 Kapitel 3 Rörelse i två dimensioner

Kontrollmetoder ASE14-03 Analoga färdskrivare med OPTIMO

Labyrintspelet EDI021 Grupp 5

D/A- och A/D-omvandlarmodul MOD687-31

Pulsmätare med varningsindikatorer

4:4 Mätinstrument. Inledning

Växtviskaren EITF11 Digitala projekt VT15, I12

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

VÅGINSTRUMENT A12ss ANVÄNDARMANUAL

Tentamen i matematik. f(x) = 1 + e x.

Whac A mole. Ett rektionstest i kursen Digitala Projekt EITF11 utfört av: Axel Spångberg I10 Marcus Witting I10. Handlett av: Bertil Lindvall

Kontrollmetoder MCV12-10 VDO DTCO1381 med MKII enhet

Försättsblad till skriftlig tentamen vid Linköpings Universitet

REV 3. Användarmanual

Kulstötning. Israt Jahan Martin Celander Andreas Svensson Jonathan Koitsalu

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Inlämningsuppgift: Introduktionskurs

Tentamen i Digitalteknik, EIT020

PGC: Läser från fotocell och lackar efter avläst. Läser från fotocell och lackar efter programerat. Detaljräknare

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP

Digitala Projekt Konstruktion av Tamagocchi. Av: Oskar Andersson D05 & Danial Rehman D05

AUTOMATIC CONTROL REGLERTEKNIK LINKÖPINGS UNIVERSITET. M. Enqvist TTIT62: Föreläsning 2. Här är

Blinkande LED med 555:an, två typkopplingar.

Enchipsdatorns gränssnitt mot den analoga omvärlden

Systemkonstruktion Z3

Provmoment: Ladokkod: Tentamen ges för: Tentamen TE111B El3. Namn: Personnummer: Tentamensdatum: Tid: 14:00-18:00.

Ett urval D/A- och A/D-omvandlare

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP

Digitala Projekt (EITF11)

Kontrollmetoder MSE12-10 Stoneridge SE5000 med MKII enhet

TIGRE Digital Avkodare. Typ: BC-2001 / 3001

Tentamen i Digitalteknik, EITF65

Lösa ekvationer på olika sätt

Flödesmätare Ultraljud DMTFB med Clamp On sensorer

Dokumentet är ett tillägg och bifogas tillsammans med databladen för Sweeper och Tuner. Beskrivning - Sweeper Se databladet för Sweeper

Portabel Energiflödesmätare ultraljud DFTP1 med Clamp On sensorer

Användningsområde För tillfällig flödesmätning i applikationer där höga krav på noggrannhet ställs och där processen inte kan avbrytas.

Installations- och bruksanvisning

Konstruktion av volt- och amperemeter med DMMM

Enchipsdatorer med tillämpningar LABORATION 7, ROBOT

TENTAMEN I MATEMATISK STATISTIK

H A M M E R S PORT A G

A/D- och D/A- omvandlare

Andra ordningens kretsar

Bruksanvisning FMK Satellite

FÄLTMÄTINSTRUKTION VIBRATIONSMÄTARE SVAN 948

Enchipsdatorns gränssnitt mot den analoga omvärlden

SF1625 Envariabelanalys

Minneselement,. Styrteknik grundkurs. Digitala kursmoment. SR-latch med logiska grindar. Funktionstabell för SR-latchen R S Q Q ?

Micro:bit och servomotorer

6.2 Partikelns kinetik - Tillämpningar Ledningar

Avbrottshantering. Övningsuppgifter

LABORATIONSINSTRUKTION

Numerisk lösning till den tidsberoende Schrödingerekvationen.

LEU240 Mikrodatorsystem Laboration 2: Ett komplett avbrottsstyrt system med in- och utenheter

TEMPERATUR OCH VINDMÄTARE MED HÖGTALARFUNKTION

Matematik 3 Digitala övningar med TI-82 Stats, TI-84 Plus och TI-Nspire CAS

Studera databladen för LCD på sid 4, 5, 7, 8, 14, 18, 19, 20 och 23. Datablad finns på kurshemsidan.

Reglerteknik I: F1. Introduktion. Dave Zachariah. Inst. Informationsteknologi, Avd. Systemteknik

Mina videos Jag har satt samman en snabbkurs för er som behöver repetera grundskolans matematik:

DIGITALTEKNIK I. Laboration DE2. Sekvensnät och sekvenskretsar

Koppla spänningsproben till spolen.

Transkript:

Accelerometer Rikard Ekström Mattias Kindborg Informationsteknologi Lunds Universitet Handledare: Bertil Larsson 7 december, 4

INNEHÅLLSFÖRECKNING SEKION SIDNUMMER ABSRAC 1 INRODUKION EORI 3 ACCELEROMEERN 5 AVR 8 MENYSYSEM 9 SLUSAS 1 APPENDIX 11

ABSRAC Vårt mål med kursen var att integrera en accelerometer med mikrokontroller till en portabel enhet för att utföra önskade beräkningar. Denna enhet skulle kunna läggas i ett fordon av valfritt slag och utan interaktion med fordonet beräkna accelerationstider, bromssträcka, maximal g-kraft, samt med fordonets vikt inmatad även antalet kw/hästkrafter på fordonets drivhjul. Att lägga enheten plant skulle inte vara så noga, eftersom mjukvaran skulle jämföra det nollvärde som mättes för tillfället, med det nollvärde som uppnåtts via kalibrering och då ta reda på hur snett enheten låg för tillfället. Detta kan då tas med i beräkningarna för att få korrekta värden. 1

INRODUKION Accelerometrar används idag inom många områden: seismologi, flygtrafik och inte minst på motortävlingsbanan. Motorsporten har behov att veta hur en bil beter sig vid olika hastigheter, hur snabbt en bil går, accelerationen mellan olika hastigheter och stoppsträcka. Alla dessa mätningar har en gemensam nämnare, nämligen acceleration. Genom att mäta accelerationen så kan man även räkna ut hastigheten och sträckan genom att integrera över tiden. Det är denna tillämpning vi är intresserade av, att genom att bara mäta två enheter (acceleration och tid) göra det möjligt för oss att räkna ut så mycket annat.

EORI Accelerometerns uträkningar baserar sig på de fysikaliska lagarna. I detta kapitlet ges en kort demonstration av matematikens funktion i applikationen. Acceleration relaterat till hastighet: Acceleration är definierat som Genom att integrera fås s() t - position vid tidpunkt t vt ( ) - hastighet vid tidpunkt t at ( ) - acceleration vid tidpunkt t dv at () = dt 1 atdt () = v ( ) v ( ) 1 Om 1 = atdt () = v ( ) v() Om vi antar att accelerationen är konstant under ett tidsintervall atdt () = v ( ) v() [ ] at = v( ) v() a = v( ) v() Om vi dessutom antar att begynnelsehastigheten v() = Sträcka relaterat till hastighet: Hastighet är definierat som v ( ) = a ds vt () = dt 3

Genom att integrera fås 1 vtdt () = s ( ) s ( ) 1 Om 1 sätts till vtdt () = s ( ) s() Om vi antar att accelerationen, och därmed hastigheten, är konstant under ett tidsintervall Om vi antar att s() = vtdt () = s ( ) s() ( ) v() + at dt = s( ) s() at v() t+ = s( ) s() a v() + = s( ) s() Om vi antar att v() = a s ( ) = v() + a s ( ) = De två ekvationer som används i applikationen är a v ( ) = v( ) + a och s ( ) = v( ) + 4

ACCELEROMEERN Accelerometern ADXL från Analog Devices är komponenten som mäter acceleration. Den mäter ±g i två axlar och presenterar accelerationen som en pulsbreddsmodulerad signal till AVR: n. 1 är den aktiva delen av pulsen medan är perioden. Kvoten 1 1 vid g = g kraft.15 ger ett mått på hur stor g-kraft som påverkar accelerometern. Ex: 1 vid g är fabriksinställt till.5 1 1 =.75.75.5 = g.15 kan varieras av användaren med hjälp av en resistor. I denna applikation är satt till.35 ms, vilket betyder att AVR: n får 46 värden på accelerationen per sekund: f = 1 46 Hz.35ms Om man låter AVR: n räkna upp och spara värdena vid 1: s slut och sedan värdet på perioden så kan man använda dem till att räkna ut kvoten. Denna applikation använder en AVR med klockfrekvensen 16 MHz. Detta ger att AVR: n hinner att räkna till under periodtiden..35ms 16MHz = 376 5

Eftersom en ändring av 1/ på.15 är lika med ett g, så betyder det att 376.15 = 47 = värdet AVR:n räknar upp under 1g Upplösningen = 47 1.18 mg Detta betyder att vi med AVR: en teoretiskt kan mäta en accelerationsförändring på ungefär. mg. Mätningar på accelerometern: Att lita på databladen utan att göra mätningar själv är inte att rekommendera. Därför gjordes en omfattande mätstudie för att för denna accelerometern ta reda på faktorn 1/ för både, 1 och -1g. Mätning vid g Nr 1 1/ 1 1858 3766.49387474 18556 3779.4913387 3 18589 37693.493168493 4 18615 37761.49968936 5 18545 37769.49111147 6 18581 37761.4968536 7 18535 37758.49889348 8 1857 37667.4934487 9 1855 37673.4939584 1 18485 37758.48956515 11 18531 37747.4996431 1 18566 3779.4988314 13 18548 37743.49148874 14 1856 37655.49949144 15 18518 37737.497133 16 18513 37743.495155 17 18541 37654.494455 18 18534 3773.491714 19 1855 37646.498136 1854 37737.49134814 Medelvärde:.49181347 Enligt specifikationerna så ska det fabriksinställda värdet på 1/ vara.5. Enligt våra mätningar är inte så fallet. 6

Mätning vid 1g Mätning vid -1g Nr 1 1/ 1 1/ 1 864 13956.6179414 5114 14.3647646 865 13955.6185844 5176 148.368976333 3 8688 1399.69644 511 148.3644149 4 86 13953.61778889 583 1417.3663191 5 865 13947.6184156 511 143.364543963 6 8689 147.6194487 517 1415.36439591 7 86 13988.6164494 5137 1416.3665973 8 865 13986.616688117 591 148.36343518 9 863 13988.616456963 593 149.36355 1 86 13989.616341411 599 147.36437 11 8617 13988.61684 516 149.364479977 1 8615 13988.61588544 595 141.363383496 13 8617 13989.615983987 595 1414.3635656 14 8617 13985.6161617 57 148.36193637 15 8684 14.6193159 596 141.36374186 16 866 13994.616473 591 14.36364857 17 8619 1395.61776894 59 141.36368838 18 8617 13951.617661816 59 13999.3637467 19 8616 13991.61584459 594 13994.36413148 865 13996.61647499 587 13996.36346989 Medelvärde:.61778794 Medelvärde:.36414538 (medelvärde 1g) - (medelvärde g) =.61778794 -.49181347 =.1546534 (medelvärde -1g) - (medelvärde g) =.36414538 -.49181347 =.176683.1546534 -.176683 = -.98 Värdet på 1g och -1g ger inte samma utslag runt det definierade g-värdet. Det betyder att accelerometern inte är helt linjär. Men i denna applikation antas ändå linjäritet på grund av den lilla avvikelsen. 7

AVR AVR: ens mätningar på accelerometern För att kunna ta reda på förhållandet mellan accelerometerns positiva del av signalen, 1, och dess periodtid,, måste AVR: en på något sätt hålla reda på var i tiden flankerna kommer. Detta kan skötas med hjälp av pinne på AVR: en, som har en specialfunktion som är kopplad till AVR: ens 16-bitars räknare. Med denna funktion aktiverad, fungerar pinne som en ingång, där antingen uppåteller neråtgående flank genererar ett input capture avbrott. Då ett sådant avbrott genereras, läggs räknarens aktuella värde i ett 16-bitars register. Detta register måste sedan läsas innan ett nytt avbrott kommer, för att undvika att skrivas över. Skulle fel värde användas leder detta till felaktiga beräkningar och följaktligen vill man läsa av registrets värde allra först, eller mycket tidigt, i avbrottsrutinen. 16-bitars räknaren ökar sitt värde med en given skalfaktor, i vårt fall i samma hastighet som AVR: ens klockfrekvens, 16 MHz. Denna klockfrekvens går inte att åstadkomma med denna AVR: s interna oscillator, utan en extern kristall sitter kopplad mellan pinne 1 och 13. När en positiv flank kommer, genereras ett avbrott. I avbrottsrutinen läser vi av registrets sparade räknarvärde och ändrar även så att avbrott istället kommer att genereras på neråtgående flank. Då nästa avbrott kommer, läses på nytt räknarvärdet av och åter sätts avbrott att genereras på uppåtgående flank. Det som genererat de två avbrotten är en uppåtgående och en neråtgående flank, det vill säga 1. Då det tredje avbrottet kommer innebär det att hela slutförts och nu har vi alla värden som behövs för att beräkna den aktuella accelerationen. Avståndet mellan de två första värdena som lästes av är 1, medan avståndet mellan det första och det tredje är. Eftersom alla värden använder samma räknare och därmed har samma frekvens, behöver inte denna tas med i kvotberäkningen mellan 1 och. Är det så att ett räknarvärde som lästs av är mindre än det föregående räknarvärdet, har 16-bitars räknaren nått sitt toppvärde och börjat om från noll igen. Med denna vetskap har vi valt att inte nollställa räknaren någonsin, utan helt enkelt ta hänsyn till att den börjar om från noll då den nått värdet 65535. Accelerometerns periodtid är.35 ms och under denna tid gör mjukvaran beräkningar samt skriver ut den nuvarande accelerationen på LCD: n. Detta sker utan att inverka på exaktheten i beräkningarna, det vill säga vi missar inte att läsa av räknarvärdet i 16-bitars registret. 8

MENYSYSEM För att kunna välja mellan olika mätningar på sitt fordon ville vi ha ett menysystem. Menyn skulle styras med hjälp av tre knappar och utskrift skulle ske på en två raders alfanumerisk display med 16 tecken per rad. Knapparna är kopplade via störningsdämpande elektronik till en OR-grind. Denna grind är i sin tur kopplad till int på AVR: en. Då ett avbrott genereras läses tre pinnar av på AVR: en som är kopplade till knapparna via den störningsdämpande elektroniken. Med hjälp av det avlästa värdet kan man avgöra vilken knapp som är nertryckt. De tre knapparna hade i stigande ordning funktionerna bakåt i menyn, framåt i menyn och välj nuvarande alternativ. yvärr fungerade inte detta som tänkt, ty knapparna hade mycket så kallat button bounce. Detta innebär att signalen inte stabiliseras till fem volt direkt vid knapptryckningen. Vi fick även störningar på signalen som kom lite här och var i tid. Detta gjorde att det genererades fler avbrott, eftersom signalen skiftade mellan triggnivåerna. Vi lade ner mycket tid på att få detta att fungera som tänkt, men har alltså ännu i skrivande stund inte lyckats få rätt på problemet/problemen kring knapparna och menyn. 9

SLUSAS Så här i slutet känns det som om vi varit tvungna att lägga ner för mycket tid på saker vi inte i början tänkte koncentrera oss på. Att skriva ut strängar på LCD: n tog för lång tid, att implementera ett menysystem med fysiska knappar har fått oss att slita i vårt hår, att kalibrera accelerometern tog väldigt lång tid även om det kändes som en nödvändighet för att producera bra värden. Givetvis så har vi lyckats med att mäta både acceleration och hastighet medan vi bara skrapat på mätningen av sträcka. Så visst känns det lite snopet här i slutet, där resultatet av våra kraftansträngningar visade sig ge mycket mindre än vi räknat med i början. Vi har givetvis lärt oss en hel del på vägen: AVR: n känns som en familjevän, accelerometern som en snäll lillasyster och LCD tillsammans med menysystemet som den äldre brodern man aldrig riktigt ville ha. 1

APPENDIX Kretsschema 11