Railnet

Oto, jednoduchý ovladač na Loconet

DCC | Zdeno Janeček, 28. 01. 2014 (4801 zhliadnutí)

Zas mne jeden vyprovokoval, abych vymyslel ovladač, který se může dát do rukou dětem a přitom aby uměl všech 28 funkcí na ozvučené loko. Finance nebyly až tak důležité, ale měl zájem na tom, aby to nebylo přehnaně drahé. Tak jsem za asi čtyři dni vymyslel a zhotovil ovladač OTO.

Schéma:

Zapojení je jednoduché, zase podle mého přesvědčení, že udělat to složité, umí každý exot ;-)

Srdcem zapojení je zase Atmel, tentokrát Atmega 88P, která disponuje celkem slušným souborem příslušenství a taky velkou pamětí Flash, RAM i EEPROM. Není problém tam zabudovat všechno potřebné. Odběr celého ovladače je asi 7mA, což pokládám za velmi dobrou hodnotu, protože má čtyři vysoko svítivé LED diody.

Zapojení se skládá z obsluhy Loconetu, klávesnice 3x4, enkodéru (třeba ze staré myši), mikropřepínače a indikace stavu.

Vysílání Loconetu jsem tentokrát udělal jinak a to přes invertovaný soft UART, kdy je potom nutný jen jeden tranzistor na napěťové posílení Loconetu. Má to jen jednu podmínku a to zákaz všech přerušení po dobu vysílání paketu. Protože ovladač není kritický na čas, je to celkem snadno splnitelné.

Příjem Loconetu je moje klasika hard UART, odzkoušená a bez problémů.

Klávesnice 3x4 obsluhuje všechny funkce (F0 –F28) a plynulé zastavení podle CV4. Volby funkcí jsou udělány tak, že se volí číslo funkce 0 - 28 a odešle se klávesou F. Plynulé zastavení je klávesou S.

Enkoder jsem vykuchal ze staré myši, ještě jich mám doma asi 5. Je to tzv. středové kolečko a musí být mechanické. Optické řešení není moc vhodné, protože bere dost proudu. Napájení enkodéra je přes pull-up odpory ve vstupech procesoru, protože se tím velmi účinně potlačují hazardy samotného enkodéru. Čím větší proud, tím větší zákmity. Dá se použít i obyčejný enkodér, mám navrhnuté a vyrobené obě verze.

Mikropřepínače nedoporučuji používat z myšátek, protože jsou většinou unavené a nespolehlivé. Je lepší koupit páčkový mikropřepínač a ten použít. Přepínač ovládá em. stop a přepínání směru jízdy. Pokud použijete obyčejný enkodér, tak ten má tlačítko zabudované.

Indikace stavu je vždycky problematická bez displeje a tak se to musí nějak okabátit. Osadil jsem čtyři LED diody,

Jsou osazené vysoko svítivé, takže jejich odběr je okolo 2mA jedna. Ale mám to tak udělané, že současně můžou svítit jen dvě.

Odpory na napájení LED diod třeba vybrat podle svítivosti, každý má jiné nároky na odběr nebo svit ovladače.

Zelená
indikuje zapnutý stav, pokud bliká, tak se ovladač přihlašuje. Taky blikne, pokud volíte hodnotu menší než 0 a větší než 127. Je to indikace přetečení rozsahu rychlosti.
Červená
trvalý svit znamená, že je ovladač bez adresy, pokud blikne, tak oznamuje nesprávnou operaci nad funkcemi nebo použití havarijního stop.
Modrá
oznamuje, ze v bafru je nějaká funkce na vysílaní. Má dva stavy, plny svit = první pozice obsazena, rychlé blikání = dvě pozice obsazeny. Pokud přeteče, blikne červená.
Bílá
bliká podle nastavené rychlosti pro loko. Čím rychleji bliká, tím jede loko rychleji. Pokud bílá nesvítí, loko stojí.

Programové vybavení a obsluha:

Protože si knihovny programů odkládám, tak navrhnutí programu bylo celkem jednoduché a kromě doladění obsluhy LED jsem neměl problémy. Ovladač používá mód DISPATCH, pomocí kterého se přiděluje adresa. Používá se tzv. dvojhmat, kdy se stiskne enkoder a následně klávesa „0“. Pokud má adresu, tak ji ztratí a pokud ji nemá a v centrále je připraven slot s adresou na převzetí, tak ji přebere a tu adresu si nastaví a zapíše do EEPROM. Adresu ztratí taky tehdy, když se pokusí přihlásit na obsazený slot se stejnou adresou.

Je tu jedna zvláštnost to používání vlastních funkcí nad 40, kde se nastavují funkce tohoto ovladače. Je to myšleno tak, že se dá nastavit způsob ovládání zvuků. Je to proto, že zvuky (funkce) mají nebo můžou mít ovládání jako tlačítka nebo přepínače. Takže každá skupina funkcí se může nastavit jako tlačítko nebo přepínač.

  • Funkce 40 nastaví skupinu F5 – F8 jako tlačítka
  • Funkce 41 nastaví skupinu F9 - F12 jako tlačítka
  • Funkce 42 nastaví skupinu F13 – F20 jako tlačítka
  • Funkce 43 nastaví skupinu F21 – F28 jako tlačítka
  • Funkce 44 vynuluje všechno, teda nastaví všechny funkce na „0“ a zruší všechny příznaky jejich ovládání v ovladači.

Pokud je daná funkce v „0“, tak se chovají jako přepínače a pokud v „1“, tak jako tlačítka. Tyto funkce se neposílají do kolejí, ale jsou určeny jen pro vnitřní použití v ovladači. Režim funkcí se ukládá do EEPROM, takže se nemusí nastavovat opakovaně, ovladač si je pamatuje.

Jinak je dost problém tolik funkcí ovládat, proto jsem zabudoval generální storno (44) všech funkcí a parametrů. Například, když potřebujete něco naprogramovat do dekodéru, tak je docela pracné jednotlivě funkce mazat. Některé nastavené funkce ovlivňují vyčtení dekodéru, velkým klidovým proudem.

Je to taky ovladač na modulovku, kde není žádoucí měnit adresy za chodu setkání. Ale klidně poslouží i na domácí ježdění, kde je velkou výhodou,že je určen jen na jednu loko a to si dokážou uhlídat i děti.

Cena tohoto ovladače je celkem nízká a pro mého kolegu dost důležitá, protože chtěl 4 kusy pro děti a nechtěl investovat do věcí, která podle něho nebudou mít velkou životnost v rukou jeho dětí a jejich kamarádů.

Enkoder = 3 Eur
Krabička = 1 Eur
Procesor = 4 Eur
LED 4x = 1 Eur
m.spínač = 1 Eur
RJ12 = 1 Eur
konektory = 3 Eur
tlačítka = 1,2 Eur
78L05 = 0,5 Eur
BC237 = 0,3 Eur
4x µ1 = 0,4 Eur
2x dioda = 0,4 Eur
20x odpor= 0,7 Eur
Plošáky = 2 Eur

Drobnosti = 1 Eur pájka, popisky, dist. trubičky, šroubky, atd.

Cena je asi 20 Eur za jeden kus bez práce a energií. Kdo má zájem si to vyrobit, poslu plošáky v EAGLE a HEX program. Cena zhotoveného, oživeného je 25 Eur bez kabelu. Vyrobeno 7 kusů, dva mi zůstaly, jeden zapůjčen na dlouhodobé testování.

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

Pridať nový komentár

jki 29.01.2014 22:33:11

podmienka?

Ahoj Zdeno
ako sa dá splniť podmienka:
"zákaz všech přerušení po dobu vysílání paketu"

Reagovať

dano 31.01.2014 11:57:11

A co tak to dat do FRED krabicky?

Ahoj Zdeno, so zaujmom sledujem tvoje vynalezy. Mam jeden dotaz (otazku): Nie je to mozne urobit viac sexy? Napr. FRED krabicka je urcite pouzivatelsky viac prijatelnejsia (aj mentalne) ako tie co pouzivas Ty.

DanoM

Reagovať

Zdeno 01.02.2014 18:06:42

JKI :
urcite jsi nekdy slysel o globalnim povoleni a zakazu preruseni. Konkretne u Atmelu je to v registru SREG, bit sedm.

Dano :
ale potom se mi tam nevejde ta klavesnicka ;-(
Jinak ta krabicka neni o moc vetsi nez Fred,
OTO ma rozmery 106mm /54 mm
Fred ma rozmery 128mm /40mm.

Reagovať

Andreas 30.05.2016 20:27:08

Dobrý, mal by som zaujem o tento ovladac, pokiaľ by sa dalo 1 alebo 2 kusy uz hotove aj naprogramovany by som chcel od vas kupiť, ked 1 hotový stoji 25€. Dakujem za odpoved.

Reagovať

Andreas 30.05.2016 20:27:37

Dobrý, mal by som zaujem o tento ovladac, pokiaľ by sa dalo 1 alebo 2 kusy uz hotove aj naprogramovany by som chcel od vas kupiť, ked 1 hotový stoji 25€. Dakujem za odpoved.

Reagovať

Pridať nový komentár