Rozdział 7: Telemetria MAVLink, CRSF i ELRS
Rozdział 7: Telemetria, MAVLink, CRSF i Integracja Tier 3 (Flight Controllers / ELRS)
Ten rozdział omawia protokoły transmisji telemetrycznej, bezwzględne zabezpieczenia danych oraz integrację ze sprzętem Tier 3 (Kontrolery Lotu, RadioMaster Nomad ELRS, Mission Planner).
📊 1. Potok Telemetryczny 50Hz i Zabezpieczenie NaN Guard
Telemetria wysyłana z RPi 5 / Kontrolera Lotu zawiera odczyty przyspieszeń, prędkości, kątów roll/pitch/yaw oraz napięć.
[!IMPORTANT] Telemetry NaN Guard Gotcha: Surowy strumień danych telemetrycznych nigdy nie może być rzutowany bezpośrednio na typ
intlub przekazywany do rysowania w PySide6 bez uprzedniej weryfikacji funkcjimath.isfinite(). WartośćNaNrzucona przy braku odczytu czujnika wywoła wyjątekTypeErrori trwale zamrozi interfejs GUI.
🛸 2. Integracja Tier 3: Kontrolery Lotu (ArduPilot / Mission Planner)
Dla zaawansowanych platform Tier 3 system RCSIM wspiera bezpośrednią integrację z kontrolerami lotu (Flight Controllers, np. Matek, Pixhawk, Speedbee) uruchamiającymi oprogramowanie ArduPilot / Betaflight:
- Wsparcie dla CRSF Direct & MAVLink 2.0: Bezpośrednia komunikacja z dwupasmowymi nadajnikami RadioMaster Nomad (Gemini Crossband 1W ELRS), modułami mLRS oraz kontrolerami lotu (ArduPilot/Betaflight).
- CRSF Direct Mode: Binarny przesył 16 kanałów (11-bit), wbudowany konfigurator LUA/MSP (
elrs_configurator_dialog.py), Gemini Heartbeat 10Hz oraz strumieniowanie ramek neutralnych w trakcie zapisu parametrów. - MAVLink RF 2.0 Mode: Transmisja ustrukturyzowana
RC_CHANNELS_OVERRIDEograniczona do 20Hz, dwukierunkowy odczyt telemetrii (ATTITUDE,SYS_STATUS,GPS_RAW_INT,RADIO_STATUS) oraz automatyczne wgrywanie misji nawigacyjnych (MISSION_ITEM_INT).
- CRSF Direct Mode: Binarny przesył 16 kanałów (11-bit), wbudowany konfigurator LUA/MSP (
- Współpraca z Mission Planner (MAVLink Forwarding & Synchronizacja):
- MAVLink Forwarding (UDP 127.0.0.1:14550): Stacja RCSIM GCS podłączona do portu szeregowego nadajnika Nomad przesyła strumień MAVLink na port UDP 14550, co pozwala uruchomić aplikację Mission Planner na tym samym komputerze PC z jednoczesnym podglądem map 3D i sztucznego horyzontu.
- Kalibracja i Wgrywanie Oprogramowania: Pierwotna kalibracja akcelerometrów, kompasu oraz zakresów PWM regulatora ESC wykonywana jest w Mission Plannerze / FC Flasherze.
- Synchronizacja Plików Misji: Trasy i punkty nawigacyjne (
.waypoints/.plan) utworzone w Mission Plannerze są w 100% zgodne z maszyną stanów wgrywania misji w RCSIM GCS.
- Natywne IMU w Odbiorniku RadioMaster ER5C V2 (Custom Firmware v4.1.0):
- Bezpośredni przesył danych IMU (Ramka
0x86): Dedykowana modyfikacja oprogramowania układowego odbiornika RadioMaster ER5C V2 nadaje ramkę0x86(CRSF_FRAMETYPE_CUSTOM_IMU) z częstotliwością 20Hz zawierającą surowe wartości akcelerometru, żyroskopu i magnetometru z czujnika MPU9250 podłączonego do pinów PWM CH4/CH5 (I2C SDA/SCL). - Dekodowanie GCS: Stacja naziemna GCS przelicza wartości LSB na jednostki fizyczne ($g$, $deg/s$, $\mu T$) i przekazuje je bezpośrednio do modułu Force Feedback (FFB) oraz wskaźników horyzontu OSD.
- Bezpośredni przesył danych IMU (Ramka
- FC Flasher & Corewing Tools: Dedykowane narzędzia do wgrywania oprogramowania układowego ArduPilot/Betaflight bezpośrednio z poziomu panelu narzędziowego.
