Systemy sterowania cyfrowego (moje ulubione). Obecnie
najpopularniejsze są: DCC (preferowany przez NMRA) i Marklin (od nazwy firmy).
Oba systemy działają na podobnej zasadzie. Różnią się tylko formatem danych.
W skrócie polega to na tym, ze w szynach (wszystkich) płynie prąd przemienny i
dane są przesyłane podobnie jak w połączeniu RS232. Impulsy krótsze to jedynki,
dłuższe to zera. Każda lokomotywa, zwrotnica ma swój dekoder i swój unikalny adres
i każda komenda zawiera adres urządzenia, którego dotyczy. Jako, ze w całym układzie
płynie prąd przemienny urządzenia mogą być zasilane z szyn, a jednocześnie czerpać
z nich informacje. Całością steruje bądź specjalna centralka (command station) lub
komputer, do których można przyłączać sterownice dla poszczególnych lokomotyw,
rozjazdów, wyświetlacze sytuacji na makiecie itp. Centralkę dołącza się do boostera,
który dane sterujące wzmacnia do poziomu napięcia na szynach. W zależności od wielkości
makiety stosuje się boostery o rożnej wydajności prądowej lub nawet kilka dołączonych
do rożnych fragmentów makiety.
Na serwerze NMRA jest szczegółowy opis standardu DCC http://www.nmra.org
Na tym serwerze jest sporo odnośników: http://www.tttrains.com/dcc/
Oto całkiem niezły adres: http://www.miba.de/workshop/steuer.htm
Maja tam cale mnóstwo programów do sterowania kolejkami.
Warstwa "fizyczna" jest dosyć prosta. Otóż na "tory" podawany jest "wzmocniony" sygnał sterujący z komputera/centralki o przebiegu prostokątnym. "Wzmacniacz" tzw. booster, który podaje sygnał (ok. 4 do 18 woltów w zależności od skali) z odpowiednią wydajnością prądową wystarczającą do uruchomienia lokomotyw (i/lub zwrotnic, semaforów itp, od 0.5A do 6A i więcej). Sygnał ten ma częstotliwość paru/parunastu kilo herców (standard NMRA przewiduje aby np. dekodery miały pasmo do 100kHz). W praktyce stosuje się 4-9kHz. I teraz sedno (wg NMRA) . "Jedynki" maja czas nominalnie 58 mikrosekund, natomiast zera 100 mikrosekund i więcej. Jest to "trochę" podobne do transmisji szeregowej. Dekoder nasłuchuje, i w ciągach zer i jedynek czeka na "ramkę" (sekwencję), która jest adresowana do niego i gdy taką dostaje wykonuje odpowiednie polecenie: steruje silnikiem (impulsowo podaje przez układ H-bridge np. tylko dodatnie połówki przebiegu lub tylko ujemne), włącza/wyłącza światła itd. itp. To znowu trochę przypomina działanie sieci ethernet, wszystkie dekodery nasłuchują i czekają na ramkę adresowaną do siebie bądź na ogłoszenie adresowane do wszystkich. Napięcie do zasilania układu dekodera i układów wykonawczych pobierane jest z szyn i prostowane, tak jak w gniazdku.
Program do sterowania makietą jest do obejrzenia na stronie:A to trochę linków o projektach DCC, centralki, sterowanie itp.:
http://www.geocities.com/ResearchTriangle/Thinktank/1096/detector.htmlDCC Compatible Block Occupancy Detector
http://jdb.psu.edu/nmra/dccfiles.html NMRA Electrical Committee: Digital Command Control Files for FTP http://hoflink.com/~kjesser/ Using that old PC for DCC http://www.geocities.com/CapeCanaveral/7396/ Digital Command Control Experimenter's Corner http://www-public.tu-bs.de:8080/~i7120201/dcc/dcc_d.htm DCC meets FREMO http://www3.sympatico.ca/robert.cote/dcc.htm A DCC do-it-yourself project... http://www.muenster.de/~amuehl/dcc2.htm DCC-Selbstbauprojekte und weitere Informationen: http://www.geocities.com/CapeCanaveral/Lab/2459/DCC.HTM Digital Command Control Tips for building your own DCC System http://www.geocities.com/CapeCanaveral/Lab/2459/ Martin Pischky's HomePage http://www.geocities.com/CapeCanaveral/Hall/3892/ Mathias Hellmann´s HomePage http://pages.sssnet.com/donc/detector.html Opto-Isolated Input Block Detector http://www.geocities.com/SiliconValley/Lakes/6365/ Stefan Haack´s Homepage http://personal.riverusers.com/~stepmurr/DCC.html Steve's DCC Project http://www.geocities.com/CapeCanaveral/7706/ Tillorps Mekaniska (The Tillorp Locomotive Works)Moje ulubione linki:
http://www.ida.net/biz/tetonsl/railroad/DCCboost.htm DIGITAL COMMAND CONTROL ON THE TETON SHORT LINE (POWER BOOSTERS) http://www.launet.baynet.de/o.spannekrebs/franken-dcc.htmlFranken-DCC-Zentrale
http://www.users.bigpond.com/pbhandary/dcc/DccHome.html The DCC Project http://web.syr.edu/~mobrandt/dcc-mb/dccmbhom.htm The DCC-MB Home Page http://www.geocities.com/CapeCanaveral/7706/hw.html TMWDCC HardwareDekodery DCC do samodzielnego "montażu" (tez moje ulubione)
http://elnus.etech.hs-bremen.de/dcc_decoder.html DCC goes Z http://animation.acmecity.com/triangle/130/decopic.html NMRA-DCC Minidecoder für Analogmotore Hardwarebeschreibung:Mój faworyt
http://ourworld.compuserve.com/homepages/deano32/ndecoder.htmN Scale Decoder DCC w pigułce: http://www.mindspring.com/~drre/aboutdcc.htm Digital Command Control: The Wave of the Future http://jdb.psu.edu/nmra/faq_19.html NMRA Electrical Committee: Digital Command Control Working Group FAQ (Frequently Asked Questions) Version 1.9 http://www.digitrax.com/clinic.htm Digital Command Control: The Wave of the Future http://privat.schlund.de/R/RMueller/dcc/decoders.htm DCC-Decoder-Praxis http://www.muenster.de/~amuehl/dcc.htm Digital Command Control(DCC) http://www.cvpusa.com/dcc/command_station_operations.html EasyDCC Command Station Basic Operation http://www.uni-duisburg.de/FB9/NGA/mitarbei/bruck/nem/nem-s.htm Eine digitale Schnittstelle für alte N-Loks http://www.geocities.com/SiliconValley/3201/Links.html A UK based group promoting interest in the application of electronics (including computers) to all aspects of railway modelling http://www.muenchen.roses.de/~rguenther/nem651.htm NEM651 (S) Schnittstelle http://jdb.psu.edu/nmra/dcc.html Digital Command Control Working Group's Web and Archive Site http://members.aol.com/lareyman/ CUSTOM INSTALLATIONS Info, Pricing and Links http://www.jps.net/dlball/aboutdcc.htm DCC Shop http://www.tttrains.com/dcc/dcctips.htm DCC Tips http://www.tttrains.com/dcc/ The World Of DCC http://members.aol.com/wire4dcc/diy.htm Do It Yourself Links http://members.aol.com/locochaser/switches.htm Wiring TurnoutsLinki DCC:
http://www.german-railways.com/Models/DCC.htm Digital Command Control (DCC) http://www.geocities.com/ResearchTriangle/Thinktank/1096/dcclinks.html DCC Links of interest. http://www.muenster.de/~amuehl/dcc2.htm DCC-Selbstbauprojekte und weitere Informationen: http://www.hobbylinc.com/train/links/elect.htm Products / Trains / Links / Electronics http://www.geocities.com/Heartland/Estates/6675/ Model Railroading With Larry Puckett http://members.home.net/rrsim/ The Model Railway Control Concepts Exchange http://people.frankfurt.netsurf.de/wky/mbahn.htm#table11 Modelleisenbahn-Links http://pages.sssnet.com/donc/links.html Must have Links. http://ourworld.compuserve.com/homepages/PGuertler/Z-Links.htm Main Z-Scale Links. http://www.rrhistorical.com/nmra/modelec.html NMRA Directory... Model Railroading: Electronics/DCC http://www.rrhistorical.com/nmra/railfanw.html NMRA Directory...Modern Railfanning: World Alphabetized by country... Sporo tego, ale jak widać w sieci temat jest dosyć popularny. Ja osobiście mam zamiar wykorzystać port szeregowy z PC'ta bo sygnał z RS'a wystarczy wzmocnić w boosterze bez dodatkowych układów zamieniających transmisję równoległą z portu drukarki na szeregowy sygnał potrzebny boosterowi. Szybkość raczej nie ma wielkiego znaczenia bo port szeregowy ma dosyć duże pasmo (standardowo 112kbps). A to dużo więcej niż nam potrzebne do DCC.A tak a propos to na sieci znalazłem nawet prosty układ, który służy do podsłuchiwania sygnału DCC wykorzystujący kartę dźwiękową.
http://www.digitoys-systems.com/ShowDCC_e.htmlMałe FAQ dotyczące DCC
Czy lokomotywa przesyła jakieś informacje do centralki ?
W zasadzie lokomotywa nie przesyła potwierdzenia. Jedynie w modzie serwisowym.
Co do czasów trwania poszczególnych sygnałów to zobacz pod adresem:
http://www.tttrains.com/nmradcc/s91.html Electrical Standard for Digital Command Control, All ScalesCytat:
"In a "1" bit, the first and last part of a bit shall have the same duration, and that duration shall nominally be 58 microseconds(2), giving the bit a total duration of 116 microseconds. Digital Command Station components shall transmit "1" bits with the first and last parts each having a duration of between 55 and 61 microseconds. A Digital Decoder must accept bits whose first and last parts have a duration of between 52 and 64 microseconds, as a valid bit with the value of "1". In a "0" bit, the duration of the first and last parts of each transition shall nominally be greater than or equal to 100 microseconds. To keep the DC component of the total signal at zero as with the "1" bits, the first and last part of the "0" bit are normally equal to one another. Digital Command Station components shall transmit "0" bits with each part of the bit having a duration of between 95 and 9900 microseconds with the total bit duration of the "0" bit not exceeding 12000 microseconds. A Digital Decoder must accept bits whose first or last parts have a duration of between 90 and 10000 microseconds as a valid bit with the value of "0". Figure 1 provides an example of bits encoded using this technique."
Czy dekoder sie stroi ?
Jeśli trochę znasz się na sieciach komputerowych to mój wykład będzie trochę za długi, ale może inni mniej doświadczeni będą zainteresowani. Otóż w tym przypadku nie ma zastosowania strojenie czy czułość. O ile dobrze pamiętam to zakres napięcia, które powinien rozpoznawać dekoder mieści się od +-4V do +-18V. To co odbiera dekoder to tylko fala prostokątna z zakodowanymi "0" i "1" poprzez zmianę długości trwania poszczególnych impulsów. Ten ciąg zer i jedynek dekoder musi dekodować na bieżąco i gdy natrafi na przynajmniej 10 jedynek i następujące po nich zero, zaczyna to interpretować jako rozkaz. Przykładowy rozkaz:
1111111111 0 11111111 0 00000000 0 11111111 1 Preambuła Bajt pierwszy Bajt drugi Bajt trzeciBajt pierwszy to adres dekodera do którego rozkaz został wysłany
Bajt drugi to rozkaz Bajt trzeci to bajt kontrolny będący wynikiem funkcji EX-OR na bajtach pierwszym i drugim.Dopiero po odebraniu i sprawdzeniu zgodności tego pakietu dekoder stwierdza czy ten rozkaz jego dotyczy czy nie. Rozkazy mogą być adresowane wyłącznie do jednego dekodera (szybkość, włącz światła itp.) lub do wielu jednocześnie (np. reset wszystkich dekoderów, zatrzymanie awaryjne całej makiety, idle mode - czy zawieszenie makiety itp).
Oczywiście aby uniknąć przekłamań lub nieodebrania rozkazu są one powtarzane co wyznaczony normą czas.
Poniżej adres strony, z której zaczerpnąłem tę wiedzę:
http://www.tttrains.com/nmradcc/s92.html
A to adres strony dotyczącej standardu DCC wg NMRA:
http://www.tttrains.com/nmradcc/
Adres dekodera jest przechowywany w pamięci EEPROM lub FLASH procesora sterującego
dekodera. A nadaje się ten adres wykorzystując tryb serwisowy dekodera. W skrócie
polega to na tym:
na makiecie (lub poza nią) wyznacza się tor serwisowy dla pojazdów (dla dekoderów
stacjonarnych oddzielne podłączenie). Booster serwisowy może mieć małą moc bo
służy tylko do wysyłania rozkazów do dekodera, więc musi mieć moc wystarczająca
jedynie do zasilania dekodera. Dodatkowo booster serwisowy powinien mieć możliwość
czytania odpowiedzi z szyn (z podłączenia dla stacjonarnych). Służy to do odczytania
czy dekoder ma prawidłowo zapisane ustawienia w rejestrach. A te ustawienia to
nie tylko adres. Można tam również ustawić tablice kodowania prędkości. Bo jak
wykazują badania w poważnych pismach dla modelarzy, charakterystyka prędkości w
funkcji napięcia na zaciskach silnika nie jest liniowa. Ponadto można tu tez
uwzględnić np. jazdę ze składem i np. podać większe napięcie aby uzyskać te sama
prędkość. Zmiennych do ustawienia wg standardu NMRA jest... 512 dla dekoderów tzw.
multi-function, z czego do ustawiania jest ok 100, bo reszta jest zarezerwowana,
dwie są tylko do odczytu (ID producenta i numer wersji) i kilka zarezerwowanych
dla ustawień producenta. Dekodery dla akcesoriów mają 1024 zmienne z czego ustawia
się ok 20, reszta zarezerwowana. Po ustawieniu albo przestawia się lokomotywę na
tory normalne makiety. Ale bardziej eleganckim rozwiązaniem jest przełącznik, który
dołącza do torów serwisowych raz booster serwisowy, a raz booster makiety. I po
ustawieniu parametrów np. lokomotywa spokojnie sobie wyjeżdża na makietę.
Na torze serwisowym może w danym momencie stać tylko jeden pojazd, ponieważ rozkazy serwisowe nie mają adresu i gdyby stały tam np. dwie lokomotywy, obie miałyby te same ustawienia. Nie wiem jak to jest w praktyce ale taka sytuacja mogłaby mieć hipotetyczne zastosowanie jedynie w trakcji wielokrotnej. Ale i tak nie dałoby się poprawnie odczytać stanu rejestrów ustawień lokomotyw bo nie wiadomo by było, która odpowiedziała.
Jak steruje się urządzeniami na makiecie?
Do sterowania szeroko pojętymi akcesoriami stosuje się w najprostszym przypadku ten sam booster co do pojazdów na szynach. Tyle, ze dekodery akcesoriów są podłączone na stałe kablami. W tym przypadku problemem może być zapewnienie odpowiedniej mocy. Przy sterowaniu komputerem może się zdarzyć, że w jednym momencie zostanie przełączonych więcej urządzeń i wzrośnie zapotrzebowanie na moc z boostera. W skrajnych przypadkach może to wpłynąć na płynność ruchu pojazdów. Najlepiej jednak chyba zastosować drugi booster. Co do najlepszych boosterow to mogę polecić trzy projekty.
1. na układzie L298 (DUAL FULL-BRIDGE DRIVER) do ok. 4A.Pozwala on na zbudowanie dwóch boosterów wykorzystując jeden układ scalony. Rozwiązanie jest o tyle dobre, ze ma wewnętrzne zabezpieczenie temperaturowe, jest w miarę proste i polecane przez autorów "DCC-MB Booster"
Jedynym problemem może być zdobycie scalaka. Ale w dzisiejszych czasach nie powinno być problemów ze sprowadzeniem tego przez jakiś sklep z częściami elektronicznymi lub przez Internet (!).
2. na tranzystorach IRLZ34 (power booster) do ok. 3A.
W miarę przyzwoity układ. Tutaj problemem może być zdobycie tranzystorów IRLZ34. Ale do przeskoczenia. Jest tam tez projekt boostera do programowania.
3. bazujący na L298 ze strony "TMWDCC Hardware"
Można go wykonać w dwóch odmianach NMRAF7 i NMRAF8 odpowiednio 3A i 6A. W drugim przypadku obie połowy L298 zostały połączone równolegle, co dało większą wydajność prądową (6A). Na tej stronie są jeszcze projekty Miniboostera i Midiboostera.
W systemach ze sterowaniem DCC stosuje się podobne układy jak w sterowaniu blokowym. Na sterowaniu blokowym się nie znam. Może ktoś z grupowiczów wie, albo sam coś robił? W DCC stosuje się detektory, które reagują na pobór prądu przez urządzenie na izolowanym odcinku.
Wyjścia detektorów dołącza się do wielowejściowych kart I/O. Teraz to już tylko problem oprogramowania, żeby zlokalizować pociąg. Jako uradzenia śledzone przez detektory mogą być użyte również wagony po zwarciu kół zestawu kołowego opornikiem o odpowiedniej rezystancji. To tyle co wiem. Praktyki nie mam ale popatrz pod w/w adresy, tam jest więcej i praktyczniej.