Základní  popis  řízení  a komunikace   DCC standardu

Zkratkou DCC (Digital Command Control) je označován v dnešní době nejrozšířenější  systém pro řízení kolejiště. DCC používá ovládání lokodekodéry, tj. samostatné bloky elektroniky, vezené v lokomotivě. Rozšíření systému  je podporováno především tím, že byl přijat za standard pro digitální řízení modelů železnic  asociací NMRA (USA), což mu zároveň otevírá i největší perspektivitu do budoucnosti. Největším výrobcem DCC je firma LENZ (SRN), mimo dekodérů nabízí i celé řídící stanice včetně všech potřebných modulů pro manuální či počítačové ovládání provozu. Silná pozice firmy LENZ vyplývá z historie DCC, kdy NMRA pro standard použila řešení vyvinuté právě p.Lenzem.

Protože zkratka DCC je zde vícekrát zmíněna, sestavil  jsem přehledový  popis principu řízení. Nemělo by asi smysl  detailní popisování, které by sestávalo pouhém v překladu norem. Zájemce o bližší podrobnosti odkazuji na WEB asociace NMRA, kde lze nalézt normalizovanou dokumentaci.


Kromě obecného popisu DCC na stránkách najdete i popis těchto zkonstrovaných obvodů:

DCC dekodér pro 4x návěsti + přestavníky - konfigurovatelný DCC dekodér příslušenství pro návěstidla a přestavníky

DCC detektor obsazení úseku DET2 - 2-násobný detektor obsazení koleje


Napájení kolejí
DCC je založeno na topologii jedné řídící stanice a více dekodérů, které jsou umístěny v každé lokomotivě.  Řídící stanice vysílá kódovaný signál, který je ve výkonových zesilovačích transformován na obdélníkové  střídavé napětí pro napájení  kolejí. Jsou trvale napájeny všechny koleje v kolejišti, neexistují izolované úseky, (typicky používané při klasickém řízení pro zastavování vlaků). Výkonových zesilovačů  může být v rozsáhlých kolejištích více, ale všechny jsou řízeny jedním společným signálem z jedné řídící stanice. Ve všech kolejích je proto  v daný okamžik stejný kódovaný signál.

Signál v kolejích (obr. 3) má amplitudu typ. 10-16V,  mimo přenos  dat se využívá i k napájení motorů a příslušenství. Konkrétní amplituda napětí je závislá na modelové velikosti.
Z uvedeného popisu je zřejmé, že klasická lokomotiva není z principu schopna provozu na kolejišti napájené DCC signálem. Přesto existuje jistá  možnost  provozu jedné klasické lokomotivy na digitálním kolejišti, o podrobnostech   je v textu uvedena zmínka.


Dekodéry

Základní částí dekodéru je  usměrňovač, mikroprocesor a výkonové ovládání motorku (obr 1). Chod  motorku je ovládán z mikroprocesoru, nezávisle na velikosti usměrněného napětí. Mikroprocesor   je řízen   příkazy zakodovanými v napájecím signálu z kolejí.   Mimo vlastní motor lokomotivy dekodér může ovládat i přídavné  spínače (tranzistory) - spínání světel, spřáhel atd. Tento princip dovoluje společný provoz  více lokomotiv na jedné koleji a zároveň napájení celeho kolejiště společným signálem. Zakódované příkazy jsou adresovány vždy jen jednomu dekodéru, ostatní dekodéry na daný příkaz nereagují.

 
Obr 1. Blokové schéma dekodéru

Mikroprocesor v dnešní době nahradil dříve používané zákaznické integrované obvody. Tím se otevírá i možnost vlastního vývoje dekodéru při použití dostupných prostředků. Pochopitelně s ohledem na modelovou velikost se používá technologie součástek SMD.


Kódování signálu

Střídavý signál v kolejích slouží nejen pro napájení ale i přenos digitálních dat. Binární data (log 0 a 1) jsou převedena na proměnnou periodu střídavého signálu. Použití střídavého signálu je výhodné, protože perioda může být jednoduše detekována jako  časový interval mezi průchody napětí DCC signálu bodem 0V. Doporučená minimální  strmost hran napájecího signálu DCC je 2.5V/ms.

Logická úroveň 1 (H) je kódována jako jedna perioda signálu DCC s časovým trváním 116ms- obr. 2. Trvání jedné a druhé polarity signálu je nominálně 58ms. Pro vysílací stanice je povolena tolerance časování 55-61ms ,  dekodéry (příjmače) musí považovat  za platný bit interval 52-64ms . V této toleranci je ovšem zahrnut i  pokles strmosti hran signálu  vlivem indukčností a zátěže všech dekodérů připojených k DCC signálu a vzniklé zákmity.  Řídící stanice proto musí časovat vysílání s co nejvyšší přesností.

Obr. 2. Kódování log. 1



Logická úroveň 0 (L) je kódována obdobně, ovšem pro specifikaci jsou vyhrazeny jiné meze.   Délka jedné a druhé polarity signálu musí být nominálně 100ms. Pro vysílací stanice je vymezena tolerance  délky  jedné nebo druhé polarity 95- 9900ms,  celá perioda (obě polarity) nesmí přesáhnout 12000ms. Dekodéry (příjmače) musí za platný bit vyhodnotit  signál, jehož obě polarity jsou v   intervalu 90-10000ms.
Zatímco u bitu 1 je střída obou polarit specifikována přibližně 1:1 u bitu log. 0 může střída nabývat hodnot mezi 100:1 až 1:100, viz obr. 3b.

Kódování log. 0
Obr. 3 a,  b

Velká tolerance stříd DCC pro platný bit log. 0 může být využita pro řízení analogových lokomotiv. Protože DDC signál je oboupolaritní, motor napájený tímto signálem se bude otáčet směrem a rychlostí, která odpovídá střední hodnotě napětí signálu. Signál o  střídě 1:1 má střední hodnotu 0V, proto motor bude zastaven. Definice bitů log. 0 ovšem připouští širokou toleranci střídy, čímž lze měnit i střední hodnotu napětí tj. i otáčky a směr motoru.  Toto řešení lze označit za téměř nouzové, protože motor se bude vlivem ztrát zahřívat  a dále tímto způsobem může být řízena pouze jediná  lokomotiva bez dekodéru na celém kolejišti ( všude je stejný DCC signál). Argument ušetření nákladů na 1 lokodekodér je bohatě vyvážen hodnotou prostředků, jejichž poškození riskujeme.


Definice paketů

Pro přenos příkazů je však potřeba i definice paketů, tj. jakým způsobem se z jednotlivých bitů bude skládat příkaz.   DCC zavádí formát  paketu sestávajícího z částí:

Záhlaví (preamble)

nejméně 10 bitů log. 1. Slouží pro určení začátku celého paketu.

Start bit (log. 0)

po ukončení záhlaví nebo mezi jednotlivými byte je vkládán  bit. log 0. Tím je zaručeno že mimo záhlaví se nikde v bitovém toku nevyskytne  více než 9 po sobě následující bitů log.1. Záhlaví (10 bitů log 1) je proto nezaměnitelné s datovými bity.

Datový byte

8 bitů, nevyšší bit je přenášen první. Význam byte je určen konkrétní definicí příkazu, pro příjem paketu  je nevýznamný.

Stop bit (log 1)

následuje za posledním datovým bytem, a indikuje ukončení přenosu paketu. Dekodér  po příjmu každého  byte detekuje následující  bit- pokud je log.0 (start bit), následuje přenos dalšího byte. Log 1. indikuje stop bit a ukončení celého paketu.


Formát paketu DCC
Obr 4.
 

V obrázku 4 jsou již doplněny i významy jednotlivých byte, které ovšem  se vyhodnocují až po příjmu paketu.


Základní příkazy

Standard DCC předepisuje i formát několika základních příkazů, aby byla zajištěna  kompaktibilita různých výrobců alespoň na nejnižší úrovni. Obecně je určen význam těchto byte v paketu:

Adresový byte: (první přenášený byte) definuje adresu nebo její část dekodéru, kterému je určen paket. Adresa 0 je používána pro společné pakety (broadcast messages), které přijmají všechny moduly.
Kontrolní byte: (poslední byte) slouží pro ověření správnosti přenosu . Při pohybu lokomotivy může být vlivem oxidace, či ztráty kontaktu s kolejnicí  paket poškozen. Kontrolní byte je vypočítán jako výsledek logické operace XOR  všech byte (adresový a datové  byte).

Pro dodržení kompatibility jsou standartizovány pakety pro základní  ovládání lokodekodéru (jízdy), paket nulování (RESET), a neaktivní paket (IDLE).

Paket ovládání lokodekodéru-  jízdy

    Paket slouží pro základní ovládání jízdy a směru lokomotivy.
 

záhlaví adresový byte datový byte kontrolní byte
..1111111111 0aaaaaaa 01DUSSSS XOR

Adresový byte: adresa lokodekodéru, kterému je určen příkaz. Rozsah adres lokodekodérů je omezena na hodnoty1..127.

Datový byte: význam jednotlivých bitů určuje parametry jízdy.
                    D =  směr jízdy
                    U = základní příkaz význam nedefinuje (typicky ovládá přídavnou funkci (1= sepnuto))
                    SSSS= nastavení rychlosti jízdy. Je definováno 16 stupňů.  0,2..15 indikuje rychlostní stupeň,
                    hodnota 1 je vyhrazena pro nouzové zastavení

Kontrolní byte:  výsledek logické operace XOR  adresového a datového byte.


Nulovací paket  (RESET)

    Paket slouží pro nulování dekodérů a nastavení do počátečního stavu. Typicky se vysílá  po zapnutí napájení, zahájení provozu kolejiště atd.
 

záhlaví adresový byte datový byte kontrolní byte
..1111111111 00000000 00000000 00000000

 
Adresový byte: vždy 0. Příkaz je platný pro všechny příjmače (adresa 0 =broadcast message), všechny dekodéry se nastaví do počátečního stavu.

Datový byte: vždy 0.

Kontrolní byte: výsledek logické operace XOR  adresového a datového byte, tj. 0.


Neaktivní paket  (IDLE)

Paket nepřenáší žádné informace. Typicky se vysílá  po zapnutí napájení a RESET paketu, indikuje zahájení provozu. Rovněž slouží pro prázdné vysílání tzv. komunikační refresh.

 

záhlaví adresový byte datový byte kontrolní byte
..1111111111 11111111 00000000 11111111

Adresový byte: vždy 255. Příkaz je platný pro všechny příjmače (adresa 0 =broadcast message). Dekodéry se připraví na  provoz, příkaz nevykonává žádnou činnost.

Datový byte: vždy 0.

Kontrolní byte: výsledek logické operace XOR  adresového a datového byte, tj. 255.




Tímto bodem je dokončen popis částí, které jsou závazně definovány standardy DCC (normy S-9.1, S-9.2). Další  normy (RP 9.x.x) slouží jako doporučené praktiky. Z důvodu   informativního charakteru této stránky zde není obsažen jejich další popis,  byl by  poměrně rozsáhlý. Doporučené praktiky rozšiřují definici příkazů na ovládání dalších funkcí, formát adresace a jiné náležitosti pro budoucí rožšiřování standardu.

Dále je  uveden pouze doporučený formát paketů pro ovládání dekodéru příslušenství (modul spínačů). Dekodéry příslušenství spolu s lokodekodéry tvoří základní ovládací elektroniku v kolejišti, základní modul obsahuje 8 spínačů (4 páry).

Paket ovládání příslušenství

 

záhlaví adresový byte datový byte kontrolní byte
..1111111111 10AAAAAA 1aaaCDDD XOR

 
Adresový byte: bity  5..0 přenáší LSB bity adresy.  Adresa dekodéru příslušenství je 9. bitová, zbývající bity jsou obsaženy v datovém byte.

Datový byte:    aaa = vyšší (MSB) bity  adresy dekodéru,  bity jsou invertovány!.
                       DDD= adresace spínače příslušenství,  který  je nastavován
                       C =  stav spínače (0 = rozpojen, 1= sepnut)

Kontrolní byte:  výsledek logické operace XOR  adresového a datového byte.


Rozdělení adresového prostoru

První byte  paketu (adresový byte) při provozu slouží pro základní adresaci. Může nabývat hodnoty 0..255.  Standard DCC tento prostor rozděluje na několik částí, které jsou vyhrazeny pro konkrétní zařízení a účely.

 

adresa význam
00000000 (0): společná adresa, vysílání tzv.
  "broadcast messages"
00000001-01111111 
(1-127):
lokodekodéry 
(multifunkční dekodéry)
10000000-10111111 
(128-191):
decodéry příslušensví s 9 bitovou adresou
11000000-11100111 
(192-231):
lokodekodéry s 14 bitovou adresou
(multifunkční dekodéry)
11101000-11111110 
(232-254):
vyhrazeno pro budoucí rozšíření
11111111 (255):  IDLE Paket

Přenosová rychlost

Z měření vychází doba přenosu celého paketu typicky 5 ms, propustnost komunikace je okolo 180 zpráv/s Skutečná hodnota je závislá na délce kodovaných bitů log.0. Pokud je v kolejišti ovládána analogová lokomotiva, rychlost komunikace několikrát poklesne , protože kódování bitu log. 0 je prodlouženo.

 

Konfigurace dekodérů

Návrh norem DCC předpokládá použití nonvolatilních  pamětí  (typu EEPROM, FLASH) pro uchovávání uživatelského nastavení a jejich modifikaci. Nejdůležitějším parametrem je adresa, která  je v popisu vícekrát zmíněna. Možnosti uživatelské konfigurace nejsou omezeny pochopitelně jen na adresu, standardně se nabízí možnost definice akcelerace a brzdění lokomotiv, konfigurace přídavných funkcí a další nastavení. Konfigurace a programovaní je rozsáhle rozebrána v doporučených praktikách.

 

 

Doplňující informace, které nejsou součástí normy NMRA

 

Generátor brzdového signálu

Výhody nezávislého ovládání lokomotiv pomocí dekodéru mají v některých případech i stinné stránky. Typická situace je zastavení vlaku před návěstidlem se signálem "stůj". Při klasickém ovládání se tento problém řeší izolovaným úsekem s přemostěnou diodou pro jízdu opačným směrem -obr.5. Jednoduché avšak dostačující - před červenou zastaví každý vlak bez zásahu obsluhy.


Obr 5. Izolační úsek před návěstí

U DCC je to složitější- při přejezdu daného kolejového kontaktu by řídící elektronika měla vyslat příkaz konkrétní lokomotivě k zastavení. Dle vysvětlení principů funkce je jasné, že základní DCC řízení tuto funkci nedokáže, a pokud není jízda ovládána např. přes PC, tak odpovědnost na zastavení vlaku zůstane na strojvedoucím. Protože zastavení vlaku před návěstí stůj je základním krokem automatizace, používané i na domácích kolejištích je snaha zavést tuto funkci i v DCC aniž by byl potřeba počítač. K tomu se nabízí zvláštní modul , nazývaný generátor brzdového signálu.


Obr. 6 Připojení generátoru brzdového signálu DCC

Jedná se o obvod, který trvale generuje pakety s adresou 00 a příkazem snížení rychlosti na hodnotu 00. Protože adresa 00 je univerzální, na kterou reagují všechny dekodéry, po vjezdu na úsek s tímto signálem začne každá lokomotiva plynule snižovat rychlost (dle přednastavené hodnoty brzdění). Po připojení původního signálu DCC, se lokomotiva opět rozjede , protože do kolejiště jsou pro každou lokomotivu periodicky vysílány příkazy rychlosti. Rozjezd lokomotivy je plynulý, v závislosti na nastavení parametru akcelerace rozjedu v lokomotivním dekodéru.. Vlastní zapojení je dosti obdobné klasickému izolovaném úseku, ke kterému jsou přepojovány oba DCC signály (signál s řídícími příkazy a brzdový).
Brzdový generátor vystačí jeden pro celé kolejiště. Nevýhodou je, že nelze zajistit, aby vlaky projíždějící opačným směrem na brzdový signál nereagovaly, každopádně se jedná o užitečný obvod. Popsaný modul vyrábí např. firma LENZ.

Detekce kolejových kontaktů

Standard DCC se bohužel  vůbec nezmiňuje o způsobu přenosu informace z kolejiště do řídící stanice tj. snímaní stavů kolejových kontaktů, optodetektorů a dalších prvků. Řešení je ponecháno na konstrukci  výrobce. Tímto vzniká vzájemná nekompatibilita řídících systémů mezi sebou, ačkoliv využívají principu DCC. Kompatibilita je zajištěna na úrovni dekodérů do lokomotiv a pro příslušenství, což modelářské veřejnosti přináší výhodu  kombinace produktů více výrobců mezi sebou. Jinak řečeno - při koupi řídicí stanice od konkrétního výrobce (např. LENZ), můžete do lokomotiv zabudovat libovolný dekodér splňující normy DCC. Pro snímání kolejových kontaktů však musíte používat jen moduly od dané firmy, v tomto případě LENZ.


Návrat zpět na hlavní stránku  

 

(c) VB 1999-2008