2.1 Tier 1: Entry Level (Arduino & RP2350 USB PPM Bridge)
Niniejszy rozdział zawiera pełny, zweryfikowany opis działania, konfiguracji oraz instalacji łącznika szeregowego USB-PPM w systemie RCSIM.
🎯 1. Cel i Zasada Działania Tier 1
Tier 1 (Entry Level) to najbardziej przystępny i całkowicie bezpieczny dla pojazdu sposób podłączenia stacji naziemnej RCSIM GCS do fizycznej aparatury RC (nadajnika pistoletowego lub drążkowego).
Sygnał ze sterownika sim-racingowego (kierownica, pedały, gamepad) jest przeliczany przez stację GCS i przesyłany kablem USB do mikrokontrolera (Seeed Studio XIAO RP2350 lub Arduino Uno/Nano). Mikrokontroler w czasie rzeczywistym generuje ciągły, 8-kanałowy sygnał PPM (Pulse Position Modulation) podawany bezpośrednio do gniazda Trenera (DSC) w aparaturze RC.
[Kierownica USB na PC] ──(GCS PySerial 115200 Baud)──► [RP2350 / Arduino USB]
│ (Generowanie PPM bez rezystorów)
▼
[Aparatura RC (DSC Port)] ──(RF 2.4GHz / ELRS / FlySky)──► [Odbiornik RC] ──► [ESC & Serwo]
🛠️ 2. Zestawienie Sprzętowe i Lista Zakupów (BOM Tier 1)
| Element | Rola w systemie | Szacowany Koszt |
|---|---|---|
| Seeed Studio XIAO RP2350 lub Arduino Uno/Nano | Mikrokomputer generujący sygnał PPM na podstawie danych USB CDC | |
| Kabel USB-C lub Mini-USB | Łącze szeregowe USB CDC z komputerem PC GCS | |
| Wtyk Jack 3.5mm (mono lub stereo) / Złącze DSC | Bezpośrednie połączenie pinu D8 (GPIO 2) z pinem sygnałowym portu Trenera | |
| SUMA: |
⚡ 3. Schemat Połączeń Elektrycznych (Direct Signal - Bez Rezystorów)
[!NOTE] Podłączenie pinu sygnałowego wykonuje się bezpośrednio (Direct Connection). Dodawanie jakichkolwiek rezystorów na linii sygnałowej PPM nie jest wymagane ani zalecane.
- Wariant RP2350 (Zalecany): Pin wyjściowy D8 (GPIO 2) w płytce Seeed Studio XIAO RP2350 łączymy bezpośrednio z grotem (tip) wtyku Jack 3.5mm, a masę GND z obudową wtyku (sleeve).
- Wariant Arduino Uno/Nano: Pin D10 (wyjście PPM) łączymy z grotem wtyku Jack 3.5mm, a masę GND z obudową.
Rysunek 2.1: Kompaktowa płytka Seeed Studio XIAO RP2350 (Dual Cortex-M33 / RISC-V) podłączana przez port USB-C.
Rysunek 2.2: Bezpośrednie połączenie pinu sygnałowego D8 (GPIO 2) do wtyku Jack 3.5mm bez dodatkowych rezystorów.
Rysunek 2.3: Stanowisko testowe z klasyczną płytką Arduino Uno i aparaturą RadioMaster MT12.
Rysunek 2.4: Wtyk Jack 3.5mm wpięty do gniazda Trenera DSC w aparaturze RC.
🔒 4. Architektura Oprogramowania, Konfiguracja Aparatury i Failsafe
- Core 0 (RP2350): Dedykowany do obsługi wirtualnego portu szeregowego USB CDC (115200 baud), dekodowania ramek CSV (
1500,1500,1500...) oraz obsługi watchdoga Failsafe (500ms). - Core 1 (RP2350): Dedykowany wyłącznie do generowania precyzyjnego sygnału PPM bez jittera ze sztywnymi przerwami synchronizacji (ramka 22.5ms, impuls 300us).
- Zabezpieczenie High-Z Signal Kill: W przypadku odłączenia kabla USB lub zawieszenia aplikacji GCS, pętla watchdoga po 500 ms przełącza pin wyjściowy PPM w stan wysokiej impedancji (
pinMode(PPM_PIN, INPUT)), aktywując Failsafe w aparaturze.
Rysunek 2.5: Ustawienie funkcji Trenera w menu MDL -> Special Functions (SF1 -> Przełącznik SA -> Trainer).
Rysunek 2.6: Monitor kanałów w aparaturze potwierdzający odbiór sygnałów sterujących z komputera PC.
Rysunek 2.7: Identyfikacja portu COM w Menedżerze Urządzeń Windows.
Rysunek 2.8: Aktywny status połączenia szeregowego USB CDC 115200 baud w aplikacji RCSIM GCS.