RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#76 von TobiBS , 03.12.2018 20:02

Zitat
Hat jemand vieleicht schon eine analoge Modellbahn an den PC angeschlossen und steuert sie damit??? Suche speziell im Bereich NRW, so dass man sich auch mal treffen könnte. Natürlich sind auch alle anderen eingeladen, aber da ist der persönliche Kontakt ggf. schwieriger.


Hallo Freddy,

ich schlage dir vor einen eigenen Thread aufzumachen, oder diesen Post dahin verschieben zu lassen, da das schon sehr weit über das ursprüngliche Thema hinausgeht.

Gruß,
Tobias


TobiBS  
TobiBS
RegionalExpress (RE)
Beiträge: 99
Registriert am: 10.12.2015
Spurweite H0
Stromart AC, Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#77 von Rothpe , 02.01.2019 16:19

Hallo Tobias und alle anderen Kollegen,

erst mal wünsche ich Euch allen ein gesundes neues Jahr 2019.

Über die Feiertage habe ich endlich meinen Zugzielanzeiger zum Einsatz gebracht
Habe jetzt einen 3D Drucker und meinen kompletten Bahnsteig damit entworfen und gedruckt.
Dort enthalten ist auch das Gehäuse für den Zugzielanzeiger.

https://www.bilder-upload.eu/bild-76e169-1546442073.jpg.html

Nochmal mein herzliches Dankesschön an alle die hier mit Sketch gehofen haben.

Fragen zum Gehäuse bzw. Bahnsteig und 3D Druck jederzeit sehr gerne.

Viele Grüße

Peter


Rothpe  
Rothpe
Regionalbahn (RB)
Beiträge: 27
Registriert am: 11.03.2018
Ort: Bad Marienberg
Spurweite H0
Stromart AC, Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#78 von ThKaS , 03.01.2019 12:56

Moin Peter,

zeig doch mal ein paar Bilder deiner Konstruktionsdateien.
Boden, Masten, Dach.
Getrennt gedruckt oder „in einem Stück“?


lieben Gruss von südlich des Weisswurst-Äquators
Thomas

guckst: runderneuerte https://www.thkas-moba.de ‹(•¿•)› www.mucis.de

‹(•¿•)›

Mä-K-Gleis, Tams MC, Multi-Kulti Decoder, WDP


 
ThKaS
InterCityExpress (ICE)
Beiträge: 2.199
Registriert am: 28.04.2005
Homepage: Link


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#79 von Rothpe , 04.01.2019 14:06

Hallo Thomas,

Danke für Dein Interesse an den Bildern.

Anbei ein paar Bilder von der Konstruktion:

https://www.bilder-upload.eu/bild-680885-1546606890.png.html --> Dach
https://www.bilder-upload.eu/bild-a52c41-1546606942.png.html --> Stützen
https://www.bilder-upload.eu/bild-06fc3a-1546606981.png.html --> Zugzielanzeiger mit Deckel
https://www.bilder-upload.eu/bild-289cd2-1546607020.png.html --> Bahnsteig mit Unterführung
https://www.bilder-upload.eu/bild-b83e19-1546607054.png.html --> Bahnsteig Belag gekachelt.

Die anderen Stücke vom Bahnsteig sind identisch nur ohne Unterführung.
Für die Bahnsteig Kanten habe ich die 10mm von Auhagen genommen.

Weitere Fragen natürlich gerne.

Viele Grüße

Peter


Rothpe  
Rothpe
Regionalbahn (RB)
Beiträge: 27
Registriert am: 11.03.2018
Ort: Bad Marienberg
Spurweite H0
Stromart AC, Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#80 von andiatbaden , 06.01.2019 17:38

Hallo Peter,

toll was Du da bisher gemacht hast. Ich hatte das Thema für mich vor ca. 1,5 Jahren mal in Angriff genommen.

Ich hatte die Anzeige über Rocrail angesteuert, d.h. die Steuerung ging über die Blöcke im Bahnhof. Leider habe ich den Code nicht mehr.

Mich würde interessieren, was für einen 3D-Drucker du hast, die Ergebnisse sehen ja recht gut aus. Kannst Du vielleicht von den Anzeigegehäusen etwas bessere Bilder einstellen? Wäre auch toll, wenn man die im Vergleich zu Preisers oder was anderem sehen könnte.

Danke!


Viele Grüße aus dem Badischen

Andreas

Anlagenbau:

Andreshaim II: viewtopic.php?f=15&t=135978

Mein Planungsthread:

Andreshaim II (Neu): viewtopic.php?f=24&t=131628


andiatbaden  
andiatbaden
InterRegio (IR)
Beiträge: 181
Registriert am: 21.03.2013
Gleise Märklin K-Gleis
Spurweite H0
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#81 von bahnfreek , 06.01.2019 19:10

Hallo Andreas,

Weißt du denn noch wie du die damals eingebunden hattest in rocrail? Also welches Board und welche Schnittstelle?

Gruß Simon


Plus auf Masse das knallt klasse...


 
bahnfreek
Beiträge: 6
Registriert am: 18.10.2018


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#82 von andiatbaden , 06.01.2019 19:35

Hallo Simon,

ich hatte glaube ich ein Visual Studio Programm geschrieben, das von RocRail die Events gezogen hatte und dann per serieller Ausgabe direkt an einen Arduino die Infos geschrieben hat.

Wenn es Dich interessiert, kann ich schauen, ob ich den Quellcode für Visual Studio noch habe. In der Zwischenzeit würde ich es wohl über Loconet machen.


Viele Grüße aus dem Badischen

Andreas

Anlagenbau:

Andreshaim II: viewtopic.php?f=15&t=135978

Mein Planungsthread:

Andreshaim II (Neu): viewtopic.php?f=24&t=131628


andiatbaden  
andiatbaden
InterRegio (IR)
Beiträge: 181
Registriert am: 21.03.2013
Gleise Märklin K-Gleis
Spurweite H0
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#83 von bahnfreek , 06.01.2019 19:58

Moin, so eilig ist es nicht aber bin für die Ideen dankbar Das hatte mich schon die ganze Zeit beschäftigt und auch die Frage ob dies überhaupt geht. Aber scheinbar schon;)

Danke dir für die Rückmeldung;)

Gruß Simon


Plus auf Masse das knallt klasse...


 
bahnfreek
Beiträge: 6
Registriert am: 18.10.2018


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#84 von andiatbaden , 08.01.2019 20:32

Hallo Simon,

hab alles was ich hatte durchgesucht. Das einzige was ich noch gefunden habe ist die RocRail Planungsdatei, die das
angesteuert hatte. Ich hatte das über Ansagen mit Sprachausgabe gemacht. Damit ließ sich ein externes Programm mit dem Text ansteuern.

Falls ich noch was finden sollte, schicke ich Dir das per PN.

Edit: Falls ich irgendwie sonst noch helfen kann, gerne


Viele Grüße aus dem Badischen

Andreas

Anlagenbau:

Andreshaim II: viewtopic.php?f=15&t=135978

Mein Planungsthread:

Andreshaim II (Neu): viewtopic.php?f=24&t=131628


andiatbaden  
andiatbaden
InterRegio (IR)
Beiträge: 181
Registriert am: 21.03.2013
Gleise Märklin K-Gleis
Spurweite H0
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#85 von Bahn-Rambo , 19.01.2019 17:18

Hallo @ all

Mein Name ist Ramo und bin hier im Forum neu.
Nach langer Suche habe ich das tolle Projekt Zugzielanzeige gefunden. Ich hatte im Dezember über PN wegen des Codes angefragt, leider ging die Anfrage über die Feiertage unter. Gestern kamen nun die Displays und ich brenne darauf anfangen zu können. Vielleicht klappt es ja direkt über das Forum. Vielen Dank

Ramo


Bahn-Rambo  
Bahn-Rambo
Beiträge: 2
Registriert am: 20.12.2018


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#86 von ThKaS , 19.01.2019 17:43

Moin moin,

nimm den Code aus Post #71 , da hast du alles drin.


lieben Gruss von südlich des Weisswurst-Äquators
Thomas

guckst: runderneuerte https://www.thkas-moba.de ‹(•¿•)› www.mucis.de

‹(•¿•)›

Mä-K-Gleis, Tams MC, Multi-Kulti Decoder, WDP


 
ThKaS
InterCityExpress (ICE)
Beiträge: 2.199
Registriert am: 28.04.2005
Homepage: Link


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#87 von Bahn-Rambo , 20.01.2019 13:32

Servus,

vielen Dank für die schnelle Antwort. Soweit bin ich nicht jede Antwort durchgegangen. Es funktioniert Super

Danke Ramo


Bahn-Rambo  
Bahn-Rambo
Beiträge: 2
Registriert am: 20.12.2018


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#88 von moppe , 20.01.2019 15:29

Zitat

Es funktioniert Super



Ja, natürlich (weil die code ist von Tobias, modifiziert bei mir ).


Klaus


"Meine" Modellbahn:http://www.modelbaneeuropa.dk
Dänisches Bahnforum: http://www.baneforum.dk
PIKO C4 "Horror Gallery": http://moppe.dk/PIKOC4.html


 
moppe
Trans Europ Express (TEE)
Beiträge: 8.720
Registriert am: 07.08.2011
Homepage: Link
Ort: Norddeusche halbinsel
Gleise Roco, PECO, Märklin/Trix, PIKO,
Spurweite H0, H0e, N, Z
Steuerung Z21, Lenz, MpC Gahler+Ringsmeier, Games on Track/Faller
Stromart AC, DC, Digital, Analog


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#89 von leviticus , 21.01.2019 15:41

Hallo,

ich habe auch versucht eine PN an Peter (rothpe) zu schicken, aber die hängt bei mir im Postausgang

Nachdem ich erst beginne mich mit Arduino zu beschäftigen - hat schon jemand von euch das ganze DCC fähig gemacht?
Um die Zugzielanzeige dynamisch zu steuern muss der Arduino DCC Befehle verstehen.

LG Stefan


Das Gegenteil von gut - ist gut gemeint!
Meine Anlage: viewtopic.php?f=64&t=106547


leviticus  
leviticus
InterCity (IC)
Beiträge: 561
Registriert am: 13.09.2006
Homepage: Link
Gleise Roco ohne Bettung
Spurweite H0, H0e
Steuerung ZIMO
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#90 von Hardi , 11.02.2019 01:24

Hallo Zusammen,

die Idee eine Bahnsteiganzeige mit einem Arduino zu basteln hat mir gleich als ich das erste Mal über den Thread hier gestolpert bin sehr gefallen. Aber als dann ein Stummikollege mir so ein Display in die Hand gedrückt hat ist es dann passiert. Seit dem Tag an dem meine Displays aus China eingetroffen sind bastle ich an dem Programm…

Das Ergebnis möchte ich Euch hiermit vorstellen:
Ich habe die frei verfügbaren Programme aus dem Thread hier angeschaut und versucht daraus ein Programm zu schreiben das alle Wünsche (und noch viel mehr) erfüllt. Dazu habe ich die Programme aus Post #68, #71 und #73 benutzt. Vielen Dank an Tobias, Klaus und Fredddy. Ich Ihr nehmt es mir hoffentlich nicht übel, dass ich Eure Ideen und Programmteile verwendet habe.

Die Anzeige verwendet das gleiche Layout wie die vorgestellten Programme und kann wie in Programm #73 gezeigt über die serielle Schnittstelle Texte empfangen. Zusätzlich gibt es noch einige Erweiterungen:

Überblick der Änderungen:

  • Mehrere OLED Anzeigen an einem Arduino
  • Steuerung über DCC Kommandos
  • Über 100 Ausgabezeilen im FLASH
  • Taster zum Wechseln der Anzeigen
  • Flexibel anpassbares Display Layout
  • Verwendet neue Display Bibliothek u8g2lib
  • Schneller Bildschirmupdate
  • Speichereinsparung durch besondere Schriftarten
  • Serielle Schnittstelle zum Senden der Texte wurde erweitert

In folgenden möchte ich auf die Änderungen im Detail eingehen.


Mehrere OLED Anzeigen an einem Arduino:
Mit einem zusätzlichen MOS-FET (BS170) und einem Widerstand kann mehrere OLED Displays von einem Arduino aus ansteuern. Pro OLED wird ein FET benötigt. Mit ihm wird die Datenleitung (SDA) zum Display geschaltet. Auf diese Weise kann man fast beliebig viele Displays mit einem Arduino betreiben. Limitierende Faktoren sind dabei die Anzahl der Arduino Pins und die Stromstärke der Taktleitung des Arduinos. Die Anzahl der Pins kann man über eine Demultiplexer IC (74HCT238 oder CD4514) erweitern und der Taktausgang könnte verstärkt werden.
Bei dem Konzept wird immer nur eine Anzeige angesprochen. Das bedeutet, dass man nur auf einem Display eine Laufschrift anzeigen kann. Von der Rechenzeit her könnte man auch zwei Displays mit einer Laufschrift ansteuern, das würde aber mehr Speicher benötigen und einiges an Aufwand bedeuten.


Steuerung über DCC Kommandos:
Die zweite wichtige Neuerung ist die Auswahl der angezeigten Texte über DCC Kommandos. Das war der eigentliche Grund warum ich mich mit der Geschichte befasst hab. Bei dem MobaLedLib Projekt habe ich gelernt, wie einfach das einlesen von DCC Kommandos ist (viewtopic.php?p=1926995#p1926995). Darum habe ich mir vorgenommen das gelernte hier einzusetzen. Aber auch hier habe ich mich gewaltig verschätzt wie lange das dauert. 17 Tage lang habe ich an der Anzeige gebastelt. Vielleicht habe ich aber auch zu viele Ideen einbringen wollen…
Die DCC Signale werden mit einem Optokoppler, einer Diode und einem Widerstand eingelesen. Das Programm reagiert auf verschiedene Zubehörbefehle. In der Datei „Configuration.h“ bestimmt man über die Konstante FIRST_DCC_ADDR und LAST_DCC_ADDR welche Adressen benutzt werden. Die Kommandos kann man in mehrere Gruppen einteilen. Die wichtigsten Befehle kommen am Anfang so dass man schon über zwei DCC Kommandos alles steuern kann. Wenn man mehr ins Detail gehen will, dann können die weiteren Befehle genutzt werden. Hier die verschiedenen Gruppen:
  1. Wechsel der Anzeige auf dem aktuellen OLED Panel
  2. Umschalten zu einem anderen OLED Panel
  3. Anzeige der nächsten Text Meldung auf einem bestimmten OLED
  4. Auswahl eines bestimmten OLED Panels
  5. Bestimmte Test Meldung an das aktuelle OLED Panel schicken

Die Gruppen 3 bis 5 enthalten mehrere DCC Kommandos in Abhängigkeit der Anzahl der verwendeten OLED Anzeigen und Text Meldungen. Das ist recht komplex geworden. Ich werde weiter unten anhand einer Tabelle Funktionen der einzelnen Adressen beschreiben.


Über 100 Ausgabezeilen im FLASH
Im Thread ist der Wunsch aufgekommen, dass man viele verschiedene Meldungen anzeigen will. Das Beispiel #68 in dem nur 7 verschiedene Anzeigen verfügbar sind hatte schon die Grenze des im Arduino verfügbaren Speichers erreicht:

1
2
3
4
5
 

Der Sketch verwendet 16200 Bytes (52%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.
Globale Variablen verwenden 1604 Bytes (78%) des dynamischen Speichers, 444 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.
Wenig Arbeitsspeicher verfügbar, es können Stabilitätsprobleme auftreten.
 
 


Kritisch war hier der verfügbare Arbeitsspeicher. Das lag daran, das bei einem Arduino Programm normalerweise alle Konstanten aus dem Programmspeicher (FLASH) in den Arbeitsspeicher (RAM) kopiert werden. Das kann man einfach umgehen indem man die Konstanten aus dem FLASH liest. Das Schlüsselwort dazu ist „PROGMEM“. Im Internet gibt es dazu viele Artikel.
Ich habe die Meldungen in eine eigene Datei „Text_Messages.h“ ausgelagert. Hier sorgt das Schlüsselwort PROGMEM dafür das kein zusätzlicher RAM belegt wird.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 

const PROGMEM char Text_Messages[] =
// uhrzeit zugnummer ziel zuglauf1 zuglauf2 wagenstand lauftext 1 2 3 4 5 6 7 8 9 10
// "12345" "1234567" "1234567890123456" "12345678901234567890" "12345678901234567890" "1234567" "1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
SL "22:24" NE "ICE 153" NE "Mainz Hbf" NE "Schlier 374ber" NE " Karlsruhe nach" NE "-222F--" NE "+++ Vorsicht: STUMMI-ICE f344hrt durch +++ +++ Danke an Tobias, Klaus & Fredddy,... +++ "
SL "09:34" NE "RB 1521" NE "Aschaffenburg" NE "Gro337auheim - Kahl" NE "- Gro337krotzenburg" NE "" NE "“
SL "10:04" NE "RB 3237" NE "Plattling" NE "Freising - Moosburg" NE "- Landshut" NE "" NE ""
SL "12:53" NE "EC 172" NE "Hamburg - Altona" NE "Berlin Hbf - " NE "Hamburg Hbf" NE "-222211" NE "Versp344tung ca 10 Min"
SL "15:21" NE "ICE 592" NE "Berlin Ostbf" NE "Fulda - Kassel -" NE "Braunschweig Hbf" NE "11111" NE ""
SL "17:02" NE "IC 602" NE "Puttgarden" NE "Wuppertal - Dortmund" NE "Bremen - Hamburg" NE " 22111" NE ""
SL "18:30" NE "RE 7" NE "Kiel / Flensburg" NE "Elmshorn -" NE "Neum374nster" NE " 2121" NE "Zugteilung in Neum374nster - Vorderer Zugteil f344hrt bis Flensburg"
SL G934 NE "Hg-Exp" NE "Hogsmeade" NE "King's Cross" NE "- nonstop -" NE "-------" NE "Hogwarts-Express"
SL "21:45" NE "ICE 651" NE "Leipzig Hbf" NE "Fulda - Eisenach" NE "" NE "" NE "Achtung: Heute auf Gleis 7"
 
; // End of the Text_Messages string
 
 


Der FLASH Speicher eines Arduino Nanos ist 32 KB Groß. Wenn das Programm nicht allzu viel Speicher belegt, dann können im FLASH über Hundert Displays abgelegt werden. Damit möglichst wenig Speicher belegt wird und die Eingabe übersichtlich ist habe ich alle Meldungen in einer langen „char[]“ Liste abgelegt. Das hat gegenüber einem Array mit konstanter Länge den Vorteil, dass nur für benutzte Zeichen Speicher belegt wird. Getrennt werden die Einträge durch besondere Trennzeichen (Dieses Trennzeichen benötigt nicht mehr Speicher als ein einzelner Text da dieser mit einer 0 abgeschlossen wird. Die Trennzeichen habe ich, damit sie einfach änderbar sind, in Makros abgelegt. Das Makro „SL“ steht für „Start Line“ und enthält das Zeichen ‚§‘. Die Trennung zwischen zwei Einträgen wird mit „NE“ gemacht.

1
2
3
4
 

#define SL "247" // Start Line
#define NE "|" // Next Entry
 
 


Wenn jemanden tatsächlich mehr als 100 verschiedene Einträge erstellen will, dann kann er auf den Arduino Mega2560 umsteigen. Dieser bietet mit seinen 256 KB FLASH Platz für über 2000 Einträge.
Unabhängig davon ob Ihr 10 oder 2000 Einträge erstellt habt würde ich mich freuen, wenn ihr Eure Liste hier veröffentlichen würdet, denn ich bin zu Faul vernünftig klingende Daten zu generieren.
In den Texten habe ich die Deutschen Umlaute durch Oktale Nummern ersetzt. Das hat den Vorteil, dass die Zeichen unabhängig vom benutzten Editor und der darin verwendeten Schriftart auf dem Arduino richtig dargestellt werden. Die entsprechenden Kodes findet Ihr am Anfang der Datei „Text_Messages.h“.

Die einzelnen Zeilen der Listen müssen nicht unbedingt alle Felder enthalten. Man kann auch Zeilen generieren welche nur Teile der Anzeige ändern. Dazu werden die Kommandos zur Steuerung der Ausgaben über die serielle Schnittstelle benutzt.
Beispiel:

1
2
3
 

SL "#LDiese Zeile verändert nur den Lauftext"
 
 


Die Kommandos der seriellen Schnittstelle werden weiter unten erklärt (Falls das noch jemand liest).
Damit ist es möglich, dass man auch verschieden „Textbausteine“ erstellt und diese individuell kombiniert. In Verbindung mit den DCC Befehlen hat man damit unendlich viele Möglichkeiten.


Taster zum Wechseln der Anzeigen
In dem Programm habe ich ein paar Zeilen eingebaut mit denen man per Tastendruck die Anzeige wechseln kann. In dem Beispiel habe ich 5 Tasten benutzt. Die Tasten werden an die Arduino Pins 3 bis 7 angeschlossen (Siehe „Configuration.h“) wobei der andere Anschluss der Taster mit GND verbunden wird.
Mit dem ersten Taster ruft man die nächste Text Meldung ab. Sie wird auf dem aktuellen OLED Panel ausgegeben.
Wenn mehrere Panels angeschlossen sind, und in der Konfiguration aktiviert wurden, dann wird das aktuelle Panel gewechselt. Wenn, wie im Schaltplan vorgeschlagen, LEDs für jedes Panel vorhanden sind, dann erkennt man das an der entsprechenden Leuchtdiode. Der Inhalt der Anzeige ändert sich mit diesem Taster nicht. Erst ein Druck auf den ersten Taster verändert die Ausgabe.
Die Taster 3 bis 5 aktivieren die nächste Anzeige für ein bestimmtes OLED. Taster 3 ändert die Anzeige vom ersten Panel, Taster 4 vom zweiten Panel und entsprechend Taster 5 für das dritte OLED Display.
Wenn nur ein OLED angeschlossen ist (Default Konfiguration), dann werden die Taster zwei bis fünf zur Auswahl einer bestimmten Text Nachricht genutzt.
Anstelle der Taster können auch andere Quellen angeschlossen werden. Das kann z.B. ein Zubehör Decoder, eine Lichtschranke oder ein Reed-Kontakt sein. Damit können dann z.B. eine neue Anzeige abgerufen werden, wenn ein Zug das entsprechende Bahnhofsgleis verlässt.



Flexibel anpassbares Display Layout
In dem Original Programm wurden die Positionen auf der Anzeige, die Schriftarten und andere Eigenschaften im Programm angegeben. Das erschwert die Anpassung des Layouts an andere Anzeigen. Darum habe ich alle Parameter in eine Tabelle umgewandelt welche einfach zu verändern ist:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 

const PROGMEM Disp_T Disp[] =
{// xR xL y Pix RolT. Color Right DynInv NoFont Del DispIf font Activ Define variable length
// Width Len Index alig. Len Descent Mark Privi. Char
{ 30, 20, 5, 78, 20, { 0, 0, 0, RT_SHIFT, 0, 0 }, FONT_4x6, 'L', DEFVAR(lauftext ) }, // lauftext Should be the first entry because it overwrites the areas on the left and right side with Black pixels
{128, 0, 13, 18, 0, { 1, 1, 0, 0, 0, 0 }, FONT_6x13B, 'G', DEFVAR(gleis ) }, // gleis
{ 0, 100, 6, 25, 0, { 1, 0, 0, 0, 1, 0 }, FONT_5x8, 'U', DEFVAR(uhrzeit ) }, // uhrzeit
{ 0, 100, 12, 20, 0, { 1, 0, 0, 0, 1, 0 }, FONT_4x6, 'N', DEFVAR(zugnummer ) }, // zugnummer
{ 30, 0, 28, 176, 0, { 1, 0, 0, 0, 1, 0 }, FONT_PS_11X17, 'Z', DEFVAR(ziel ) }, // ziel proportional font 11x17 ? https://github.com/olikraus/u8glib/wiki/fontgrouporgdot
{ 30, 20, 11, 80, 0, { 1, 0, 0, 0, 1, 0 }, FONT_4x6, '1', DEFVAR(zuglauf1 ) }, // zuglauf1
{ 30, 20, 17, 80, 0, { 1, 0, 0, 0, 1, 0 }, FONT_4x6, '2', DEFVAR(zuglauf2 ) }, // zuglauf2
{ 0, 100, 26, 28, 0, { 0, 0, 1, 0, 1, 0 }, FONT_4x6, 'W', DEFVAR(wagenstand) }, // wagenstand
{ 0, 100, 20, 28, 0, { 1, 0, 0, 0, 0, 1 }, FONT_4x6, 'A', DEFVAR(abschnitt ) }, // haltepositionen ABCDEFG
};
 
 


Damit kann man das Programm auch einfach an ganz andere Aufgaben anpassen. In der Tabelle können einfach weitere Zeilen hinzugefügt werden oder Zeilen weggelassen werden.
Ich habe mich hierbei sehr genau an die Vorgaben des Originalprogramms gehalten, weil ich dieses Layout für sehr gelungen halte. Lediglich die Abstände der Zeilen wurden so angepasst, dass auch Buchstaben mit Unterlänge (g, y, p, q) richtig dargestellt werden. Das spielt zwar eigentlich keine Rolle, weil das Display so klein ist, dass man das so wieso nicht ohne Lupe erkennen kann, aber ich bin Perfektionist.
Durch Änderung der Tabelle könnte man z.B. einfach eine Tafel mit den Ankunftszeiten aller Züge erstellen.
Wenn sich jemand von Euch daran macht, dann veröffentlicht euer Ergebnis bitte hier. Bei Fragen helfe ich Euch gerne.
Eine Kleinigkeit habe ich noch nicht richtig an die Tabelle angepasst. Die Buchstabenbreite der Laufschrift ist momentan fest im Programm verankert.


Neue Display Bibliothek u8g2lib:
Das Originalprogramm benutzt eine ältere Version der Grafikbibliothek (u8glib) welche seit 4 Jahren nicht mehr gepflegt wird. Darum habe ich das Programm an die neue Bibliothek (u8g2lib) angepasst. Der neue Grafiktreiber ist deutlich schneller. Er verwendet die Standard I2C Bibliothek und ist damit einfacher für andere Plattformen zu portieren. Dummerweise sind einige der benutzten Schriftarten in der neuen Version nicht mehr vorhanden. Darum musste ich diese aus der alten Bibliothek importieren und anpassen. Dabei habe ich den Speicherbedarf die Schriften dann auch gleich noch optimiert (siehe unten).
Die neue Grafikbibliothek kann man komfortabel in der Arduino IDE installieren. Hier (viewtopic.php?p=1913636#p1913636) habe ich gezeigt wie man das bei der MobaLedLib macht. Für die Grafik Routinen gibt man entsprechend „u8g2“ ein.
Mit dem Kompilerschalter „USE_U8G2LIB“ in der Konfiguration kann man zu Testzwecken die alte Bibliothek aktivieren.
Das Programm benutzt einen Modus bei dem der Bildschirminhalt komplett im Speicher abgelegt wird bevor er an das OLED Display geschickt wird. Dadurch wird die Updatezeit nochmal deutlich reduziert. Beim Ausgansprogramm wurde ein Treiber benutzt der nur einen halb so großen Bildschirmspeicher benutzt hat.

NmraDcc:

Das Programm benötigt außerdem die NmraDcc Bibliothek. Auch diese kann über die Bibliotheksvarwaltung der Arduino IDE installiert werden. "NmraDcc" im Suchfeld eingeben.

Speichereinsparung durch besondere Schriftarten:
Da in der neuen Grafikbibliothek einige der verwendeten Schriftarten fehlten mussten diese neu generiert werden. Zum Glück wird das dazu benötigte Programm „bdfconv.exe“ mit der Bibliothek mitgeliefert. Dem Programm kann man als Parameter mitteilen welche Zeichen konvertiert wurden. Auf diese Weise konnte ich aus den Zeichen > 127 nur die Deutschen Umlaute verwenden. Dadurch wird der Speicherverbrauch der Schriftarten halbiert. Für den Fall, dass man einmal alle Zeichen benötigt sind auch die vollständigen Schriften im der ZIP Datei enthalten.

Zeichensatz welche nur die Deutschen Umlaute enthält (5x8_t_german.h: 1173 Bytes):
Wer kann sich denken wozu ich das ¾ Zeichen benötige?

Normaler Zeichensatz (6x13B_tf.h: 2258 Bytes):


Senden von Texten über die serielle Schnittstelle:
Das Senden von Texten über die serielle Schnittstelle ist ein Feature welches (wenn ich das richtig verstanden habe) von Fredddy eingeführt wurde. Ich finde es sehr praktisch, besonders zum Testen der Anzeige. Dabei werden Befehle mit einem ‚#‘ eingeleitet gefolgt von einem Zeichen mit dem der Befehl beschrieben wird. ‚#L‘ ist z.B. der Befehl zur Definition eines Lauftextes.
Zu den bestehenden Befehlen habe zwei weitere hinzugefügt:
‚#T‘ zur Auswahl eines Textes aus der Datei „Text_Messages.h“. Auf den Befehl folgt die Nummer des gewünschten Textes. ‚#T7‘ wählt entsprechend den Text 7 aus und zeigt diesen auf dem aktuellen OLED Panel an.
Mit dem zweiten neuen Befehl kann das aktuelle OLED Panel ausgewählt werden. Dazu wird ‚#‘ gefolgt von einem Kleinbuchstaben verwendet. ‚#a‘ aktiviert das erste OLED.

Außerdem habe ich den Befehlsinterpreter um eine Kurzschreibweise erweitert. Mit dem ‚|‘ Zeichen können zwei Felder hintereinander übertragen werden ohne dass man spezifizieren muss welches Feld man ansprechen will. Dabei ist die Reihenfolge entsprechend der oben gezeigten Tabelle „Disp[]“ verwendet. Dabei gibt es eine Ausnahme. Die Laufschrift sollte am Ende der Zeile in der Textdatei stehen, weil hier die Längen sehr unterschiedlich sind.

Hier eine Liste der Befehle:
L: Lauftext (Maximal 100 Zeichen)
G: Gleisnummer
W: Wagenstand
1: Zuglauf 1
2: Zuglauf 2
Z: Ziel
U: Abfahrtszeit
N: Zugnummer
X: Lösche Zug Daten (Zugnummer, Uhrzeit, Ziel, Zuglauf1, Zuglauf2, Wagenstand)
<: Gleis Links
>: Gleis Rechts
T: Anzeige der Text Message auf dem aktuellen OLED Panel. #T+ und #T- sind auch möglich
a-z: Auswahl eines OLED Panels.

Achtung: Wenn einzelne Felder über die den seriellen Monitor der Arduino IDE verändert werden, dann bleiben die anderen unverändert. Wenn mehrere OLEDs verwendet werden kann das zu Verwirrungen führen. Die Felder enthalten die Werte der letzten Änderung auch wenn diese in einem anderen OLED Panel gemacht wurden.


DCC Kommandos
Die Anzahl der DCC Kommandos sind abhängig von der Anzahl der benutzten OLED Displays und von der Anzahl der Zeilen in der Datei „Text_Messages.h“. Die Adresse des Befehls hängt außerdem von der gewählten Startadresse ab (FIRST_DCC_ADDR). In der folgenden Tabelle

  1. Wechsel der Anzeige auf dem aktuellen OLED Panel
  2. Umschalten zu einem anderen OLED Panel
  3. Anzeige der nächsten Text Meldung auf einem bestimmten OLED
  4. Auswahl eines bestimmten OLED Panels
  5. Bestimmte Test Meldung an das aktuelle OLED Panel schicken



Die Adresse in Spalte „Beispiel Adresse“ bezieht sich auf das Beispielprogramm bei dem FIRST_DCC_ADDR = 5 ist und drei OLED Panels verwendet werden.

In der Spalte „Adresse Allgemein“ werden folgende Definitionen benutzt:
First = FIRST_DCC_ADDR: Erste DCC Adresse in der Konfiguration
Onr = OLED Panel Nummer beginnend mit 1
Oanz2 = Anzahl der OLED Panels geteilt durch 2 (Aufgerundet auf nächste ganze Zahl (Bei 3 OLEDs ist Oanz2 = 2))
Tnr = Textblock Nummer geteilt durch 2 (Aufgerundet)


Gruppe Beispiel
Adresse
Adresse
Allgemein
Richtung Beschreibung
1 5 First Rot Vorangegangenen Textblock auf
aktuellem OLED Panel anzeigen
1 5 " Grün Nächsten Textblock auf
aktuellem OLED Panel anzeigen
2 6 First+1 Rot Vorangegangenes OLED Panel auswählen
2 6 " Grün Nächstes OLED Panel auswählen
3 7 First+1+Onr Rot Nächsten Textblock auf OLED 1 anzeigen
3 7 " Grün Nächsten Textblock auf OLED 2 anzeigen
3 8 " Rot Nächsten Textblock auf OLED 3 anzeigen
3 8 " Grün Nächsten Textblock auf OLED 1 anzeigen
4 9 First+1+Oanz2+Onr Rot OLED 1 auswählen
4 9 " Grün OLED 2 auswählen
4 10 " Rot OLED 3 auswählen
4 10 " Grün Keine Funktion
5 11 First+1+2*Oanz2+Tnr2 Rot Textblock 1 auf aktuellem OLED anzeigen
5 11 " Grün Textblock 2 auf aktuellem OLED anzeigen
5 12 " Rot Textblock 3 auf aktuellem OLED anzeigen
5 12 " Grün Textblock 4 auf aktuellem OLED anzeigen
5 13 " Rot Textblock 5 auf aktuellem OLED anzeigen
5 13 " Grün Textblock 6 auf aktuellem OLED anzeigen
5 14 " Rot Textblock 7 auf aktuellem OLED anzeigen
5 14 " Grün Textblock 8 auf aktuellem OLED anzeigen
5 15 " Rot Textblock 9 auf aktuellem OLED anzeigen
5 15 " Grün Textblock 10 auf aktuellem OLED anzeigen
5 : : : :
5 : : : :
5 10+Tnr2 First+1+2*Oanz2+Tnr2 Grün Textblock n auf aktuellem OLED anzeigen




Wenn nur ein OLED Panel benutzt wird, dann wird die Tabelle viel einfacher. Dann gibt es nur die Gruppe 1 und 5:
Gruppe Beispiel
Adresse
Adresse
Allgemein
Richtung Beschreibung
1 5 First Rot Vorangegangenen Textblock auf
aktuellem OLED Panel anzeigen
1 5 " Grün Nächsten Textblock auf
aktuellem OLED Panel anzeigen
5 6 First+Tnr2 Rot Textblock 1 auf aktuellem OLED anzeigen
5 6 " Grün Textblock 2 auf aktuellem OLED anzeigen
5 7 " Rot Textblock 3 auf aktuellem OLED anzeigen
5 7 " Grün Textblock 4 auf aktuellem OLED anzeigen
5 8 " Rot Textblock 5 auf aktuellem OLED anzeigen
5 8 " Grün Textblock 6 auf aktuellem OLED anzeigen
5 9 " Rot Textblock 7 auf aktuellem OLED anzeigen
5 9 " Grün Textblock 8 auf aktuellem OLED anzeigen
5 10 " Rot Textblock 9 auf aktuellem OLED anzeigen
5 10 " Grün Textblock 10 auf aktuellem OLED anzeigen
5 : : : :
5 : : : :
5 5+TNr First+Tnr2 Grün Textblock n auf aktuellem OLED anzeigen

Liest den Mist eigentlich irgendeiner?


Die Schaltung:
Zur Ansteuerung von 3 OLED Panels werden neben dem Arduino nur drei MOS-FET Transistoren (BS170), drei 1K und ein 4K7 Widerstand benötigt:


Mit dieser Schaltung und aktiviertem Zufälligen Wechsel in der Konfiguration könnt Ihr bereits drei Bahnsteigsanzeigen betreiben. Die „Configuration.h“ Datei muss dann so angepasst werden:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
 

#define UNUSED_AIN_PIN A3 // This analog input is used to generate a random initial value for the random() function
 
const PROGMEM //Pin Rail Side
Rail_Cfg_T Rail_Cfg[] = {//Nr Nr
{ 8, "3", 'L' },
{ 9, "4", 'R' }, // Uncomment this lines to use 3 OLED pannels
{10, "5", 'L' }, // and add additional lines if more then 3 pannels are used
};
 
// If the following two lines are enabled the displayed text will change randomly
#define RAND_CHANGE_MINTIME 20 // Minimal time between two display changes [s]
#define RAND_CHANGE_MAXTIME 60 // Maximal time between two display changes [s]
 
 



In der angehängten ZIP Datei ist nur ein OLED aktiv damit das Programm sie so verhält wie die Ausgangsprogramme. Außerdem ist der Zufällige Wechsel deaktiviert.

Das folgende Schaltbild zeigt den Aufbau meiner Testschaltung:

Hier sind zunächst einmal die drei Leuchtdioden im Rechten Teil. Diese empfehle ich dringend, weil man daran das aktive OLED Panel erkennt.
Wichtig ist Außerdem der Optokoppler unten Links. Mit ihm werden die DCC Signale aufbereitet.
Wenn man keine DCC Signale benutzen will oder einfach zu Testzwecken dann sollten die Taster ebenfalls eingebaut werden.
Das CAN Modul und der WS2811 Chip habe ich für Zukünftige Erweiterungen des Programms vorgesehen.

Und so sieht mein Testaufbau aus:


Die drei Displays etwas größer:


Ein paar Ansichten der Platine:





Und weil Ihr mir das sonst nicht glaubt hier das Beweis Video:


Was Fehlt noch? Ach Ja, die Software:
[attachment=1]Bahnsteiganzeige_Hardi.zip[/attachment]

Das Programm ist zunächst für ein OLED Panel konfiguriert weil ich davon ausgehe, dass Ihr es gleich mit Eurem aktuellen Aufbau testen wollt. Wenn Ihr dann weitere OLEDs entsprechend der Schaltung oben angeschlossen habt, dann müssen die Einable Pins für die OLEDs in der Datei „Configuration.h“ aktiviert werden:

1
2
3
4
5
6
7
8
 

const PROGMEM //Pin Rail Side
Rail_Cfg_T Rail_Cfg[] = {//Nr Nr
{ 8, "3", 'L' },
{ 9, "4", 'R' }, // Uncomment this lines to use 3 OLED pannels
{10, "5", 'L' }, // and add additional lines if more then 3 pannels are used
};
 
 



Hier nochmal die Schaltpläne als PDF:
[attachment=0]Bahnsteigsanzeige.zip[/attachment]


Und hier noch eine Idee: Wenn man das Display von der Platine trennt, dann wird die Geschichte nur noch halb so Dick. Ich finde, dass es dann von den Proportionen eher zur Realität passt. Ich will mal versuchen ob ich die Verbindung der Beiden Teile mit dünnen Drähten verlängern kann…





Links:
Gerade eben habe ich ein ähnliches Projekt entdeckt:
http://www.hjb-modellbahn.de/ARDUINO/Bah...eigsanzeige.htm

Hardi

Edit 30.12.23:
Achtung: Die unten angehängten Dateien sind veraltet.
Meinen letzten Stand findet Ihr hier: https://github.com/Hardi-St/Zugzielanzeiger_mit_Arduino


Haltet Euch unbedingt von diesen Seiten fern:
viewtopic.php?f=7&t=165060
https://wiki.mobaledlib.de/
sonst wird Eure Anlage niemals fertig…

Unsere Anlage findet Ihr hier:
RE: Unsere Kinder und Vater Anlage(n)

Dateianlage:
Sie haben nicht die nötigen Rechte, um die angehängten Dateien zu sehen

 
Hardi
InterCityExpress (ICE)
Beiträge: 2.125
Registriert am: 28.12.2015
Homepage: Link
Ort: Mainz
Gleise C
Spurweite H0
Steuerung MS2 + Eigenbau
Stromart Digital

zuletzt bearbeitet 30.12.2023 | Top

RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#91 von Südbahnler , 11.02.2019 07:34

Hallo Hardi,

was soll ich sagen Ich bin schon fast sprachlos, was Du da gemacht hast! So was ähnliches hatte ich mir auch mal überlegt, bin aber schon viel früher gescheitert.

Vielen Dank für das ausführliche Erklären und Einstellen dieses tollen Projektes


Viele Grüße
Albrecht

Mein Projekt: Großstadtbahnhof: 8-gleisiger Kopfbahnhof für den Personenverkehr, Rangierbahnhof für den Güterverkehr und Containerterminal


 
Südbahnler
InterCity (IC)
Beiträge: 600
Registriert am: 12.12.2006
Homepage: Link
Ort: Bodenseeraum
Gleise K-Gleis
Spurweite H0
Steuerung ECoS mit TC 10 Gold
Stromart AC, Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#92 von aftpriv , 11.02.2019 09:01

Hardi, einfach genial rost:

Zitat
Hier eine Liste der Befehle:
L: Lauftext (Maximal 100 Zeichen)
G: Gleisnummer
W: Wagenstand
1: Zuglauf 1
2: Zuglauf 2
Z: Ziel
U: Abfahrtszeit
N: Zugnummer
X: Lösche Zug Daten (Zugnummer, Uhrzeit, Ziel, Zuglauf1, Zuglauf2, Wagenstand)
<: Gleis Links
>: Gleis Rechts
T: Anzeige der Text Message auf dem aktuellen OLED Panel. #T+ und #T- sind auch möglich
a-z: Auswahl eines OLED Panels.


vielleicht noch zusätzlich: über Kopf

Gruß aus dem (wieder) verschneiten Spessart
Alf


Pickel-Bahner seit 1958 / K-Gleis + ZIMO-Decoder (MX633P22/MX645P22)
RocRail & RocNetNode jeweils auf RasPi
Email bezüglich MobaLedLib-Belange: LedLib@yahoo.com


aftpriv  
aftpriv
EuroCity (EC)
Beiträge: 1.279
Registriert am: 03.04.2012
Ort: MKK, Hessischer Spessart
Gleise K-Gleis und Selbsbau-Pickel-Gleis (DC-Gleis mit Mittelleiter ausrüsten)
Spurweite H0
Steuerung Rocrail + Rocnetnode auf Raspi
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#93 von leviticus , 11.02.2019 13:12

Hallo Hardi und alle anderen,

ich bin ja Einsteiger in die Arduino Welt und leider auch ein sehr lausiger Programmierer. Trotzdem möchte ich diese Zugzielanzeiger unbedingt auf meiner Anlage haben Deshalb DANKE an Euch, dass ihr Eure Erkenntnisse teilt!

Einen Arduino habe ich jetzt schon mal und werde in den nöchsten Tagen die ersten Versuche machen.

Wo habt ihr Eure Displays bezogen und welche habt ihr genommen?

LG Stefan


Das Gegenteil von gut - ist gut gemeint!
Meine Anlage: viewtopic.php?f=64&t=106547


leviticus  
leviticus
InterCity (IC)
Beiträge: 561
Registriert am: 13.09.2006
Homepage: Link
Gleise Roco ohne Bettung
Spurweite H0, H0e
Steuerung ZIMO
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#94 von bahnfreek , 11.02.2019 14:23

Danke erstmal für den Code ! Sieht nice aus!
Ich habe damals zum testen die Displays genommen:

https://www.ebay.de/itm/0-91-IIC-I2C-Ser...=item25f9063068

Haben ungefähr H0 Format. Kommt halt auf deine Spurweite an.


Plus auf Masse das knallt klasse...


 
bahnfreek
Beiträge: 6
Registriert am: 18.10.2018


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#95 von aftpriv , 11.02.2019 14:44

Servus Stefan

ich habe die genommen: https://de.aliexpress.com/item/1pcs-0-91....5e5b3126BOrawH / € 1,40 / Stück + Versand ab € 0,46
Lieferzeit: 3 bis 4 Wochen, Steuerfrei (EU) bis € 22,00

Gruß
Alf


Pickel-Bahner seit 1958 / K-Gleis + ZIMO-Decoder (MX633P22/MX645P22)
RocRail & RocNetNode jeweils auf RasPi
Email bezüglich MobaLedLib-Belange: LedLib@yahoo.com


aftpriv  
aftpriv
EuroCity (EC)
Beiträge: 1.279
Registriert am: 03.04.2012
Ort: MKK, Hessischer Spessart
Gleise K-Gleis und Selbsbau-Pickel-Gleis (DC-Gleis mit Mittelleiter ausrüsten)
Spurweite H0
Steuerung Rocrail + Rocnetnode auf Raspi
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#96 von Hardi , 11.02.2019 16:03

Hallo Zusammen,

zunächst einmal vielen Dank für das Positive Feedback und die vielen „Bedankungen“.
Als Anzeige kann Grundsätzlich jedes Display mit einer I2C Schnittstelle verwendet werden welches von der u8g2 Bibliothek unterstützt wird. Eine Liste dieser Displays findet man hier: https://github.com/olikraus/u8g2/wiki/u8g2setupcpp

Achtung: Es gibt auch Module mit SPI Schnittstelle. Diese Funktionieren nicht mit der hier gezeigten Umschaltung.

Entscheidend ist dabei die Bezeichnung des Treiber Chips. Ich habe ein Modul mit dem SSD1306 Chip benutzt. Dieser ist auch im Programm eingetragen. In den beiden Links von Simon (bahnfreek) und Alf wird auch dieser Chip verwendet.

Hardi


Haltet Euch unbedingt von diesen Seiten fern:
viewtopic.php?f=7&t=165060
https://wiki.mobaledlib.de/
sonst wird Eure Anlage niemals fertig…

Unsere Anlage findet Ihr hier:
RE: Unsere Kinder und Vater Anlage(n)


 
Hardi
InterCityExpress (ICE)
Beiträge: 2.125
Registriert am: 28.12.2015
Homepage: Link
Ort: Mainz
Gleise C
Spurweite H0
Steuerung MS2 + Eigenbau
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#97 von moppe , 11.02.2019 17:07

Zitat

Ich habe die frei verfügbaren Programme aus dem Thread hier angeschaut und versucht daraus ein Programm zu schreiben das alle Wünsche (und noch viel mehr) erfüllt. Dazu habe ich die Programme aus Post #68, #71 und #73 benutzt. Vielen Dank an Tobias, Klaus und Fredddy. Ich Ihr nehmt es mir hoffentlich nicht übel, dass ich Eure Ideen und Programmteile verwendet habe.

Die Anzeige verwendet das gleiche Layout wie die vorgestellten Programme und kann wie in Programm #73 gezeigt über die serielle Schnittstelle Texte empfangen. Zusätzlich gibt es noch einige Erweiterungen:

Überblick der Änderungen:
  • Mehrere OLED Anzeigen an einem Arduino
  • Steuerung über DCC Kommandos
  • Über 100 Ausgabezeilen im FLASH
  • Taster zum Wechseln der Anzeigen
  • Flexibel anpassbares Display Layout
  • Verwendet neue Display Bibliothek u8g2lib
  • Schneller Bildschirmupdate
  • Speichereinsparung durch besondere Schriftarten
  • Serielle Schnittstelle zum Senden der Texte wurde erweitert






Hardi, es sieht sehr gut aus!!!


Klaus


"Meine" Modellbahn:http://www.modelbaneeuropa.dk
Dänisches Bahnforum: http://www.baneforum.dk
PIKO C4 "Horror Gallery": http://moppe.dk/PIKOC4.html


 
moppe
Trans Europ Express (TEE)
Beiträge: 8.720
Registriert am: 07.08.2011
Homepage: Link
Ort: Norddeusche halbinsel
Gleise Roco, PECO, Märklin/Trix, PIKO,
Spurweite H0, H0e, N, Z
Steuerung Z21, Lenz, MpC Gahler+Ringsmeier, Games on Track/Faller
Stromart AC, DC, Digital, Analog


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#98 von Hardi , 11.02.2019 17:50

Hallo Klaus,

Zitat

Hardi, es sieht sehr gut aus!!!


Das freut mich!

Eigentlich ist der Code ja von Dir (Und natürlich allen anderen Beteiligten):

Zitat

Zitat

Es funktioniert Super


Ja, natürlich (weil die code ist von Tobias, modifiziert bei mir ).




Ich hab nur ein paar Kleinigkeiten angepasst…
Die Ideen und die Grafische Umsetzung sind von Euch. Ich habe nur ein paar technische Verbesserungen eingefügt.

Hardi


Haltet Euch unbedingt von diesen Seiten fern:
viewtopic.php?f=7&t=165060
https://wiki.mobaledlib.de/
sonst wird Eure Anlage niemals fertig…

Unsere Anlage findet Ihr hier:
RE: Unsere Kinder und Vater Anlage(n)


 
Hardi
InterCityExpress (ICE)
Beiträge: 2.125
Registriert am: 28.12.2015
Homepage: Link
Ort: Mainz
Gleise C
Spurweite H0
Steuerung MS2 + Eigenbau
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#99 von leviticus , 12.02.2019 09:25

Hallo zusammen,

Danke mal für die Links. Die ÖBB verwendet aktuell Displays mit blauem Hintergrund und weißer Schrift. Habt ihr einen Link zu so einem Display?

LG Stefan


Das Gegenteil von gut - ist gut gemeint!
Meine Anlage: viewtopic.php?f=64&t=106547


leviticus  
leviticus
InterCity (IC)
Beiträge: 561
Registriert am: 13.09.2006
Homepage: Link
Gleise Roco ohne Bettung
Spurweite H0, H0e
Steuerung ZIMO
Stromart Digital


RE: Zugzielanzeiger für den Bahnsteig mit Arduino

#100 von bahnfreek , 12.02.2019 09:30

Moin, ich habe leider noch keine OLED Displays gefunden die blau können in der Größe. Das könntest du ehr mit LCD darstellen wenn ich mich nicht irre. Da müsstest du aber die Software wieder anpassen.

Lasse mich aber gerne eines besseren belehren;)

Gruß Simon


Plus auf Masse das knallt klasse...


 
bahnfreek
Beiträge: 6
Registriert am: 18.10.2018


   

Decoderproblem bei Piko BR151

  • Ähnliche Themen
    Antworten
    Zugriffe
    Letzter Beitrag
Xobor Einfach ein eigenes Forum erstellen
Datenschutz