VERSNELLINGSMETER & LOGGER + MAKE & gebruik (4 / 9 stap)

Stap 4: Gebruik-kalibratie


Waarom hebben We nodig om te kalibreren?

Niet is de sensor al uit de fabriek gekalibreerd?
Dit zijn de tien opeenvolgende lezingen (acceleraties gevolgd door angular snelheden; x, y, z in beide gevallen) met de GY521 in stilstand, verticale positie (as + X naar boven):

  • 17088 208-1048 5-1-216
  • 17028 308-1320 4 3-250
  • 16988 360-1212 7 3-236
  • 16876 376-1032-13-36-218
  • 16972 244-1348-13-25-226
  • 17060 316-1156 -2-11 --224
  • 16948 328-1300-31 0-224
  • 17016 332-1124 1-1-209
  • 17088 348-1088 -6-27-238
  • 284 van 17072-1104-13-24-228

Als het apparaat echt verticale was, de lezingen voor de versnellingen moeten worden (zie hieronder de reden): (16384, 0, 0); en als het apparaat echt nog, de lezingen was voor de gyroscoop moet worden: (0,0,0). Dus: de lezingen moeten alles geweest: [16384, 0, 0, 0, 0, 0]: wat is er mis? Of, is eigenlijk iets mis?

Waarschijnlijk er drie dingen gebeuren:

  • het apparaat is nog steeds, althans met geen merkbare beweging, maar het is waarschijnlijk niet perfect verticaal,
  • Er is signaal ruis, en dit is waarschijnlijk de oorzaak van de schommelingen in de instant lezingen,
  • de lezingen zijn rauwe, niet gekalibreerd, dat is waarom ze "", gemiddeld afgeweken zijn.

Dus, laten we gaan stap voor stap.

ADC voor de MPU6050

De MPU6050 heeft een geïntegreerde ADC (analoog / digitaal-Converter), die elk kanaal (acceleratie en angular snelheden, elk in x, y, z) in 16-bits uitgangen. Dus 2 ^ 16 verschillende resultaten mogelijk zijn: 0 en 65535, of-32768 naar +32767. Deze serie van lezingen is toegewezen in de standaard configuratie van + - 2g in de versnellingen en +-250 deg/s in angular snelheden. Dan 1 g 16384 LSB (minder Signifficant bits, of digitale raw eenheden van lezing correspondeert), en 1 deg/s komt met 131 LSB overeen.

Beide bereiken kunnen worden gewijzigd in de configuratie-instellingen via software door Jeff Rowberg van code (zie vorige stap). De mogelijkheden zijn:

  • Versnelling bereiken: + - 2g, 4g, 8g 16g
  • Gyrokompassen bereiken: +-250, 500, 1000, 2000 deg/s.

Opmerking dat vanwege de ADC van 16 bit inbelbeperking, uitbreiding van het bereik van metingen de gevoeligheden vermindert: het + - 4 g-bereik toegewezen in het bereik van een lezing van (-32768, +32767) geeft 8192 LSB/g.

Dus, de ruwe lezingen kunnen worden omgezet in "fysieke" eenheden met de bekende gevoeligheden zijn:

  • 1,042969 0,012695 - 0,063965 0,038168 - 0,007634 - 1,648855
  • 1,039307 0,018799 - 0,080566 0,030534 0,022901 - 1,908397
  • 1,036865 0,021973 - 0,073975 0,053435 0,022901 - 1,801527
  • 1,030029 0,022949 - 0,062988 - 0,099237 - 0,274809 - 1,664122
  • 1,035889 0,014893 - 0,082275 - 0,099237 - 0,190840 - 1,725191
  • 1,041260 0,019287 - 0,070557 - 0,015267 - 0,083969 - 1,709924
  • 1,034424 0,020020 - 0,079346 - 0,236641 0,000000 - 1,709924
  • 1,038574 0,020264 - 0,068604 0,007634 - 0,007634 - 1,595420
  • 1,042969 0,021240 - 0,066406 - 0,045802 - 0,206107 - 1,816794
  • 1,041992 0,017334 - 0,067383 - 0,099237 - 0,183206 - 1,740458
  • Eenheden: g en deg/s

Goed, maar... Wat is het echte resultaat? Hoeveel decimalen kunnen goed worden gebruikt? Heb ik geselecteerd met 6 decimalen, maar waarom niet 10?

Manipulatie van getallen

Wat we kunnen zeggen is dat met een betrouwbaarheidsniveau van 95% (gebaseerd op alle records van de kalibratie, niet alleen de 10 hieronder) het gemiddelde kunnen worden berekend met statistische hulpmiddelen en inachtneming van de regels van significante cijfers. Zie hier de spreadsheet, waarvan de resultaten zijn:

  • AX = 17002 +-5 LBS <> - 1.038 +-0.000 g
  • Ay = 328 +-4 LBS <> - 0.020 +-0.000 g
  • AZ =-1170 +-6 pond <> --0.071 +-0.000 g
  • GX =-1.9 +-0,7 LBS <> --0.014 +-0.005 º / s
  • Gy = 0,6 +-1.1 kg <> - 0,004 +-0,008 º / s
  • Gz =-227 +-1 kg <> --1.730 +-0,007 º / s

Duidelijk, gewoon door te kijken naar de resultaten: de versnelling lezingen lijken te zijn "betrouwbare", en Gy is niet. Maar zelfs deze "statistisch gecorrigeerd" gemiddelden zijn nog steeds niet wat men zou verwachten! Versnelling moet 1.000; en daarnaast, men vraagt zich af waarom het gemiddelde van Gz is zo hoog als het apparaat niet bewegende was.

Dus, voer kalibratie - eindelijk!

Kalibratie (van de versnellingsmeter)

Eerste opmerking: kalibratie is niet bedoeld als oplossing van de resultaten van een defecte sensor. Als uit de resultaten van de vorige zijn wij van mening dat sensor Gz waarschijnlijk gebroken of miss-verbonden is, dan is er waarschijnlijk geen kalibratie die kan repareren.

Tweede opmerking: een kalibratie vergelijkt lezingen, of lezingen met aannames. Extrapolatie buiten deze lezingen vereist zorg.

De MPU6050 wordt een theoretische lineaire relatie tussen de gemeten versnellingen of angular snelheden en de uitvoer weergegeven. (Het product specificatie gegevensblad vermeldt een "niet-lineariteit" van 0,5% en 0,2%, respectievelijk; "cross-as gevoeligheid", de mate van verandering in één as geïntroduceerd door de toepassing van versnelling of hoeksnelheid op een andere as, is 2%).

Dan is het misschien mogelijk correcties toe te passen om de omzetten vergelijkingen. In het vorige geval, voor de versnellingen leidt de correctie van de fout van de winst tot:

  • AX(g) = (Ax(LBS)) / (16384 + 618)

Offset afwijkingen kunnen ook worden gecorrigeerd:

  • Ay(g) (Ay(LBS) - 328) = /(16384-328)
  • AZ(g) = (Az(LBS) +1170)/(16384+1170)

Deze compensatie procedure zou juist als we zijn er zeker van dat de versnellingsmeter echt verticale was (+ X omhoog) wanneer de kalibreren maatregelen werden genomen - anders, het is niet juist. Het kan zijn dat de fout dus ingevoerd klein is, maar het is toch niet correct. En, helaas, het is moeilijk om zeker te zijn van de juistheid van de verticaliteit waarmee de MPU6050 wordt geplaatst tijdens de kalibratie.

Een alternatieve kalibratieprocedure (de "zes posities-test") zou moeten lezen zesmaal de versnelling resultaten, met het apparaat nog steeds. Op elk van deze gevallen zou de sensor worden gedraaid, zodat elke keer een verschillende as op de "verticale" (+-x/y/z is). De lezingen op elke positie voor alle assen biedt voldoende informatie om een gedetailleerde kalibratie.

Een eenvoudige beschrijving van deze procedure vindt u hier; meer precieze info hier; ernstiger hier.

Ongeacht de positie van de sensor, als het niet beweegt, moet dan de norm of de absolute waarde van de versnelling van de vector 1 g (of welke is de versnelling van de zwaartekracht op uw locatie). Dit kan ook worden gebruikt voor calibratie doeleinden in elke positie van de sensor.

Kalibratie (van de versnellingsmeter) anders dan met G

Twee eenvoudige extra kalibratie tests lijken mogelijk, hoewel ik niet hen hebben ontwikkeld:

  • Vrije val: een versnellingsmeter in een vrije val moet lezen (0,0,0), ongeacht de ruimtelijke oriëntatie. Waarschijnlijk zal het moeilijk genoeg om gegevens te verzamelen alvorens een arrestor (vanaf mijn 7e verdieping duurt de tester nauwelijks langer dan 2 seconden ingedrukt tot de straat).
  • Slinger: Een slinger op waarvan bob de GY521 is zou meten acceleraties en angular snelheden die relatief gemakkelijk zijn te berekenen.

Kalibratie (van de gyroscoop)

De standaardprocedure voor het kalibreren van de versnellingsmeter gebruikt kan worden gebruikt voor de offset controle van de gyroscoop, maar het biedt geen idee over de fout krijgen. Als de fout van de winst worden gecontroleerd moet, ik neem aan dat een gekalibreerde slinger vereist worden kan.

Hoeveel tijd voor warming-up? En voor de kalibratie?
Een grafiek is gekoppeld met het weergeven van de lezingen die aangemeld zo spoedig mogelijk na het voeden van de Arduino. Geen opwarmperiode is herkenbaar - of, als er om het even, dat lijkt zeer korte en geen praktische gevolgen voor mijn doeleinden.

De vraag hoeveel tijd nodig is voor kalibratie gegevens lezen kan worden omgezet in een statistisch probleem: hoeveel monsters moeten uit een algemene populatie nauwkeurig schatting van het gemiddelde? Het antwoord is: maar liefst vereist om te zorgen voor stabiele resultaten. Er zijn expliciete expressies voor het aantal monsters, maar, in het algemeen en als haalbaar is, het is beter om zo veel veronderstellingen over de bevolking mogelijk. Een bijgevoegde grafiek toont de evolutie van de schatting van de Ax met de grootte van de steekproef. Na 10-15 seconden van lezingen zijn de resultaten vrij stabiel, en mijn aanbeveling zou zijn om te lezen voor 20-25 s bij een frequentie van ten minste 25 Hz.

Gerelateerde Artikelen

Versnellingsmeter-logger met SD-kaart geheugen

Versnellingsmeter-logger met SD-kaart geheugen

een logger eenheid voor maatregel krachten op een achtbaan en deze opslaan op een SD-card.Het is ook mogelijk om de software in de eenheid te wijzigen zodat het andere dingen meten kunt als het kan worden aangesloten op een i2c-bus.Top Thrill Dragste
How To Make & gebruik een zaad-kiemen tas

How To Make & gebruik een zaad-kiemen tas

Sprouted zaden zijn een krachtpatser van voeding. U kunt zaden sandwiches en salades, snijd ze omhoog in dips, of eet ze gewoon door het handjevol toevoegen.Terwijl ze gemakkelijk in de meeste kruidenierszaken gekocht zijn, biedt groeien uw eigen u e
Autonome drone die u al in je zak hebt!

Autonome drone die u al in je zak hebt!

In deze tutorial wil ik je iets leren, misschien van gedachten verandert. En autonome drones beschikbaar maken voor iedereen.Simpele vraag is: wat heb je nodig om uw drone autonome?.Antwoord:-GPS-Versnellingsmeter-Gyroscoop-Telemetrie draadloos syste
Hoe om te zetten van een Vintage Stereo kast in een prachtige Sofa Console tabel

Hoe om te zetten van een Vintage Stereo kast in een prachtige Sofa Console tabel

Gewoon omdat er iets is oude betekent niet dat het weer mooi kan niet. Ik mijn Papa's vintage stereo kabinet omgevormd tot een prachtige sofa console tabel voor mijn woonkamer. Voor de volledige post over dit makeover, check it out op Vintage Stereo
Lightsaber met behulp van Intel Edison

Lightsaber met behulp van Intel Edison

Op dit Instructable, zal ik delen hoe ik mijn eigen Lightsaber met een Intel Edison board, een goedkoop speelgoed van de Jedi Lightsaber en een aantal adresseerbare RGB LED's gebouwd.Dit was onderdeel van een uitdaging dat Pacman Pereira naar alle Br
Backlit Star Trek Combadge wanddecoratie

Backlit Star Trek Combadge wanddecoratie

Voor mijn eerste Instructable, zal ik je laten zien hoe maak je een backlit Star Trek Combadge wanddecoratie. Mijn ontwerp is die van Deep Space 9, Voyager en de TNG-films.Voor dit op te bouwen, zal u het volgende nodig:20 "x 30" vel schuimkernE
Passieve remlicht

Passieve remlicht

Dit instructable laat zien hoe een versnellingsmeter verbinden met een arduino te proeven van de beweging en leiden tot een licht. in dit geval ben ik een LED remlicht aansluiten via een relais. mijn doel was om het maken van een apparaat dat ik kan
Dekking van de koeler

Dekking van de koeler

Eerst en vooral, wat is dit allemaal over?Nou, ga ik ter dekking van een Woestijn koeler gehouden in een venster van de zijkanten voor effectieve koeling van de kamer.Eigenlijk dit instructable kan worden gebruikt als een gids ter dekking van eventue
Analoog naar digitaal conversie Tutorial

Analoog naar digitaal conversie Tutorial

Hey jongens, ik ben een onderwijs-assistent voor an introduction to engineering klasse voor biomedische ingenieurstechnieken majors aan de Vanderbilt University dit semester. Ik heb deze video uit te leggen van analoog-naar-digitaal conversie naar he
Mobiele telefoon gecontroleerde Tank

Mobiele telefoon gecontroleerde Tank

Hier is een koele kleine project die kunt u aan de speler, bestuurt een kleine tank van uw smartphone. Om dit te doen, kappen we elkaar een goedkope RC tank dat u kunt uitstappen van het internet, en een TinyDuino met de Motor x4 TinyShield en Blueto
Bliksem ronde Fan

Bliksem ronde Fan

It's getting hot, nietwaar? We hebben een ronde fan dat samen met uw fanning oplicht. Wanneer u het fan, het zal oplichten, en wanneer u fanning stopt, krijgt het terug donker. In deze instructables zullen wij tonen u hoe u deze interactieve ronde fa
Upgraden van een slimme Pals leren dragen

Upgraden van een slimme Pals leren dragen

een vriend begaafd ons een teddybeer met twee ingesloten knoppen op onze Inwijdingsfeest, vermoedelijk voor onze peuter. Een soort gebaar, maar het blijkt dat, zodra de knop voor Engels of Spaans alfabet is ingedrukt, het zingt het hele ding, en de e
Geo-Data Logger: Arduino + GPS + SD + versnellingsmeter te melden, tijd-stempel, en geo-tag sensorgegevens

Geo-Data Logger: Arduino + GPS + SD + versnellingsmeter te melden, tijd-stempel, en geo-tag sensorgegevens

UPDATES17 oktober 2013: Ik heb een handleiding gepubliceerd over het gebruik van uw Androïde telefoon voor een soortgelijke taak door leveraging uw Androïde apparaat is gebouwd in GPS en sensoren.6 februari 2013: Featured op GeoAwesomeness http://geo
Hoe gebruik ik de RFduino met een 6 Axis versnellingsmeter

Hoe gebruik ik de RFduino met een 6 Axis versnellingsmeter

Bekijk de RFduino van vinger-tip formaat, Arduino compatibele, draadloze ingeschakelde micro controller:http://www.rfduino.com/product/rfd90101-rfduino-2p...Dit instructable zal laten zien hoe je interface naar de versnellingsmeter/Gyro met de RFduin