cz flag en flag

Levný a jednoduchý DCC dekodér pro osvětlení modelových domečků

Už když jsem stavěl svůj první modelový dům (Stavba modelu H0: Londýnský dům), věděl jsem, že ho budu chtít osvětlit. Ale ne jen obyčejně, že bude svítit celý, ale chtěl jsem ovládat každou místnost zvlášť a z toho vznikla myšlenka vlastního DCC dekodéru pro doplňky.

Nejdříve jsem přemýšlel, jaký použít hardware, aby to bylo jednoduché a levné. Rozhodl jsem se použít hardware z Arduina. Konkrétně Arduino nano (Obr. 1) zakoupené v Číně, které disponuje mikrokontrolérem ATmega328, který je naprosto dostačující pro funkci dekodéru.

Obr. 1: Arduino nano – použitý harware pro dekodér.

Program v dekodéru je napsaný v AVR Studiu a je nahraný přímo do mikrokontroléru bez použití booloaderu Arduina – to znamená, že se deska už netváří jako Arduino a není možné ji programovat pomocí USB.

Výhoda použití Arduina je tedy především v ceně a jeho velikosti. Také odpadají problémy se sestavováním hardwaru, který je dostupný i u nás v ČR. 

Funkce

Dekodér je velice jednoduchý a nedisponuje velkým počtem funkcí. Zde je výčet všech funkcí.

  • Ovládání výstupů 1 až 8 pomocí DCC digitálního ovladače
  • Změna adresy dekodéru pomocí CV registru
  • Nastavení jasu každého výstupu v úrovních od 0 do 255 a uložení do paměti (nastavení pomocí CV)
  • Ovládání jasu pomocí DCC digitálního ovladače (použit extended accessory packet)

Poslední funkce, která je zmíněna v seznamu není úplně tak běžná. Chtěl jsem si nastavit jas v každém pokoji jiný a tak jsem dekodér doplnil o funkci nastavení jasu za běhu pomocí ovladače nebo libovolné DCC centrály. Moje centrála (Digitální DCC centrála pro řízení modelové železnice pomocí Android (iOS) aplikace), kterou vyvíjím, umožňuje právě snadné nastavení tohoto jasu. Jak to celé funguje můžete vidět také na videu v článku Ovládání osvětlení modelového domu včetně jasu DCC centrálou s Androidem.

Hardware

Jak již bylo řečeno výše, tak jako hardware jsem použil Arduino nano s mikrokotrolérem ATmega328, ale bohužel to není vše. Ještě je potřeba vyřešit napájení a zdroj signálu z kolejí. Vyřešil jsem celou situaci velice jednoduše a to pomocí usměrňovacího můstku (RB152), pulsního měniče (modul s LM2596) a rezstoru R1 s hodnotou 22K. Na měniči LM2596 jsem pomocí trimru nastavil výstupní napětí na 5V. Celé zapojení je vidět  blokově na obrázku 2. Na obrázku 3 a 4 jsou poté fotky toho, jak jsem vyřešil celé zapojení prakticky.

DCC dekoder schéma

Obr. 2: Blokové schéma propojení jednotlivých modulů. 

dcc_dekoder_napajeni

Obr. 3: Aplikace blokového schématu v praxi – fotografie celého zařízení.

usmernovac_stab

Obr. 4: Detail na spodní stranu stabilizátoru a zapájený usměrňovač.

Jak to naprogramovat

K nahrátí programu do mikrokontroléru budete bohužel potřebovat sériový programátor pro mikrokontroléry Atmel AVR. Já jsem si svůj programátor postavil podle návodu z článku Programátor ATMEL do USB. Programátor stačí jen správně propojit s konektorem na obrázku 5 a pomocí AVR Studia (nebo jiného programu pro Atmely) nahrát HEX soubory (obr. 6), které jsou přiloženy na konci článku. Jedná se o HEX programu (AccessoryDec_v01_prog.hex) a o HEX eeprom paměti (AccessoryDec_v01_eep.hex).

arduino-nano-prog

Obr. 5: Popis programovacího konektoru na desce Arduino nano.

avr_studio_dccdec

Obr. 6: Programování HEX souboru do mikrokontroléru.

Jak to rozjet

Jakmile je program v mikrokontroléru a hardware máme sestavený, pak stačí připojit vstupy dekodéru k centrále (obr. 7) a naprogramovat správnou adresu pomocí registru CV1. Poté na výstupy Arduino desky připojit LED diody tak, jak je to na obrázku 8. Nakonec připojíme vstup na DCC koleje nebo jiný zdroj DCC signálu.

Dekodér ještě umožňuje nastavení pomocí CV2CV9 jas jednotlivých výstupů. Hodnota jasu může být od 0 do 255. 

arduino-nano-dcc

Obr. 7: Připojení dekodéru. Je potřeba si uvědomit, že DCC signál musí mít úrovně 5V a proto je nutné připojit signál z kolejí přes odpor, tak jak je naznačeno na schématu na obrázku 2!

led-arduino-dcc

Obr. 8: Připojení LED k výstupům Arduina.

Ke stažení

Pokud se Vám dekodér líbí a chtěli by jste více podobných projektů na webu, můžete autorovi pomoct malým finančním příspěvkem – můžete provést v pravém sloupci (DONATE). 

 

Galerie

3 thoughts on “Levný a jednoduchý DCC dekodér pro osvětlení modelových domečků

  1. Pingback: Programátor ATMEL AVR do USB – ZAVAVOV

  2. Libor

    Arduino nano má v sobě bootloader a FW se dá nahrát přes USB, buď přímo z Arduina nebo pokud máte jen zkompilovaný HEX, tak existuje SW Xloader.

    1. admin Post author

      Vím, že má Arduino bootloader, ale já použil jen desku jako HW, ale SW je napsaný klasicky v AVR Studiu a tak nejde bootloader použít a musí se přepsat. Proto je tam použitý programátor, který jsem měl doma, ale samozřejmě můžete použít jakýkoliv jiný programátor HEX pro Atmel.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

*

0
0
0
0
0
1
0
1
1
Verified by ExactMetrics