ig-trix-express.de

Interessengemeinschaft Trix-Express

DCC Digital

Diskussionen, Tipps und Tricks zur Digitaltechnik.
Nicht themenbezogene Beiträge werden gelöscht.

DCC Digital

Beitragvon Gast » 02.12.2007, 00:50

Hi,
DCC Format einfach erklärt.

Beim Start liest der Decoder seine Adresse aus dem EEPROM in 2 Flashregister ein.



Digital kennt zwei Zustände 1 und 0 also Spannung da oder nicht da.
Analog kennt zwischen 0 und 12 Volt aber unendlich viele Zwischenschritte.

Das heist jetzt aber nicht, dass man Digital nur eine 0 oder 1 verschicken kann.
Im DCC Format bezieht sich Digital jeweils auf ein Bit.
Ein Bit kann nur Null oder Eins sein.
Es werden aber immer 8 Bit zu einem Byte zusammengefasst.
Und in so einem Byte sind die Zahlen 0 bis 255 codiert.

Wie weiß nun der Decoder in dem unendlichen Bit und Bytestrom (auf der Schiene) wann beginnt ein Befehl und wann bin ich betroffen ?

Dies haben die Firmen in der Anfangszeit jede anders gelöst, bis die NMRA Normung erschaffen wurde.
Ich behandle den DCC extended Mode :

Befehlsübermittlung :
Der Encoder (Centralunit,Lokmaus,PC usw.) sendet als erstes eine Präambel (10 Einsbit), gleich gefolgt von einem Trennbit .Dies bedeutet für die Decoder: Habt acht jetzt kommt was.
Und zwar in dieser Reihenfolge:
1.)Adressbyte eins
2.)Trennbit
3.) Adressbyte zwei
4.)Trennbit
5.)Datenbyte
6.Trenn(Schlußbit)
============== Zukünftig =========
7.Datenbyte 2
8.Trennbit
9. Datenbyte 3
10.Trennbit
============= Ende Zukünftig ======
11. Fehlerbyte
12. Schlußbit

Sämtliche Adressen,Daten und das Fehlerbyte werden im Decoder zwischengespeichert.Dabei wird intern pro Byte ein Zähler erhöht.(Wurde bei der Präambel gelöscht)

Auswertung :
Der Decoder muss derzeit 4 Bytes empfangen.Werden weniger gezählt wird das Empfangene gelöscht.
Stimmt es, erzeugt der Controler aus den 2 Adressenbyte und dem Datenbyte mittels XOR Verknüpfung sein Fehlerbyte.Ebenso hat vor der Befehlsausgabe der Encoder dieses Fehlerbyte erzeugt und gesendet.
Stimmen im Decoder dann Beide(das Empfangene und das selbst Errechnete) Fehlerbyte überein, wird weiter ausgewertet, ansonsten das Empfangene gelöscht.
Nächster Schritt: Aus den 2 Adressenbyte wird eine 16 Bit Adresse gebildet und mit der Decodereigenen Adresse verglichen.
Erst wenn diese Beiden dann übereinstimmen wird der Befehl ausgeführt.
Zum Schluss wird dann das Empfangsprotokoll wieder auf Null gesetzt.

Würde man nun elektrisch gesehen die 0 mit keine Spannung und die 1 mit voller Spannung nehmen könnte man auf einem 2Leitergleis die Lok nur in eine Richtung aufgleisen.Andersherum würde das Signal gespiegelt empfangen. Was tun ?
Nur noch mit Märklin 3Leiter fahren? Hier findet kein Polaritätswechsel statt? Ne, bestimmt nicht.
Also hat man sich auf die Zeit geeint, die zwischen 2 steigenden oder 2 fallenden Flanken verstreicht.

Folgende Definition gilt nach NMRA
eine Eins hat 58 µs (µs=Mykrosekunde)
eine Null hat 116 µs
Pause nach einem Packet 232 µs.

Somit ist nicht mehr der Spannungspegel, sondern die Zeit zwischen den Flanken ausschlaggebend.Und diese sind in beiden Aufgleisrichtungen gleich.
Da man aber zum Zählerstart beim Flankenzeitmessen einen schnellen Spannungswertwechsel braucht, hat man sich für eine Rechteckspannung entschieden.

Dies währe das eine, nur hat man nun einen stotternden Motor, da bei einem Nullbit ja auch der Motor keinen "Saft" erhält.

Nun kommt der Gleichrichter in's Spiel.Damit wir diesen nutzen können brauchen wir aber eine "echte" Rechteck Wechselspannung von + 15 Volt und - 15 Volt.
Diese wurde auch gemacht.Aus den null Volt wird nun -15 Volt erzeugt.(Geschieht im Booster).
Und was macht der böse Gleichrichter ?
Der klappt die -15 Volt Rechtecke in das Loch zwischen den zwei + 15Volt Rechtecken nach oben und schliesst somit das Nullspannungsloch.
Super nicht wahr, war echt Hirnschmalz von den Entwicklern.
Das Signal für den Decoder wird natürlich vor dem Gleichrichter abgegriffen.

Also haben alle DCC Fahrer eine echte Rechteck Wechselspannung am Gleis und fahren trotzdem mit Gleichstrom am Lokmotor.Iss doch auch was.

Anhang :
So sieht das Signal am Gleis mit einem Oszilloskop aus.
In diesem Fall das Basisformat.(kurze Adressen,14 Fahrstufen)
Startbit = Trennbit.


Servus
Georg

P.S. Bei Interesse handele ich das Zubehördecoderformat auch ab.
Gast
 

Beitragvon Stefan » 03.12.2007, 11:15

Hallo zusammen,

wen das genauer interessiert:

NEM 650 – NEM 654
Beschreibung der Schnittstellen und Schnittstellenstecker (unabhängig vom Digitalsystem)
http://www.morop.org/de/normes/nem650_d.pdf
http://www.morop.org/de/normes/nem651_d.pdf
http://www.morop.org/de/normes/nem652_d.pdf
http://www.morop.org/de/normes/nem653_d.pdf
http://www.morop.org/de/normes/nem654_d.pdf
NEM 670 (= NMRA S9.1)
Darstellung des physikalischen Signals einer DCC Nachricht
http://www.morop.org/de/normes/nem670_d.pdf
NEM 671
Beschreibung der zu übertragenden Bytes in einer DCC Nachricht
http://www.morop.org/de/normes/nem671_d.pdf

NEM 680
Darstellung des physikalischen Signals einer Selectrix Nachricht
http://www.morop.org/de/normes/nem680_d.pdf

NEM 681
Beschreibung der zu übertragenden Bytes in einer DCC Nachricht
http://www.morop.org/de/normes/nem681_d.pdf

Gruß
Stefan
Stefan
 
Beiträge: 207
Registriert: 10.10.2005, 11:44


Zurück zu Digital

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste