Magnetometr jest trójosiowym miernikiem pola magnetycznego, a nie gotowym „czujnikiem kursu”. Kurs powstaje dopiero po transformacji pomiaru do wspólnej ramki, kompensacji przechylenia, kalibracji sensora i porównaniu z modelem pola Ziemi. W UAV największym problemem rzadko jest rozdzielczość układu. Dominują prądy napędu, magnesy silników, stalowe elementy, przewody, zmiana konfiguracji payloadu i nieprawidłowe użycie pomiaru przez estymator.
Spis treści#
- Co mierzy magnetometr
- Pole Ziemi
- WMM2025, deklinacja i inklinacja
- Technologie sensorów
- Model pomiaru
- Hard iron i soft iron
- Dopasowanie elipsoidy
- Alignment i kompensacja przechylenia
- Zakłócenia od napędu
- Miejsce montażu i okablowanie
- Temperatura, saturacja i field shock
- Integracja z estymatorem
- Kontrola wiarygodności
- Kiedy latać bez magnetometru
- Kalibracja praktyczna
- Test prądowy
- Diagnostyka logów
- Powiązane tematy
- Przypisy
Co mierzy magnetometr#
Wyjściem jest wektor indukcji magnetycznej w osiach sensora:
B_s = [Bx, By, Bz]ᵀ
W praktyce używa się mikrotesli µT; starsze oprogramowanie może stosować gaussy, gdzie 1 G = 100 µT. Pole geomagnetyczne ma moduł rzędu dziesiątek mikrotesli, zależny od miejsca i czasu. Pole od przewodu z dużym prądem lub magnesu silnika może być porównywalne albo większe.
Sensor nie rozróżnia źródeł. Mierzy sumę pola Ziemi, pola elementów stałych, pola zależnego od prądu, zakłóceń zewnętrznych i szumu. Kalibracja statyczna może usunąć część stałą i liniową deformację, lecz nie usuwa zakłócenia zmiennego z przepustnicą.
Sam azymut z atan2(By,Bx) jest poprawny tylko w odpowiedniej, poziomej ramce i przy zgodnych znakach. Przy przechyleniu składowa pionowa miesza się z poziomą. Dlatego pomiar trzeba obrócić za pomocą orientacji z IMU albo użyć go bezpośrednio w modelu wektorowym EKF.
Pole Ziemi#
Pole geomagnetyczne jest wektorem przestrzennym. NOAA opisuje je przez składowe północną X, wschodnią Y, pionową Z, poziomą H, całkowitą F, deklinację D i inklinację I. W konwencji modelu Z jest dodatnie w dół.
Moduł i kierunek zmieniają się geograficznie. W pobliżu równika magnetycznego wektor jest bardziej poziomy, a w wysokich szerokościach silnie pionowy. Gdy pozioma składowa H jest mała, wyznaczenie azymutu z kompasu staje się źle uwarunkowane: niewielkie zakłócenie poziome daje duży błąd kierunku.
Pole obserwowane lokalnie zawiera główne pole generowane we wnętrzu Ziemi, składniki skorupowe oraz zmiany zewnętrzne związane z aktywnością geomagnetyczną. Globalny model nie opisuje stalowej konstrukcji, infrastruktury, pojazdu ani lokalnego złoża. Jest odniesieniem, nie doskonałą prognozą pojedynczego pomiaru.
WMM2025, deklinacja i inklinacja#
World Magnetic Model jest standardowym modelem do systemów nawigacji i odniesienia kursu. Aktualna wersja WMM2025 obowiązuje dla epoki 2025–2030; NOAA publikuje współczynniki, kod i wartości testowe. Model zwraca między innymi składowe wektora, deklinację oraz inklinację dla pozycji, wysokości i daty.
Deklinacja jest kątem między północą magnetyczną a geograficzną. NOAA przyjmuje dodatnią deklinację na wschód. Wartość zmienia się z miejscem i czasem. Dodanie lub odjęcie deklinacji bez sprawdzenia konwencji znaku jest częstą przyczyną stałego błędu kursu.
Inklinacja opisuje nachylenie wektora względem poziomu. Jest potrzebna, gdy EKF porównuje pełny wektor 3D. Modelowanie tylko kierunku poziomego marnuje informację, ale może być bardziej odporne na zakłócenia pionowej składowej w niektórych konfiguracjach.
Model należy uruchamiać z poprawną pozycją, datą i rodzajem wysokości. Aktualizacja co pięć lat wynika ze zmian pola głównego. WMM2020 nie powinien być bezrefleksyjnie pozostawiony w nowym firmware po wejściu WMM2025.
Technologie sensorów#
W układach scalonych spotyka się technologie Hall, magnetorezystancyjne AMR/GMR/TMR i inne rozwiązania. Każda ma inny szum, pobór mocy, zakres, histerezę i odporność na silne pole. BMM350 jest współczesnym trójosiowym sensorem opartym na TMR; producent wskazuje m.in. funkcję recovery po silnym polu.
Liczba bitów ADC nie opisuje samodzielnie jakości kursu. Potrzebne są szum w nT lub µT, błąd offsetu, skala, pasmo, zakres, stabilność temperaturowa i zachowanie po saturacji. Dla UAV ważna jest też szybkość pomiaru: kurs zmienia się wolniej niż rate gyro, lecz próbka musi mieć znany czas i wystarczająco małe opóźnienie dla estymatora.
Niektóre „kompasy” są zintegrowane z GNSS na zewnętrznym module. Zaletą jest oddalenie od przewodów mocy, ale magistrala i orientacja modułu muszą być poprawnie skonfigurowane. Napis na obudowie nie gwarantuje zgodności osi magnetometru i anteny.
Model pomiaru#
Użyteczny model ma postać:
m = A R_nb B_n + b + d(I, u, t, T) + n
B_n jest oczekiwanym polem w ramce nawigacyjnej, R_nb obraca je do body/sensor, A opisuje skalę i soft iron, b stały offset hard iron, a d zakłócenia zależne od prądu I, sterowania u, czasu i temperatury.
Kalibracja elipsoidy estymuje A i b dla konfiguracji statycznej. Nie identyfikuje automatycznie funkcji d. Jeżeli bateria, przewód lub payload zmienia pozycję po kalibracji, parametry przestają opisywać bieżącą geometrię.
Wektor modelu musi być wyrażony w tej samej ramce i jednostce co pomiar. Porównanie normy jest niewrażliwe na orientację i pomaga wykrywać zakłócenie. Porównanie kierunku wymaga dobrej orientacji oraz aktualnego modelu.
Hard iron i soft iron#
Hard iron to w przybliżeniu stałe pole związane z pojazdem, na przykład od magnesu lub namagnesowanego elementu. W przestrzeni próbek przesuwa środek sfery. Kompensacja polega na odjęciu wektora offsetu.
Soft iron opisuje zniekształcenie pola przez materiały o dużej przenikalności. Zależność od orientacji powoduje rozciągnięcie i obrót sfery do elipsoidy. Korekcja wymaga macierzy, nie trzech niezależnych offsetów.
Nazwy są uproszczeniem systemowym. Rzeczywiste zakłócenia mogą być nieliniowe, mieć histerezę i zależeć od natężenia pola. Ferromagnetyczna śruba obok sensora może zmieniać pole wraz z temperaturą lub naprężeniem. Kalibracja nie czyni złej lokalizacji dobrą; jedynie aproksymuje zachowanie w zebranych warunkach.
Dopasowanie elipsoidy#
Podczas obrotu skalibrowanego sensora w jednorodnym, stałym polu końce wektora powinny leżeć na sferze. Surowe dane tworzą przesuniętą elipsoidę. Ogólny model kwadratowy dopasowuje powierzchnię, a następnie wyznacza środek i transformację do sfery.
Zbiór kalibracyjny musi pokrywać pełną orientację 3D. Obrót wyłącznie w poziomie tworzy okrąg i nie identyfikuje dobrze osi pionowej ani części elementów macierzy. Punkty powinny być rozłożone równomiernie, bez dominacji jednej pozycji.
Po kalibracji sprawdza się:
- średni i maksymalny błąd normy;
- kondycję macierzy korekcyjnej;
- pokrycie przestrzeni orientacji;
- wynik na osobnym zbiorze;
- zgodność modułu z WMM w granicach zakłóceń lokalnych;
- stabilność przy zmianie prądu napędu.
Algorytm może dopasować matematycznie bardzo złą serię, dlatego potrzebne są limity fizyczne. Ekstremalna skala osi lub ogromny offset sugeruje zakłócenie, saturację albo niewystarczające pokrycie.
Alignment i kompensacja przechylenia#
Po korekcji magnetycznej wektor nadal znajduje się w ramce sensora. Należy go obrócić do body, używając czystej macierzy rotacji. Alignment nie powinien być ukryty w macierzy soft iron, bo wtedy zmiana montażu utrudnia interpretację parametrów.
Kompensacja przechylenia używa roll i pitch, aby przenieść pole do poziomej ramki. Następnie kierunek poziomej składowej daje heading magnetyczny. Dokładny wzór zależy od osi NED/ENU, kolejności obrotów i znaków. Bezpieczniej stosować ogólną transformację wektorową niż kopiować formułę atan2 bez kontekstu.
Test alignmentu wykonuje się w miejscu bez zakłóceń, porównując zmianę składowych podczas obrotu wokół pojedynczych osi. Jeżeli po przechyleniu nieruchomego pojazdu wyznaczony kurs zmienia się znacznie, przyczyną może być zła macierz montażu, niepełna kalibracja albo zakłócenie zależne od orientacji.
Zakłócenia od napędu#
Pole wokół prostego przewodu rośnie z prądem i maleje z odległością. W UAV przewody baterii oraz fazy silników przenoszą duże, zmienne prądy. Skręcenie pary zasilającej zmniejsza pole dalekie, ponieważ pola przeciwnych kierunków częściowo się znoszą. Minimalizacja powierzchni pętli jest ważniejsza niż estetyczny przebieg przewodu.
Silniki zawierają magnesy trwałe, a stalowe śruby i wały deformują pole. ESC generuje prądy impulsowe. PDB i złącza mogą tworzyć niesymetryczne pętle. Zakłócenie zależy od throttle, obciążenia śmigła, napięcia oraz sterowania poszczególnych silników.
Kompensacja „motor interference” może regresyjnie wiązać błąd pola z prądem lub komendą napędu. Prąd jest lepszą zmienną fizyczną niż throttle, ale pojedynczy pomiar całkowity nie opisuje rozkładu prądów między ramionami. Taki model jest dodatkiem do dobrego montażu i musi być zweryfikowany w różnych punktach pracy.
Miejsce montażu i okablowanie#
Najlepszym sposobem ograniczenia zakłóceń jest odległość. Zewnętrzny moduł GNSS/magnetometru umieszcza się często na maszcie, z dala od baterii, przewodów fazowych, głośników, serw i magnesów. Maszt musi być sztywny, a jego własne elementy niemagnetyczne.
Nie każdy metal jest ferromagnetyczny, ale gotowy element może zawierać stalową wkładkę. Prostym testem magnesem można wykryć część problemów, lecz nie mierzy on całej przenikalności i remanencji. Wkręt wymieniony po kalibracji może zmienić offset.
Magistrala I²C na długim przewodzie jest podatna na pojemność i zakłócenia. Należy dobrać pull-up, prędkość, prowadzenie masy i zabezpieczenie ESD. Błąd transmisji nie powinien tworzyć „ostatniej poprawnej” próbki z nowym timestampem.
Temperatura, saturacja i field shock#
Offset i czułość zmieniają się z temperaturą. Moduł na maszcie doświadcza innej temperatury niż FC w obudowie. Kalibracja wykonana w pomieszczeniu powinna zostać sprawdzona w zakresie operacyjnym.
Silne pole może nasycić sensor, a w niektórych technologiach pozostawić przejściowy offset lub wymagać procedury odzyskania. BMM350 reklamuje mechanizm field shock recovery; szczegóły wyzwalania i ograniczenia należy brać z dokumentacji konkretnej rewizji. Firmware powinien wykrywać wartości poza zakresem oraz statusy diagnostyczne.
Saturacja jednej osi deformuje kierunek całego wektora. Sam moduł może nadal wyglądać wiarygodnie. Detektor powinien analizować składowe, normę i zmianę względem przewidywania.
Integracja z estymatorem#
EKF może używać magnetometru na kilka sposobów: jako pełnego wektora 3D, jako headingu po kompensacji albo tylko w wybranych stanach. Fuzja pełnego wektora pozwala estymować bias i wykorzystać inklinację, ale jest wrażliwa na błędy modelu i zakłócenia.
Innowacja magnetyczna to różnica między pomiarem a przewidywaniem. Jej kowariancja powinna obejmować nie tylko szum datasheetu, ale też środowisko pojazdu. Zbyt mała wariancja sprawia, że zakłócony kompas obraca cały estymator. Zbyt duża odbiera mu wartość obserwacyjną.
Pole zmienia się wolno względem pętli rate. Magnetometr nie musi pracować z kilkoma kHz, ale timestamp i opóźnienie nadal są ważne podczas szybkiego yaw. Każdą próbkę trzeba obracać orientacją z właściwej chwili.
Kontrola wiarygodności#
Przed fuzją można sprawdzać:
- normę pola względem WMM i lokalnej wartości bazowej;
- kąt pomiędzy pomiarem i przewidywanym wektorem;
- saturację oraz status sensora;
- szybkość zmiany niezgodną z dynamiką pojazdu;
- korelację błędu z prądem;
- zgodność kilku magnetometrów;
- innowacje EKF i czas ich utrzymywania;
- ważność pozycji i daty użytych przez WMM.
Progi nie powinny powodować gwałtownego przełączania przy pojedynczej próbce. Stosuje się histerezę, czas potwierdzenia oraz osobny stan „degraded”. Po odrzuceniu kompasu estymator musi mieć alternatywne źródło yaw albo jawnie zwiększać niepewność.
Dwa magnetometry blisko siebie mogą współdzielić zakłócenie. Różnica między nimi nie wykryje pola pochodzącego od wspólnego przewodu. Warto porównywać także z modelem i ruchem GNSS.
Kiedy latać bez magnetometru#
Niektóre konfiguracje mogą estymować yaw z ruchu GNSS, dual-antenna GNSS, wizyjnej odometrii lub innych obserwacji. GNSS course jest wiarygodny dopiero przy ruchu względem ziemi i nie jest tożsamy z kierunkiem nosa przy wietrze. Dwie anteny GNSS mogą dać heading również w spoczynku, jeżeli baseline i rozwiązanie fazowe są poprawne.
Rezygnacja z magnetometru jest decyzją architektoniczną, nie usunięciem wadliwego sensora bez konsekwencji. Trzeba przeanalizować start, zawis, lot bez ruchu poziomego, utratę GNSS i przejścia między źródłami. System powinien sygnalizować operatorowi, z czego wynika yaw i jaka jest jego niepewność.
Kalibracja praktyczna#
- Zmontuj pojazd w konfiguracji lotnej, z baterią i payloadem na właściwym miejscu.
- Usuń tymczasowe magnesy, stalowe narzędzia i głośniki z otoczenia.
- Sprawdź poprawność osi i skali surowej.
- Zbieraj dane w możliwie wielu orientacjach 3D, nie tylko obracając poziomo.
- Odrzuć próbki z saturacją i błędami transmisji.
- Dopasuj offset i macierz elipsoidy.
- Zweryfikuj normę oraz rozkład reszt na niezależnej serii.
- Porównaj kierunek i moduł z aktualnym WMM2025, pamiętając o lokalnych anomaliach.
- Wykonaj test prądowy z zabezpieczonym pojazdem.
- Zapisz kalibrację z identyfikatorem sensora i konfiguracji.
Kalibracja wykonana obok zbrojenia betonu lub samochodu może wbudować pole otoczenia w parametry pojazdu. Po przeniesieniu na otwartą przestrzeń korekcja stanie się błędna. Dobra seria powinna być powtarzalna w kilku czystych lokalizacjach.
Test prądowy#
Pojazd mocuje się na nieprzewodzącym, niemagnetycznym stanowisku w stałej orientacji. Rejestruje się pole, prąd, napięcie i komendy napędu przy kolejnych bezpiecznych poziomach pracy. Śmigła i procedura muszą być dobrane tak, aby stanowisko nie stwarzało ryzyka; test bez śmigieł nie odtwarza rzeczywistych prądów obciążonego napędu.
Dla każdej osi analizuje się zmianę względem prądu. Ważny jest także błąd kąta pełnego wektora, nie tylko offset. Histereza między zwiększaniem i zmniejszaniem mocy sugeruje termikę, namagnesowanie albo zmianę mechaniczną.
Jeżeli zakłócenie jest duże, najpierw zmienia się położenie sensora i przewodów. Model kompensacyjny ma sens dopiero dla stabilnej, powtarzalnej zależności. Losowe skoki od serwa lub ruchomego payloadu nie dadzą się skorygować jedną funkcją prądu całkowitego.
Diagnostyka logów#
Log powinien zawierać surowy i skorygowany wektor, normę, temperaturę, wybrany sensor, parametry kalibracji, prąd oraz innowacje EKF. Wykres 3D próbek ujawnia elipsoidę i brak pokrycia. Wykres normy względem throttle wykrywa zakłócenie napędu.
Typowe objawy:
- kurs zmienia się po uzbrojeniu — pole od prądu lub silnika;
- kurs zależy od roll/pitch — zły alignment lub soft iron;
- stały błąd względem mapy — deklinacja, orientacja albo offset;
- skoki po ruchu gimbala — magnes/serwo ruchomego payloadu;
- poprawa po oddaleniu modułu — problem lokalizacji;
- rozbieżność dopiero po nagrzaniu — temperatura;
- dobre dane na stole i złe w locie — prąd, drgania, timestamp albo lokalne pole konstrukcji.
Nie należy oceniać kompasu tylko na podstawie płynnego wskaźnika GCS. Filtr może wygładzić silnie błędny sygnał. Liczą się reszty względem modelu, zależność od konfiguracji i zachowanie estymatora.
Powiązane tematy#
- IMU w dronie
- GNSS w UAV
- Układy współrzędnych w UAV
- Filtr Kalmana w UAV
- EMI/EMC w kontrolerze lotu
- Przewody i złącza UAV
Przypisy#
- NOAA NCEI, World Magnetic Model — WMM2025, składowe pola, współczynniki, oprogramowanie i okres ważności.
- NOAA NCEI, Magnetic Declination — definicja deklinacji, znaki i zależność od miejsca oraz czasu.
- Bosch Sensortec, Magnetometers — BMM350 — technologia TMR i właściwości współczesnego sensora.
- ROS, REP 145 — konwencje osi, jednostek i ramek dla magnetometru w komunikatach IMU.
Utworzono: 15 sierpnia 2026. Ostatnia aktualizacja: 15 sierpnia 2026. Źródła zweryfikowano: 15 sierpnia 2026.
Źródła z centralnego rejestru
- Bosch Sensortec: BMM350 magnetometer [dokumentacja producenta]
- NOAA NCEI: World Magnetic Model 2025 [model i dokumentacja instytucjonalna]
- NOAA NCEI: Magnetic Declination [materiał instytucjonalny]
- ROS REP 145: Conventions for IMU Sensor Drivers [standard projektu open source]