Wild RC – własny nadajnik, odbiornik i system sterowania samochodem RC
Projekt Wild RC rozpoczął się od pomysłu zbudowania własnego nadajnika i odbiornika do samochodu zdalnie sterowanego.
Założenie początkowo było proste: dwa joysticki, komunikacja radiowa, sterowanie silnikiem i serwem. Z czasem projekt zaczął jednak rozwijać się w zupełnie innym kierunku.
Kolejne testy, problemy techniczne i pomysły powodowały dodawanie następnych funkcji. Powstały profile jazdy, telemetria, rozbudowane zabezpieczenia, GPS, IMU, GSM, programowalne przyciski, rejestracja zdarzeń, diagnostyka oraz osobna aplikacja komputerowa.
W obecnej postaci nie jest to więc tylko „radio do samochodu RC”.
To kompletny system składający się z trzech współpracujących elementów:
TX – nadajnik,
RX – odbiornik znajdujący się w samochodzie,
Wild RC Dashboard – aplikacja serwisowo-konfiguracyjna na komputer PC.
Całość wykorzystuje własny protokół komunikacyjny i dwukierunkową transmisję radiową. Nadajnik nie tylko przekazuje położenie joysticków. To właśnie w TX wykonywana jest większość obliczeń odpowiedzialnych za charakterystykę prowadzenia samochodu. RX jest przede wszystkim wykonawcą przygotowanych poleceń, ale jednocześnie zbiera dane z czujników, kontroluje stan pojazdu i odsyła telemetrię.
1. NADAJNIK TX
Jednostka centralna – Teensy 4.1
Sercem nadajnika jest Teensy 4.1.
Mikrokontroler odpowiada jednocześnie za:
odczyt joysticków gazu i kierunku,
obsługę przycisków,
obsługę dodatkowych wejść przez ekspander,
przetwarzanie sygnałów analogowych,
obliczanie charakterystyki gazu,
obliczanie charakterystyki kierunku,
obsługę map ECU,
profile jazdy,
kontrolę trakcji,
rampowanie gazu,
hamowanie,
zabezpieczenia,
system ARM,
Fail-Safe,
obsługę radia nRF24L01+,
odbiór telemetrii,
obsługę kolorowego wyświetlacza,
HUD,
pamięć modeli,
Event Log,
RTC,
programowalne hotkeye,
komunikację USB z aplikacją Wild RC Dashboard.
Wyświetlacz TFT ILI9341
Nadajnik wykorzystuje kolorowy wyświetlacz ILI9341.
Wyświetlacz pracuje na sprzętowym SPI0 Teensy 4.1.
Połączenie:
CS – pin 10,
DC – pin 9,
RESET – pin 8,
MOSI – pin 11,
SCK – pin 13,
MISO – pin 12.
Wyświetlacz służy nie tylko do ustawień. Jest pełnoprawnym HUD-em pracującym podczas jazdy.
System wyświetla między innymi:
aktywny tryb jazdy,
stan ARM/SAFE,
gaz,
skręt,
dane telemetryczne,
prędkość,
RPM,
temperaturę,
stan GPS,
jakość połączenia,
status zabezpieczeń,
zegar,
informacje diagnostyczne.
Interfejs posiada również tryb nocny oraz mechanizmy ograniczające migotanie i niepotrzebne przerysowywanie ekranu.
Radio nRF24L01+
Łączność TX ↔ RX realizowana jest przez nRF24L01+.
Radio w nadajniku pracuje na osobnej magistrali SPI1, dzięki czemu nie musi współdzielić magistrali z wyświetlaczem.
Połączenie nRF24 z Teensy 4.1:
CE – pin 7,
CSN – pin 38,
SCK – pin 27,
MOSI – pin 26,
MISO – pin 39.
Podstawowy profil radiowy wykorzystuje:
kanał 100,
transmisję 1 Mb/s,
CRC16,
krótkie retry,
profil nastawiony na małe opóźnienia.
Sterowanie korzysta z adresu RC001, natomiast kanał zwrotny telemetrii wykorzystuje RC002.
W aktualnej wersji zrezygnowałem z wymuszania klasycznego BIND/Model Match jako warunku uruchomienia samochodu. TX i RX komunikują się wtedy, gdy korzystają z tych samych identyfikatorów/adresów radiowych. Identyfikator odbiornika pozostaje dostępny diagnostycznie.
Dostępny jest również Range Test, pozwalający sprawdzić zachowanie połączenia przy ograniczonej mocy nadajnika.
Magistrala I²C
Nadajnik posiada wspólną magistralę I²C:
SDA – pin 18,
SCL – pin 19.
Do niej podłączone są między innymi:
MCP23017
Ekspander wejść/wyjść o adresie 0x20.
Pozwala zwiększyć liczbę dostępnych przycisków bez zajmowania kolejnych pinów Teensy.
Obsługa MCP23017 została wykonana bezpośrednio przez Wire.
DS3231 RTC
Zegar czasu rzeczywistego o adresie 0x68.
RTC wykorzystywany jest do:
zegara na HUD,
daty i czasu,
znaczników zdarzeń,
Event Log,
rejestracji sesji.
Joysticki analogowe
Podstawowe sterowanie odbywa się przez dwa kanały analogowe:
gaz – A0,
kierunek – A1.
Sygnał nie trafia bezpośrednio do radia.
Przechodzi przez cały tor przetwarzania TX.
Ochrona wejść analogowych
Nadajnik posiada własną warstwę kontroli joysticków.
Oprogramowanie:
pobiera kilka próbek ADC,
odrzuca wartości skrajne,
filtruje zakłócenia,
wykrywa nienaturalne skoki,
sprawdza elektryczne krańce ADC,
kontroluje powrót do położenia neutralnego,
posiada osobne mechanizmy dla gazu i skrętu.
Jeżeli analog przez określony czas znajduje się przy elektrycznej granicy ADC, system uznaje to za możliwe uszkodzenie przewodu, potencjometru lub wejścia.
W takim przypadku TX może natychmiast:
wyłączyć ARM,
zatrzymać aktywną jazdę,
wyzerować tor gazu,
zgłosić błąd ADC.
Obróbka gazu
Jedną z najważniejszych cech Wild RC jest to, że pełna logika jazdy wykonywana jest w nadajniku.
Surowe wychylenie gazu może przechodzić kolejno przez:
kalibrację środka,
deadzone,
filtr wejściowy,
expo,
krzywą gazu,
rewers,
subtrim,
Dual Rate,
Forward EPA,
Reverse EPA,
limit prędkości,
Compensation Mix,
rampę gazu,
Brake Mix,
Traction Control,
kompensację startu silnika.
Dopiero po przejściu całego toru powstaje finalne polecenie silnika wysyłane do RX.
RX nie musi więc ponownie liczyć rampy, trakcji czy hamowania.
Obróbka kierunku
Tor kierowniczy posiada własne ustawienia:
Steering Dual Rate,
Steering Expo,
krzywą kierunku,
deadzone,
Steering SubTrim,
rewers,
Left EPA,
Right EPA,
filtrowanie,
kontrolę powrotu do środka,
zabezpieczenia przed błędami wejścia.
Pozwala to bardzo precyzyjnie ustawić reakcję serwa bez zmian mechanicznych w samochodzie.
ECU MAP – prawdziwe mapy jazdy
Tryby jazdy Wild RC nie są tylko nazwami na ekranie.
Każdy tryb może być pełną ECU MAP, zawierającą własne ustawienia m.in.:
mocy,
limitu prędkości,
zakresu skrętu,
expo gazu,
expo kierunku,
rampy,
Brake Mix,
Traction Control,
filtra gazu,
filtra kierunku,
deadzone,
EPA serwa,
EPA gazu przód/tył,
charakterystyki response,
poziomu bezpieczeństwa,
krzywej gazu,
krzywej kierunku,
częstotliwości i priorytetów telemetrii.
Fabrycznie dostępnych jest 19 trybów jazdy:
SAFE, ECO, NORMAL, SPORT, RACE, DRIFT, CRAWL, RAIN, KIDS, TURBO, HARDCORE, STREET, TRAINING, TRAIL, MUD, SNOW, BASH, QUALIFY i ENDURANCE.
Do tego dostępnych jest 12 dodatkowych miejsc na własne mapy użytkownika.
Oznacza to, że ten sam samochód może po zmianie jednego trybu zupełnie inaczej reagować na gaz i kierunek.
Krzywe gazu i skrętu
Gaz i kierunek posiadają niezależne programowalne krzywe.
Możliwe jest ustawienie kilku punktów charakterystyki, dzięki czemu reakcja samochodu nie musi być liniowa.
Można przykładowo uzyskać:
bardzo łagodny początek gazu,
agresywną końcówkę,
precyzyjny środek skrętu,
szybkie narastanie reakcji poza centrum.
Kontrola trakcji
TX posiada programową kontrolę trakcji.
System może ograniczać szybkość narastania mocy zależnie od ustawionego poziomu TC.
Nie jest to osobny mechaniczny moduł – jest częścią toru obliczeniowego nadajnika i może mieć inne parametry dla poszczególnych ECU MAP.
Brake Mix
Brake Mix pozwala określić zachowanie napędu podczas odpuszczania gazu.
Dzięki niemu można zmieniać szybkość schodzenia sygnału napędowego w kierunku zera.
Kompensacja startu silnika
Silnik szczotkowy przy bardzo niskim PWM może buczeć lub szarpać zamiast ruszyć.
Dlatego w TX powstała funkcja Motor Start Compensation.
Jej zadaniem jest pomoc przy ruszaniu, ale bez zmieniania ustawionego przez mapę maksymalnego poziomu mocy.
Bezpieczna zmiana kierunku
Przy zmianie z jazdy do przodu na wstecz lub odwrotnie system najpierw sprowadza sygnał do zera.
Dopiero kolejna faza pozwala rozpocząć jazdę w przeciwnym kierunku.
Pamięć modeli
Nadajnik posiada 30 slotów modeli.
Model może przechowywać między innymi:
nazwę,
przypisaną ECU MAP,
D/R,
Expo,
EPA,
SubTrim,
Reverse,
Traction Control,
Speed Limit,
rampę,
filtry,
Brake Mix,
Compensation Mix,
deadzone,
alarmy,
statystyki,
konfigurację HUD,
konfigurację hotkeyów.
Dane zapisywane są w pamięci flash Teensy poprzez LittleFS.
Programowalne hotkeye
System posiada 12 programowalnych hotkeyów.
Każdy może pracować jako:
PRESS,
TOGGLE,
HOLD,
LONG.
Do hotkeya można przypisać m.in.:
ARM,
następny/poprzedni tryb,
bezpośrednie wywołanie określonego trybu,
zmianę modelu,
zmianę D/R,
zmianę limitu prędkości,
Traction Control,
trim gazu,
trim kierunku,
reset trimów,
licznik okrążeń,
timer,
tryb nocny,
Monitor,
kolejny ekran HUD,
bezpośredni HUD DRIVE,
Bench Mode.
System stanów TX
Sterowanie posiada nadrzędną maszynę stanów.
TX rozróżnia m.in.:
BOOT,
LOCKED,
SAFE,
DRIVE,
MENU,
SERVICE,
FAILSAFE,
ESTOP.
Dzięki temu decyzja o tym, czy samochód może otrzymać gaz, nie jest rozrzucona po wielu przypadkowych fragmentach programu.
ARM i Pre-Arm
Samo włączenie nadajnika nie oznacza automatycznie gotowości silnika do jazdy.
Przed ARM sprawdzane mogą być m.in.:
neutral gazu,
stan joysticków,
blokada PIN,
stan zabezpieczeń,
alarmy,
tryb serwisowy.
Fail-Safe
System monitoruje jakość połączenia radiowego.
Stany linku:
GOOD,
WEAK,
BAD,
LOST.
Możliwe jest ustawienie:
progu WEAK,
progu BAD,
czasu timeout,
ograniczenia gazu dla BAD,
twardego STOP po utracie połączenia.
Event Log
Nadajnik posiada dziennik zdarzeń.
Zapisywane mogą być istotne zmiany stanu systemu wraz z czasem.
Log nie jest bez potrzeby zapisywany do flash podczas jazdy, aby zapis pamięci nie powodował opóźnień głównej pętli.
BlackBox / statystyki sesji
System może zbierać statystyki sesji, między innymi:
maksymalne PWM,
maksymalną prędkość,
minimalne napięcie,
maksymalne RPM,
najgorszą jakość linku,
liczbę zdarzeń Fail-Safe.
2. ODBIORNIK RX – ELEKTRONIKA W SAMOCHODZIE
Jednostka centralna – Teensy 4.1
Po stronie samochodu również znajduje się Teensy 4.1.
RX ma inne zadanie niż TX.
Nadajnik liczy charakterystykę jazdy, natomiast odbiornik:
odbiera finalne polecenia,
steruje mostkami BTS7960,
generuje sygnał serwa,
obsługuje GPS,
obsługuje GSM/SMS,
obsługuje IMU,
mierzy napięcie,
mierzy RPM,
odczytuje temperatury,
monitoruje jakość radia,
realizuje Fail-Safe,
realizuje blokady,
buduje telemetrię,
odsyła dane do nadajnika.
Radio nRF24L01+
RX korzysta z nRF24L01+ na SPI0.
Połączenie:
CE – pin 24,
CSN – pin 10,
SCK – pin 13,
MOSI – pin 11,
MISO – pin 12.
Odbiornik nasłuchuje poleceń z TX i zwraca pakiety telemetryczne oraz diagnostyczne.
Sterowanie napędem – dwa BTS7960
Układ napędowy przewiduje dwa moduły BTS7960.
BTS7960 nr 1
RPWM – pin 2,
LPWM – pin 3,
R_EN – pin 4,
L_EN – pin 5.
BTS7960 nr 2
RPWM – pin 6,
LPWM – pin 9,
R_EN – pin 28,
L_EN – pin 29.
Aktualna konfiguracja pozwala wykorzystywać oba mostki jako jeden układ napędowy.
RX otrzymuje z TX finalne polecenie w zakresie około -512…+512 i zamienia je na odpowiednie wysterowanie PWM mostków.
Pełna logika typu Expo, D/R, Ramp, Traction Control czy Brake Mix jest już wcześniej obliczona w TX.
Serwo kierownicze
Serwo podłączone jest do:
pin 22.
RX generuje bezpośredni impuls sterujący w mikrosekundach.
Obsługiwane są:
środek serwa,
Left EPA,
Right EPA,
częstotliwość serwa,
ogranicznik szybkości zmian impulsu – Servo Slew,
uśrednianie kolejnych poleceń skrętu.
Standardowa częstotliwość w aktualnej konfiguracji wynosi 50 Hz.
GPS
Moduł GPS pracuje na Serial2:
RX – pin 7,
TX – pin 8.
Dane NMEA obsługiwane są przez TinyGPS++.
System wykorzystuje między innymi:
szerokość geograficzną,
długość geograficzną,
prędkość,
liczbę satelitów,
informację o FIX,
kontrolę poprawności odbieranych ramek.
Telemetria rozróżnia również sytuację, gdy GPS nadal pracuje, ale chwilowo nie posiada aktualnego FIX.
GSM / SIM800L
Modem SIM800L znajduje się fizycznie po stronie samochodu.
Połączenie z Teensy:
GSM RX – pin 0,
GSM TX – pin 1,
interfejs Serial1.
Obsługa SMS posiada własny parser komend oraz kontrolę nadawcy.
Dostępne komendy obejmują:
LOCK,
UNLOCK,
STATUS,
GPS,
LOCATION,
ALARM ON,
ALARM OFF,
PING,
LOG,
HELP / ?.
White List
Możliwe jest zapisanie do trzech numerów zaufanych.
Numer spoza listy może zostać odrzucony jeszcze przed wykonaniem komendy.
W kodzie znajduje się również ochrona przed nadmiernym ruchem/floodem SMS.
Zdalny LOCK
Komenda LOCK może:
zablokować napęd,
zatrzymać samochód,
uzbroić funkcje GSM/GPS,
przygotować system alarmowy.
UNLOCK usuwa zdalną blokadę oraz alarm ruchu.
IMU
Moduł IMU korzysta z I²C:
SDA – pin 18,
SCL – pin 19.
Program obsługuje rodzinę:
MPU6050,
MPU6000,
MPU6500,
MPU9250,
MPU9255.
Dla MPU9250/9255 przewidziana jest również obsługa magnetometru AK8963.
IMU wykorzystywane jest między innymi do:
pomiaru przeciążeń,
oceny ruchu,
detekcji poruszenia samochodu,
systemu alarmowego.
Motion Alarm
Jeżeli samochód jest zablokowany, a IMU wykryje ruch przekraczający ustalony próg, system może aktywować alarm.
W połączeniu z GPS i GSM daje to podstawę do scenariusza:
LOCK → wykrycie ruchu → alarm → pozycja GPS → informacja przez GSM/SMS.
Pomiar napięcia akumulatora
Pomiar napięcia wykonywany jest na:
A2.
Odczyt nie jest pojedynczą surową próbką ADC.
System wykorzystuje filtrowanie mające ograniczyć wpływ pojedynczych błędnych odczytów.
Napięcie trafia następnie do telemetrii.
Pomiar RPM
Wejście RPM:
pin 30.
Impulsy są liczone przerwaniowo, a następnie przeliczane na RPM.
Pozwala to przekazywać rzeczywiste obroty do TX i aplikacji PC.
Czujniki temperatury DS18B20
RX posiada cztery niezależne wejścia temperatury:
temperatura M1 – pin 31,
temperatura M2 – pin 32,
temperatura BTS1 – pin 33,
temperatura BTS2 – pin 34.
Pozwala to obserwować temperaturę zarówno silników, jak i mostków mocy.
Jakość połączenia radiowego
RX oblicza jakość linku na podstawie odebranych i utraconych pakietów.
Wartość jest dodatkowo wygładzana, aby pojedyncza utracona ramka nie powodowała gwałtownego skakania wskaźnika.
System klasyfikuje połączenie jako:
GOOD,
WEAK,
BAD,
LOST.
Telemetria RX → TX
Podstawowa ramka telemetryczna ma 32 bajty.
Zawiera między innymi:
napięcie akumulatora,
RPM,
temperaturę,
aktualne polecenie gazu,
aktualne polecenie kierunku,
PWM,
przeciążenie G,
Fail-Safe,
stan linku,
stan blokady,
IMU,
Motion Alarm,
status GPS,
jakość połączenia,
liczbę zgubionych pakietów,
latitude,
longitude,
prędkość GPS,
satelity,
GPS FIX.
Oprócz podstawowej telemetrii istnieją również ramki diagnostyczne GSM, IMU, temperatur oraz konfiguracji RF.
3. WILD RC DASHBOARD – APLIKACJA PC
Trzecim elementem systemu jest Wild RC Dashboard.
Nie jest to jedynie prosty Serial Monitor.
Program został stworzony jako osobne środowisko do konfiguracji, diagnostyki, strojenia i obserwacji całego systemu TX/RX.
Aplikacja komunikuje się z nadajnikiem przez USB. TX pełni dzięki temu rolę bramy pomiędzy komputerem a odbiornikiem znajdującym się w samochodzie.
Konfiguracja modeli
Aplikacja pozwala:
wybierać jeden z 30 modeli,
zmieniać nazwę modelu,
przypisywać ECU MAP,
zapisywać model w TX,
kopiować ustawienia,
resetować konfigurację,
pobierać pełną konfigurację przez PC GET ALL.
Drive Mode / ECU MAP
Z poziomu komputera można zarządzać pełnymi mapami jazdy.
Możliwe jest:
przeglądanie map fabrycznych,
tworzenie map CUSTOM,
zmiana nazw,
zapis mapy,
zastosowanie mapy,
usunięcie custom mapy,
edycja gazu,
edycja skrętu,
edycja krzywych,
edycja filtrów,
edycja trakcji,
edycja Brake Mix,
ustawianie limitu prędkości,
ustawianie EPA,
konfiguracja telemetrii mapy.
Graficzne krzywe gazu i skrętu
Krzywe można edytować graficznie.
Punkty przesuwa się bezpośrednio na wykresie, a gotową charakterystykę można następnie wysłać do TX.
Dashboard telemetryczny
Program wyświetla w czasie rzeczywistym między innymi:
wejście gazu,
wyjście gazu po obróbce TX,
wejście skrętu,
położenie serwa,
wyliczone PWM,
rzeczywiste PWM RX,
napięcie,
RPM,
jakość linku,
utracone pakiety.
Dane mogą być przedstawiane również w formie wykresów.
Realtime Data
Osobna sekcja prezentuje aktualny stan TX/RX wraz z informacją, czy system znajduje się w stanie READY czy BLOCKED.
Control Center
Centralny ekran serwisowy daje dostęp do najważniejszych operacji:
PC GET ALL,
synchronizacja White List,
GSM STATUS,
PC LOCK,
PC UNLOCK,
STOP/OFF,
SERVICE STATUS,
Snapshot.
Radio Doctor
To osobne narzędzie diagnostyczne radia.
Pokazuje między innymi:
Control TX,
Control ACK OK,
Control ACK FAIL,
liczbę ramek konfiguracji,
ACK konfiguracji,
żądania telemetrii,
poprawne ACK payload,
błędny rozmiar ACK,
błędne dane ACK,
ostatni rozmiar ramki,
stan sprzętowy nRF,
rozmiar ControlPacket,
rozmiar TelemetryPacket,
stan TX drive allowed,
stan RX drive allowed,
RX locked,
RX failsafe.
Dzięki temu można odróżnić problem z samym radiem od problemu w protokole albo telemetrii.
Input Pipeline
Aplikacja pozwala obserwować tor sygnału od joysticka aż do finalnego wyjścia.
Jest to przydatne przy strojeniu:
deadzone,
Expo,
krzywych,
filtrów,
ramp,
EPA.
BTS / Drive Service
Powstał specjalny tryb serwisowy napędu.
Pozwala wykonywać kontrolowane testy między innymi:
przygotowanie systemu,
ARM trybu serwisowego,
STOP,
ESTOP,
HOLD,
test rampy,
test kierunku,
kontrolowany PWM FWD/REV.
Tryb serwisowy ma własne ograniczenia i zabezpieczenia.
Drive Playground
To środowisko do wykonywania kontrolowanych sekwencji testowych bez konieczności każdorazowego używania joysticka.
Motor Doctor
Sekcja przeznaczona do obserwacji zachowania toru napędowego.
Auto Calibration PRO
Aplikacja może pomagać w kalibracji:
środka gazu,
środka kierunku,
deadzone,
pozostałego błędu neutralnego.
Po wykonaniu kalibracji możliwa jest ponowna kontrola i korekta.
Servo Lab
Osobny obszar pozwala pracować z ustawieniami układu kierowniczego i serwa.
GSM Doctor
Sekcja diagnostyczna GSM pozwala obserwować między innymi:
gotowość SIM800L,
status SIM,
rejestrację CREG,
CSQ,
status SMS Control,
GSM Armed,
SMS LOCK,
ostatnią komendę SMS,
wynik komendy,
numer nadawcy,
liczniki diagnostyczne.
GSM/SMS
Z poziomu GUI można:
pobrać status GSM,
odpytać RX,
wykonać PC LOCK,
wykonać PC UNLOCK,
włączyć/wyłączyć obsługę SMS,
synchronizować White List,
obserwować komendy SMS,
otworzyć mapę śledzenia po LOCK.
GPS / MAP
Dane GPS odbiornika mogą być przedstawiane na mapie.
System wykorzystuje między innymi Leaflet/OpenStreetMap, a do projektu powstał również osobny viewer mapy.
Tracker / Alarm Map
Po aktywowaniu LOCK aplikacja może rozpocząć zbieranie punktów GPS.
Po odblokowaniu powstaje zapis przebytej w tym czasie trasy.
Security Center
Centralne miejsce do konfiguracji:
PIN,
Pre-Arm,
Fail-Safe,
GPS Guard,
GeoFence,
Motion Alarm,
GSM/SMS,
White List,
zdalnego LOCK.
Safety System
Aplikacja analizuje równocześnie wiele źródeł stanu bezpieczeństwa.
Może ostrzegać między innymi o:
słabym linku,
rosnącym LOST,
niskim napięciu,
aktywnym Fail-Safe,
SMS LOCK,
problemie GSM,
aktywnym Service.
Pre-Drive
Przed testem można skorzystać z checklisty obejmującej między innymi:
samochód na stojaku,
zasilanie,
radio,
Fail-Safe,
serwo,
GPS.
Event Log
Aplikacja może pobierać Event Log z nadajnika i eksportować go między innymi do XLSX.
Session Lab
Służy do pracy z zapisanymi sesjami i danymi telemetrycznymi.
Replay / Ghost Run
Możliwe jest zarejestrowanie przejazdu jako zestawu próbek, zapisanie go i późniejsza analiza.
Diagnostyka DATA / DEV
Aplikacja grupuje diagnostykę według modułów:
GSM/SMS,
nRF24,
GPS,
IMU/Motion/Security.
Hotkeys
Wszystkie 12 hotkeyów można konfigurować również z poziomu komputera:
nazwa,
akcja,
PRESS,
TOGGLE,
HOLD,
LONG.
Compatibility Guard
Program sprawdza zgodność:
wersji TX,
wersji RX,
wersji protokołu,
rozmiaru ramek,
konfiguracji RF.
Chroni to przed przypadkowym użyciem aplikacji z niezgodnym firmware.
Trzy urządzenia – jeden system
Najważniejszym założeniem Wild RC jest podział obowiązków.
TX odpowiada za sterowanie i logikę jazdy.
RX wykonuje polecenia, kontroluje sprzęt samochodu i zbiera telemetrię.
Wild RC Dashboard daje dostęp do konfiguracji, diagnostyki i strojenia całego systemu.
Przepływ wygląda więc w uproszczeniu tak:
joystick → TX → filtry / ECU MAP / zabezpieczenia → nRF24 → RX → BTS7960 / serwo
a w drugą stronę:
czujniki / GPS / IMU / GSM → RX → telemetria → nRF24 → TX → HUD / USB → Wild RC Dashboard
Projekt nadal jest rozwijany.
W kolejnych wpisach będę mógł już przejść od ogólnego opisu do konkretnych zagadnień: osobno budowa nadajnika, budowa odbiornika, ECU MAP, przetwarzanie gazu, nRF24, system Fail-Safe, telemetria, GPS, IMU, GSM/SMS oraz sama aplikacja Wild RC Dashboard.
Bo dopiero po rozłożeniu tego systemu na poszczególne moduły widać, ile rzeczy dzieje się pomiędzy zwykłym ruchem joysticka a tym, co ostatecznie robi samochód.
Brak komentarzy:
Prześlij komentarz