ChRB (Christoph-Röbi-Bahn) - dritte Anlage

  • Hoi Röbi

    Das ist dir super gelungen! Gratuliere! Ich bin bei meiner Software an der gleichen Stelle, also noch einen Schritt früher, dort wo es noch nicht funktioniert. Gut sehe ich dich heute. Vielleicht können wir kurz darüber sprechen.

    Herzliche Grüsse

    Oski

    signatur_egos.jpg

    ...auch Nichtraucher können süchtig sein nach Zündhölzern!

  • Fertigung von Dummy-Modulen


    Bis heute sind erst der Gateway und 4 Module fertig gebaut und funktionsfähig. Da der Bau der Module aufwändig und zeitraubend ist, kann es noch lange (Monate) dauern, bis ich damit fertig bin.

    Es herrscht nun bei mir ein Ungewissheit, ob es letztlich mit dem Gateway und 19 Modulen am selben Bus immer noch funktionieren wird. Um diese Ungewissheit zu eliminieren, bin ich im Moment daran, Dummy-Module zu fertigen. Dummy-Module sind Arduinos mit der für die Bus-Kommunikation benötigten Beschaltung. Deren Hardware-Funktionalität ist beschränkt auf die Kommunikation. Die Software hingegen ist die Voll-Version.


    Vorne sieht man sechs Dummy-Module mit provisorischer Verkabelung. Auch das hintere Modul im gelben Gehäuse (das mit der spärlichen Bestückung auf der Printplatte) ist ein Dummy-Modul. Wenn man das Bild vergrössert anschaut, erkennt man ein dreifach-Kabel (verdrillt, schwarz-rot-weiss), welches von Modul zu Modul verläuft. Das ist das RS-485-Kabel, über welches der Sturzibus läuft.


    Im Moment betreibe ich das Sturzibus-Digital-System mit dem Gateway und 11 Modulen. Das läuft soweit noch zufriedenstellend.

    Jetzt fehlen noch acht weitere Module. Ich habe vor, diese in nächster Zeit (auch als Dummies) zu fertigen, um dann das Kommunikations-System unter Vollast testen zu können.


    Für diese vorgesehenen Tests habe ich alle benötigten Arduinos (genauer DFRduino mega 1280) bereits beschafft. Der Preis richtet sich ja bekanntlich nach Angebot und Nachfrage. Die ersten 12 Arduinos haben je CHF 22.00 gekostet. Wahrscheinlich habe ich damit die Nachfrage so in die Höhe getrieben, dass der Lieferant (Bastelgarage) für die restlichen Geräte nun den Stückpreis auf CHF 29.00 erhöht hat :( .

  • Der Preis richtet sich ja bekanntlich nach Angebot und Nachfrage. Die ersten 12 Arduinos haben je CHF 22.00 gekostet. Wahrscheinlich habe ich damit die Nachfrage so in die Höhe getrieben, dass der Lieferant (Bastelgarage) für die restlichen Geräte nun den Stückpreis auf CHF 29.00 erhöht hat

    Hoi Röbi

    Sehr beeindruckende "Testanlage" baust du da. Zu Angebot und Nachfrage wäre noch zu erwähnen: Hätte die Migros bei erhöhter Nachfrage bestellt, wäre der Preis gesunken. Die bestimmen den Preis selber oder kaufen den Lieferanten einfach auf. ;)

    Gruss Oski

    signatur_egos.jpg

    ...auch Nichtraucher können süchtig sein nach Zündhölzern!

  • Hier habe ich von meinem Sturzibus-Stresstest ein kurzes Video gemacht.


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.


    Der folgende Text ist eine Kopie der Beschreibung beim Youtube-Video:


    Das Sturzibus-Digital-System ist eine Eigenentwicklung eines Modellbahn-Digital-Systems zum Schalten und Melden. Es ist jedoch nicht zum Steuern von Loks und Zügen vorgesehen. Das System ist noch nicht fertig. Es befindet sich immer noch in Entwicklung.

    Hier sieht man einen Test-Aufbau von Sturzibus-Komponenten. Der Sturzibus funktioniert nach dem Master-Slave-Konzept. Der Gateway (links im schwarzen Gehäuse) ist der Master. Alle anderen (fertige, halbfertige und unfertige) sind Module. Jede Komponente (Gateway und Module) basieren auf je einem Arduino Mega.

    Der Gateway hat beim Sturzibus die Rolle des Masters. Er kommuniziert auch mit dem übergeordneten Modellbahn-Steuerungs-System Amorocos. Er fragt über den Sturzibus zyklisch seine Module ab und erteilt dabei auch Befehle. Das nennt man Polling. Er schafft es, pro Sekunde etwa 1100 mal ein Modul abzufragen. Pro Blink-Intervall der LED am Gateway pollt dieser 200 mal ein Modul.

    Die Module (beim End-Ausbau werden es 19 Module sein) haben beim Sturzibus die Rolle von Slaves.

    In diesem Video sieht man zwei fertige Module: Rechts vom Gateway im gelben Gehäuse (Adresse 10) ist ein fertiges Lichtschranken-Rückmelde-Modul für 42 Lichtschranken. Das nächste (auch im gelben Gehäuse, Adresse 12) ist ein noch unfertiges Lichtschranken-Modul. Dann das nächste im grünen Gehäuse (Adresse 40) ist ein fertiges Weichen-Modul für 20 Weichenantriebe.

    In der vorderen Reihe befinden sich sieben Dummies. Diese sind bezüglich Hardware noch sehr unfertig, enthalten jedoch den Arduino und die zur Kommunikation benötigten Komponenten. Diese haben den Zweck, sich bezüglich Kommunikation wie fertige Module zu verhalten, damit die Kommunikation einem Stresstest unterzogen werden kann.

    Die ersten vier in der vorderen Reihe (Adressen 20 bis 23) sind als Besetzmelde-Module und die letzten drei (Adressen 42, 50 und 52) sind als Weichen- oder Lichtsignal-Module konfiguriert.

    Das Arduino-Programm in allen Modulen ist bezüglich Kommunikation fertig.

    Durch beobachten der LEDs in den Modulen sieht man, dass die Poll-Frequenz je nach Kategorie unterschiedlich schnell ist. Die Lichtschranken-Module werden am häufigsten gepollt. Deren Rückmeldung ans Amorocos ist ja auch am stärksten zeitkritisch. Mittelschnell werden die Besetztmelde-Module abgefragt und am langsamsten die Weichen- und Lichtsignal-Module. Bei allen Modulen gilt: Nach einem vollen Blink-Interval der zugehörigen LED ist es 20 mal gepollt worden.

  • Heute habe ich den letzten der benötigten Dummies für den Stellplatz K hergestellt.


    Stellplatz K, vorne Dummies und hinten zwei fertige Module


    Damit bin ich fertig mit dem Kommunikations-Stresstest. Das Ziel war, sicher zu sein, dass die RS-485 Kommunikation mit dem Sturzibus-Protokoll in der Lage ist, über 20 Stationen (1 Gateway und 19 Module) sicher zu kommunizieren. Sie ist dazu in der Lage. Der Chef (Gateway) pollt im Turnus alle 19 Module ab und jedes davon gibt brav Antwort, wenn es angesprochen worden ist.

    Das Ziel ist erreicht, der Kommunikations-Stresstest ist damit erfolgreich abgeschlossen und ich kann vielleicht in nächster Zeit etwas ruhiger schlafen.

  • Hoi Röbi

    Herzliche Gratulation! Ist super, dass es klappt. Aber wer hätte das angezweifelt? Der Chef bestimmt den Erfolg!

    Liebe Grüsse aus Winterthur

    Oski

    signatur_egos.jpg

    ...auch Nichtraucher können süchtig sein nach Zündhölzern!

  • Beeindruckend, was Röbi so auf die Beine bzw. auf die Moba-Anlage stellt . . . :) :) :)

    Gruss Günther

  • Ich staune einfach, was für Wissen und Können in Röbis Kopf Platz hat. Grosse Bewunderung!

    Gruss Roger


    95 von 121 grünen Ae 6/6


    Die Katze schläft im Lärm; nur die Stille weckt sie, wenn die Mäuse rascheln.

  • @Oski, Günther und Roger:


    Vielen Dank für die netten Worte, die ich natürlich wie eine feine Crème brulée genossen habe.


    Allerdings hat das m.M.n. weniger mit Wissen und Können zu tun. Ausschlaggebend sind da eher folgende Eigenschaften

    - ein gewisses technisches Allgemeinverständnis

    - Ideen haben und sie versuchen umzusetzen

    - Interesse an digitalen Lösungen

    - etwas Beharrlichkeit

    - Erfahrung beim Googeln (das ist von Allem das Wichtigste, weil das nötige Wissen im Internet vorhanden ist)

  • Mach Dich nicht kleinet als Du bist: ‚ein bisschen googeln‘…. Quatsch: du bist für mich in Sachen Programmierung der Grösste.

    Gruss Roger


    95 von 121 grünen Ae 6/6


    Die Katze schläft im Lärm; nur die Stille weckt sie, wenn die Mäuse rascheln.

  • Hoi Röbi

    Den Worten meines Vorredners Roger kann ich mich nur anschliessen! Du hast grosses technisches Allgemeinverständnis, nicht nur ein "gewisses". Ich bin auf jeden Fall immer wieder platt, wie sauber du solche Aufgaben hinkriegst.

    Gruss Oski

    signatur_egos.jpg

    ...auch Nichtraucher können süchtig sein nach Zündhölzern!

  • Auch verfügt Röbi über das Talent, die Dinge so vorzutragen bzw. zu präsentieren, dass Sie auch von uns (z.B. mir) verstanden und umgesetzt werden können . . . :) :) :)

    Gruss Günther

  • Ich würde sehr gerne wieder mal etwas über den Fortschritt bei der ChRB III berichten. Aber leider ist das schwierig, weil ich momentan sehr intensiv daran bin, die Steuerungs-Software Amorocos II zu entwickeln. Dabei sehen Aussenstehende (voraussichtlich noch monatelang) einfach nichts.


    Trotzdem möchte ich kurz erklären, um was es hier geht:


    Bei der ChRB II hatten wir das Amorocos (ohne "II" hinter dem Namen). Das Amorocos ist eine (von meiner Wenigkeit) selber gebastelte Modellbahn-Steuerungs-Software, die bezüglich Stellenwert in der Steuerungs-Hierarchie und Funktionalität etwa mit einem Train Controller verglichen werden kann.

    Das Amorocos war eine Client-Server-Applikation, bestand also aus zwei Programm-Teilen, einem Server und einem Client. Der Server übernahm die eigentliche Steuerungs-Funktion und der Client diente der Benutzer-Oberfläche, also der Bedienung und der Visualisierung. Das war ein raffiniertes Konzept, bei dem neben dem Server beliebig viele Clients unterstützt waren. Es war also möglich, ein, zwei, drei, ..., eben beliebig viele Bedien-Stationen zu haben.


    Anfänglich hatten wir zwei Clients, später nur noch einen. Die Erfahrung hat gezeigt, dass bei einer Anlage in der Grösse der ChRB, und jetzt bei der ChRB III ganz besonders, einfach der Platz für mehrere Bedien-Stationen fehlt. Auch das Bedürfnis, an mehreren Plätzen in die Funktionalität einzugreifen, ist nicht so gross, wie ursprünglich erwartet. Das Client-Server-Konzept, so interessant es tönen mag, hat den Nachteil, dass die funktionale Entwicklung sehr viel aufwändiger ist und mehr Zeit in Anspruch nimmt, verglichen mit einem Konzept wo die ganze Funktionalität in einem einzigen Prozess realisiert ist. Mit ein Grund, warum ich für jede noch so kleine Erweiterung viel Zeit brauchte und demzufolge nur langsam vorwärts kam.


    Ich habe mich deshalb entschlossen, jetzt bei der ChRB III ein Amorocos II zu entwickeln, worin die gesamte Funktionalität in einem einzigen Prozess (sprich in einer einzigen Applikation und auf einem einzigen Hobel) realisiert wird. Das hat die Konsequenz, dass ich jetzt (bedingt durch die Konzept-Änderung) einen recht grossen Initial-Aufwand habe. Allerdings habe ich dann die Aussicht, dass ich - wenn der Initial-Aufwand mal vollbracht ist - schneller vorwärts kommen werde. Also im Moment braucht es einfach Geduld: Für mich Geduld, bis es wieder einigermassen rollt und für euch Geduld, bis ihr wieder von interessanten Fortschritten bei der ChRB III hört.


    So nebenbei: Im Zuge der (fast)-Neuentwicklung des Amorocos II habe ich auch auf die (fast) neueste Computer-Hardware (Mac mit Silikon-M2-Prozessor) mit 5K-Display, die (fast) neueste Java-Version (17), die neueste Eclipse-Version (2023-03) und die (fast) neueste Version der verwendeten SQLite-Datenbank (3.32) öppgegreidet. Ich muss also nicht befürchten, dass etwas in nächster Zeit masslos veraltet sein wird (ausser ich selber).

  • Röbi

    Zu deinem Entschluss gratuliere ich dir! Ich bin überzeugt, es wird eine super Steuerungssoftware entstehen. Da ich dich nächstens besuchen werde, muss ich nicht so lange warten, wie alle andern. Auch das freut mich.

    Herzliche Grüsse

    Oski

    signatur_egos.jpg

    ...auch Nichtraucher können süchtig sein nach Zündhölzern!

  • Ich kann mittlerweile etwas aus meiner Entwicklung zeigen.


    Zuerst ein Bild (ScreenShot) vom alten Amorocos, welches der Steuerung der abgebrochenen ChRB II diente:


    So sah es bei der ChRB II aus. Die ganze Benutzer-Oberfläche (für Bedienung und Visualisierung) war auf einem 27-Zoll-Monitor. Oben links ist der (schematische) Anlagen-Layout. Oben mittig ist das Control-Panel für Bedienungs-Funktionen. Oben rechts findet sich das Message-Log. Hier werden Ereignisse als Text-Zeile mit genauer Zeitangabe angezeigt. Und schliesslich unten auf der ganzen Breite befindet sich die Tabelle mit den sich auf der Anlage befindlichen Zügen mit Detail-Angaben über ihre Traktion.


    Und jetzt zur ChRB III, welches mit dem (sich in Entwicklung befindenden) Amorocos II gesteuert wird:


    Ich möchte gerne für den Anlagen-Layout und die Zug-Tabelle einen ganzen 27-Zoll-Monitor (links). So können viel mehr Details angezeigt werden. Um nicht auf das Control-Panel und das Message-Log verzichten zu müssen, habe ich mir einen kleinen 14-Zoll-Monitor beschafft (rechts). Der ist klein genug, sodass ich mich nicht völlig vor dem (häufig gegenüber sitzenden) Christoph verstecken muss.


    Das Amorocos II wird mehrheitlich eine Neuentwicklung. Alle bewährten Konzepte, sei es bezüglich Steuerung oder Visualisierung, möchte ich übernehmen, aber neu implementieren.


    Unten sieht man einen Screenshot vom (werdenden) Anlagen-Layout:


    Das ist natürlich noch weit, weit entfernt von fertig. Jetzt geht es erst mal darum, die Komponenten des Anlagen-Layouts, also vor Allem die Blöcke und die Strecken-Abschnitte auf dem Bildschirm zu positionieren, sodass es eine Falle macht. Das ist zwar fast eine Sisyphus-Arbeit, muss doch jeder Block, jeder Strecken-Abschnitt pixel-genau positioniert werden. Aber genau solche Beschäftigungen habe ich gern.


    Der jetzt verwendete 27-Zoll-Monitor ist ein echter 5k-Display mit einer Auflösung von 5120 x 2880 Pixel, also pro Dimension doppelt soviel wie vorher bei der ChRB II. Hier lohnt es sich schon, beim Entwurf des Layouts etwas Aufwand zu treiben.


    Jetzt steige ich auf's Velo um das schöne Wetter zu geniessen und dann werde ich wieder unten im Labor verschwinden. Die Wohnung aufräumen und putzen kann ich dann später, wenn ich wieder mal Zeit habe.

  • Ca. 24 Compi-Stunden später:



    Der Entwurf des Anlagen-Layouts der ChRB III für die Visualisierung im Steuerungs-Programm Amorocos II ist soweit fertig (*). Wie schon im letzten Beitrag erwähnt, ist dies ein abstraktes, schematisches Bild der Strecke. Das Ziel war, alle Überkreuzungen der einzelnen Strecken-Abschnitte auf den verschiedenen Ebenen zu eliminieren und eine Abfolge von Blöcken und Strecken-Abschnitten darzustellen, die dem physischen Anlagen-Layout entspricht. Das ist mir damit gelungen.


    Hier ein paar Erklärungen dazu. In Form einer virtuellen Rundfahrt durch die Strecke kann ich diese auch gleich vorstellen. Wer die ChRB II gekannt hat, wird sicher Parallelen finden.


    Oben kann man unschwer den Schattenbahnhof erkennen. Die Züge stehen hier normalerweise mit der Spitze nach links.

    Die Ausfahrt erfolgt am linken Ende des Schattenbahnhofs und geht durch die Blöcke 70 und A1 auf Block A3. Die Blöcke 70 und A1, wie auch die Spurwechsel-Stelle, sind vollständig in der Wendel. Bei Block 70 beginnt die Steigung (**).

    Auf dem Block A3 kommen wir ans Tageslicht. Das ist dort wo der Hintergrund von schwarz auf grau wechselt. Die Abzweigung zwischen Block A3 und A5 führt in die Kavernenstrecke (***). Wir steigen jetzt konstant auf der ersten Rampe über den Block A5. Gegen Ende des Blockes A5 geht es in den Kehrtunnel (Block A7 und ein Teil von B0).

    Auf dem Block B0 kommen wir wiederum ans Tageslicht und sind jetzt auf der zweiten (Gegen-) Rampe. Zwischen Block B0 und B2 hat es eine Spurwechsel-Stelle. Gegen Ende des Blocks B2 geht es wieder in einen Kehrtunnel (Block B4, C1 und ein kleines Stück auf C3. Wenn wir das dritte Mal ans Tageslicht kommen, sind wir auf der dritten Rampe.

    Bevor wir St. Christoph erreichen, flacht die Strecke ab. Die Station St. Christoph ist eben und ist gleichzeitig auch die höchste Stelle, die wir mit der Bahn erreichen (820 mm über dem Schattenbahnhof). Die Durchfahrt erfolgt über Block C5 oder C6. Es hat hier drei Stations-Gleise (Blöcke C4, C5 und C6), wo Züge durchfahren oder auch halten können. Zusätzlich gibt es zwei Stumpen-Gleise, CA und CE, um etwas abzustellen. Das können Loks, einzelne Wagen oder z.B. auch ein ChRB-Triebwagen sein.

    Am Ende des Blocks C8 geht es in den Scheiteltunnel (ab in den Süden). Das ist das obere Ende des sichtbaren Teils der Bahn-Anlage. Ab hier fällt die Strecke unterirdisch wieder leicht ab.

    Wir kommen in die Wendestrecke mit den W-Blöcken, die wiederum flach ist (740 mm über dem Schattenbahnhof). Diese ist so ausgerüstet, dass wir am Ende wenden und auch einzelne Züge zwischen-parken können. Das hat zum Zweck, dass ein Zug, der im Scheiteltunnel verschwindet, nicht sofort wieder aus diesem zurück kommt, sondern möglichst erst wenn man sich an seine Einfahrt nicht mehr erinnern kann.

    Die Rückfahrt erfolgt auf umgekehrtem Weg auf dem jeweils anderen Gleis.

    Nach dem Block 71 geht es über die Rückfahr-Strecke durch die Blöcke R0, R1, R2 und R3, wendet dann und führt via R4 wieder in den Schattenbahnhof zurück.


    Interessant ist, wie wenig man von der ganzen Anlage am Ende sehen wird, nämlich nur das, was auf dem grauen Hintergrund dargestellt ist. Alles mit dem dunkelschwarzen Hintergrund ist unterirdisch, und kann später nur noch von hinten besichtigt werden. Wir werden die Strecke nur im überirdischen Bereich mit physischen Signalen ausrüsten. Im unterirdischen Teil lassen wir diese weg, wobei sie dann auf dem Bildschirm angezeigt werden. Das ist auch der Grund, warum wir die Block-Grenzen an den Rampen-Enden jeweils in die Kehrtunnel verlegt haben. So brauchen wir nicht allzu viele physische Signale.


    (*) Mit "fertig" ist das so eine Sache: Es kann und wird sicher noch einzelne, kleine Änderungen geben.


    (**) Steigungen: Auf der ganzen Anlage sind die Steigungen maximal 2.0 %. Auf den Rampen 2.0 % und in den Wendeln und Kehrtunnel zwischen 1.5 und 1.9 %.


    (***) Kavernenstrecke: Weil es ja ein paar Jahre dauern kann, bis die oben erklärte Bergstrecke gebaut und durchgehend befahrbar ist, wir aber mit Fahren nicht so lange warten wollen, haben wir eine Kavernenstrecke eingeplant. Nach der Ausfahrt aus dem Schattenbahnhof, im Anstieg auf der ersten Rampe zweigt es ab auf die Kavernenstrecke. Ab dann fällt es wieder ab über den Block K0. Zwischen K0 und K1 befindet sich ein Kavernentor, welches motorisch angetrieben ist und vom Amorocos II gesteuert werden kann. Die Strecke führt durch dieses Tor in die Kaverne. Im Berg drin geht es über K1, K2 und K3 (eine einspurige Wendel) wieder zurück in den Schattenbahnhof. Wir haben vor, die Kavernenstrecke sobald wie möglich zu bauen, um dann auf dieser fahren zu können, weit bevor die Bergstrecke fertig ist.

  • echter 5k-Display mit einer Auflösung von 5120 x 2880 Pixel,

    Hoi Röbi

    Gratuliere zu deinem Fortschritt! Da sieht man, dass du doch ein wenig jünger bist als ich. Meine Augen sind schon genug gestresst durch 4k. Bin gespannt, ob man die 5k ohne Lupe noch im Detail betrachten kann.

    Gruss Oski

    signatur_egos.jpg

    ...auch Nichtraucher können süchtig sein nach Zündhölzern!

  • Die einzelnen Pixel sieht man beim 5k Display ohne Lupe nicht mehr (gilt für 27-Zöller).


    Trotzdem: Ein 5k Display muss die Augen nicht mehr stressen, als ein 4k. Wenn man die Objekte gleich gross (gleich gross in mm heisst dann 4 mal soviel Pixel) darstellt, stresst es das Auge sogar weniger, weil die Darstellungs-Qualität dann einfach besser ist.

  • K-Wendel, Wiederaufnahme der Arbeiten


    Unsere K-Wendel (*) ist seit mehr als einem Jahr etwas mehr als halb-fertig. Andere Dinge (Gleis- und Fahrleitungsbau im Schattenbahnhof, Sturzibus-Digital, Software-Entwicklung am Amorocos II, etc.) hatten höhere Priorität.


    So sieht die K-Wendel seit mehr als einem Jahr aus: Äusserst unfertig!


    Da Christoph vor Kurzem begonnen hat, auf der K-Seite in die Höhe zu bauen, wird es nun nötig, die K-Wendel zu vervollständigen.


    Christoph hat begonnen, die Anlage in die dritte Dimension auszubauen.


    Da ich befürchte, dass in absehbarer Zeit der Zugang zur K-Wendel eingeschränkt sein wird, habe ich gestern begonnen, die fehlenden Komponenten (vor allem Wendelplatten) zu drucken. Mein Ziel ist, die K-Wendel bis Ende Sommer (ja 2023) fertig und befahrbar zu haben. Mal sehen, ob mir das gelingt.


    (*) K-Wendel: Wir benennen unsere beiden Anlagen-Seiten mit den Buchstaben K und H. K steht für Keller, also dort wo eigentlich mein Keller-Raum wäre und H steht für Hobbyraum, den ich beim Kauf der Wohnung zusätzlich gekauft habe. Die K-Wendel ist also die, die sich auf der Keller-Seite befindet.