DOCS/Poradnik MCS
|
Rozdział 1: Architektura Sprzętowa MCS
Część 1: Przyjazna Encyklopedia (Dla Każdego)
Tryb MCS eliminuje potrzebę zabierania na tor komputera PC. Serce stacji sterującej znajduje się w przenośnym stanowisku operatora, a z pojazdem komunikuje się przez wybrane łącze.
🚗 1. Główne Komponenty
- Komputer stacji (Raspberry Pi 5): Odczytuje kierownicę lub pad USB, udostępnia stronę konfiguracyjną Wi-Fi i uruchamia konwersję sygnałów.
- Koprocesor sterujący (RP2350 / opcjonalnie ESP32): Opcjonalny bridge czasu rzeczywistego do wyjść PPM, iBUS, SBUS lub CRSF zależnie od firmware. Czas reakcji i jitter należy zmierzyć na docelowym zestawie.
- Moduł Nadawczy Dalekiego Zasięgu (Tier 3 CRSF Direct): Zewnętrzny nadajnik ExpressLRS (np. RadioMaster Nomad USB) wpinany bezpośrednio do gniazda USB Raspberry Pi 5. W tej konfiguracji sygnał CRSF transmitowany jest bezpośrednio przez wbudowany mostek USB UART, eliminując konieczność stosowania koprocesora!
- Zasilanie (BEC): Raspberry Pi 5 oraz koprocesor potrzebują stabilnego zasilania 5V o wydajności prądowej minimum 5A (zalecany dedykowany moduł UBEC zasilany z głównego pakietu napędowego LiPo).
🔌 2. Połączenie Urządzeń
- Podłącz swoją kierownicę USB (np. Thrustmaster T128X) lub kontroler bezpośrednio do jednego z niebieskich portów USB 3.0 w Raspberry Pi 5.
- Konfiguracja Trenera (Tier 1/2): Wyjście sygnałowe (wtyk Jack 3.5mm) z koprocesora RP2350 (lub złącze JR AUX) połącz bezpośrednio z portem DSC (Trenera) w aparaturze RC.
- Konfiguracja Cyfrowa ELRS (Tier 3): Podłącz moduł RadioMaster Nomad bezpośrednio do portu USB w Raspberry Pi 5 kablem USB-C.
Część 2: Inżynieryjny Deep Dive (Dla Specjalistów)
Integracja sprzętowa MCS opiera się na dwóch elastycznych ścieżkach wykonawczych: wydzieleniu generowania sygnałów impulsowych do dedykowanego koprocesora RP2350 (z maszynami stanów PIO) LUB bezpośredniej cyfrowej transmisji pakietowej CRSF do zewnętrznych modułów nadawczych USB (RadioMaster Nomad).
graph TD
Wheel[Kierownica USB / Pad] -->|evdev / raw input| RPi5[Raspberry Pi 5]
RPi5 -->|FastAPI WebUI / REST| Mobile[Smartfon / Tablet]
RPi5 -->|UART Primary GPIO 14/15 115200 bps| RP2350[Koprocesor RP2350]
RP2350 -->|PIO Generator: PPM / SBUS / CRSF| Trainer[Port DSC Aparatury RC]
RPi5 -->|Direct USB Serial /dev/ttyUSB0 115200 bps| Nomad[RadioMaster Nomad USB Module]
Nomad -->|2.4GHz / 868MHz ExpressLRS| Receiver[Odbiornik ER5C / EP1 na Modelu]
1. Mostek Komunikacyjny RPi 5 ↔ RP2350
- Komunikacja niskopoziomowa odbywa się poprzez dedykowany interfejs szeregowy UART (
/dev/ttyAMA0lub/dev/ttyAMA3) z prędkością 115200 bps (z opcją przesyłania ramek CRSF do 420000 bps). - Ramka danych sterujących przesyłana do koprocesora ma strukturę binarną:
[0xAA] [Tryb] [CH1_H] [CH1_L] ... [CH8_H] [CH8_L] [XOR Checksum](łącznie 19 bajtów). - RP2350 dekoduje ramkę w przerwaniu i natychmiast aktualizuje wartości kanałów generowanej ramki PPM/SBUS/CRSF.
2. RadioMaster Nomad USB (CP2102) i Sterownik CRSF Direct na Linuxie
W trybie bezpośrednim moduł nadawczy RadioMaster Nomad podłączany jest do portu USB RPi 5:
- Piny Sprzętowe (Hardware Layout): Wbudowany mostek USB UART (Silicon Labs CP2102) na płytce modułu Nomad jest fizycznie połączony z domyślnym portem UART0 mikrokontrolera ESP32:
RX pin: 3orazTX pin: 1. Kategorycznie zabrania się zmiany tych pinów w WebUI ExpressLRS (/#hardware), gdyż odcina to komunikację z Raspberry Pi. - Baudrate pod Linuxem: W odróżnieniu od środowiska Windows, standardowy sterownik
cp210xw jądrze Linuxa przy niestandardowej prędkości420000 bpsgubi bajty i generuje błędy sumy kontrolnej. Oficjalnym standardem komunikacji w MCS jest stabilne115200 bps. - Ciągły Heartbeat i Strumień Ramek: Moduł wymaga ciągłego nadawania z częstotliwością 100 Hz (z ramkami neutralnymi 1500 µs w stanie DISARM) oraz przesyłania pakietu Heartbeat
0x0Bco 100 ms, aby zapobiec przejściu toru radiowego w uśpienie (pomarańczowe miganie RF Idle).
3. Połączenie Szeregowe i Zasilanie
- Połączenie koprocesora z Raspberry Pi wymaga linii sygnałowych UART (TXD0 -> RXD, RXD0 -> TXD) oraz wspólnej linii masy (GND), która jest kluczowa dla eliminacji zakłóceń w komunikacji.
- Koprocesor jest zasilany napięciem +5V i +3.3V z szyny GPIO Raspberry Pi 5 z lokalnym stabilizatorem LDO (AP2112K-3.3) eliminującym szumy logiczne.