Benutzer-Werkzeuge

Webseiten-Werkzeuge


grundlage_makro

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
grundlage_makro [2016/07/05 10:52] – Externe Bearbeitung 127.0.0.1grundlage_makro [2019/04/17 20:45] opendcc
Zeile 22: Zeile 22:
 **Diese Makros werden aber bei den Bahnbetriebsabläufen einem Accessory zugeordnet.** Nur dann wird der letzte Zustand gespeichert und bei einem Spannungsreset wieder ausgeführt oder eine Rückmeldung an das PC-System zurückgemeldet „Servo hat Position erreicht“! **Diese Makros werden aber bei den Bahnbetriebsabläufen einem Accessory zugeordnet.** Nur dann wird der letzte Zustand gespeichert und bei einem Spannungsreset wieder ausgeführt oder eine Rückmeldung an das PC-System zurückgemeldet „Servo hat Position erreicht“!
  
 +====== Mein erstes Makro ======
 +
 +Um einen Weichenantrieb schalten zu können, muss ein BiDiB-Knoten mit Makro und Accessories konfiguriert werden.
 +  * Makro sind Abfolgen von Befehlen (Schaltbefehlen, Wartezeiten, Eingang abfragen ...) die auf der OneControl gespeichert werden können.
 +  * Accessories sind eine übergeordnete Struktur die sogenannte Aspekte haben, welche pro Aspekt ein Makros schalten. Das Accessory wird später vom Steuerungsprogramm (Rocrail, iTrain, WDP, o.ä.) angesteuert.
 +
 +Der nachfolgende Abschnitt zeigt wie man eine Weiche mit Spulenantrieb mit Makros und Accessory konfigurieren kann, um die Weiche zu schalten.
 +
 +===== Weiche mit Spulenantrieb schalten =====
 +
 +Eine Weiche hat im einfachsten Fall 2 Schaltzustände:
 +  * Geradeaus
 +  * Abzweigend
 +
 +Um diese Weiche zu schalten braucht man 2 Makro und 1 Accessory mit 2 Aspekten (//geradeaus// und //abzweigend//).
 +Dazu erstellt man ein Makro Weiche //geradeaus// mit folgenden Schritten:
 +
 +  * Makro "Weiche abzweigend" stoppen
 +  * Ausgang X einschalten
 +  * Wartezeit 20 Ticks
 +
 +Die Liste mit den Schritten ist am Anfang leer. Über das Kontextmenü (rechte Maustaste) kannt man mit //Danach einfügen// einen leeren Schritt einfügen und konfigurieren.
 +
 +Anschliessend muss das Makro mit Klick auf den Schreiben-Button auf die OneControl übertragen werden. Das Icon in der Makroliste wechselt dadurch zu einem Schloss mit grünem Haken.
 +
 +{{ :wizard:makro_weiche_gerade.png |}}
 +
 +:!: Die Wartezeit von 20 Ticks am Ende ist bei der OneControl wichtig weil die Endabschaltung standardmässig auf 15 Ticks eingestellt ist! D.h. die OneControl überwacht nach 15 Ticks ob die Spule gestellt ist und schaltet dann den Antrieb ab. Ein zu schnelles Hin- und Herschalten würde sonst zu sporadischen Fehlermeldungen führen.
 +
 +Danach wird ein Makro Weiche //abzweigend// erstellt mit folgenden Schritten:
 +
 +  * Makro "Weiche geradeaus" stoppen
 +  * Ausgang Y einschalten
 +  * Wartezeit 20 Ticks
 +
 +Anschliessend muss auch dieses Makro mit Klick auf den *Schreiben*-Button auf die OneControl übertragen werden.
 +
 +{{ :wizard:makro_weiche_abzweig.png |}}
 +
 +Jetzt hat man 2 Makro um die Weiche hin- und herstellen zu können, wenn das jeweilige Makro mit Klick auf den *Testen*-Button gestartet wird.
 +
 +Anschliessend muss das Accessory Weiche X erstellt werden mit den 2 Aspekten:
 +
 +  * Geradeaus --> Schaltet Makro "Weiche geradeaus"
 +  * Abzweigend --> Schaltet Makro "Weiche abzweigend"
 +
 +Nachdem die beiden Aspekte angelegt sind, muss das Accessory mit Klick auf den *Speichern*-Button auf die OneControl übertragen werden. Danach wird das Icon in der Liste der Accessory auch wieder zum Schloss mit dem grünen Haken.
 +
 +{{ :wizard:accessory_weiche_x.png |}}
 +
 +Jetzt kann man im Wizard mit den Pfeil-Buttons bei den Aspekten die Weiche hin- und herschalten.
 +
 +Anschliessend im Wizard die Verbindung zum Master trennen, weil die Schnittstelle jetzt vom Steuerungsprogramm (Rocrail, iTrain, WDP o.ä.) benötigt wird.
 +
 +====== Wo gibt es fertige Makros? ======
 +
 +Oben haben wir gesehen, wie das im Prinzip funktioniert. Mag ja ganz toll sein, aber muß man das jetzt immer wieder machen? Nein, für viele, viele Standardfälle gibt es einen [[tools:node-script-wizard|Baukasten mit vorgefertigten Makros]]!
 +
 +====== Und warum ist das so gebaut? ======
 +
 +Ein Steuerungsprogramm will ein Signal (wir nennen das Accessory) auf ein bestimmtes Signalbild (=Aspect) stellen. Dabei ist es dem Steuerungsprogramm egal, wie dieses Signalbild dargestellt wird: das kann ein Flügelsignal sein, ein Ks-Signal oder irgendetwas anderes. Und genau auf dieser Ebene spricht das Steuerprogramm auch die Baugruppe an: Accessory 'abc' soll Aspect '123' zeigen. Wie das die Baugruppe dann konkret macht, ist alleinig Sache der Baugruppe.
 +
 +Es gibt BiDiB-Baugruppen, die manchen z.B. nur eine Weiche. Aspect 1 ist eine Spule, Aspect 2 ist die andere Spule. Fertig. Nichts umzustellen, keine Makros o.ä.
 +
 +Oft reicht die einfache Ansteuerung, aber gerade bei Signalen ist es umfangreicher und recht stark von Bahnverwaltung / Epoche und Ausbauzustand des Vorbildes abhängig. Manchmal blinkt es auch. Wie bringt man das hin?
 +
 +Bei OpenDCC-Baugruppen (und davon abgeleiteten, lizenzierten Baugruppen) gibt es eine flexible Konfiguration: Die Idee: bei jedem Begriff eines Accessory statt eines festen Musters eine Art Schrittkettensteuerung auszuführen. Diese Schrittketten nennen wir Makro.
 +
 +Von oben rein ist der Weg also:
 +
 +    PC stellt Aspect beim Accessory ein.
 +    Aspect start eine Schrittkette (Makro)
 +    Im Makro sind dann die An- Ausknipser fürs Licht.
 +
 +Damit ist man voll flexibel und kann auch besondere Signalbilder darstellen - bis hin zum Lauflicht eines Baustellenblitzers. Und für Standfälle (z.B. Blocksignal) gibt es den [[tools:node-script-wizard|Zauberstab]]!
grundlage_makro.txt · Zuletzt geändert: 2024/01/13 08:36 von akuhtz

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki