Skip to main content

Steuerung von Funktionen

Neben der Steuerung der eigentlichen Modelleisenbahn (egal ob manuell, analog, digital, etc.) ergeben sich hin und wieder Anforderungen, andere Funktionen automatisch zu steuern. Die einfachste Form einer solchen Steuerung ist gefordert, wenn einzelnen Funktionen zu unterschiedlichen Zeitpunkten ein- und ausgeschaltet werden sollen, um einen insgesamt harmonischen Ablauf zu simulieren. Früher gab es dazu Zeitschaltuhren mit mehreren Schaltspuren/Nocken etc. Heute übernehmen Kleinsteuerungen diese und zusätzliche Aufgaben.

Inhalt
  • Aufgabenstellung
  • Hardware
  • Software
  • Zum Schluss
  • Mehr zu Steuerung von Funktionen
  • Quellen

Aufgabenstellung

Bei einem kleinen Kirmesplatz mit 2 Fahrgeräten sollen Beleuchtung, Blinkelektronik und die Fahrgeräte in einem bestimmten zeitlichen Ablauf (syncron zur Geräuschkulisse) ein und ausgeschaltet werden.

Hardware

Eine C-Control Unit 1 mit Application-Board und Relaisplatine. Diese Bauteile können über Conrad Electronic bezogen werden und enthalten alle erforderlichen Kabel, Zubehör und Software. Die Bauteile werden wie auf Bild 1 zu sehen als komplette Einheit montiert. Die Tastatur und die LCD-Anzeige werden in dieser Anwendung nicht benötigt. An die 8 Relais können dann acht Funktionen angeschlossen werden.

Die beigefügte Software (CC-Basic) wird auf den PC geladen und der PC über die serielle Schnittstelle mit der C-Control Unit verbunden. Nach dem Anlegen der Spannung (12V) können nun auf dem PC erzeugte Steuerprogramme in die Control-Unit übertragen und dort gestartet werden.

Software

Rein technisch gesehen muss jetzt der Anwender programmieren, jedoch stellt sich dieser Vorgang hier ziemlich einfach dar: Nach Aufruf des Programmes CC-Basic müssen:

a) bestimmte Befehle in Textform eingegeben werden;

b) dieser Text für die Control-Unit übersetzt werden (1 Mausklick) und

c) der übersetzte Text in die Control-Unit übertragen werden (auch ein Mausklick).

Ein Beispiel im Klartext für obige Aufgabenstellung sieht so aus:

‚ — Definitionen ——————————————-

define out byteport[1]

‚ Port 8 / Relais 8 :

‚ Port 7 / Relais 7 : Marschmusik

‚ Port 6 / Relais 6 : Zeltbeleuchtung

‚ Port 5 / Relais 5 : Karussel 2

‚ Port 4 / Relais 4 : Karussel 1

‚ Port 3 / Relais 3 : Blinkelektronik Buden

‚ Port 2 / Relais 2 : Beleuchtung Buden

‚ Port 1 / Relais 1 : Hintergrund Geräusche

‚ — Programm Operationen —————————–

PAUSE 250 ‚ Wartezeit 5 sec

OUT = &B00000001 ‚ Geräusche ein

PAUSE 100 ‚ 2s

OUT = &B00000011 ‚ Budenbeleuchtung ein

PAUSE 100 ‚ 2s

OUT = &B00000111 ‚ Blinken ein

PAUSE 500 ‚ 10s

OUT = &B00001111 ‚ Karussel 1 ein

PAUSE 1250 ‚ 25s

OUT = &B01100111 ‚ Karrusel 1 aus / Zelt ein / Marsch ein

PAUSE 750 ‚ 15s

OUT = &B00000111 ‚ Zelt aus / Marsch aus

PAUSE 250 ‚ 5s

OUT = &B00010111 ‚ Karussel 2 ein

PAUSE 1500 ‚ 30s

OUT = &B00000111 ‚ Karussel 2 aus

PAUSE 100 ‚ Wartezeit 2 sec

OUT = &B00000001 ‚ Buden aus

PAUSE 250 ‚ 5s

OUT = &B00000000 ‚ Geräusch aus

BEEP 1000,50,0 ‚ Signal Programmende

DEACT OUT ‚ Ports deaktivieren

END

Alle Texte hinter dem Aphostroph (´) sind keine Befehle, sondern nur Texte zur Erklärung. Sie sind für die eigentliche Programmausführung nicht erforderlich. Somit besteht nahezu das gesamte „Programm“ hauptsächlich aus nur zwei Befehlen: Out = &Bxxxxxxxx jedes x steht für eine Ziffer, die den Zustand jedes Relais bestimmt (0=Relais „aus“, 1=Relais ein); bei dem Befehl Out = &B00000010 sind alle Relais „aus“, nur Relais 2 ist „ein“; der Befehl Out = &B00000110 schaltet dann zusätzlich noch das Relais 3 ein. Der zweite Befehl ist Pause xxx ; bei Pause 50 wird die Programm-Ausführung um 1 Sekunde unterbrochen; xxx ist variabel (bei Pause 750 wird 13 Sekunden gewartet, bevor mit der Ausführung des nächsten Befehles begonnen wird). Mit dem Einsatz dieser beiden Befehle ist es möglich, jeden beliebigen zeitlichen Ablauf von 8 Funktionen zu steuern. Bei Übernahme der anderen Befehle aus dem Beispiel ist der Rest einfach:

a) In CC-Basic den Punkt “Entwicklung/Compilieren“ wählen, d.h. der eingegebene Text wird in eine Sprache übersetzt, die die Control-Unit versteht. b) In CC-Basic den Punkt „Entwicklung/In C-Control-Unit übertragen“ wählen. Achtung: Die C-Control-Unit muss bei diesem Schritt mit Spannung versorgt sein. Nach beiden Schritten erscheint eine Meldung auf dem Bildschirm, die über den Erfolg des Schrittes Auskunft gibt oder etwaige Fehler angibt. Der Programmablauf kann danach durch Drücken der gelben Taste auf der Control Unit gestartet werden. Ist alles glatt gelaufen, werden nun die Relais in der dem vorgegeben (programmierten) Ablauf angesteuert. Der Verbindung zum PC kann jetzt getrennt werden. Durch Umsetzung einer Brücke auf der Control Unit wird Autostart aktiviert, d.h. bei jedem Anlegen der Versorgungsspannung wird das Programm gestartet und stoppt bei Unterbrechung der Versorgungs-Spannung. Eine Neuladung ist nicht erforderlich, da das geladene Programm in der Control-Unit auch ohne Spannungs-Versorgung erhalten bleibt.

Zum Schluss

Wie man sieht, sind keine „Programmierkenntnisse“ erforderlich, um diesen relativ leichten Ablauf zu realisieren.

Weitere mögliche Anwendungen sind zum Beispiel eine Pendelzugsteuerung, eine Car-System-Steuerung oder eine Ablaufsteuerung für die Funktionen eines Schiffsmodells.

Mehr zu Steuerung von Funktionen

Quellen

  • Freie Enzyklopädie Modellbau Wiki

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.