Jindra Fučík

Funkční dekodér pro dlouhé vagóny

Úvod

Toto je klasický hospodský projekt. Sledoval jsem diskuzi nad osvětlením čtyř-osých vagónů a zdálo se mi nepěkné, že se do nich dávají běžné funkční dekodéry a LED pásky. Pak se vagón prostě rozsvítí bez ohledu na jakékoli ztvárnění efektu svícení. A přitom pískající a blikající zářivka byla taková hezká klasika těchto vozů v osmdesátých letech a mnohde je dodnes. Soustředil jsem se na vozy, které mají společný salón, který rozsvítí průvodčí. Například známé patráky.

Popis zapojení

Rozhodl jsem se udělat naprosto jednoduchý funkční dekodér, který však bude krom předních a zadních koncových světel ovládat ještě LED pásek uvnitř salónu. Vycházím z klasického zapojení funkčního dekodéru, prezentovaného například tady, nebo tady a nebo jinde.
Provedl jsem jen malou změnu. Nahradil jsem jednoduché spínání výstupů za maticové spínání nazvané Charlieplexing (podle Charlie Allena z Maxim Integrated). Použil jsem čtyři výstupy na procesoru, takže mohu rozsvítit až 12 LED. Dvě použijeme pro přední a zadní světla, takže v salónu můžeme použít 10 samostatných LED.
Na schématu stojí ještě za povšimnutí dvě věci. První je, že LED pro koncová světla jsou dvě v sérii. To je proto, aby nevznikl paradox kdy LED v jedné větvi má větší úbytek napětí než dvojice LED z paralelních větví. Vzhledem k tomu, že červené LED mají úbytek 1,2V až 1,5V, zatímco bílé mají úbytek 3,0V až 3,3V.
Druhá zajímavost je v tom, že přední a zadní světla jsou zapojená vlastně antiparalelně, takže pokud potřebujeme otočit směr vozu, stačí otočit polaritu diod. Na plošném spoji jsem schválně vyvedl nožičky v takovém pořadí, aby platilo, že přední světla mají katodu nahoře a zadní světla mají katodu dole bez ohledu na to, na kterou stranu dekodéru jsou připojené. Také se toho dá využít pokud použijeme dvoubarevné led (žlutá/červená), které mají dva vývody a barva se mění polaritou. Pak bude docházet samo od sebe k přepínání barev podle směru.

Function decoder for long coaches

Introduction

This is classic "pub" project. I watched discussion about mounting lights into four-axe coaches and I does not agree to mount into them standard function decoders and LED strips. With this combination car will simply light on without any modeling of light effect. And for sure blinking noisy neon light was traditional memory of those cars in 80's and on more places until now. I was focused to cars with common salon, lighted by conductor. For example well known double layers.

Hardware description

I was decided to build very simple function decoder. That decoder will control only front and rear back-lights and one LED strip inside salon. As base is used traditional schematic of function decoder, presented for example here, or here, or somewhere else.
I was done only small change. I was replaced basic switching of outputs with matrix of LEDs called Charlieplexing (by name of Charlie Allen from Maxim Integrated). I was used four outputs on processor, then I'm able to light on up to 12 LEDs. Two of them will be used for front and rear lights, then in salon can be used 10 independent LEDs.
You can found on schematic two interesting things. First one is, that LEDs for back-lights are two in serial. It is to prevent paradox when LED in another part have bigger voltage drop out than pair of LEDs in two independent parallel parts. Because red colour LED have drop out 1.2V to 1.5V, and white LED have drop out 3.0V to 3.3V, then two red is more less equivalent to one white.
Second interesting part is, that front and rear lights are in reality connected anti-parallel. Then if we would like to revert car direction, it is enough to change polarity of LEDs. I was positioned them on the PCB in that direction, that on both sides front lights have cathode upside and rear lights have cathode downside does not matter, it is on left or on right side. It is also possible to use this effect with combination of bi colour LEDs (yellow + red) with two wires, where colour depend on polarity. Then it will automatically switch colour depend on travelling direction.
Vzhledem k tomu, že dekodér používá u mne již notoricky známou techniku náhodného generátoru s velkou entropií, je možné přímo osadit několik dekodérů do jednoho vagónu. Já jsem tuto situaci použil právě pro patráky,kde jsem dal dva téměř identické dekodéry nad sebe. Vzhledem k tomu, že jsem použil pouze jeden stabilizátor a ve vagónu není dostatečný proud vzduchu, rozhodl jsem se použít větší stabilizátor 78M05.
To samé lze použít v případě osazení dekodéru do vagónů větších až gigantických měřítek, kdy asi nebude stačit 10 LED na osvětlení salónu a nebo se budou osvětlovat jednotlivá kupé.

Předpokládám, že uživatelé dlouhých vagónů už zjistili že je nevhodné propojovat sběr proudu mezi jednotlivými podvozky, protože pak dochází k překlenování úseků na dlouhou dobu a dlouhou vzdálenost, proto má tato verze sběr ze dvou stran, které nepropojuje.
Vzhledem k tomu, že ve vagónu bylo značné nevyužité místo, použil jsem v této verzi dva kondenzátory 470μF jako zálohu energie. Pro vlastní provoz není taková kapacita nutná.
Because decoder using well known technique of random number generator with good entropy, it is possible to directly use few same decoders inside one car. I was used it in double deck cars. I was mounted two more/less identical decoders to every level. Because I was used only one stabilizer and air blow inside car is not that good, I decided to use bigger stabilizer 78M05
Same principle can be used also when decoder is used inside cars of bigger or gigantic scales, where 10 LEDs will not be enough for salon or where will be lighted separate compartments.

I guess, that users of long cars already found, that it is not good to interconnect pick-up lines between two chassis, because then bay pass of two section of layout is for long time and long distance. Then my version have independent pick-up on both sides and those pick-ups are not connected.
Because in my car was big unused place, I used in this version two capacitors 470μF as energy storage. For decoder principle is no necessary to have that big capacity.



Popis software

Jak už zaznělo, software je kompilací základního funkčního dekodéru a charlieplexingu. Dále už jen efekt blikajících zářivek, který už jsem také použil v několika dekodérech.
Trochu potíž je v tom, že Charlieplexing, stejně jako dekódování DCC signálu mají nároky na zpracování v reálném čase a to je na tomto jednoduchém procesoru opravdu velký problém, Musel jsem trochu zjednodušit zářivkový efekt. Zároveň jsem se nedostal na víc než těch 12 LED, ačkoli má procesor stále jednu volnou nožičku a bylo by tak možné připojit až 20 LED. Mimo jiné také proto, že mi došla RAM pro ukládání stavů. Později jsem dekodér přepracoval pro procesor PIC16F15313, který zmíněné nedostatky odstraňuje a umožnil mi zavedení nového efektu stejnosměrného / střídavého napájení světel. (Střídavé napájení vytváří efektní blikání, ale u nás se moc nepoužívá, stejnosměrné napájení zapaluje zářivku bez blikání, u nás je běžnější)

Vzhledem k tomu, že se jedná o dekodér pro vagóny u kterých se předpokládá, že budou jezdit v soupravách, zavedl jsem prvek advanced consistingu - maskování funkcí koncových světel.
To v praxi znamená, že pokud je vůz zapojen někde uprostřed soupravy, jednoduše se mu vypnu koncová světla, aby nesvítila na sousední vagón. K tomu slouží CV#22. Jednoduše pokud je v něm obsažená hodnota 0, pak se používají přední i zadní koncová světla. Pokud je hodnota CV22 rovna 1, pak se nepoužívají přední světla, ale pouze zadní světla. Hodnota 2 znamená pouze přední světla a vypnutí zadních světel. Hodnota 3 pak znamená, že se nepoužívají ani přední a ani zadní světla.

Pochopitelně zůstaly zachované funkce jako zámek dekodéru v CV#15 a CV#16, aby nedocházelo k nežádoucímu přeprogramování dekodéru v případě, že používáme basic consisting (všechny vagóny používají stejnou primární adresu v CV#1 jako lokomotiva). K dispozici je také CV#19 pro advanced consisting (každý vůz má svou adresu v CV#1 a souprava používá společnou adresu v CV#19) a dekodér také reaguje na přímé DCC příkazy pro spojování a rozpojování soupravy.

Software description

As already mentioned, software is compilation of basic function decoder and charlieplexing. Next part is only effect of blinking neon lamps I already used in variety of decoders.
Little problem is, that charlieplexing same as decoding of DCC signal are very sensitive to real time processing; and it is big problem for that low quality processor. Then I must little simplify effect of neon lamps. And I'm still not able to drive more than 12 LEDs, even processor have one unused pin and in theory will be possible to drive up to 20 LEDs. By the way also because I have not enough empty RAM for store effect data. Later on I rework software for processor PIC16F15313. This processor have more resources, then it is possible to introduce new effect for for alternate current / direct current lights power. (Alternate current create more popular flickering effect. Direct current starting each light without flickering, DC is more usual in Europe.)

Because decoder is designed for cars usually used in consists, I added part of advanced consisting - masking of function of tail lights
It mean in reality, that if car joined in middle of consist, tail lights can be simply turned off, to prevent lighting to next coach. For this purpose CV#22 is prepared. If this CV contains value 0, then front and back lights working normally. If value of CV#22 is 1, then front lights are disabled, but rear lights working normally. Value 2 of CV#22 mean turn off rear lights, but front lights working. Value 3 of CV#22 mean, that no tail lights on this coach will be used.

Of course traditional functions like decoder lock in CV#15 and CV#16, to avoid unexpected re-programming of decoder in case we are using basic consisting (all decoders using same primary address in CV#1 as locomotive). Here is also available CV#19 for advanced consisting (every decoder have its own address in CV#1 and consist using common address in CV#19). Decoder also reacts to direct DCC commands for coupling and uncoupling consists.




Dekodér ve voze Bap od Kuehna | Decoder in Kuehn car Bap:

Návod k používání

Na fotkách a videích je dekodér osazen včetně červených koncových světel. To ale není běžné, normálně se plošky nechávají volné a na jejich místo si každý modelář naletuje LED diody na drátcích, nebo pomocných destičkách tak, aby správně pasovaly do světel použitého vagónu. Pak už stačí jen zamontovat do vagónu, připojit sběr proudu a je hotovo.
Co se týká nastavení, tak toho také není mnoho. Nastaví se adresa do CV#1 a nebo dlouhá adresa do CV#16 a CV#17. Počet používaných rychlostních stupňů do CV#29 stejně jako u každé lokomotivy.
Dekodér má pevně definovaná světla na funkci F0. Nicméně funkce pro osvětlení salónu je volně definovatelná v rozsahu F1 - F12 (výchozí hodnota je F1). To která funkce je použita je zapsáno v CV#47 (výchozí hodnota 1). Pokud tedy chceme pro osvětlení salónu použít jiné číslo funkce, pak je potřeba jej nastavit do CV#47
Pro modelový vzhled je důležitá hodnota CV#48. Výchozí hodnota 0 znamená, že se "zářivky" startují bimetalovým startérem, což je běžné pro střídavě napájené zářivky. Takové se však u nás téměř nepoužívají. U nás jsou mnohem častější zářivky startované tyristorovým startérem, které se rozsvěcí bez blikání. Nastavení se provádí v CV#48. Výchozí hodnota 0 je mnohem atraktivnější, hodnota 1 více odpovídá Evropským předlohám.

Seznam CV

Instructions for use

Decoder presented on photos and videos is presented with tail lights on board. It is not usual; normally pads are empty and they are used for wires (or mini boards) to LEDs in proper par of car. Then after soldering of tail LEDs decoder is ready for built in car. It is enough to connect pick up wires and that is all.
It is not many parameters to configure here. Only address in CV#1 or long address in CV#16 and CV#17. Eventually number of used speed steps into CV#29. All same as for usual locomotive
Decoder have fixed tail lights on function F0. But function for salon light can be configured to any value from F1 to F12 (default value is F1). Configuration what function is used is stored in CV#47 (default value 1). Then if we would like to use another function for salon light, then we have to program it into CV#47
For realistic look is crucial value of CV#48. Default value 0 mean, that "light tubes" are started like using bi-metal starter; that is usual for AC powered tubes. AC powered tubes are not so usual for our cars. In our region are usual DC powered tubes with thyristor driven starter. DC powered tubes are starting without flickering. Configuration is done in CV#48. Default value 0 is more attractive, but value 1 is more realistic for European railways.

CV List


CV Values
CV#defaultmin-maxvýznammeaning
131-127Primární adresaPrimary address
71.0ROVýrobní verze, aktuálně 1.0, pouze pro čteníManufacturing version, actual is 1.0, read only
8158ROID výrobce, aktuálně 158 - Jindra FučíkManufacturer ID, actual 13 - Jindra Fučík
1500-255Zámek dekodéru, proměnlivá část (klíč)Decoder lock, variable part (key)
1600-255Zámek dekodéru, statická část (zámek)Decoder lock, static part (lock)
171920-255Dlouhá adresa, spodní částLong address l. part
1800-255Dlouhá adresa, horní částLong address u. part
1900-255Adresa pro jízdu v soupravěConsist address
2200-255Zakázat světla při jízdě v soupravě
- BIT 0 (1) zakázat přední
- BIT 1 (2) zakázat zadní
Disable lights in consist
- BIT 0 (1) disable front lights
- BIT 1 (2) disable rear lights
2920-35Konfigurace
- BIT 0 (1) přehození směru jízdy
- BIT 1 (2) počet jízdních kroků 14/28(128)
- BIT 5 (32) Aktivace dlouhé adresy
Configuration
- BIT 0 (1) reverse direction
- BIT 1 (2) number of used speed steps 14/28(128)
- BIT 5 (32) long address active
4711-12Funkce použitá pro osvětlení salónu (F1)Function used for salon light (F1)
4800-1Nastavení
- BIT 0 (1) efekt střídavého/stejnosměrného rozsvěcení
Flags
- BIT 0 (1) AC/DC effect

Závěr

Ukázalo se, že i jednoduché dekodéry a jednoduché konstrukce mohou nabídnout slušné a efektní výsledky při osvětlování vagónů. Není úplně nutné kupovat čínské LED pásky a nutit univerzální dekodéry k nereálným akcím.

Resume

It is presented, that very simple decoders and very simple constructions can present very good value during car lighting. It is no necessary to buy china LED strips and try to hack universal decoders to unreal actions.

Pokud máte problém s osazováním, nebo s výrobou desek plošných spojů, využijte kontaktní formulář na TOMTO web-shopu, kde si můžete objednat komponenty nebo hotový dekodér. Once you have problems with soldering or creating PCB boards, please use contact form on THIS web-shop, where you can order some parts or finished decoder.

Download: Eagle files