Symbol www.digital-bahn.de Symbol
Shop Forum Datenschutzerklärung Suche Kontakt

Drehscheibendekoder 2010 Konzept

Diese Seite beschreibt ein Konzept für die Überarbeitung des Drehscheiben-Dekoders.

DSD 2010

(Drehscheiben-Dekoder 2010)

Entwicklungsgrundlage

 

Dies ist keine Aufbau-Anleitung oder Bedienungs-Anleitung. Die hier beschriebenen Informationen sind für den Aufbau und den Betrieb des Moduls normalerweise nicht nötig.

 

Dieses System ist in der Planungsphase. Ein Realisierungs-Datum wird nicht genannt, auch nicht auf Anfrage, auch nicht auf wiederholte Anfrage!

 

 

 

INHALT:

 

1      Grundsätzliches. 2

1.1    Zweck dieses Doc. 2

1.2    Grund für die Überarbeitung des Systems. 2

1.3    System-Übersicht DSD2010. 2

2      Haupt-Platine. 4

2.1    Aufgaben. 4

3      Motor-Platine. 5

3.1    Aufgaben. 5

3.2    Funktionsblock „Spannungsversorgung“ 5

3.3    Funktionsblock „Hall-Sensor“ 5

3.4    Funktionsblock „Motor-Ansteuerung“ 5

3.5    Funktionsblock „Erkennung Position“ 6

3.6    Funktionsblock „Rückmeldung“ 6

3.7    Kommunikation mit der Haupt-Platine. 6

3.7.1  Bitübertragung (Physical Layer) 6

3.7.2  Haupt-Platine an Motor-Platine. 7

3.7.3  Motor-Platine an Haupt-Platine. 7

4      Anzeige-Platine. 8

4.1    Aufgaben. 8

4.2    Kommunikation mit der Haupt-Platine. 9

4.2.1  Bitübertragung (Physical Layer) 9

4.2.2  Haupt-Platine an Anzeige-Platine. 9

4.2.3  Anzeige-Platine an Haupt-Platine. 9

5      Anhang. 10

5.1    Fehler-Codes. 10

 

 

 

1          Grundsätzliches

1.1         Zweck dieses Doc

Dieses Dokument dient der technischen Dokumentation. Es werden Ideen und bereits realisierte Teile entwicklungsbegleitend beschrieben, sodass dieses Dokument während der Entwicklung als Diskussions-Grundlage und Ideen-Sammlung dient und nach Abschluss des Projektes den technischen Ist-Zustand des Projektes dokumentiert.

 

1.2         Grund für die Überarbeitung des Systems

Der Drehscheiben-Dekoder (DSD) V1.4 hat in seinem Geburtsjahr 2004 die Wünsche vieler Drehscheiben-Anwender erfüllen können. Inzwischen sind sowohl die Ansprüche alsauch die technischen Möglichkeiten gewachsen.

 

Auf der Wunschliste standen daher z.B.:

 

  1. Möglichkeit einer Sound-Implementierung
  2. Verbesserung der Positionierung insbesondere durch Lastregelung des Motors
  3. Implementierung einer „RESET“-Möglichkeit
  4. Vereinfachung der Programmierung (Zuordnung der Gleisabgänge zu den Adressen)
  5. Anzeige-Modul für Soll- und Ist-Position
  6. Einbindung der DSD-Informationen in ein Rückmelde-System, sodass ein automatisierter Betrieb erleichtert bzw. erst möglich wird
  7. Ausgabe einer Information „Bühne dreht“ für PC-Steuerung
  8. Verwendung eines Strom-Sensors vereinfachen / ermöglichen, um ein „Bühne besetzt“ Signal zu generieren
  9. ggf. weitere Rückmeldungen für eine PC-Steuerung, die eine Positionierung der Lok auf der Bühne ermöglicht
  10. Kehrschleifen-Modul für 2-Leiter Bahnen integrieren
  11. Modul verkleinern (N-Bühne)

1.3         System-Übersicht DSD2010

Um möglichst viele Wünsche zu realisieren, wird das neue System aus 3 Modulen bestehen:

 

  1. Haupt-Platine
  2. Motor-Platine
  3. Anzeige-Platine

 

2          Haupt-Platine

 

2.1         Aufgaben

Die Hauptplatine fungiert als Zentral-Platine.

 

 

3          Motor-Platine

3.1         Aufgaben

Diese Platine wird unter der Bühne montiert und ist klein genug, um in alle Fleischmann-Drehscheiben (H0, TT, N) zu passen.

 

 

3.2         Funktionsblock „Spannungsversorgung“

Die Motor-Platine erhält 18V DC (von der Haupt-Platine). Diese wird auf 5V herabgesetzt.

 

5V:

 

18V:

 

3.3         Funktionsblock „Hall-Sensor“

tbd

 

3.4         Funktionsblock „Motor-Ansteuerung“

Die Drehrichtungsumkehr erfolgt wie bisher via Relais.

 

Neu ist jetzt eine Motor-Regelung, die ein genaueres Positionieren während der Endphase der Bewegung (Langsamfahrt!) ermmöglicht.

 

3.5         Funktionsblock „Erkennung Position“

tbd

 

3.6         Funktionsblock „Rückmeldung“

Es können 3 Rückmelde-Kontakte eingelesen werden. Die Information wird via Optokoppler übertragen, d.h. es muss eingangsseitig eine LED (die Übertrager-LED im Opto) bestromt werden. Die Opto-Eingänge besitzen hierfür AC-Eingänge, d.h die Polung der Spannung ist unbedeutend, ebenso kann Wechselspannung oder Digital-Spannung verwendet werden.

 

Als Beispiel: Ein Reed-Kontakt wird einseitig an die Digital-Spanung angeschlossen und an der 2. Seite an den Opto-Eingang. Schliesst jetzt der Kontakt (Magnet), dann wird der Opto-Eingang an die Digital-Spannung gelegt, die Opto-LED ist bestromt und der Rückmelde-Kontakt wird ausgelöst.

 

Ein ähnliches Beispiel kann man sich für Masse-Sensoren (Kontakt durch Achsen bei Mittelleiter – Märklin möglich).

 

Weitere Möglichkeiten können sich durch Lichtschranken, Hall-Sensoren, Strom-Sensoren (sinnvoll???) usw. ergeben.

 

3.7         Kommunikation mit der Haupt-Platine

Die Motor-Platine kommuniziert über 1 Leitung mit der Hauptplatine, also bidirektional und seriell.

 

3.7.1        Bitübertragung (Physical Layer)

„1“ und „0“ sind entsprechend der DCC-Norm codiert.

 

 

3.7.2        Haupt-Platine an Motor-Platine

Folgende Informationen müssen übertragen werden:

 

 

Für die Übertragung werden 2 Byte verwendet, wobei das erste Byte die Funktion definiert (Identifier Byte):

 

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Contents Byte enthält:

1

1

0

0

0

0

0

1

Motor-Parameter 1

1

1

0

0

0

0

1

1

Motor-Parameter 2

1

1

0

0

0

1

1

1

Motor-Parameter 3

1

1

0

0

1

1

1

1

Motor-Parameter 4

0

0

1

0

0

0

0

1

Soll-Position

0

0

1

0

0

0

1

1

Blink-Code

0

1

1

1

0

1

1

1

Flag-Übergabe

 

Das 2. Byte (Contents Byte) überergibt idR. einen Zahlwert 0..255 (Parameter, Soll-Position etc).

 

Für die Flags (Identifier = 01110111) wird definiert

 

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Go

0 = stop

1 = go

 

 

 

 

 

Drehricht.

0 = Rechts

1 = Links

Licht Haus

0 = aus

1 = ein

 

Es wird zudem ein 3. Byte übertragen (Prüfbyte, EXOR-Verknüpfung aus dem Identifier Byte und dem Contents Byte (analog DCC)

 

3.7.3        Motor-Platine an Haupt-Platine

Folgende Informationen müssen übertragen werden:

 

 

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

0

1

Istwert (6-Bit)

1

0

Reserve

1

1

Error-Code (siehe Anhang)

0

0

Flag-Übergabe

Drehricht.

0 = Rechts

1 = Links

Bühne

0 = steht

1 = dreht

RM1

0 = idle

1 = set

RM2

0 = idle

1 = set

RM3

0 = idle

1 = set

Reserve

 

 

4          Anzeige-Platine

 

4.1         Aufgaben

Diese Platine ist optional. Sie ermöglicht die Anzeige der ist- und Soll-Position der Drehscheibe. Zusätzlich kann hierüber die Bühne bewegt werden, ohne dass man Digital-Befehle auslösen muss („Hand-Steuerung“)

 

 

An stehen 6 Taster und 2 LEDs zur Verfügung.

 

In dieser Variante entspricht die Taster-Funktionen im wesentlichen den digitalen Befehlen

 

Alternativ könnte man sich auch folgende Tastenbelegung vorstellen:

 

Zwischen den beiden Varianten kann via DIP-Schalter gewählt werden.

 

Zusätzlich kann die Anzeige-Platine einen Fehler-Code anzeigen, sobald ein Fehler aufgetreten ist. (Codes siehe Anhang)

 

4.2         Kommunikation mit der Haupt-Platine

Die Motor-Platine kommuniziert über RS232, also bidirektional (2-Draht) und seriell.

 

4.2.1        Bitübertragung (Physical Layer)

„1“ und „0“ sind entsprechend der RS232 Norm codiert. Es wird mit einer Baudrate von 9600 Baud übertragen (8N1)

 

4.2.2        Haupt-Platine an Anzeige-Platine

Folgende Informationen müssen übertragen werden:

 

 

Für die Übertragung genügt 1 Byte, sodass keine Ring-Puffer beim Senden und Empfangen nötig sind. Bit 7/6 stellen dabei den Identifier dar, Bit 5..0 die Nutz-Information

 

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

0

1

Sollwert (6-Bit)

1

0

Istwert (6-Bit)

1

1

Error-Code (siehe Anhang)

0

0

Flag-Übergabe

Drehricht.

0 = Rechts

1 = Links

Bühne

0 = steht

1 = dreht

Reserve

Reserve

Reserve

Reserve

 

4.2.3        Anzeige-Platine an Haupt-Platine

Folgende Informationen müssen übertragen werden:

 

 

Für die Übertragung genügt 1 Byte, sodass keine Ring-Puffer beim Senden und Empfangen nötig sind. Bit 7/6 stellen dabei den Identifier dar, Bit 5..0 die Nutz-Information

 

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

0

1

Sollwert-Vorgabe (6-Bit) rechts herum

1

0

Sollwert-Vorgabe (6-Bit) links herum

1

1

Reserve

0

0

Taster Info

Taster 6

0 = idle

1 = pressed

Taster 5

0 = idle

1 = pressed

Taster 4

0 = idle

1 = pressed

Taster 3

0 = idle

1 = pressed

Taster 2

0 = idle

1 = pressed

Taster 1

0 = idle

1 = pressed

 

 

5          Anhang

5.1         Fehler-Codes

Die Anzeige-Platine zeigt folgende Fehler-Codes an:

 

Anzeige:

Bedeutung

Erläuterung

E1

Communication Error

Haupt-Platine kann mit der Motor-Platine nicht kommunizieren

E2

Motor Error

Motor-Platine kann keinen Motor-Strom messen („Open Loop“ oder Motor-Treiber defekt)

E3

Motor Klemmung

Motor-Platine erkennt eine Einklemmung (kein Sensor-Impuls)

E4

Sensor Pegel

Motor-Platine: Sensor-Pegel unterschreitet Minimal-Wert

E5

Motor Parameter

Motor-Platine: Motor-Parameter unstimmig

E6

 

 

E6

 

 

E8

 

 

E9