TSN a PROFINET: čas jako součást protokolu
EtherCAT vyřešil problém tím, že přestal být sítí. TSN jde opačnou cestou: nechává Ethernet Ethernetem a přidává mu to, co mu chybělo — společný čas a rozvrh.
Tři kusy, ze kterých se to skládá
| norma | co přidá | proč to bylo potřeba |
|---|---|---|
| 802.1AS | společné hodiny s odchylkou pod µs | bez společného času není rozvrh možný |
| 802.1Qbv | časové brány na výstupech přepínače | rezervovaný okamžik, kdy smí jet jen řídicí provoz |
| 802.1Qbu | preempce rámců | jediné řešení té věty „rozeslaný rámec nejde přerušit“ |
Ta třetí řádka je ta, na které všechno stálo. Preempce umí velký rámec doopravdy rozseknout, pustit přednostní rámec a pak ten velký dovysílat. Tím se nesnížitelný jitter z kapitoly 3 zmenší ze 123 µs na jednotky mikrosekund — a poprvé se dá slíbit, kdy nejpozději.
Rozdíl proti prioritám v jedné větě: priorita říká „až na tebe přijde řada, půjdeš první“. Rozvrh říká „v tuhle chvíli nesmí jet nikdo jiný“. První je slušnost, druhé je záruka.
Kde to v praxi je
- PROFINET IRT dělal totéž o deset let dřív vlastními prostředky, protože TSN tehdy neexistovalo. Dnes se sbližují.
- EtherNet/IP a Modbus TCP běží na obyčejném Ethernetu a mají tedy vlastnosti z kapitoly 9 — jsou úplně v pořádku pro sledování a nastavování, ne pro proudovou smyčku.
- TSN se prosazuje pomalu, protože potřebuje nové přepínače a nové koncové adaptéry a nástroje na návrh rozvrhu, a to všechno naráz.
Bezpečnost přes sběrnici: černý kanál
Poslední kousek, který patří k SafetyLabu. Bezpečnostní funkce (nouzové zastavení, hlídání rychlosti) se dnes běžně přenášejí po téže sběrnici jako všechno ostatní. Trik se jmenuje černý kanál: bezpečnostní protokol nespoléhá na síť vůbec a přidává si vlastní pořadové číslo, vlastní časové razítko a vlastní CRC.
Proč vlastní CRC, když linka jedno má? Protože kapitola 7 LinkLabu říká, že shluk delší než šířka projde s pravděpodobností 2⁻ⁿ — a to není nula. Když se vyžaduje pravděpodobnost nebezpečné poruchy pod 10⁻⁸ za hodinu, musí se ta čísla sečíst, a jedno CRC-32 na to samo nestačí.