OpenDCC - Zentrale und Dekoder für DCC - Configuration Variablen

    Sorry, no english page available

Was ist eine CV?

    Ein Lokdecoder oder ein Zubehördecoder (Accessory-Decoder) kann im seinem Reaktionsverhalten auf DCC-Befehle mit Konfiguationsvariablen (=CV) eingestellt werden. Darunter fallen neben der Lokadresse und Zahl der Fahrstufen auch die Einstellungen für Beschleuigung, Bremsen, Lichtansteuerung usw. Insgesamt sind 1024 verschiedene CV's vorgesehen, ein Großteil davon ist unbenutzt bzw. herstellerspezifisch belegt.

Wie werden diese CV-Variablen geschrieben?

    Es gibt verschiedene Techniken, diese CV's zu programmieren. Diese sind in RP.9.2.3 der NMRA Standards definiert.
  • Adress-Only
    Hier wird einfach die Adresse umgestellt - d.h. CV1 neu programmiert. Das ist ein historischer Befehl.
  • Register-Programmierung
    Diese Art der Programmierung erlaubt den Zugriff auf die 8 wichtigsten CVs:
       Register   Code   CV, Bedeutung
      1 000  CV1: Adresse
      2 001  CV2: Anfahrspannung
      3 010  CV3: Beschleunigung
      4 011  CV4: Bremsverzögerung
      5 100  CV29: Konfiguration
      6 101  Page: reserviert
      7 110  CV7: Version
      8 111  CV8: Herstellerkennung
  • Paged
    Die seitenweise (=paged) Programmierung ist ein Erweiterung der Registerprogrammierung, mit der kompletter Zugriff auf alle CV's möglich ist. Eine Seite ist als ein Paket von vier aufeinanderfolgenden CV's definiert, d.h. CV1, CV2, CV3 und CV4 bilden die Seite 0, CV5 bis CV8 die Seite 1, usw. Bei der Programmierung wird in das Register 6 zuvor die Adresse der Zielseite eingeschrieben. Der Decoder blendet daraufhin diese Seite anstatt der Register 1-4 ein.
  • Direkt Mode
    Hierbei wird direkt die Adresse der zu schreibenden oder lesenden CV im DCC-Befehl angegeben. Es gibt sowohl Direkt Mode Befehle für den Bytezugriff als für den bitweisen Zugriff.
  • POM (=Programming on the main, Programmieren auf dem Hauptgleis)
    Die zu schreibende oder lesende CV wird zusammen mit der Lokadresse auf dem normalen Gleis ausgegeben (nicht auf dem Programmiergleis). Der Decoder erkennt die Programmierung an, wenn er zweimal direkt hintereinander den gleichen POM-Befehl empfängt. Normalerweise kann der Empfang nicht bestätigt werden, die Auswirkung der Programmierung sollte sofort kontrolliert werden.

CV-Variablen für Lokomotiven

    Die hier aufgelistetem CV's sind einheitlich in RP.9.2.2 der NMRA festgelegt. In der nachfolgenden Tabelle sind Bits entsprechend ihres mathematischen Gewichts benannt - also Bit 0 ist das LSB, Bit 7 ist das MSB. Manche Dekoderdokumentationen bezeichnen die Bits von 1 bis 8.

    CV# CV-Name Bereich
    (default)
    Bedeutung
    1 Basis-Adresse 0 ... 127
    (3)
    Die Basisadresse enthält die Lokadresse. Ist CV#1 gleich 0, verlässt der Decoder den Digitalbetrieb und wechselt in den Alternativ-Betrieb (Analog-Betrieb). Normalerweise wird beim Schreiben der CV1 im Decoder automatisch CV19 (Mehrfachtraktionsadresse) und in CV29 das Bit 6 (Verwendung der erweiterten Adresse) gelöscht.
    2 Start-Spannung 0 ... 255
    (-)
    Definiert die Fahrspannung, die bei niedrigster Fahrstufe am Motor anliegt.
    3 Beschleunigungsrate 0 ... 255
    (-)
    Definiert die Länge der Wartezeit, die beim Beschleunigen jeweils vor dem Hochschalten zur nächst höheren Fahrstufe vergeht.
    4 Bremsrate 0 ... 255
    (-)
    Definiert die Länge der Wartezeit, die beim Bremsen jeweils vor dem Herunterschalten zur nächst niedrigen Fahrstufe vergeht.
    5 Maximale Spannung 0 ... 255
    (0)
    Definiert die Fahrspannung, die bei höchster Fahrstufe am Motor anliegt.
    6 Mittlere Spannung 1 ... 255
    (1)
    Definiert die Fahrspannung, die bei mittlerer Fahrstufe am Motor anliegt.
    7 Versionsnummer 1 ... 255
    -
    Gibt die Versionsnummer der Decoder-Software an. JMRI hat eine Übersicht.
    8 Herstellerkennung 0 ... 255
    see Appendix zur 9.2.2 der NMRA oder auch weiter unten.
    9 PWM-Periode 0 ... 255
    (0)
    Die am Motor anliegende Spannung wird durch eine Pulsweitenmodulation (Ein- und Ausschalten der Maximal-Spannung) erzeugt. Die Intervalle zwischen den Einschaltpunkten ist die PWM-Periode. Durch Verändern kann die Laufeigenschaft des Motors optimiert werden.
    17,18 Erweiterte Adresse 1 ... 10239
    (-)
    Enthält die Adresse zwischen 1 und 10239, wenn der Decoder auf "Erweiterter Adressbereich" eingestellt ist. Dies wird oft auch als lange Adresse bezeichnet. Diese beiden CV's werden nach einer besonderen Rechenvorschrift eingestellt:
    Adresse CV17 CV18

    Diese Adresse wird nur verwendet, wenn auch Bit 5 in CV 29 gesetzt ist.
    19 Consist-Adresse 0 ... 127
    (-)
    Definiert die alternative (zweite Adresse) des Decoders. Im Bit 7 steht, ob die Richtung innerhalb der Mehrfachtraktion normal ist (0) oder invertiert (1). Die Adressierung über die normale Adresse geht vor, normalerweise wird beim Schreiben der CV1 im Decoder automatisch CV19 (Mehrfachtraktionsadresse) gelöscht.
    28 Konfigurationsdaten für BiDi 0 ... 255
    (-)
    Definiert das Verhalten bei BiDi. Damit diese Einstellungen wirken, muß Bit 3 in CV29 eingeschaltet sein.
    Es gilt folgende Zuordnung:

    Bit:WertBedeutung
    0 0: kein Senden, 1: BiDi Kanal 1 für selbständiges Adressen-Senden verwendet.
    1 0: kein Senden, 1: BiDi Kanal 2 für Daten-Senden verwendet. (Nur auf Aufforderung, z.B. CVs)
    2 0: feste Kanalbenutzung, 1: dynamische Kanalbenutzung (in Diskussion)
    3 reserviert: 0: , 1:
    4 0: Standard, 1: Dekoder reagiert auf Programmieradresse (253)
    5 reserviert: 0: , 1:
    6 0: , 1:
    7 0: normal, 1: Freigabe der railcom+ Funktionaltät im Dekoder. Hinweis: auch Bit 1 (Sendefreigabe in Kanal 2) muß gesetzt sein.
    CV28 =  


    29 Konfigurationsdaten 0 ... 255
    (-)
    Definiert zentrale Eigenschaften des Decoders: Fahrtrichtung, Anzahl der Fahrstufen, Umschaltung auf Analog-Betrieb, erweiterte Rückmeldung im Programmiermodus, Auswahl der Geschwindigkeitskennlinie, Basis-Adressen oder erweiterte Adressen.
    Es gilt folgende Zuordnung:

    Bit:WertBedeutung
    0 0: Fahrtrichtung normal, 1: Fahrtrichtung invertiert.
    1 0: 14 speed steps, 1: 28 / 128 speed steps
    2 Only DCC, 1: DCC and DC; siehe auch bei CV12
    3 0: BiDi (Bi-Direktionale Kommunikation) abgeschaltet, 1: eingeschaltet
    4 0: Geschwindigkeit gemäß CV2, CV5 und CV6; 1: Individuelle Kurve gemäß CV66-CV95
    5 0: kurze Adresse in CV1, 1: lange Adresse in CV17-CV18
    6 reserviert
    7 0: Multifunktionsdecoder, 1: Accessory (=Zubehör) Dekoder (siehe CV541)
    CV29 =  


    30 Fehlerspeicher 0 ... 255
    (0)
    Hier hinterlegt ein Decoder einen erkannten Fehler; 0 bedeutet kein Fehler.
    31 Indexregister High 0 ... 255
    (0)
    Der CV-Bereich 257 bis 512 wird als 'Lupe' in den gesamten CV-Speicher verwendet. Mit den beiden Indexregistern CV31 und CV32 wird die Position der Lupe bestimmt. Damit sind 65536 * 256 = 16777216 CVs adressierbar.
    Zum schnellen Verstellen dieser Lupe ist ein spezieller PoM-Short Befehl vorgesehen.
    32 Indexregister Low 0 ... 255
    (0)
    Siehe CV31.
    33 – 42 Zuordnung F0 bis F8 0 ... 255
    (-)
    Definiert, welche Funktionen welche Ausgänge schalten.
    49 – 64 Hersteller Parameter 0 ... 255
    Reserviert für Nutzung durch Hersteller.
    65 Kickstart 0 ... 255
    Definiert, wie lange der Motor einmalig eingeschaltet wird, wenn von Fahrstufe 0 auf Fahrstufe 1 geschaltet wird.
    67 – 94 Kennlinie
    alternative Geschwindigkeitkennlinie. (nur bei Modus 28 Fahrstufen) Jeder der 28 Fahrstufen wird eine spezifische Motorspannung zugeordnet; 0=0V, 255=Maximalspannung


    Hinweis zu CV28, Bit 2: dynamische Kanalbenutzung:
    Wenn dieses Bit gesetzt ist, dann sendet der Dekoder sowohl im Channel 1 und Channel 2. Jedoch wird die Aussendung in Channel 1 nach dem sechszehnmaligen Empfang der eigenen Lokadresse von selbst abgeschaltet. Damit wird eine neu aufgegleiste Lok von einem Railcom-System über Channel 1 erkannt.
    Wenn nun die Steuerung die Lok anspricht, dann macht diese von selbst den Channel 1 wieder frei, und andere Loks können den Channel 1 störungsfrei benutzen.

CV-Variablen für Zubehör Decoder

    Einfache Zubehördekoder werden i.d.R. mit der Tastermethode programmiert, d.h. Taster drücken, die erste nachfolgend empfangene Adresse ist die einzustellende Dekoderadresse.

    Mit mehr Funktionen ausgestattete und damit komplexere Dekoder (wie z.B. OpenDecoder2) benutzen CVs zum Einstellen der Adresse und der Eigenschaften. Auch hier sind bereits eine Folge von Adressen durch die NMRA vordefiniert, weitere (eigentlich *ziemlich* viele) sind reserviert.
    Ursprünglich waren die CVs für Zubehördekoder beginnend bei CV513 bis 1024 definiert. Der Sinn dieser Festlegung war nicht wirklich offensichtlich - zudem gibt es Zentralen, die nicht in der Lage sind diesen Adressbereich anzusprechen. Dafür sah die Normung aber vor, dass ein Dekoder fallweise die Adressen der CV um 512 nach unten verlegen darf - also aus CV513 wird CV1, aus CV514 wird CV2 usw. Damit lassen sich dann die Dekoder auch mit kleinem Adressbereich ansprechen.

    Mit Erscheinen der 9.2.2 hat die NMRA diese relativ sinnfreie Festlegung aufgegeben - jetzt dürfen Accessory Decoder auch mit CV1 beginnen. Nachfolgend ist die ursprüngliche (alte Adresse) in Klammern angegeben.
    CV# CV-Name Bereich
    (default)
    Bedeutung
    1
    (513)
    Decoder Adresse (low) 1 ... 511
    unterer Teil der Decoderadresse.

    Decoder Adresse:CV1[513]:CV9[521]:
    Zugehörige Ausgangsadresse
    2
    (514)
    Auxiliary Activation 0 ... 255
    Bitfeld, gibt an ob ein Ausgang auch durch lokale Bedienelemente aktiviert werden darf.
    3
    (515)
    Time on F1 0 ... 255
    Gibt die Einschaltzeit für Ausgang 1 an. Einheit meist 10ms oder 20ms; 0 bedeutet permanent geschaltet.
    4
    (516)
    Time on F2 0 ... 255
    Gibt die Einschaltzeit für Ausgang 2 an.
    5
    (517)
    Time on F3 0 ... 255
    Gibt die Einschaltzeit für Ausgang 3 an.
    6
    (518)
    Time on F4 0 ... 255
    Gibt die Einschaltzeit für Ausgang 4 an.
    7
    (519)
    Version 0 ... 255
    read only
    Versionskennung des Decoders
    8
    (520)
    Vendor ID 0 ... 255
    read only
    Herstellerkennung
    9
    (521)
    Decoder Adresse (high) 0 ... 7 oberen 3 Bits der *Dekoder*Adresse, Berechnung der Ausgangsadresse siehe bei CV513
    10-27
    (522-539)
    tbd. 0 ... 255 reserviert
    28
    (540)
    Bi-Di 0 ... 255 Bi-Directional Communication Config
    29
    (541)
    Config 0 ... 255 Allgemeine Decoderkonfiguration

    Es gilt folgende Zuordnung:

    Bit:WertBedeutung
    0 reserved
    1 reserved
    2 reserved
    3 0: BiDi (Bi-Direktionale Kommunikation) abgeschaltet, 1: eingeschaltet
    4 reserved
    5 0: basic accessory decoder, 1: extended accessory decoder
    6 0: 9-bit Decoder-Addressing, 1=11-bit output-addressing
    7 0: Multifunktionsdecoder (siehe CV29), 1: Accessory (=Zubehör) Dekoder
    (Nur wenn Bit 7 1 ist, dann darf der Decoder im Service Mode die beiden MSB ignorieren. CV1 wird dann zu CV513 und ff.
    CV541 =  


    30
    IndexH 0 ... 255 Index Register High Byte
    31
    IndexL 0 ... 255 Index Register Low Byte; mit diesen beiden CV wird ein Index innerhalb des Decoders addressiert: dabei wird in den Bereich CV257 bis CV512 eine Seite eingeblendet, auf die fortan zugegriffen werden kann. Dadurch entstehen 65536 * 256 adressierbare CVs. Aus diesem Bereich sind die ersten 4096 * 256 seitens der NMRA reserviert, der Rest ist herstellerspezifisch.
    Mit der Einführung von railcom wird die Seite mit CV31=0 und CV32=255 für die railcom-Verwendung reserviert.


    Wie hängen Decoder-Addressing und Output-Addressing zusammen? Hier hilft folgende Graphik zur Veranschaulichung:
      CV513 CV521 Decoder Address Mode

Herstellerkennungen

Links: