Railnet

Centrála Loconet

DCC | Zdeno Janeček, 28. 01. 2012 (8215 zhliadnutí)

Po asi třech letech jsem dokončil a odladil centrálu Loconet. Bylo to dost práce a přemýšlení, někdy i nad moje schopnosti v tom čase. Musel jsem to odložit, nastudovat problematiku a zase se k tomu vrátit. Teď když je to hotové, tak se zdá, že to nic není, ale to je klam a málokdo si uvědomí, kolik práce a přemýšleni se za tím skrývá.

Je moji tradicí, nedělat monstra, ale jednoduché (a v tom je ta krása) a plně funkční věci. Neboť jak píše klasik, udělat to složitě, umí každý blbec. Tím myslím, že celková koncepce musí být vymyšlená tak, aby jedno druhé neomezovalo a přitom aby to umělo všechno, co je potřeba. To byl vlastně největší problém, neudělat monstrum a aby to bylo perfektní. 

Komplet centrála se vlastně skládá ze čtyř věcí a to:

  1. samotná centrála, kde je zabudována výroba DCC paketů, podle obsahu slotů. Dále je tam trojitý vystup Loconetu, na tři samostatně jištěné okruhy rozvodu sběrnice. Centrála ovládá 64 slotů, což je omezeno použitým procesorem Atmega88. Mám samozřejmě i verzi s Atmega328 a 120 sloty, ale z hlediska přístupu a časování je výhodnější používat menší verzi, která je tím pádem o dost rychlejší. Tím myslím, že testování, zpracování a vysílání 64 slotů je mnohem rychlejší, než 120 slotů. Centrála podporuje převod „B0“ Loconet paketů do DCC accessory formátu, i když tento způsob ovládání příslušenství nepovažuji za ideální a je lepší používat příslušenství určené přímo na Loconet, protože je možná zpětná kontrola a taky nastavovaní CV přes pakety E5. Centrála obsahuje spínaný zdroj 15V/3.8A, který je natvrdo zabudovaný z důvodu možné nekompatibility jiných zdrojů. Centrála je zabudovaná do skřínky od PC zdroje, které používám na stavbu svých zařízení už dlouhé roky, z mnoha dobrých důvodů. 
  2. čtečka #CV, která je popsaná v článku. Důvod, pro jsem oddělil programátor CV od centrály je jednoznačný, vadilo mi, že jsem při programování musel odstavovat kolejiště anebo možnost naprogramování více dekodérů najednou. Další důvod je, že programování na centrále není tak uživatelsky příjemné, jako na PC (JMRI), kde má člověk perfektní přehled a kontrolu nad programováním. Navíc programovaní CV není každodenní záležitost, není nutné mít trvalý přístup k programovadlu CV. Taky mi docela vyhovuje mít CV archivované v JMRI. Čtečku jsem navrhnul pro USB, protože je to mnohem univerzálnější než na Com port. Navíc, ne každý PC už má Com port zabudovaný.
  3. ovladač „Ewa“, který nahrazuje a doplňuje některé funkce centrály, které jsem nechtěl zabudovávat do centrály. Například funkce LINK , UPLINK, DISPATCH a ovládání příslušenství. Teď už vyrábím ovladač Evka, protože displeje použité v Ewa ovladači, jsou naprosto nespolehlivé. Tento ovladač ještě testuji a odlaďuji a až to budu mít hotové, tak o tom napíši článek.
  4. Převodník USB/Loconet na spolupráci PC a Loconetu (centrály).. Obvod zabezpečuje konverzi Loconetu na USB, kde bylo nutné optické oddělení, z důvodu zabránění rušení přes nulovou smyčku, posunutí referenčních úrovní a omezení rozdílových potenciálů mezi různými rozvody 230V.

Tyto čtyři komponenty vytvářejí soubor centrály a i když jsou to relativně samostatné věci a pracují nezávisle, tak spolu souvisí a navzájem se doplňují. Centrála je naprosto kompatibilní s Loconetem a podporuje Fredy, Fredi i boostre používaných typů.

Schéma centrály

bez rozbočovače DCC a převodníku USB / Loconet

Centrála je až neskutečně jednoduchá, protože neobsahuje ovládací a zobrazovací prvky. Není tu programátor #CV a obvody s tím související. Taky chybí stabilizátor na +15V, který je osazený v spínaném zdroji. Ale přesto je tu všechno, co centrála potřebuje na svůj bezproblémový chod.

Všechno důležité je schované v procesoru, vnější obvody zabezpečují jenom převody úrovní na hodnoty, aby s nimi mohl pracovat procesor. Od úpravy z +15V na +5V, převodu Loconet na „TTL“ a převod slabého DCC na silný DCC, pomocí L6203. Na odporu R1 vzniká úbytek napětí podle odběru DCC. Trimrem R3 se nastavuje stav, kdy protékajícího proudu je moc a je nutné ho omezit, teda zkratová ochrana. To je ošetřené na komparátoru, který generuje přerušení v případě příliš velkého odběru..

Programové vybavení:
To by chtělo asi samostatný článek a přesto by se nedalo napsat všechno. Je toho totiž strašně moc a všechno souvisí se vším. Pokud to někoho zajímá, nech mi napíše a můžeme to probrat osobně a ze všech stran.

Ale je vhodné aspoň vzpomenout základní údaje. Centrála obsahuje 64/120 slotu podle verze procesoru, výrobu DCC signálu podle obsahu slotů, včetně 20/40 slotů access pro pakety příslušenství. Příkazové pakety DCC access jsou vysílány asi 2 vteřiny, pro dokonalé přečtení. Nevysílá se ukončovací paket, každé zařízení si musí ohlídat dorazy a hazardy samo. Centrála nepodporuje 5-ti bajtové pakety DCC, protože je považuji za zbytečné a velmi snižují přenosovou rychlost DCC. Je natvrdo zabudované ovládání rychlosti přes 28st. řízení. Centrála nepodporuje analogový režim, taky z důvodu omezení rychlosti DCC. Refresh slotů je nastaven na 120 vteřin, po této době se slot deaktivuje. Rutiny okolo DCC, vyhledávání a zpracování slotů jsou napsány čistě v ASM, protože je nutná co největší rychlost. Použití vyššího jazyka zpomalilo zpracování zhruba 2x, což už bylo nepřijatelné. Procesor pracuje na své nejvyšší povolené rychlosti 20MHz.

Indikační prvky jsou zapojeny na portu C, přes konektor SV1.

  1. zapnuto , zelená LED
  2. indikace zkratu , červená LED
  3. paket Loconet, blikne bílá LED
  4. Dispatch slot, při obsazení svítí žlutá LED

Rozdělovač DCC a Loconetu:

 

Zapojení slouží na rozdělení DCC na tři větve, které jsou potom energeticky nezávislé. Pokud vznikne zkrat na pinech 1 nebo 6 konektoru RJ12, proti pinům 2 a 5, tak to rozpojí vratnou pojistku a neomezí to celé kolejiště. Rozepnutí pojistky indikují příslušné LED diody a to je signál pro obsluhu na odstranění zkratu. Pokud se použijí dvoubarevné, dvojvývodové LED diody , tak není nutné použít ochranné diody 4148 proti opačné polaritě. Použití vratných pojistek má výhodu v hysterezi vratné pojistky, kdy pojistka nezmenšuje postupně napětí DCC, ale při překročení povoleného proudu reaguje poměrně rychle. Návrat do normálního stavu trvá ovšem déle, až několik vteřin, protože pojistka musí vychladnout ze 120st. Celsia pod 40st. Celsia. Pojistky musí být umístěny tak, aby nic nepoškodily při svém rozžhavení a musí byt odsazeny do prostoru, kvůli chlazení. Tohle řešení považuji za lepší, než ochrana odpory, protože v případě zkratu dojde k odpojení napájení, kdežto odpory stále dávají svůj zkratový proud 15/27 to je víc než 0,5A do poškozeného místa. A to nemusí být vždycky to pravé ořechové.

Převodník Loconet/USB:

Tohle je samostatné zařízení, které je zabudované v krabici, při centrále. Slouží na komunikaci centrály s PC. Protože PC má privilegované postavení, tak ošetření přístupu na Loconet je triviální. Stačí zjišťovat, aby od poslední „0“ byl stav Loconetu trvale po dobu 600µS ve stavu „1“. Pokud v čase od 600µS do 720µS od poslední „0“, nepřijde žádný START bit, považuje se Loconet za volný pro vysílání z PC. To samozřejmě neplatí pro jiná zařízení, ty mají své priority nastavené jinak. Na straně PC používám dva programy a to JMRI a RailCo. Oba programy mam tisíckrát odzkoušené a nejsou s nimi problémy. Jsou nastavené na MS100 a 16458Baudu.

Vlastně ani nevím, co dál napsat. Tohle zařízení patří do kategorie, které je pro laiky naprosto nepochopitelné.
Jediné, co je potřebné, je připojit 230V, zapojit DCC do kolejí, zasunout ovladač a může se jezdit.

Cena všech čtyř zařízení dohromady se pohybuje do 160 Eur, z toho největší položka je spínaný zdroj (29 Eur). To je cena komplet sestavené centrály, která obsahuje centrálu, ovladač, převodník, vše hotové, zabudované, oživené.
Ceny jednotlivého jsou :
ovladač - 40 Eur, centrála, převodník, rozbočovač – 100 Eur, čtečka CV – 20Eur.
To je asi třetina ceny IBX centrály, které se naprosto vyrovná, samozřejmě kromě podpory Motoroly. Navíc moje centrála už obsahuje zdroj, který si k IBX musíte zakoupit samostatně.

V případě zájmu můžu vyrábět plošné spoje a dodávat naprogramované procesory, bez ostatních součástek, které jsou běžně k sehnání.
Cena za 4x plošný spoj a 3x procesor by byla 40Eur.

[Akt. známka: 0,00 / Počet hlasov: 8] -      + 

Pridať nový komentár

Bronek 04.05.2012 10:09:32

Platnost povelů

Dobrý den,
chtěl jsem se zeptat jak se řeší platnost povelů? Například dojde v vykolejení mašiny, tlačítkem stop odpojíme napájení, mašinu sundáme z kolejí a opět zapneme napájení pro ostatní. Jak dlouho ten povel pro ní bude vysílán?
Postavil jsem si jednoduchý ovladač pro 9 lokomotiv, který odvysílá platné povely a pak 40ms vysílá jen 1 a pak zase povely.

Reagovať

Zdeno 04.06.2012 21:18:28

Nerozumim otazce ??
Na vsechno ma Loconet normy, ktere plati a musi se dodrzovat.
---
Takze pokud je zasunuty ovladac, tak centrala posila posledni platny prikaz do DCC do nemoty. Pokud je funkcni ovladac nekde odlozeny, tak stale posila obnovovaci pakety a centrala posila pakety DCC neustale. Pokud ovladac vytahnete, tak podle nastaveni funkce REFRESH centrala odstavi slot Loconetu a centrala prestane vysilat pakety DCC. Navic samotne loko MUSI zastavit po asi 3 minutach bez platneho povelu DCC.
---
Prikaz Emergency STOP plati pro konkretni masinu a adresu. Lze pouzit BROADCAST paket pro vsechny adresy nebo prikaz OPCODE &H82 a centralne zablokovat vsechny boostre, pokud to podporuji. Po vraceni do puvodniho stavu se vsechno nastavi samo do spravneho stavu, bez kontroly a prispeni uzivatele.
---
Chtel bych upozornit, ze Loconet neni kompatibilni s klony LENZ a dokonce i stejne nazvy neznamenaji totez. Centrala Loconetu neni to same, co centrala Lenz a to same plati pro ovladace. U LENZ (roco) je samotny ovladac centrala a to co se nazyva centrale je vlastne boostr.
---
Takze je nutne podle toho formulovat otazky.

Reagovať

Bronek 11.06.2012 16:13:36

Re:

Děkuji za odpověď. Sice píšete, že jste nerozumněl otázce, ale já se z Vaší odpovědi dověděl vše, co jsem potřeboval vědět.

Reagovať

Pridať nový komentár