Moduł 11 — Nawigacja i autonomia
Od „gdzie jestem?" do „leć tam sam". Tu stos FPV spotyka się z robotyką.
🟢 Fundamenty. Odbiorniki GNSS słyszą sygnały satelitów ze znacznikami czasu; każda różnica czasu definiuje sferę, a ~4+ sfery przecinają się w Twojej pozycji (trilateracja). Dokładność ~1–3 m dla modułów hobbystycznych; HDOP w OSD to ocena jakości geometrii (mniej = lepiej). Kompas daje kurs (kurs z GPS jest niewiarygodny przy małej prędkości), barometr — gładką wysokość względną, a EKF z modułu 3 fuzjuje to wszystko. Z takim stanem autopilot oferuje RTL (return-to-launch — skonfiguruj, zanim będzie potrzebny), Loiter/PosHold i misje Auto po punktach trasy.
🟡 Praktyk. Geodezja, której faktycznie używasz: pozycje przychodzą jako szerokość/długość geograficzna (WGS-84); autopiloty przeliczają je na lokalny układ NED (North-East-Down, w metrach) wokół punktu domowego. Odległość między dwiema współrzędnymi (haversine):
Sterowanie pozycją to kaskada z modułu 4 w nowym płaszczu: błąd pozycji → zadana prędkość (P), błąd prędkości → przyspieszenie → zadane pochylenie → pętla rate, którą już znasz. Zaplanuj misję w Mission Plannerze / QGroundControl, przetestuj ją w symulacji SITL, potem leć.
🔴 Zaawansowany. Prowadzenie po trasie: kontroler L1 ArduPilota śledzi ścieżkę, celując w punkt położony stałą odległość przed dronem — ta sama sztuczka co prowadzenie samochodu. RTK GNSS używa poprawek fazy nośnej ze stacji bazowej dla dokładności centymetrowej. Poza GNSS: optical flow (prędkość z kamery, zawis w pomieszczeniach), dalmierze i odometria wizyjna / VIO — estymacja ruchu z kamery + IMU, brama do SLAM-u. Dodaj komputer pokładowy (klasy Raspberry Pi) mówiący MAVLink do FC: teraz detekcje z OpenCV mogą stawać się zadanymi prędkościami — np. precyzyjne lądowanie na znaczniku AprilTag albo gimbal śledzący obiekt, który zastępuje Twój head tracker.
⚫ Mistrz. Planowanie ścieżek (A*, RRT*), optymalizacja trajektorii (wielomiany minimum-snap — dlatego autonomiczne ujęcia filmowe wyglądają „maślano"), polityki omijania przeszkód i sterowanie oparte na uczeniu: zespoły badawcze latały wyuczonymi politykami, które pokonały mistrzów wyścigów dronów. Mistrzostwo oznacza tu, że umiesz wziąć artykuł z arXiv, odtworzyć go w symulacji i uczciwie powiedzieć, co przenosi się na Twojego 7-calowca, a co nie.
Lista mistrzowska
- Skonfiguruj i przetestuj failsafe + RTL tak, by utrata łącza w oddali była nie-wydarzeniem.
- Przeleć oskryptowaną misję w SITL, potem tę samą misję w polu, i porównaj logi.
- Strumieniuj MAVLink do własnego programu w Pythonie i rysuj pozycję na żywo.
🖼️ Pomysły na obrazy: własne zrzuty z Mission Plannera; ilustracje konstelacji GNSS z domeny publicznej NASA/ESA; diagramy trilateracji GPS z Wikimedia Commons (wersje PD).
📚 Darmowe źródła: pełna dokumentacja parametrów i misji ArduPilota; podręcznik użytkownika PX4; dokumentacja QGroundControl; „Kalman and Bayesian Filters in Python" (znów — moduły o GNSS).