Člověk nic nepotřebuje, dokud to neuvidí
Brouzdal jsem po AliExpressu, hledal ESP32-S3, senzory a další věci, které člověk samozřejmě vůbec nepotřebuje. Pak na mě vyskočil crawlerový podvozek AUSTARHOBBY s rozvorem 313 mm — čínská kopie TRX-4 ve vyšší výbavě, ale opravdu jen podvozek.
Dva samostatně řaditelné diferenciály. Dvě rychlosti. Tři serva. Motor 35T. V době nákupu přibližně čtyři tisíce korun.
Takže klasicky: objednávám.
Trochu širší než originál
K podvozku bylo potřeba postavit také auto. Jako základ jsem použil volně dostupný model kabiny z Thingiverse a snažil se zachovat jeho proporce pouhým škálováním. Výsledkem je model, který je — řekněme — trochu širší než originál.
Z původního modelu ale zůstala jen kabina. Zbytek jsem domodeloval ve Fusionu jako vlastní expediční přestavbu ve stylu australských adventure vozů. Ve Fusionu postupně vznikl celý assembly, ne pouze několik dílů připevněných k cizímu modelu.
Deset kanálů, které nebyly k nalezení
Auto tedy bude. Zbývala drobnost: čím ho ovládat. Měl jsem FlySky GT3B s neoficiálním otevřeným firmwarem, který měl údajně podporovat až deset kanálů. Věřím, že by to vysílačka zvládla. Problém nebyl ani tak v hardwaru jako v dokumentaci.
Dva dny jsem hledal popis, podle kterého by šlo všechny požadované funkce správně nastavit. Nenašel jsem jej. A tak začalo dávat smysl řešení, které bylo samozřejmě mnohem „jednodušší“: udělat si celé řízení end-to-end sám a pořádně.
Po dvou dnech hledání mi začalo připadat jednodušší postavit vlastní vysílač, přijímač a protokol než najít použitelný návod. Zpětně to asi vysvětluje celý projekt.
Ne rádio. Celý systém.
Nechtěl jsem pouze napodobit několik kanálů FlySky. Crawler potřeboval řízení, plyn, dvě uzávěrky, řazení a časem samozřejmě světla a další výbavu. Když už jsem se rozhodl dělat vlastní systém, chtěl jsem jej rovnou all-in-one: šest servo výstupů, obousměrnou komunikaci, telemetrii, bezpečnostní stavy a rezervu pro další funkce.
nRF24L01+ jsem znal z pokusů o rok dříve a mezitím přibyl rok zkušeností z dalších projektů. Tentokrát už jsem nad payloadem nepřemýšlel jako nad několika čísly pro serva. Paket není bezedný a každý bajt — nakonec každý bit — musí mít důvod.
Chtěl jsem plnou konverzaci mezi TX a RX: dopředu požadavek, zpátky skutečný stav a telemetrii. Tím jsem si zároveň otevřel dveře k bezpečnostní logice. Z jednoduchého „když paket nepřijde, zastav“ začaly postupně vznikat další kontroly, potvrzení a redundantní vrstvy, které dnes zabírají překvapivě velkou část systému.
Rozhodnutí padlo. Teď jej musel potvrdit hardware.
Než jsem začal kreslit desky a stavět skutečný ovladač, potřeboval jsem na nepájivém poli ověřit jedinou věc: že se připravený paket spolehlivě dostane tam i zpět v čase, který řízení dovolí. Právě tím začíná následující kapitola.