1zu160 - Forum



Anzeige:
aat-net - amerikanische und kanadische modellbahnen

THEMA: Analoge Tasten digitalisieren für Anlagensteuerung

THEMA: Analoge Tasten digitalisieren für Anlagensteuerung
Startbeitrag
MHAG - 20.10.26 12:21
Hallo Leute!

Aktuell mache ich mir Gedanken, wie ich meine analoge Anlage irgendwann mal steuern kann. Dabei habe ich erkannt, dass es fast nicht möglich ist, einzelne Leitungen vom Stellpult zu den Weichen, Gleisen, Lichtelementen, etc. zu legen; denn das ergäbe zwischen Stellpult und Anlage armdicke Leitungsbündel. Bevor jetzt einer "Anlage digitalisieren" ruft, will ich gleich bekannt geben, dass die Fahrzeuge nicht digitalisiert werden sollen.
Dazu kommt, dass ich auch _kein_Bildschirmstellpult_ haben will, ich will ganz klassisch auf Tasten drücken und Schalter schalten können. Es sollen also nur die Weichen, Entkuppler, Gleise, Lichtelemente, etc. geschaltet werden können und dazu eine Rückmeldung ins Stellpult erfolgen. So, wie wenn man das auf althergebrachte Weise analog machen würde. Und ohne dass ein klassischer PC irgendwie mitspielt.
Ein kurzes (ungenaues) Mengengerüst:
- etwa 60 Weichen (können auch mehr werden)
- ca. 25 teils mehrbegriffige Signale
- mehrere Entkuppler
- viele abschaltbare Gleise
- viele "Aktuatoren" (z.B. Lokschuppentore, BÜ, Bewegungseffekte,...)
- viele Lichtelemente
und noch so einiges, das vom Stellpult aus gesteuert werden soll
Die Idee ist jetzt, alle diese Taster und Schalter mit mehreren Encodern zu digitalisieren und via Bus (SX? DCC? CAN? ...) an eine (spezielle) Zentraleinheit zu schicken. Dort werden diese Steuerbefehle weitergeleitet an entsprechende Decoder, aber gleichzeitig auch die Information für die Rückmeldung ins Stellpult aufbereitet. Das würde nur einen Bus von der Zentraleinheit in die Anlage erfordern, der "Rest" bleibt im Stellpult. Und dieser Bus kann einem Standard (DCC oder SX) entsprechen, die passenden Decoder gibt es ja für alles mögliche (Weichen, Servos, Schaltdecoder etc.).

Daher jetzt meine Fragen:
Gibt es Encoder für Tasten/Schalter, die eine größere Anzahl (z.B.64) einlesen können, ohne dass man arm wird?
Sind diese Encoder "anreihbar" (denn mit 64 Tastern komme ich bei weitem nicht aus)? Also mehrere Encoder am Bus?
Welches Bussystem ist da sinnvoll bzw. wird von Encodern verwendet?
Rückmelder auf s88n-Basis könnten evtl. als Encoder verwendet werden; ist sowas überhaupt sinnvoll?
Gibt es eine Zentraleinheit (ich vermeide den bekannten Begriff "Zentrale" absichtlich), die sich für diesen Zweck eignet oder bleibt nur Selbstbau?

Ein paar Überlegungen bisher:

So könnte ein Selbstbau-Encoder aufgebaut sein:
Mit einem Arduino nano kann man 8-Bit-Schieberegister ansteuern und auslesen; jeweils 8 Stück kaskadiert würden 64 Bit = Taster an digitaler Information ergeben. Der Nano kann diese Information dann codiert über einen Standard-Bus (z.B.SX, da habe ich eine Library gefunden) ausgeben

Selbstbau-Steuereinheit für die Stellpultausleuchtung:
Die Rückmelde-Info könnte ebenfalls ein Arduino Nano entgegennehmen und damit serielle RBG-LEDs (wie sie z.B. beim Projekt MobaLedLib verwendet werden) im Stellpult ansteuern. Da reicht zur Ansteuerung ja ein Bit für bis zu 255 RBG-LEDs (der normale Nano schafft wahrscheinlich nicht so viele wegen zu knappem RAM, nur 2k). Wie könnte die Rückmelde-Info aussehen? I2C?

Die spezielle Zentraleinheit müsste nach dem Start in ihrem Speicher ein Zustandsabbild der Taster und Schalter aufbauen (Einlesen der Encoderinfo; Handicap: Dazu muss es eine Zuordnung geben, wofür jedes Bit verwendet wird -- sollte via internem Festspeicher lösbar sein), daraus die Schaltinformation für die Decoder generieren und sie per Bus weiterschicken. Gleichzeitig müsste sie aus der gespeicherten Information die Rückmelde-Info für das Stellpult generieren (I2C?). Bei einem entsprechend großen Arduino könnte die RBG-LED-Ansteuerung auch gleich hier erfolgen, so dass die 1-8 seriellen RBG-LED-Rückmeldeketten ohne die Steuereinheit direkt angeschlossen werden.
Der Bus, der die Steuerinformation zur Anlage bringt, sollte einer Norm entsprechen, die auch einfache Selbstbaudecoder auf der Anlage erlaubt; normal werden käufliche Decoder angesteuert. Für SX habe ich eine Library gefunden, für DCC habe ich noch nicht gesucht (gibt es wahrscheinlich auch). Könnte noch ein anderes Bussystem hier sinnvoll sein?

Ich weiß, dass ich hier wahrscheinlich eine größere Diskussion anstoße -- aber nein, es soll nicht eine weitere "ANALOG GEGEN DIGITAL"-Kontroverse werden. Ich versuche nur herauszufinden, wie man die beiden Welten teilweise vereinen kann. Also nicht der übliche Ansatz "digital fahren, analog schalten" sondern umgekehrt "analog fahren, digital schalten". Vielleicht gibt es ja schon was, das diesem Konzept entspricht.
Grundsätzlich soll einfach ein normales Stellpult mit Tastern, Schaltern und LEDs "digitalisiert" werden und mit diesen Digitalinformationen die Anlage (nicht die Fahrzeuge!) gesteuert werden.
Derzeit bin ich auch nur am Abklären, was denn möglich sein könnte; bis ich soweit bin und das vielleicht umsetze, wird es noch eine ganze Weile dauern. Aber drüber nachdenken kann man ja schon mal

Viele Grüße
Michael

PS:
So ein 64-Bit-Enkoder könnte auch für "normale" Digitalanlagen nützlich sein, wenn eine größere Anzahl von z.B. Lichtschranken oder anderen Sensoren mit einer Steuerung verbunden werden sollen.

Hallo Michael!

Ich verwende für meine Stellwerke Tastermodule von MÜT Digirail. Die Firma gibt es leider nicht mehr. Aber es sollte solche Module auch von anderen Herstellern geben. Die MÜT-Module habe je 32  Eingänge.

Im Selectrix-Bereich gibt es Interfaces, die man auch als Bus-Zentrale einsetzen kann, z. B. das SLX 852 von Rautenhaus. Das ermöglicht auf zwei Bussen die Steuerung von bis zu 1648 Magnetartikeln. Diese Größenordnung sollte für Deine Anlage reichen. Natürlich können auch Anzeigemodule, Belegtmelder und was es sonst noch gibt darüber gesteuert werden.

Das Foto zeigt das Innere eines meiner Stellwerke. Es enthält Taster- und Signalmodule von MÜT.

Herzliche Grüße
Elmar

Die von Elmar W. zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login

@UP Ein oft geäußerter Wunsch aber ohne PC AFAIK nicht realisierbar. Wenn Du sowas angehst dann nur mit aktueller Technik damit Du nicht vorhersehbar mangels Lieferanten auf halmen Weg stecken bleibst. Alle In Hardware gegossenen Lösungen binden Dich an diesen einen Hersteller. Die Postings zuvor zeigen berichten von der zögerlichen Versorgung in dem Fall halt Selekrix Systemwelt und das wird sich nicht bessern die kommenden Jahre.

Ein möglicher Lösungsweg wäre über Stellwerksanbieter zu gehen. Ich hab' verstanden Du hast schon sowas aber eventuell kannst über diesen Gedankenweg weiter kommen. Der nötige PC dahinter werkelt halt rum, den muß man da gar nicht bedienen müssen. Also Deine Schalter wirken auf ein PC Programm, das dann auf Befehle über die Zentrale und weiter Decoder wirkt.

Funktionen so eines Stellwerks könnte man dann auch benutzen wie Fahrstraßen, Abhängigkeiten und Sicherheitsfeatures.
-AH-
Hallo,

bei uns im Club MEC-Luthe werden die beiden Stellpulte im Digitalbereich der Anlage mit mehreren Encodern/Tastaturmodulen von Stärz (Selektrixbus) gesteuert. Dies sind in Rocrail eingebunden.

Gruß, Roland
Hallo Michael,

Christian (em200a) vom Stammtisch macht doch so etwas ähnliches, digital schalten und analog fahren

Nur bei Dir Stellpult statt Bildschirm


Ich würde Dir wie Arnold vor mir auch eine PC/raspberry basierte Lösung mit Standardkomponenten empfehlen

Software dann wie Christian rocrail

Die Komponenten zum Beispiel aus dem Bidib Universum,  dann hast Du nur ein Bidib (Netzwerk) Kabel und die Spannungsversorgung an Deinem Stellpult

Led-io-24 wäre da eine gute Komponente für die Ein und Ausgänge im Pult

https://www.fichtelbahn.de/ledio_index.html

Zentrale dann z.bsp. gbmboost (dcc wird dann nur für billigere Weichen bzw Signaldecoder) verwendet

Belegtmelder für Analog kann man selbst recht einfach mit s88n interface selbst bauen und dann mit der s88-bidib bridge einbinden

Bei analog sollte man dann auch an eine Art Fahrstrassenschaltung für den Fahrstrom denken, um mehrere Züge unabhängig fahren zu können bzw Abschnitte gezielt stromlos zu schalten

Das ganze kann dann sehr schnell ausufern.
Standen gerade im Verein vor dieser Entscheidung, letztendlich auf Grund des Aufwands unter dem Gesichtspunkt des Mehrzugbetriebs dann doch die Volldigitalisierung mit dem Bidib System im Untergrund gemacht.

Zusammenfassend würde ich Dir empfehlen sich beim Selbstbau von Teilkomponenten an gängige Standards aus dem Digitalbahnbereich zu halten, so kann man immer auch auf fertige Bausteine ausweichen

Vg wassi
Hallo,
LDT hat(te) sowas im Programm, hies irgendwas mit GBS-Master oder so.
das ganze bestand aus mehreren Komponenten und war dadurch erweiterbar.

ob man das heute noch bekommen kann ist fraglich.

Grüße Frank
Hallo,

schon mal danke für die ersten Infos!
Offenbar ist meine Überlegung mit SX garnicht so abwegig gewesen Dann versuche ich mal, zu exMÜT und bei Stärz und Rautenhaus weitere Infos zu finden. Zumindest gibt es Encoder mit einer sinnvollen Anzahl an Eingängen.
Der Ansatz mit dem PC "dazwischen" gefällt mir allerdings garnicht; ich sehe aber, dass er als Mediator sinnvoll sein könnte...
Bezüglich der Herstellerabhängigkeit will ich auf Standard-Bausteine setzen oder Selbstbauten nutzen, die auf diesen Standards aufsetzen (in dem Fall also SX). Da scheint es doch mehr zu geben, als ich bisher gefunden habe; wahrscheinlich wieder mal falsch gesucht
Einzig bei der "Zentraleinheit" wäre ein eigener Programmieraufwand notwendig, aber eigentlich nur wegen der Rückmeldungen ins Stellpult. Diesen Aufwand kann man dann natürlich beliebig hochtreiben... Da dazu aber kein spezieller Hersteller notwendig ist, wäre das Teil auch nur von mir abhängig
Das SLX 852 von Rautenhaus, das Elmar in #1 nennt, könnte dem, was ich mir vorstelle, schon recht nahe kommen (bis auf die Ausleuchtung); muss ich mal genauer nachlesen.
Interessant wäre halt sowas: Zwei SX-Busse rein, umsetzen auf mehrere andere Busse raus (SX oder auch DCC), dazwischen noch die Ausleuchtungsaufbereitung. Ich bin mir aber sehr sicher, dass es sowas fertig nicht gibt.

Mal schauen, was noch für Informationen kommen

Viele Grüße
Michael

PS: Fichtelbahn hatte ich ganz verdrängt; interessant, was es da so gibt! Dann muss ich auch mal mit Christian reden beim nächsten Stammtisch Und mit Dir, Wassi
Hallo Michael!

Für den Fall, daß Du diese Seite noch nicht kennst: Hier gibt es auch Bauelemente, die Du gebrauchen könntest: https://www.schnorpstronik.de/index.php/select...en-eingabe-modul-v1/

Zitat - Antwort-Nr.: 0 | Name: MHAG

ein Zustandsabbild der Taster



Was meinst Du damit? Wenn Du einen Taster drückst, merkst Du es. Wenn Du ihn losläßt, gibt es nichts anzuzeigen.

Mir ist noch unklar, was Du noch ausleuchten möchtest. Wenn es um Weichenstellungen geht, dann kannst Du ein Anzeigemodul auf dieselbe Adresse programmieren wie den Weichendecoder. Dann zeigen Weiche und Ausleuchtung dieselbe Stellung. Das funktioniert ohne Computer. Wenn es um eine Fahrstraßenausleuchtung geht, dann wirst Du wohl um einen Computer nicht herumkommen.

Herzliche Grüße
Elmar
Hallo Michael

Auf SX-Equipment würde ich jetzt nicht mehr einsteigen.
Die Fichtelbahn-Baugruppen sind da deutlich innovativer.

Dietrich
Hallo Elmar W.,

genau da war doch noch was mit "Schnorpser" -- danke für den Hinweis!

Wegen dem "Zustandsabbild" gehe ich davon aus, dass ein Taster oder Schalter ja einen bestimmten Zweck hat: Weiche umstellen (gelb=gerade/gelb=abzweigend), Entkuppler betätigen (entkuppeln), Gleis oder Licht schalten (weiß=an/"schwarz"=aus), Türe betätigen (grün=auf/rot=zu), Signal schalten (rot (=Hp0/Sh0) / grün (=Hp1) / gelb (=Hp2) / blau (=HpRu) / weiß (Sh1, Rangiersignal) <= das bedeutet je Signal nur eine LED),... dieser Zweck, die RBG-LED-Adresse und der aktuelle Zustand (also was zuletzt betätigt wurde) sollen hier hinterlegt sein. Dann kann das ausgelesen und für die RBG-LEDs aufbereitet und ausgegeben werden.
Dass das mit dem Anzeigemodul für Weichen geht, wusste ich bislang noch nicht. Gute Info , bin ja noch beim Sammeln vieler Infos
Wie geschrieben, ich habe einfach mal meine Ideen und Gedanken aufgeschrieben, mal sehen, was sich noch alles ergibt.

Hallo Dietrich,

an Fichtelbahn hatte ich vorher noch garnicht richtig gedacht; werde ich bestimmt genauer betrachten.

Viele Grüße
Michael
Es gibt die Komponenten von Möllehem. Die werden mit einem standalone LocoNet zusammengebunden.
https://mollehem.se/index.php/en/

Bei DCC-EX sind wir uns auch der Problematik bewusst und denken darüber nach wie man so ein Problem (Eingabe und Ausgabe dezentral) am besten löst. Das ist dann allerdings zum Mitdenken.

Grüße
Harald
Hallo, Michael,

wenn Du Dir das zutraust, kannst Du durchaus was auf Arduino-Basis machen. Allerdings würde ich Dir empfehlen, gleich auf einen ESP32 zu setzen, der lässt sich genauso programmieren, hat aber viel mehr Speicher (und ist schneller).
Wenn Du bei Schaltern und Tastern immer gegen Masse schaltest, kannst Du die Eingänge z.B. über Multiplexer (10 oder 16 :4) auf weniger Eingänge zusammenfassen, das sollte dann mit einem, höchstens 2 ESP32 zu machen sein.
Für die Verbindung zur Anlage gibt es diverse Möglichkeiten, beim ESP sogar Bluetooth . Für fast alles gibt es auch schon entsprechende Bibliotheken.
Für den Bus solltest Du berücksichtigen, dass das Umfeld (Motore, Magnete etc.) nicht frei von Störquellen ist, also nicht zu schnell, lieber sicherer.

Viele LEDs lassen sich z.B. mit dem WS2811 seriell ansteuern. Dann brauchst Du nur eine Ringleitung und für je 3 LEDs eine kleine (halbe Briefmarke) Platine.

LG, Harald

Zitat - Antwort-Nr.: 12 | Name: SchienenFlechter

kannst Du die Eingänge z.B. über Multiplexer (10 oder 16 :4) auf weniger Eingänge zusammenfassen,



I²C für mehr IO auf dem ESP32. Das geht  so lang man I²C kurz hält. Achtung: 3.3V.

Grüße
Harald
Hallo,

bei den von mir oben genannten "RBG-LEDs" dachte ich an die WS2812 (ich kann mir nur immer diese Bezeichnung nicht merken ), weniger an WS2811.
Da ich nicht genau weiß, wieviele Encoder ich brauche, wollte ich die als eigenständige Module mit dem Arduino Nano realisieren, klein und günstig, der sollte reichen. Ich habe dabei auch überlegt, die Tastenereignisse mit einer 8x8-Matrix auszulesen; die Variante mit den Schieberegistern erscheint mir aber besser (auch elektrisch im Hinblick auf Störungen, da die Tasten nicht direkt an den Arduino-Pins hängen), auch weil sie weniger Pins braucht (3 reichen).
Deshalb finde ich die eigene Zentraleinheit mit mehreren per Bus angebundenen Encodern günstiger. Wenn die Zentraleinheit genug Kapazität für die RBG-LEDs hat -- umso besser Welcher Bus da jetzt verwendet werden kann (sowohl von den Encodern als auch zu den Decodern) ist noch komplett offen

Viele Grüße
Michael
Hallo Michael,

wozu brauchst du dann ein Moba Bus System?

Ich verwende, obwohl ich mit SX fahre, schalte und melde, gerne den I2C Bus des Arduino um extrene Aufgaben zu lösen.
Mit Arduinos bist du vollkommen unabhängig von irgendwelchen Moba Elektronik Herstellern und verwendest ein Massenartikel, der vom Preis her unschlagbar günstig ist und von diversen Herstellern erhältlich ist.

Im Moment arbeite ich gerade an der Steuerung meiner Drehscheibe und Anbindung an TC (TrainController), Drehscheibenantrieb mit Schrittmotor.
Der Arduino steuert aber nicht nur den Schrittmotor der Drehscheibe, sondern auch die Servos der 25 Lokschuppentore. Für die Servo Ansteuerung kommen 2 Erweiterungsmodule mit je 16 Servo Ausgängen zum Einsatz, gesteuert über I2C Bus vom Arduino.
Kosten der beiden Module ca. 16€ für 32 Servos.
(meine Eigenbau SX Servo Decoder sind schon sehr günstig mit ca. 12€ für 8 Servos)
Über ein weiteres Erweiterungsmodul (auch über I2C) wird die Stromversorgung der Servos immer in 8er Blöcken zeitverzögert eingeschaltet.
Anbindung an TC ist noch nicht fertig, wird wohl aber über binäre Befehle erfolgen - 8 SX Bit - 255 Befehle.

Über binäre Befehle habe ich gerade eine andere Aufgabe erfolgreich abgeschlossen. Die Bedienung meiner Transportröhren. War mir viele Jahre ein Dorn im Auge, weil es nicht wirklich effektiv und damit viel zu zeitaufwändig zu bedienen war.
Bei dieser Lösung nutzte ich zum ersten Mal den I2C Bus.
Arduino wird dabei bedient über ein 4x4 Tastenfeld über I2C Bus, und ein 4 Zeilen Display, ebenfalls über I2C Bus zur Anzeige und Rückmeldung.
Arduino steuert je nach Befehl die Bits an einem SX Decoder ( 7 Bits für die binär Werte =127 Befehle, der 8te Bit als Trigger - Auslöser der Übernahme durch TC.
Diese Einheit sitzt direkt an der Andockstelle der Röhren - so kann ich jetzt die Röhren andocken und und sofort die entsprechende Zugfahrt starten.
20 lange Züge in 30 Minuten von der Anlage runter, fertig verpackt im Transportwagen.
Umgekehrt, die Züge auf die Anlage dauert gerade mal 10 Minuten für 20 Züge.

Gruss Klaus

Die von maNNikla zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login

Hallo Harald,

I2C Bus Länge habe ich noch nicht getestet.
Hast du Erfahrungswerte damit?

Gruss Klaus
Zitat - Antwort-Nr.: 14 | Name: MHAG

Welcher Bus da jetzt verwendet werden kann (sowohl von den Encodern als auch zu den Decodern) ist noch komplett offen



Ich würde nix mehr mit 8bit CPUs anfangen. Mit einem ESP32 hat man auch Wifi als "Bus". Aber jeder kann nach seiner Facon glücklich werden.

Grüße,
Harald
Zitat - Antwort-Nr.: 16 | Name: maNNikla

I2C Bus Länge habe ich noch nicht getestet.
Hast du Erfahrungswerte damit?



Alle DCC-EX Anwender die auf Längen bleiben die in einem PC Mobo Platz hätten sind eigentlich mit I²C zufrieden. Alle die Längen über 1m verzwingen wollen brauchen spezielle Bus Terminierung oder andere "schwarze Magie". Dazwischen ist Grauzone. Zumindest ist das was man so im Discord an Erfahrungen hört.

Grüße,
Harald
Hallo HArald,

danke für den Input.

Gruss Klaus
Hallo,

ich betrachte auch I2C als Bus. Und für kurze Strecken innerhalb des Stellpults sollte der wohl funktionieren.
WiFi interessiert mich jetzt eher weniger...
Nach der Zentraleinheit sollte halt sinnvollerweise ein Modellbahn-Bus (SX, DCC, BiDiB,...) zu den käuflichen Standard-Decodern gehen, das könnte manches bei der Beschaffung vereinfachen.

Viele Grüße
Michael

Zitat - Antwort-Nr.: 20 | Name: MHAG

Zentraleinheit



Zu was soll eine Zentrale gut sein wenn du kein DCC Signal brauchst?

Grüße,
Harald
Hallo,

bezüglich I2C und lange Verbindungen: Es gibt spezielle Bausteine, z.B. den PCA9600 von NXP, die eine Übertragung des Signals über lange Distanzen (im Datenblatt steht was von 20m) erlauben. Und irgendwo in China gibt es bestimmt eine kleine Fabrik, die Platinchen mit dem anbietet. Würde ich allerdings auch nicht machen, wenn es sich verhindern läßt.

Klaus


Nur registrierte und eingeloggte User können Antworten schreiben.
Einloggen ->

Noch nicht registriert? Hier können Sie Ihren kostenlosen Account anlegen: Neuer N-Liste Account





Zum Seitenanfang

© by 1zu160.net;