dccpp:dccpp-de
Differences
This shows you the differences between two versions of the page.
— | dccpp:dccpp-de [2025/03/04 02:49] (current) – created - external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ======DCC++ (EX)====== | ||
+ | [[: | ||
+ | [[: | ||
+ | * [[[: | ||
+ | | ||
+ | |||
+ | =====Einführung===== | ||
+ | DCC++ ist eine auf dem Arduino UNO/MEGA und einem L298-Motor-Shield basierende Zentrale.\\ | ||
+ | * Die "DCC refresh stack" | ||
+ | * PT, Programmier-Gleis | ||
+ | * POM, Programmieren auf dem Hauptgleis. (Nur schreibend) | ||
+ | * 32 mit __**[[: | ||
+ | * DCC-Zubehördekoder-Unterstützung. | ||
+ | * 2A-Booster-Gleisstrom. | ||
+ | |||
+ | \\ | ||
+ | |||
+ | =====Eigenschaften===== | ||
+ | Durch die Rocrail-Implementation zusätzliche Eigenschaften: | ||
+ | * Slot-Verwaltung mit passiver Slot-Freigabe nach 30 Sekunden Leerlauf und Geschwindigkeit Null. (Kann in den Einstellungen geändert werden.) | ||
+ | * Abfrage aller Rückmelder zu Betriebsbeginn direkt nach dem Herstellen einer seriellen Verbindung. | ||
+ | |||
+ | ===== Wichtige Hinweise zur Unterstützung ===== | ||
+ | Bitte beachten, dass dies ein echtes Selbstbau-Projekt ist. \\ | ||
+ | Es wird weder von Rocrail noch von GCA unterstützt. \\ | ||
+ | Mit diesen Modulen einfach nur beginnen, wenn man in der Lage ist, Arduino selbst zu programmieren. \\ | ||
+ | |||
+ | Seit dem Übergang des ursprünglichen **DCC++**-Projekts zum jetzigen **DCC EX**-Team wurde das Projekt erheblich weiterentwickelt. \\ | ||
+ | Es gibt jetzt einen Installer, mit dem Kenntnisse und Erfahrungen mit der komplexen //" | ||
+ | Mit einer Übersetzungs-Funktion im Browser ist die __**[[https:// | ||
+ | |||
+ | =====Allgemeine Einstellung===== | ||
+ | Die DCC++-Bibliothek in Rocrail ist **dccpp**.\\ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ====Sub-Bibliothek==== | ||
+ | === Seriell-USB === | ||
+ | Die Baudrate ist standardmäßig auf **115200** eingestellt.\\ | ||
+ | :!: Einige serielle Gerätetreiber unterstützen CTS und Hardware-Handshake nicht. In diesem Fall sollte CTS deaktiviert sein.\\ | ||
+ | |||
+ | ===TCP/ | ||
+ | Eine TCP/ | ||
+ | Der TCP/IP-Port ist fest auf **2560** einzustellen.\\ | ||
+ | |||
+ | ====Optionen==== | ||
+ | ===Zeitüberschreitung === | ||
+ | Serielle Lese-Zeitüberschreitung in ms.\\ | ||
+ | |||
+ | ===Slots=== | ||
+ | Die Anzahl der Slots((Slots = Anzahl der Zeitschlitze)) ist standardmäßig 12. Wenn ein MEGA verwendet wird, kann sie in den DCC++-Quellen erhöht werden.\\ | ||
+ | __Die Anzahl der Slots muss kleiner oder gleich der eingestellten Anzahl der Register in den DCC++-Quellen sein.__\\ | ||
+ | |||
+ | ===Slot-Freigabe-Zeit=== | ||
+ | Die minimale Leerlaufzeit in Sekunden, bevor ein Slot freigemacht wird.\\ | ||
+ | Die Freigabe ist deaktiviert, | ||
+ | |||
+ | ===Rückmelder AUS-Verzögerung=== | ||
+ | Nur für Stift 22..53 auf dem MEGA.\\ | ||
+ | Zeit in ms, die gewartet wird, bevor ein Eingang als Aus gemeldet wird. (Der Wert muss ein Mehrfaches von 10 sein.)\\ | ||
+ | Der Verzögerungs-Zeitgeber wird zurück gesetzt, wenn ein Eingang innerhalb dieser Zeit aktiv wird.\\ | ||
+ | |||
+ | ===System-Info=== | ||
+ | Fragt den Hauptgleis-Strom zur Anzeige in der Rocview-Status-Leiste ab.\\ | ||
+ | |||
+ | ===Befehle zurücksenden === | ||
+ | Sendet Weichenbefehle zurück. Nur für Arduino I/O.\\ | ||
+ | |||
+ | ===Ausgänge tauschen=== | ||
+ | Tauscht die Gerade- und Abzweigend-Befehle.\\ | ||
+ | |||
+ | ===Join=== | ||
+ | Bei " | ||
+ | Siehe DCC++-Dokumentation für mehr Einzelheiten.\\ | ||
+ | |||
+ | ===4 Byte Zubehör-Befehle=== | ||
+ | In Fall von ''< | ||
+ | Ohne diese Option: ''< | ||
+ | Siehe DCC++-Dokumentation für mehr Einzelheiten.\\ | ||
+ | |||
+ | ===DTR=== | ||
+ | Bestimmt den seriellen DTR-Pegel beim Start. „none“ (keiner) ist die Standardeinstellung.\\ | ||
+ | Wird nur für inkompatible DCC++-Baugruppen verwendet.\\ | ||
+ | |||
+ | ===RTS=== | ||
+ | Bestimmt den seriellen RTS-Pegel beim Start. „none“ (keiner) ist die Standardeinstellung.\\ | ||
+ | Wird nur für inkompatible DCC++-Baugruppen verwendet.\\ | ||
+ | \\ | ||
+ | =====Ein-/ | ||
+ | {{: | ||
+ | ====Hinzufügen==== | ||
+ | Fügt einen neuen Ein-/ | ||
+ | Er wird temporär in der DCC++-Zentrale angelegt.\\ | ||
+ | |||
+ | ====Ändern==== | ||
+ | Ändert einen ausgewählten Ein-/ | ||
+ | Er wird temporär in der DCC++-Zentrale geändert.\\ | ||
+ | |||
+ | ====Löschen==== | ||
+ | Löscht den ausgewählten | ||
+ | Er wird temporär aus der DCC++-Zentrale entfernt.\\ | ||
+ | |||
+ | ====Abfrage==== | ||
+ | Abfrage aller Ein-/ | ||
+ | |||
+ | ====Speichern==== | ||
+ | Speichern aller Ein-/ | ||
+ | |||
+ | ====Löschen==== | ||
+ | Löscht alle Ein-/ | ||
+ | Eine neue Abfrage erfolgt automatisch.\\ | ||
+ | |||
+ | ====Optionen==== | ||
+ | ===Ausgang=== | ||
+ | ^ Option ^ Bit ^ Wert ^ | ||
+ | | Umkehren | 0 | 0 = Direkter Betrieb (ACTIVE=HIGH / INACTIVE=LOW) \\ 1 = Umgekehrter Betrieb (ACTIVE=LOW / INACTIVE=HIGH) | | ||
+ | | Wiederherstellen | 1 | 0 = Status des Stifts bei Spannung EIN entweder ACTIVE oder INACTIVE abhängig vom Status bei Spannung AUS; Status des Stifts bei erstem Einrichten \\ 1 = Status des Stifts EIN, bei Spannung EIN oder wenn erstmalig eingerichtet, | ||
+ | | Anfang | 2 | 0 = Status des Stifts bei Spannung EIN oder bei erstem Einrichten auf INACTIVE \\ 1 = Status des Stifts bei Spannung EIN oder bei erstem Einrichten auf ACTIVE | \\ | ||
+ | |||
+ | ===Eingang (Rückmelder)=== | ||
+ | ^ Option ^ Bit ^ Wert ^ | ||
+ | | Pull-up | 0 | 1 = Internen pull-up-Widerstand für den Stift verwenden \\ 0 = Internen pull-up-Widerstand für den Stift __nicht__ verwenden | | ||
+ | |||
+ | In der Regel sind hier keine manuellen Einstellungen erforderlich. Rocrail definiert Arduino-Stifte automatisch als Eingangs- oder Ausgangsstifte, | ||
+ | |||
+ | Nur in dem Fall, dass beim Start andere, als die standardmäßig vorgegebenen Optionen verwendet werden sollen, muss hier manuell eingegriffen werden. Grundsätzlich empfiehlt es sich dabei, erst einmal alle Objekte im Plan mit den gewünschten Stiften anzulegen. Dann sollte Rocrail neu gestartet und alle Befehle von Objekten, die Ausgangsstifte verwenden, einmal ausgeführt werden; denn alle verwendeten Eingangsstifte werden beim Hochfahren und alle Ausgangsstifte beim Ausführen eines Befehls von Rocrail in der DCC++-Zentrale temporär angelegt. Danach werden bei " | ||
+ | |||
+ | Bei Änderung der Option " | ||
+ | |||
+ | =====Adressierung===== | ||
+ | | Rückmelder und Ausgänge __teilen den selben Adress-Raum__; | ||
+ | ====Weichen==== | ||
+ | ===Zubehör=== | ||
+ | DCC-Zubehör.\\ | ||
+ | Weichen werden nach dem __**[[: | ||
+ | ===Kein Zubehör=== | ||
+ | Arduino I/O.\\ | ||
+ | ^ Befehl ^ Ausgang ^ | ||
+ | | gerade | Adresse + 0 | | ||
+ | | abbiegen | Adresse + 1 | | ||
+ | ===Kein Zubehör, Einzelausgang=== | ||
+ | Arduino I/O.\\ | ||
+ | ^ Befehl ^ Ausgang ^ Stift-Status ^ | ||
+ | | gerade | Adresse | AUS | | ||
+ | | abbiegen | Adresse | EIN | | ||
+ | \\ | ||
+ | |||
+ | ====Rückmelder==== | ||
+ | Freie Arduino-Stifte können als Rückmelder-Ports verwendet werden.\\ | ||
+ | Je nach Hardware stehen dafür nur folgende Stifte zur Verfügung: | ||
+ | |< >| | ||
+ | | **UNO** | 4, 6, 7, 16...19 | | ||
+ | | **MEGA** | 5...7, 16...19, 22...53 | | ||
+ | |||
+ | ====Ausgänge==== | ||
+ | ===Zubehör=== | ||
+ | Ausgänge sind nach dem __**[[: | ||
+ | ===Nicht Zubehör=== | ||
+ | Freie Arduino-Stifte können als Ausgangs-Ports verwendet werden.\\ | ||
+ | Je nach Hardware stehen dafür nur folgende Stifte zur Verfügung: | ||
+ | |< >| | ||
+ | | **UNO** | 4, 6, 7, 16...19 | | ||
+ | | **MEGA** | 5...7, 16...19, 22...53 | | ||
+ | |||
+ | Um die Ausgänge für DCC zuzuordnen, muss die Ausgangs-Option __**[[: | ||
+ | |||
+ | ====Signale==== | ||
+ | Die Signal-Option __**[[: | ||
+ | |||
+ | ===Begriffs-Nummer=== | ||
+ | __**[[: | ||
+ | Der Begriffs-Wert stellt eine Bit-Maske dar, die für die vier Signal-Adressen verwendet wird.\\ | ||
+ | \\ | ||
+ | |||
+ | =====G-ASH02===== | ||
+ | Ein-/ | ||
+ | {{: | ||
+ | |||
+ | ====Typ==== | ||
+ | ^ Typ-Code ^ Funktion ^ | ||
+ | | N | Nicht in Betrieb | | ||
+ | | O | Output > Ausgang | | ||
+ | | I | Input > Eingang | | ||
+ | |||
+ | ====Optionen==== | ||
+ | Siehe: __**[[# | ||
+ | ====I/O n==== | ||
+ | Die GCA-I/ | ||
+ | Die Schaltflächen-Anordnung ist dem Platinen-Layout angenähert.\\ | ||
+ | |||
+ | \\ | ||
+ | ====Stift-Zuordnung==== | ||
+ | ^ MEGA-Stifte ^ GCA-Anschluss ^ GCA-Stifte ^ | ||
+ | | 22..36 (gerade | ||
+ | | 23..37 (ungerade) | I/O 2 | 9..16 | | ||
+ | | 38..52 (gerade | ||
+ | | 39..53 (ungerade) | I/O 4 | 25..32 | ||
+ | |||
+ | \\ | ||
+ | Die Ein-/ | ||
+ | |||
+ | \\ | ||
+ | ^ Steckbrücke ^ Funktion ^ Bemerkung ^ | ||
+ | | JP1 | Verwendet 5V vom Arduino, wenn gesteckt. | Nur Stecken, wenn der Arduino spannungslos ist, anderenfalls setzt er sich selbst zurück. | | ||
+ | |||
+ | ====Dateien==== | ||
+ | {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | * {{: | ||
+ | |||
+ | \\ | ||
+ | |||
+ | =====Programmier-Gleis===== | ||
+ | Die Gleisspannung muss eingeschaltet werden, bevor das Programmier-Gleis (**PT**) verwendet wird.\\ | ||
+ | Nicht vergessen, die erforderliche Drahtbrücke auf dem Motor-Shield hinzuzufügen.\\ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | =====Fehler-Beseitigung===== | ||
+ | ====Lok stoppt bei max. Geschwindigkeit==== | ||
+ | Die Anzahl der __**[[: | ||
+ | =====Links===== | ||
+ | * https:// |