Railnet

Příslušenství na Loconet

DCC | Zdeno Janeček, 21. 11. 2008 (12958 zhliadnutí)
Vymyslel jsem, nebo taky trochu ukradnul řešení ovládání vyhybek pomocí modelářského serva. Hodně jsem přemýšlel nad digitalizováním Kamenců, ale odrazovalo mne kompletní předělávání pohonů všech vyhybek, které jsou na ruční ovládání. A síla nutná na jejich ovládání je dost značná. Jediné řešení jsem viděl v modelářských servech, které jediné mají sílu na přestavění mých vyhybek. Šnekové provedení jakéhokoli druhu absolutně nevyhovovalo po stránce opotřebení a výdrže. Problém bylo najít nějaké schopné a opakovatelné zapojení, které by mne zároveň nezlikvidovalo po finanční stránce.

Nápad však přišel z úplně nečekané strany. Stále se učím a laboruji na Atmelech a jeho AVR procesorech. Na moji smůlu nebo štěstí jsem narazil na Bascom Basic, který podporuje programování na AVR a tak se nemusím učit ASM příkazy na RISC-ové procesory. Ono mne to nemine, ale prozatím mi to stačí. A právě v Basicu jsem narazil na příkaz „config servos“, který mne konečně posunul tím správným směrem. Řešení je moje, ale nápad byl už mnohokrát na různých webech prezentován. Protože jsem použil nekomerční věci, nabízím to na volné použití.

Schéma a provedení je podle mého zvyku zase velmi jednoduché. Jediný trošku větší problém bylo galvanické oddělení od Loconet sběrnice, které dost zkomplikovalo schéma. Nedá se ale nic dělat, musí to tak být, jinak by se vyvolaly zbytečné komplikace se společnou zemi a vazbami přes napájení. Protože ale všechno souvisí se vším, musí se to udělat pořádně, tak aby to vyhovovalo všem normám. Výstupní optočlen CNY17 je v zásadě zbytečný, ale je tam, kdyby se někdo chtěl pohrát se zpětným hlášením. Je dokonce možné moduly přestavníků napájet i z DCC rozvodu, pokud se zabezpečí postupnost přestavování, aby nedošlo k přetížení boostru.[ p>

Zapojení se skládá z několika podskupin, vstup Loconetu, optické oddělení, zpracování, napájecí obvody a výstup na serva. Vstup přes dvě RJ12 je už pro mne standardem a vstupní komparátor v zásadě taky. Jediná nezvyklá výnimka je v napájení, kde není žádný stabilizátor. Naopak je nutný stabilizátor ve větvi na serva a procesor , kde je ho nutné i chladit, přece jenom serva si dokážou potáhnout dost velký proud. Přes optočlen 6N137 je Loconet veden na RxD vstup Tiny 2313, která je srdcem tohoto zapojení. Program zabezpečuje dekódování Loconetu, snímání adresy a vykonávání příkazů přes pakety „B0“. Adresa je zadávána přes piny (LSB) A0, A1, D2, D3, D4, D5, D6 (MSB), které určují, která osmice adres je vybrána. Adresa je sedmibitová a je tedy možné nastavit 128 x 8 = 1024 adres. Navolená adresa se násobí osmi a je uložena do RAM paměti. Je zbytečné ji ukládat do EEPROM, protože je kdykoli přístupná. Je použito párové řízení, kdy bit „DIR“ určuje, do které polohy je servo přestavěné. Je tu i další změna, kdy můj program nereaguje na vypínací pakety a přestavění jde pouze přes opačný „DIR“.

Další věc, která mi bránila v použití serva je zbytečně dlouhá přestavovací dráha a komplikované nastavování této dráhy. Přece jenom každá vyhybka je trošku jiná a délka dráhy se pokaždé trochu liší. Úprava pomocí převodů je zbytečná hodinářská práce, které je nutno se vyhnout. Vyřešil jsem to programově, pomocí paketu „E5“, což je paket určený na „zprávy Peer to Peer“ Loconetu. To bych ovšem nebyl já, kdybych to neopravil a nezjednodušil. Vynechal jsem totiž pakety, v kterých se doplňuje osmý bit. Paket je 21 bajtový, kde první dva bajty jsou „E5h a 15h“ , které určují druh a délku paketu, potom je 16 bajtu konfiguračních pro serva, dva bajty AdresaHigh , AdresaLow a nakonec kontrolní součet celého paketu. Konfigurační bajty (16) se skládají z dvojic, které určují polohu serva pro dvě krajní polohy. Vždycky je to 3 a 10, 4 a 11, 5 a 12 atd. - až 9 a 16. Tyhle dvojice určují krajní polohy serva. Je jasné, že je teda možné ovládat nejen přestavníky, ale i jiné zařízení, například přejezdy nebo jiné betlehemy. Tím myslím jiné pohyby než jen železniční a pevně doufám, že moje přirovnání nikoho neurazí. Krajní polohy jsou 50 - 150 , jiné hodnoty jsou mimo rozsah serva a pokud nemají elektrické dorazy, mohly by se poškodit. Protože jsem si sám zakázal osmý bit, řeším to tak, že posílám poloviční hodnoty a program v 2313 je posune o jeden bit doleva a tak se zapíšou správné hodnoty do konfiguračních bajtů. Modul přestavníku dokáže ovládat osm serv , každé pro jinou polohu a nezávisle na sobě. Modul je velmi jednoduchý a i když se nevyužijí všechny pozice pro osazení serva, je velmi univerzální a v zásadě velmi laciný. Největší dřinu za nás udělá program, který je velmi variabilní. Na obrázcích je nastavena adresa „0“ , teda jsou zapojeny serva 7 až 8 pod adresami taky 7 až 8.

Nastavovaní serv je celkem jednoduché. Zamontuje se na místo a pomocí paketu E5 se mu mění konfigurační dorazy tak, aby to vyhovovalo našim požadavkům. Je možné nastavovat délku kroku od několika mm do plného rozsahu serva. To umožňuje plně využít jakoukoli pohyblivou periferii.

Vymyslel a sestrojil zatím jeden kus „janecek3@stonline.sk“

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

Pridať nový komentár

zdeno 27.11.2008 07:41:50

nevim, zkus a uvidis, co je mene narocne, bud extra elektroniku nebo mechanicky zapojit jeden mikroprepinac ahojz

Reagovať

zdeno 21.11.2008 12:23:13

ahoj, prepinani srdcovky je klicove a ja ho resim dvema zpusoby. prvni reseni jsou dve jazyckove rele, kdy na tahlo upevnim magnet (harddisk) a prepnutim vyhybky se posune magnet nad druhe jazyckove rele. to je vhodne na delsi draku pohybu. druhe reseni je mikrospinac s packou, ktery se sepne presunutim serva.to je vhodne na maly posun do 1cm. obe reseni jsou vyzkousene, ale ne na serva, kde zatim mam postaven jeden kus, ktery budu dal testovat. chtel jsem hlavne vyzkouset stabilitu a hazardni stavy. prece jsem tomu trochu neveril. ale ukazalo se , ze je to velmi stabilni a pokud se osetri program tak, aby filtroval hazardy, nemuze se nic poskodit a dany stav je velmi presny a stabilni. ahojz

Reagovať

zdeno 21.11.2008 12:28:36

odtuknul jsem to driv, tak jeste dodatek. tento prestavnik je planovan na kamence a tam mam prepinani srdcovky vyresene pomoci packovych prepinacu, proto zabudovani prepinani srdcovky jsem nepovazoval za potrebne. ahojz

Reagovať

alexander 25.11.2008 11:23:28

nebolo by elegantné riešenie pripojiť k "master" dekodéru ovládania serv "slave" dekodér príslušenstva, ktorý by napríklad cez relé prepínal srdcovky? neboli by tým pádom potrebné žiadne mechanické "hejblatá" náročné na nastavovanie...

Reagovať

alexander 30.11.2008 17:00:51

zdeno, ja som nepísal, že som niečo vyvinul a ani som sa za génia nepasoval. k tomu mám bááááárs ďaleko! padla otázka, dal som k dobru nápad. a ani master a slave dekodér nie je tak celkom z mojej hlavy, inšpiroval som sa tu: http://www.dcckoleje.kx.cz/index.html prepín anie srdcovky cez relé je riešené aj pri prestavníku s memory wire, ktorý predáva p. litomyský. ale dá sa samozrejme nájsť aj veľa riešení s použitím mikrospínačov, hlavne pri použití motorických prestavníkov. koniec koncov, nech si každý urobí ako jemu vyhovuje, mne by to vyhovovalo tak, ako som napísal. a netreba nič vyvíjať, dekodérov príslušenstva je vymyslených dosť, takže uspeje aj taký "bastlič - spotrebiteľ" ako som ja. alexander

Reagovať

gaborm 21.11.2008 08:45:57

ahoj, zaujimavé, už som videl niekoľko riešení s pomocou serv, všetky ale mali jednu nevýhodu. nerealizovali požadovanú prepínanú srdcovku. argument, že je to skôr mechanická záležitosť beriem, ale silne naviazaná na realizáciu prestavovania výhybiek. ako si teda prosím riešil prepínanie srdcovky? ahoj gábor m

Reagovať

alexander 28.11.2008 09:19:29

mám výhybky s izolovanými srdcovkami, takže tento problém neriešim. bol to návrh možného spôsobu riešenia, ja osobne by som v prípade potreby šiel touto cestou. zvlášť u modulov, kde nastavenie "mechanických závislostí" môže prísť k úhone napr. pri preprave. a navyše som lenivý! priplácnuť pod modul plošáčik s dekodérom a natiahnuť pár káblikov je ľahšie ako riešiť upevnenie serva a k nemu ešte mikrospínač... :-))

Reagovať

30.11.2008 15:04:00

re:

ahoj, nejdriv jsem chtel jen napsat "no comment", ale neda mi to. --- kolik jsi vyvinul takovych"plosaciku" ? nevedel jsem, ze je to az tak snadne. v budoucnosti, az budu neco podobneho resit, budu velmi rad, kdyz mi pomuzes. --- ted zrovna resim prevodnik 16666 baudu na 19200baudu, abych mohl vyzkouset "railroadautomation", tak zkus vymyslet takovy maly plosacik.:-))) ahojz

Reagovať

Pridať nový komentár