Beiträge von Freaki_N

    Hey Freaki_N,


    da ich bald auch ein DT1 Fahrerpult haben werde, hätte ich noch ein Paar Fragen an dich. Ich hab dir mal in Discord geschrieben, heiße dort DerV^^

    Hallo @I love bohemian raspberry ,


    ich habe deine Freundschaftsanfrage auf Discord bekommen, habe diese allerdings nicht angenommen, da ich dich nicht zuordnen konnte.

    Dein Post hier im Thread wurde mir - warum auch immer - erst heute angezeigt.


    Schreib mir die Nachricht am Besten noch mal per Discord (falls das nicht geht: hier im Forum per PN).

    Hallo,


    ist denn schon irgendwo dokumentiert, wie der Fahrscheinverkauf Script-technisch umgesetzt wird? Ich habe mir zwar schon das Script vom Almex-Drucker im "Opensource"-Ordner angeschaut, allerdings wirft mir das noch einige Fragen auf. Wenn ich das richtig verstehe, können die Tickets und deren Codes über die Prozedur "TextFileGetLine()" abgefragt werden. Allerdings wird für mich nicht ersichtlich, wie diese TextFile zustande kommt (laut ContentID gehört diese wohl zur ".lfz"-Datei). Zumal die TextFile ja auch anscheinend für den Almex-Drucker optimiert ist (enthält ContentIDs für dessen Texturen und endet mit dem Tag "#ALMEX").


    Gibt es evtl. auch noch weitere Prozeduren als die, die der Almex-Drucker verwendet oder ist die "TextFile" zurzeit die einzige Möglichkeit, Fahrscheine im Skript zu verarbeiten?


    Über eine Erklärung würde ich mich freuen!

    Hallo Ben,


    beim meinem Fahschalter kann man die elektrischen Bremsstufen, die Nullstellung und die SB-Stellung per Kontakte, die an der Nockenwelle angebracht sind abfragen. Damit ich dann auch den Stufenlosen Bereich der Luftbremse abfragen kann habe ich mir noch ein Poti dran gebaut. Allerdings habe ich das Poti noch nicht im Plugin einprogrammiert, somit läuft der Bremshebel zurzeit nur über die elektrischen Kontakte.

    Sieht dann so aus:


    Danke für die Anregung mit den Modulen. Ich hatte am Anfang überlegt, ob ich mir da selbst was zusammenbastel oder was "fertiges" kaufe. Ich hab mich dann aber fürs selbst entwerfen verschieden, was einen doch relativ hohen Arbeitsaufwand bedeutet hatte. Beim nächsten mal würde ich dann wahrscheinlich doch eher auf was fertiges zurückgreifen. Muss aber natürlich jeder selbst wissen, wie viel Zeit er investieren möchte/kann.

    Tails

    Das hast du recht, tatsächlich ist die Umsetzung mit den Schieberegister ziemlich aufwendig. Dafür ist man halt was die Pins am Mikrocontroller und spätere Erweiterungen angeht, realtiv flexibel. Eventuell könnte man hier auch auf vorgefertigte Platinen zurückgreifen, um den Arbeitsaufwand zu reduzieren.


    Die Relais funktionieren komplett über ein externes 5V-Netzteil. Ich habe dafür den GND des Netzteils mit dem des Mikrocntroller verbunden und den 5V-Anschluss dann mit dem VCC der Relais. Dadurch, dass die Relais und die Schieberegister auf dem gleichen GND liegen, können die Schieberegister die Datenpins der Relais ansteuern.


    Die Tachobeleuchtung habe ich tatsächlich nicht umgesetzt. Das liegt, daran, dass die Glühbirnen noch in der 110V-Ausführung verblieben sind und weiß nicht, wie ich die am Besten austauschen soll.

    Hallo zusammen,


    heute wollte ich mich Euch gerne mal mein DT1-Fahrpult vorstellen.


    Ich habe die beiden Fahrpultmodule (Fahrschalter+Armaturenbrett) sowie ein Mikrofon im Oktober des Jahres 2021 vom Verein "Freunde der Nürnberg-Fürther Straßenbahn e.V." erworben, mit dem Ziel diese zu einem Simulator umzubauen. Beide Module habe ich darufhin in einen alten Schreibtisch eingebaut.



    -----


    Beide Module hatten mehrere Industriestecker der Firma Harting, mit denen das Fahrpult am Fahrzeug "angschlossen" war. Da ich keine passenden Gegenstecker dafür bekommen habe, habe ich das Gehäuse der Stecker entfernt und die Kontakte mit Lüsterklemmen verschraubt. Die Pinbelegungen der Stecker habe ich größtenteils durch ausprobieren mit einem Durchgangsprüfer herausgefunden.



    -----


    Die Leuchtmelder auf dem Armaturenbrett wurden ursprünglich mit einer Spannung von 110V betrieben. Da mir aber eine kleinere Spannung lieber war, habe ich die Glühbirnen ausgetauscht, sodass diese jetzt mit einer Spannung von 24V betrieben werden können. Teilweise waren den Glühbirnen auch noch Vorwiderstände vorgeschaltet, welche ich aber überbrückt habe (blaues Kabel).



    -----


    Auf der Fahrpultplatte laufen alle Fäden zusammen. Einerseits alle Leitungen von den Hebeln und Schaltern (Untere Seite der Platte) sowie Leitungen zum Ansteuern der Leuchtmelder über Relais (Obere Seite). Auf der rechten Seite der Platte ist die 5V-Spannungsversorgung für die Relais sowie die 24V-Spannungsversorgung für die Leuchtmelder (Das Netzteil ist leider nur ein 22V-Netzteil) angebracht. Darüber hinaus liegen hier die Litzen für die Spannungsversorgung (3.3V) zum Abfragen der Eingaben. Auf der linken Seite der Platte verläuft das USB-Kabel, welches den Mikrocontroller mit dem Rechner verbindet. Die hohe Anzahl an Platinen auf der Fahrpultplatte liegt daran, dass ich sowohl für die Eingaben als auch für die Ausgaben Schieberegister verwendet haben. Diese bieten den Vorteil, dass ich bei ca. 40 Eingaben und 24 Ausgaben insgesamt nur 7 GPIO-Pins am Mikrocontroller benötige.



    -----


    Als Mikrocontroller habe ich zurzeit einen ESP32 im Einsatz, welchen ich mit der Arduino IDE programmiert habe. Damit dieser mit LOTUS kommunizieren kann, habe ich mir in Pascal eine DLL für die Plugin-Schnittstelle geschrieben. Diese empfängt über die serielle Schnittstelle die getätigten Eingaben vom ESP32 und löst dann in LOTUS die entsprechen Events aus bzw. setzt die Controller-Achsen. Darüber hinaus wird von LOTUS der Status der Leuchtmelder abgefragt und über die serielle Schnittstelle an den ESP32 gesendet.


    Grundsätzlich kann man mit dem Fahrpult schon sehr gut fahren, trotz der Tatsache, dass es zurzeit noch kein passendes Fahrzeug gibt, geschweige denn überhaupt ein U-Bahnfahrzeug. Um einige Funktionen nutzbar zu machen, musste ich dann aber doch einige Taster zweckentfremden. Beispielsweise liegt die Weichensteuerung auf den Tastern für die Fahrgastnotbremse oder das Ein- und Ausstecken des Schlüssels wird über die Taster für den Umformer "simuliert".


    Zurzeit fahre ich mit dem Fahrpult eigentlich nur mit dem GT8S/U, da ich nur dessen Events und Variablen vollständig in meinem Plugin einprogrammiert habe.


    Hier habe ich noch eine Mitfahrt auf der Linie 76 aufgenommen:


    Bei Fragen oder Anregungen könnt Ihr euch gerne bei mir melden!

    Hallo, mir ist beim B-Wagen Folgendes aufgefallen: Wenn ich in einem Plugin über die Gamecontrollerachse "ThrottleBrake" den Wert 0.5 (Neutral) übertrage, zentriert sich der Sollwertgeber nicht richtig, das heißt er steht zwar in einem Bereich, in welchem keine Fahr- bzw. Bremsstufe gewählt ist. Er steht aber eben nicht komplett auf 0. Das führt dann dazu, dass sich der Betriebswahlschalter nicht mehr umlegen lässt und als Hint wird "Der Sollwertgeber muss dafür in 0 Stellung sein" angezeigt. Auch ein Senden des Events "Neutral" schafft keine Abhilfe.

    Zurzeit kannst du nur die öffentlichen Variablen des Fahrzeugs auslesen, welches gerade den Fokus hat. Die öffentlichen Variablen eines Fahrzeugs kannst du in der Simulation über das Script-Test-Fenster (Strg+Shift+Alt+E) ansehen. Darunter fallen bei den meisten Fahrzeugen aber nur z.B. die Physikalischen Größen des Fahrzeugs oder der Status der Bedienelemente/Leuchtmelder. Fahrplandaten o.ä. kann man leider zurzeit nicht auslesen.

    Hallo,


    ich benutze für solche Situationen eigentlich immer das „Copy Attributes Menu“-AddOn. Dieses ist in Blender vorinstalliert, muss aber evtl. noch manuell aktiviert werden. Mit diesem AddOn musst du nämlich nur eine Fläche Mappen, kannst dann alle anderen Flächen markieren, danach die schon gemappte Fläche markieren und dann per Strg+c die Textur, sowie die Texturkoordinaten auf die restlichen Flächen kopieren.

    1. Hast du in der FIS-Datei selber auch einen Namen eingetragen oder nur die Datei entsprechend benannt?

    2. Liegt die FIS-Datei im gleichen Ordner wie die Map? Wenn ja, müsstest du die beiden Sachen separieren, weil LOTUS kommt damit nicht klar, wenn noch anderer Content im Map-Verzeichnis liegt.

    :flag_ger: V1.2 - Patchnotes:

    • Obere Leiste zeigt im Verkaufsmenü jetzt die aktuelle Haltestelle statt dem Ziel an
    • Der Drucker sendet jetzt bei einem "Serviceziel" ein leeres Sonderzeichen/ leere Linie an die Matrix
    • In der Fahrtauswahl werden jetzt die Namen der FIS-Haltestellen angezeigt anstatt der FIS-ID, die in der Station hinterlegt wurde
    • Der Drucker sendet kurz vor der letzten Haltestelle auf der Route die Linie und das Ziel der Folgeroute an die Matrix
    • Änderungen an der automatischen Haltestellenfortschaltung (u. a. jetzt auch im Linie/Route-Modus verfügbar)
    • Die Zieländerung der Route ist jetzt gesperrt, wenn manuell ein Ziel eingestellt wurde
    • Bugfixes/Feinabstimmungen


    Bekannte Bugs:

    • falsche Fahrten/Umläufe in der Fahrtauswahl
    • Fehler beim Löschen der Eingabe in der Benutzeranmeldung



    :flag_gb: V1.2 - Patch notes:

    • The top bar now shows the current stop instead of the destination in the sales menu
    • The printer now sends an empty special character / empty line to the matrix in case of "service destination"
    • The names of the FIS stops are now displayed in the trip selection instead of the FIS ID that was stored in the station
    • Shortly before the last stop on the route, the printer sends the line and the destination of the following route to the matrix
    • Changes to the automatic stopforwarding (now also available in line / route mode)
    • Changing the destination of the route is now blocked if a destination has been set manually
    • Bug fixes / fine tuning


    Known bugs:

    • wrong trips / tours in the trip selection
    • Error while deleting the input in the user login

    Geschwindigkeitsbegrenzungen kann man entweder über das Einstellungsmenü der betreffenden Gleise erreichen oder über zwei Signalpositionsboxen, die entsprechend als Langsamfahrstelle konfiguriert werden. Die KI sollte auch Signale erkennen, wenn der entsprechenden Kreuzungsrichtung ein Gleis zugewiesen wurde bzw. eine Signalpositionsbox platziert wurde, falls es sich um ein Fahrstraßen-Signal handelt.

    Dass als Uhrzeit "0:00" angezeigt wird, liegt einfach daran, dass die Prozedur "Tmode" nie aufgerufen wird, weshalb die Variablen "Hour" und "Minute" dementsprechend den Wert 0 haben. Du musst entweder "Tmode" in der SimStep-Prozedur aufrufen oder den Code aus "Tmode" in die SimStep-Prozedur integrieren.


    mod 60 gibt den Restwert zurück, wenn trunc(TimeOfDay * 24 * 60) durch 60 geteilt wird. Benötigt wird das einfach aus dem Grund, da trunc(TimeOfDay * 24 * 60) die Minutenanzahl seit 0 Uhr zurückgibt, du ja aber nur die Minuten seit der letzten vollen Stunde anzeigen willst.

    Schau mal nach, ob der Variablenname korrekt im Content-Tool bei der Konfigurierung der Text-Textur eingetragen ist. "var invalid" ist nämlich typisch für nicht korrekt eingetragene Variablennamen. Und bitte nach Änderungen an der Konfiguration einer Text-Textur immer das Content-Tool neustarten, Änderungen werden nämlich erst dann wirksam!


    Mir ist übrigens noch aufgefallen, dass du beim berechnen der Minuten noch ein mod 60 hinten dran brauchst. Also so: Minute := trunc(TimeOfDay * 24 * 60) mod 60;;)