ModLab spoj nemá rychlost, má jídelní lístek

Tohle je statická kopie kapitoly pro vyhledávače. Interaktivní verze má animované obrázky, kontrolní otázky a tlačítka, která příklad načtou do kalkulačky.

Kódování: decibely za bity

Předchozí kapitola dala mez a ukázala, že skutečná schémata k ní mají osm až devět decibelů. Ty decibely jde nakoupit dvěma způsoby: výkonem (drahé, a předpis ho stejně omezuje) nebo redundancí — poslat víc bitů, než je nutné, a z těch navíc chybu opravit.

110⁻²10⁻⁴10⁻⁶10⁻⁸10⁻¹⁰05101520Eb/N0 (dB)5,0 dBkódový poměr0,50kódový zisk5,0 dBchybovost bez kódu7.7e-4chybovost s kódem9.0e-9užitečný tok50 %Kód nepřidá výkon. Posune celou křivku doleva —a zaplatí se to tím, že část toku nesou kontrolní bity.
Šedá křivka je nekódovaná QPSK, zelená táž s kódem. Kód ji posune doleva o svůj zisk. Vpravo je vidět, co to stojí: část toku jdou kontrolní bity.
Ružitečné = Rb · rr je kódový poměr: 1/2 znamená polovinu

Co který kód umí

kódpoměrziskkde se potká
Hamming (7,4)0,57~2 dBpaměti, jednoduchá telemetrie
konvoluční 1/2, K=70,50~5 dBGPS, starší Wi-Fi, satelity
konvoluční 3/40,75~3,5 dBWi-Fi ve vyšších rychlostech
LDPC 1/20,50~8 dBWi-Fi 5/6, 5G, DVB-S2
LDPC 5/60,83~6 dBtam, kde je signálu dost a chce se rychlost

Ty zisky nejsou odvozené, jsou měřené, a tahle labka to říká nahlas: kódový poměr je aritmetika, ale kolik decibelů konkrétní dekodér doopravdy vytáhne, závisí na jeho konstrukci a zjišťuje se simulací. Čísla výše jsou typické publikované hodnoty pro jmenované rodiny při chybovosti 10⁻⁶.

Ten obchod v jedné větě

Kód s poměrem 1/2 a ziskem 5 dB znamená: poloviční rychlost za pětinásobný dosah v ploše (pět decibelů je 3,16× výkon, tedy 1,78× vzdálenost, tedy 3,16× plocha). Pro robota v hale je to skoro vždycky dobrý obchod — pokud tedy nepotřebuje ta data hned.

Proč se to v regulační smyčce nedělá

Silné kódy pracují s dlouhými bloky. LDPC v Wi-Fi kóduje bloky po 648 až 1944 bitech a dekodér s nimi několikrát iteruje. To přidá zpoždění — jednotky až desítky mikrosekund u Wi-Fi, u dlouhých bloků na pomalém spoji i milisekundy. Pro smyčku, která běží na kilohertzu, je milisekunda celý cyklus.

Proto se rozdělují role: telemetrie a video jedou se silným kódem a je jim jedno, že dorazí o dvě milisekundy později; povel a stavové slovo jedou krátkým rámcem se slabším kódem, protože pozdní zpráva je pro regulátor horší než žádná. Tuhle větu si RoboLinkLab vezme za základ.

Kód není detekce. CRC z LinkLabu umí poznat, že je paket vadný — a pak ho zahodit. Kód v téhle kapitole ho umí opravit, aniž by se o cokoli žádalo znovu. V bezdrátu, kde je opakování drahé a zpoždění kritické, je to zásadní rozdíl; proto tam „dopředná oprava chyb“ (FEC) není luxus, ale výchozí volba.

Vzorce v této kapitole

r — kódový poměr
r = k/n [—] kap. 10
G_c — kódový zisk
posun křivky BER doleva [dB] kap. 10