Spisu treści:

Łatwa kalibracja magnetometru twardego i miękkiego żelaza: 6 kroków (ze zdjęciami)
Łatwa kalibracja magnetometru twardego i miękkiego żelaza: 6 kroków (ze zdjęciami)

Wideo: Łatwa kalibracja magnetometru twardego i miękkiego żelaza: 6 kroków (ze zdjęciami)

Wideo: Łatwa kalibracja magnetometru twardego i miękkiego żelaza: 6 kroków (ze zdjęciami)
Wideo: Problem z ładowaniem! Słaba jakość czy wada Samsunga? Naprawiam najczęstszą usterkę w a71. 2024, Listopad
Anonim
Łatwa kalibracja magnetometru twardego i miękkiego żelaza
Łatwa kalibracja magnetometru twardego i miękkiego żelaza

Jeśli Twoim hobby jest RC, drony, robotyka, elektronika, rzeczywistość rozszerzona lub podobne to prędzej czy później spotkasz się z zadaniem kalibracji magnetometru. Każdy moduł magnetometru musi być skalibrowany, ponieważ pomiar pola magnetycznego podlega pewnym zniekształceniom. Istnieją dwa rodzaje tych zniekształceń: zniekształcenia z twardego żelaza i zniekształcenia z miękkiego żelaza. Teorię o tych zniekształceniach znajdziesz tutaj. Aby uzyskać dokładne pomiary, należy skalibrować magnetometr pod kątem zniekształceń twardego i miękkiego żelaza. Ta instrukcja opisuje prosty sposób, jak to zrobić.

Krok 1: Rzeczy, których potrzebujesz

Rzeczy, których potrzebujesz
Rzeczy, których potrzebujesz
Rzeczy, których potrzebujesz
Rzeczy, których potrzebujesz
Rzeczy, których potrzebujesz
Rzeczy, których potrzebujesz

Sprzęt komputerowy:

  • Moduł magnetometru HMC5883L
  • Płytka Arduino Mega 2560

* Ale możesz łatwo zastosować tę instrukcję dla innego modułu magnetometru lub płyty arduino.

Oprogramowanie:

  • MagMaster
  • MagViewer

Oprogramowanie układowe:

    Szkic Arduino

*Ten szkic jest napisany dla modułu HMC5883L, ale możesz go łatwo dostosować do swojego modułu.

Inni:

  • Papierowe pudełko
  • Deska do krojenia chleba
  • Przewody

Krok 2: Wykonanie pudełka kalibracyjnego

Wykonanie skrzynki kalibracyjnej
Wykonanie skrzynki kalibracyjnej

Do procesu kalibracji należy wykonać specjalne pudełko kalibracyjne (rysunek 2.1). Do zrobienia tego użyłem papierowego pudełka, ale możesz użyć plastikowego, drewnianego drążka lub czegoś innego. Należy połączyć moduł magnetometru z pudełkiem (np. z klejem) jak pokazano na rysunku 2.1. Na ścianach pudełka należy narysować układ współrzędnych zgodnie z układem współrzędnych modułu magnetometru.

Krok 3: Połączenie elektryczne

Połączenie elektryczne
Połączenie elektryczne
Połączenie elektryczne
Połączenie elektryczne

Podłącz moduł magnetometru i płytkę arduino jak pokazano na rysunku 3.1. Należy pamiętać, że napięcie zasilania modułu magnetometru może wynosić 3,3 V (jak w moim przypadku z wersją HMC5883L GY-273).

Krok 4: Instalacja oprogramowania i oprogramowania sprzętowego

Instalowanie oprogramowania i oprogramowania sprzętowego
Instalowanie oprogramowania i oprogramowania sprzętowego

Pobierz oprogramowanie i oprogramowanie sprzętowe tutaj. To archiwum zawiera pliki:

  • MagMaster.exe - program do kalibracji magnetometru
  • MagViewer.exe - program do wizualizacji pomiarów magnetometru
  • Arduino_Code - szkic arduino do procesu kalibracji
  • Arduino_Test_Results - szkic arduino do testowania wyników kalibracji
  • Arduino_Radius_Stabilisation - szkic arduino do testowania wyników kalibracji z algorytmem stabilizacji promienia kuli
  • MagMaster Files i MagViewer Files - pliki systemowe dla MagMaster.exe i MagViewer.exe

Skopiuj wszystkie te pliki do dowolnego folderu. Prześlij szkic "Arduino_Code" na płytkę arduino. Ten szkic arduino wymaga biblioteki HMC5883L, skopiuj folder „HMC5883L” (umieszczony w folderze „Arduino_Code”) do folderu „C:\Program Files\Arduino\libraries” przed przesłaniem szkicu.

Krok 5: Kalibracja

Kalibrowanie
Kalibrowanie
Kalibrowanie
Kalibrowanie
Kalibrowanie
Kalibrowanie
Kalibrowanie
Kalibrowanie

Wstęp

Kalibracja magnetometru to proces uzyskiwania macierzy transformacji i polaryzacji.

Aby uzyskać skalibrowane pomiary pola magnetycznego, powinieneś użyć tej macierzy transformacji i błędu w swoim programie. W swoim algorytmie powinieneś zastosować bias do wektora nieskalibrowanych danych magnetometru (współrzędne X, Y, Z), a następnie pomnożyć macierz transformacji przez ten wektor wynikowy (rysunek 5.4). Algorytm C tych obliczeń można znaleźć w szkicach "Arduino_Test_Results" i "Arduino_Radius_Stabilization".

Proces kalibracji

Uruchom MagMaster.exe i wybierz port szeregowy płyty arduino. Zielone ciągi w oknie programu wskazują współrzędne wektora magnetometru (rysunek 5.1).

Umieść moduł magnetometru (pudełko kalibracyjne z dołączonym modułem magnetometru) jak pokazano na rysunku 5.2.1 i kliknij przycisk "Point 0" w groupboxie "Axis X+". Zauważ, że skrzynka kalibracyjna nie jest nieruchoma w stosunku do ustalonej płaszczyzny poziomej. Następnie umieść magnetometr tak, jak pokazano na rysunku 5.2.2 i kliknij przycisk „Point 180” w polu grupy „Axis X+” i tak dalej. Powinieneś to zrobić w następujący sposób (patrz też rysunek 5.3):

  • Zdjęcie 5.2.1: „Punkt 0”, „Oś X+”
  • Zdjęcie 5.2.2: „Punkt 180”, „Oś X+”
  • Zdjęcie 5.2.3: „Punkt 0”, „Oś X-”
  • Zdjęcie 5.2.4: „Punkt 180”, „Oś X-”
  • Zdjęcie 5.2.5: „Punkt 0”, „Oś Y+”
  • Zdjęcie 5.2.6: „Punkt 180”, „Oś Y+”
  • Zdjęcie 5.2.7: „Punkt 0”, „Oś Y-”
  • Zdjęcie 5.2.8: „Punkt 180”, „Oś Y-”
  • Zdjęcie 5.2.9: "Punkt 0", "Oś Z+"
  • Zdjęcie 5.2.10: „Punkt 180”, „Oś Z+”
  • Zdjęcie 5.2.11: „Punkt 0”, „Oś Z-”
  • Zdjęcie 5.2.12: „Punkt 180”, „Oś Z-”

Powinieneś wypełnić tabelę. Następnie kliknij "Calculate Transformation Matrix and Bias" i uzyskaj macierz transformacji i bias (rysunek 5.3).

Macierz transformacji i stronniczość są gotowe! Kalibracja zakończona!

Krok 6: Testowanie i wizualizacja

Image
Image
Testowanie i wizualizacja
Testowanie i wizualizacja

Wizualizacja pomiarów nieskalibrowanych

Prześlij szkic "Arduino_Code" na płytkę arduino. Uruchom MagViewer.exe, wybierz port szeregowy płyty arduino (szybkość transmisji portu szeregowego powinna wynosić 9600 bps) i kliknij "Uruchom MagViewer". Teraz możesz zobaczyć współrzędne wektora danych magnetometru w przestrzeni 3D w czasie rzeczywistym (zdjęcie 6.1, wideo 6.1, 6.2). Te pomiary nie są kalibrowane.

Wizualizacja skalibrowanych pomiarów

Edytuj szkic „Arduino_Radius_Stabilization”, zastąp domyślną macierz transformacji i dane odchylenia danymi uzyskanymi podczas kalibracji (macierz transformacji i dane odchylenia). Prześlij szkic "Arduino_Radius_Stabilization" na płytkę arduino. Uruchom MagViewer.exe, wybierz port szeregowy (szybkość transmisji wynosi 9600 bps), kliknij "Uruchom MagViewer". Teraz możesz zobaczyć skalibrowane pomiary w przestrzeni 3D w czasie rzeczywistym (zdjęcie 6.2, wideo 6.3, 6.4).

Korzystając z tych szkiców, możesz łatwo napisać algorytm dla swojego projektu magnetometru ze skalibrowanymi pomiarami!

Zalecana: