Kazalo:

Enostavna kalibracija magnetometra s trdim in mehkim železom: 6 korakov (s slikami)
Enostavna kalibracija magnetometra s trdim in mehkim železom: 6 korakov (s slikami)

Video: Enostavna kalibracija magnetometra s trdim in mehkim železom: 6 korakov (s slikami)

Video: Enostavna kalibracija magnetometra s trdim in mehkim železom: 6 korakov (s slikami)
Video: CS50 2015 - Week 4 2024, Julij
Anonim
Enostavna kalibracija magnetometra s trdim in mehkim železom
Enostavna kalibracija magnetometra s trdim in mehkim železom

Če je vaš hobi RC, droni, robotika, elektronika, povečanje resničnosti ali podobno, se boste slej ko prej srečali z nalogo kalibracije magnetometra. Vsak modul magnetometra je treba umeriti, ker je pri merjenju magnetnega polja prišlo do nekaterih popačenj. Obstajata dve vrsti teh popačenj: popačenja iz trdega železa in popačenja iz mehkega železa. Teorijo o teh popačenjih najdete tukaj. Za natančne meritve morate kalibrirati magnetometer za popačenja trdega in mehkega železa. Ta navodila opisujejo preprost način, kako to storiti.

1. korak: stvari, ki jih potrebujete

Stvari, ki jih potrebujete
Stvari, ki jih potrebujete
Stvari, ki jih potrebujete
Stvari, ki jih potrebujete
Stvari, ki jih potrebujete
Stvari, ki jih potrebujete

Strojna oprema:

  • Modul magnetometra HMC5883L
  • Arduino Mega 2560 plošča

*Lahko pa preprosto uporabite ta navodila za drug modul magnetometra ali arduino ploščo.

Programska oprema:

  • MagMaster
  • MagViewer

Vdelana programska oprema:

    Arduino skica

*Ta skica je napisana za modul HMC5883L, vendar jo lahko preprosto uporabite za svoj modul.

Drugi:

  • Papirnata škatla
  • Ogledna plošča
  • Žice

2. korak: Izdelava kalibracijske škatle

Izdelava kalibracijske škatle
Izdelava kalibracijske škatle

Za postopek umerjanja morate narediti posebno kalibracijsko polje (slika 2.1). Za to sem uporabil papirnato škatlo, lahko pa uporabite tudi plastično, leseno palico ali kaj drugega. Modul magnetometra morate povezati s škatlo (na primer z lepilom), kot je prikazano na sliki 2.1. Na sprednje strani škatle narišite koordinatni sistem glede na koordinatni sistem modula magnetometra.

3. korak: Električna povezava

Električna povezava
Električna povezava
Električna povezava
Električna povezava

Priključite modul magnetometra in arduino ploščo, kot je prikazano na sliki 3.1. Upoštevajte, da je napajalna napetost modula magnetometra 3, 3 V (kot v mojem primeru pri različici HMC5883L GY-273).

4. korak: Namestitev programske in vdelane programske opreme

Namestitev programske in vdelane programske opreme
Namestitev programske in vdelane programske opreme

Prenesite programsko opremo in vdelano programsko opremo tukaj. Ta arhiv vsebuje datoteke:

  • MagMaster.exe - program za umerjanje magnetometra
  • MagViewer.exe - program za vizualizacijo meritev magnetometra
  • Arduino_Code - arduino skica za postopek umerjanja
  • Arduino_Test_Results - arduino skica za testiranje rezultatov umerjanja
  • Arduino_Radius_Stabilisation - arduino skica za testiranje rezultatov umerjanja z algoritmom stabilizacije polmera krogle
  • Datoteke MagMaster in datoteke MagViewer - sistemske datoteke za MagMaster.exe in MagViewer.exe

Kopirajte vse te datoteke v katero koli mapo. Skico "Arduino_Code" naložite na ploščo arduino. Ta skica arduino zahteva knjižnico HMC5883L, pred nalaganjem skice kopirajte mapo "HMC5883L" (postavljeno v mapo "Arduino_Code") v mapo "C: / Program Files / Arduino / libraries".

5. korak: Umerjanje

Praznovanje
Praznovanje
Praznovanje
Praznovanje
Praznovanje
Praznovanje
Praznovanje
Praznovanje

Uvod

Umerjanje magnetometra je proces pridobivanja transformacijske matrike in pristranskosti.

Za kalibrirane meritve magnetnega polja uporabite te transformacijske matrike in pristranskost v svojem programu. V svojem algoritmu morate uporabiti pristranskost za vektor nekolibriranih podatkov magnetometra (koordinate X, Y, Z) in nato matriko transformacije pomnožiti s tem nastalim vektorjem (slika 5.4). Algoritem C teh izračunov najdete v skicah "Arduino_Test_Results" in "Arduino_Radius_Stabilization".

Postopek umerjanja

Zaženite MagMaster.exe in izberite serijska vrata plošče arduino. Zelene vrvice v oknu programa označujejo koordinate vektorja magnetometra (slika 5.1).

Modul magnetometra (kalibracijska škatla s priloženim modulom magnetometra) postavite, kot je prikazano na sliki 5.2.1, in kliknite gumb "Točka 0" v okencu skupine "Axis X+". Upoštevajte, da kalibracijska omarica ni stacionarna glede na fiksno vodoravno ravnino. Nato postavite magnetometer, kot je prikazano na sliki 5.2.2, in kliknite gumb "Točka 180" v skupini "Axis X+" in tako naprej. To morate storiti na naslednji način (glejte tudi sliko 5.3):

  • Slika 5.2.1: "Točka 0", "Os X+"
  • Slika 5.2.2: "Točka 180", "Os X+"
  • Slika 5.2.3: "Točka 0", "Os X-"
  • Slika 5.2.4: "Točka 180", "Os X-"
  • Slika 5.2.5: "Točka 0", "Os Y+"
  • Slika 5.2.6: "Točka 180", "Os Y+"
  • Slika 5.2.7: "Točka 0", "Os Y-"
  • Slika 5.2.8: "Točka 180", "Os Y-"
  • Slika 5.2.9: "Točka 0", "Os Z+"
  • Slika 5.2.10: "Točka 180", "Os Z+"
  • Slika 5.2.11: "Točka 0", "Os Z-"
  • Slika 5.2.12: "Točka 180", "Os Z-"

Izpolniti morate tabelo. Po tem kliknite "Izračunaj transformacijsko matriko in pristranskost" in dobite matriko transformacije in pristranskost (slika 5.3).

Matrika transformacije in pristranskost sta doseženi! Kalibracija je končana!

6. korak: Testiranje in vizualizacija

Image
Image
Testiranje in vizualizacija
Testiranje in vizualizacija

Vizualizacija nekolibriranih meritev

Skico "Arduino_Code" naložite na ploščo arduino. Zaženite MagViewer.exe, izberite serijska vrata arduino plošče (hitrost prenosa zaporednih vrat mora biti 9600 b / s) in kliknite »Zaženi MagViewer«. Zdaj lahko vidite koordinate podatkovnega vektorja magnetometra v 3D prostoru v realnem času (slika 6.1, video 6.1, 6.2). Te meritve niso umerjene.

Vizualizacija umerjenih meritev

Uredite skico "Arduino_Radius_Stabilization", zamenjajte privzeto transformacijsko matriko in podatke o pristranskosti s svojimi, pridobljenimi med kalibracijskimi podatki (vašo transformacijsko matriko in pristranskostjo). Na ploščo arduino naložite skico "Arduino_Radius_Stabilization". Zaženite MagViewer.exe, izberite serijska vrata (hitrost prenosa 9600 b / s), kliknite »Zaženi MagViewer«. Zdaj lahko v realnem času vidite umerjene meritve v 3D prostoru (slika 6.2, video 6.3, 6.4).

Z uporabo teh skic lahko preprosto napišete algoritem za vaš projekt magnetometra s kalibriranimi meritvami!

Priporočena: