A miało być tak pięknie. Wygląda na to, że muszę zmienić projekt. Okazuje się, że czujniki MEMS montowane w telefonach są bardzo marnej jakości i ich dokładność nie jest wystarczająca do wykorzystania w nawigacji inercyjnej. Nawet wysokiej klasy systemy INS oparte na bardzo dobrych czujnikach są obarczone sporym błędem więc czego innego można było się spodziewać…

Dokładność

Żyroskopy i akcelerometry są podstawowymi czujnikami wykorzystywanymi w nawigacji bezwładnościowej. Ich dokładność ma kolosalny wpływ na ostateczną precyzję obliczeń położenia.

Żyroskopy

Podstawową miarą błędu żyroskopów jest dryf czyli wielkość opisująca fałszywą zmianę ich wskazań w czasie. Niestety czujniki na pokładach telefonów należą do tej najgorszej klasy więc o choćby minimalnie zadowalającej dokładności pomiarów możemy zapomnieć.

Porównanie żyroskopów i ich dokładność

Jak widać na powyższym diagramie, ich dryf może przekraczać nawet 100 °/h czyli pond 1.5 °/min (sic!). Za moment opiszę jakie są tego konsekwencje.

Akcelerometry

Jeżeli chodzi o przyspieszeniomierze sprawa ma się trochę inaczej. Spójrz na poniższy wykres.

Pomiar przyspieszenia w spoczynku.

Przedstawia on pomiar przyspieszeń leżącego w spoczynku na biurku telefonu w jednym z trzech kanałów akcelerometru. Jeden obraz mówi tutaj więcej niż tysiące słów.

Na uwagę zasługuje również fakt, że pomiary nie oscylują nawet w okolicach zera. Jest to spowodowane wpływem grawitacji. Tutaj właśnie w grę wchodzą pomiary z żyroskopów, które pomagają określić i wyeliminować jej wpływ na pomiar przyspieszeń we wszystkich kanałach akcelerometru.

W konsekwencji telefon leżący na biurku zgodnie z obliczeniami ciągle się porusza. Nawet kilkadziesiąt centymetrów w ciągu sekundy!

Co teraz?

Muszę się zastanowić nad nowym projektem. Nie mogę się przecież poddać. Mam czas do 12 marca.

Nie traktuję tej sytuacji w kategorii porażki. Jednym z moich założeń było w końcu zdobywanie wiedzy. Nie wykluczam, że wrócę kiedyś do tego tematu.