Jump to content

HaNNoveraNer

Mitglieder
  • Gesamte Inhalte

    1532
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von HaNNoveraNer

  1. Hat sich schonmal jemand Gedanken gemacht, einen Drehencoder und ein paar Knöpfchen über USB (z.B. Arduino?) anzuschließen? Zur Not auch ein analoges Gamepad. Wenn schon MoBa Sim, dann auch mit Handregler... oder?
  2. Hallo Tja, eigentlich dachte ich, ich habs fertig. Aber irgendwie ist noch der Wurm drin. Ich habe ein paar kleine Problemchen: Ein SIgnal wird nicht durch seinen Kontakt zurückgesetzt, daher mußte ich einen zusätzlichen Kontakt hinzufügen. Manchmal bleiben Züge an den SIgnalen hängen, obwohl sie eine Anforderung gesendet haben müßten. Manchmal werden Signale geschaltet, die im Programmcode garnicht angesprochen werden. Ich habe lange nach Fehlern gesucht, aber jetzt komme ich nicht weiter. *verzweifelt* Und ganz merkwürdig: Bei den FSEnde Kontakten habe ich das Gefühl, daß sie nicht beim Verlassen aktiviert werden, sondern schon früher!? Ich habe keine Ahnung, ob es unter euch Lua und MBS Spezialisten gibt, die sich das ganze Konstrukt mal ansehen könnten, und es auch verstehen. Aber für Fragen bin ich ja da. Vielleicht finden wir gemeinsam irgendwelche Fehler? Ich wäre dankbar für jede Unterstützung, unabhängig davon, ob meine Steuerung nun so sinnvoll ist, oder nicht, geht es erstmal darum, Fehler zu finden. Ich stelle die Testanlage mal hier ein. Einfach starten und abwarten, bis ein Fehler passiert. Hinweise: Die Fahrtraßen/Routen zu den einzelnen Zugarten (Personen/Güter) stehen in den Signalen. Ebenso die Haltezeiten. Zu jeder Fahrstraße exitiert ein Anforderungskontakt und ein Endkontakt, der sie wieder auflöst. Die Gleise sind in den FS Listen enthalten. Die aktivierten Fahrstraßen in einer Tabelle im Modul FS. Und die Anforderungen in einer weiteren Tabelle. fahrstraßen_test.mbp
  3. Diese "Effekte" schalte ich jedesmal ab. Könnte man die nicht standardmäßig ausschalten
  4. Ich fänds auch toll, wenn man die Einstellungen des Ereignisprotokolls mit der Anlage abspeichern könnte. Muß das jedesmal neu einstellen.
  5. Die meinte ich. Danke. Ich muß die Haltezeit an Signalen in s vorgeben. Diese Zeit ist aber wohl nur im Format "12:00" zu ermitteln und nicht als Zahl in Sekunden seit Anlagenstart oder sowas. Wie würde man so eine Messung in Sekunden realisieren z. B. zwischen 2 entfernten Gleiskontakten? Für jedes Signal einen eigenen Timer spendieren und schalten, wenn der abgelaufen ist? Nee, ich habe eine Idee. Ich lasse einen TImer jede Sekunde eine Variable Zahl um 1 erhöhen. Dann hab ich meinen Sekundenzähler... :-) Wäre noch die Frage, wie groß eine Variable als ZAHL werden kann. Lohnt es sich, den Überlauf abzufragen?
  6. Hi Ich möchte die Systemzeit (Lua Zeit) abfragen. In Sekunden? Gibt es da einen Befehl für? Oder geht das nur mit Timern? Kann man eine Uhr mit Anzeige mit der Zeit synchronisieren?
  7. Ich finde gut, was er macht. Und ich weiß, wie aufwändig es ist, diese ganzen Kleinigkeiten anzupassen. Solche Wünsche oder Hinweise sollte man vielleicht in einen anderen Thread packen, damit ALLE Modellbauer einen Eindruck bekommen, was man noch optimieren könnte, wenn man mag.
  8. Ich habe es jetzt mit dem NOT gemacht, da ich mich entschlossen habe, beides anzugeben, damit man Züge auch ohne Route fahren lassen kann, die dann alle möglichen bzw. unter R_Alle angegebenen Fahrstrassen nehmen. Mir raucht aber schon der Schädel. Es ist garnicht so einfach eine komplette Fahrstraßensteuerung mit Weichen, Routen, Ausweichfahrstraßen und Zufall u.s.w. unabhängig vom Programmcode nur mit dem Timer, 2 Kontakten und dem Startsignal zu programmieren. Aber ich bin fast fertig...
  9. Sorry, ich hab den Fehler gefunden. es muß == nil heißen, der Fehler kam erst danach! Danke für Hilfe!
  10. Hier mein richtiger Code, der den Fehler produziert. Ich will wissen, ob die Liste existiert. local route=vehicle.variables["route"] if fsignal.variables["R_Alle"] ~= nil then fsrouten=fsignal.variables[route] else fsrouten=fsignal.variables["R_Alle"] end
  11. Ja, das weiß ich, aber ich weiß nicht, wie ich die Abfrage schreibe? :-( mit wert=signal.variables("Liste1") bekomme ich einen Fehler für Zugriff auf nil. Wie PRÜFE ich?
  12. Hi Ich muß in Lua den Inhalt einer Liste (variable in einem Signal) Namens "Liste1" mit 2 Texteinträgen "T1" und "T2" in einem Objekt auswerten, aber nur wenn sie existiert, ansonsten nehme ich immer "T3" Wie mache ich das? Ich laufe da immer auf einen error. Danke und Gruß Thomas
  13. Das meinte ich. Z.B: bei PKW: Fenster, Chrom, Karosserie, Licht, Blinker u.s.w.
  14. Hallo Bahnland Ich bin auch gerade am Grübeln, wie man Autos an beliebigen Stellen so anhält, daß der Hintermann nicht auffährt. Das sollte möglichst irgendwie ohne abruptes Abbremsen, Losfahren und ohne einzelne kurze Straßenstücke erfolgen. Nachdem das erste Auto über einen Gleiskontakt zum Stehen gebracht wird, müssten die folgenden Autos jeweils mit Abstand anhalten. Schöner wäre es natürlich, wenn das Hauptprogramm selber die currentspeed entsprechend zum Vordermann anpassen würde/könnte, da uns eigentlich die "Sensoren" fehlen. Momentan fällt mir leider nur die Lösung mit kurzen Gleisen ein, wo man die targetspeed des aktuellen Gleises der currentspeed das Fahrzeugs auf dem Gleis dahinter anpasst. Da man aber nicht weiß , wie viele Fahrzeuge kommen, müßte man für die ganze Anlage das Straßennetz mit kurzen Gleisstücken bauen.
  15. Und ein fliegender Teppich für den unsichtbaren Spline!
  16. Die Beispielanlage findest Du hier im Forum :-) Letzte Version ganz unten auf der Seite Das mit dem Timer mache ich auch in einem anderen System schon so. Dort läuft das Lua selber in einer 200ms Schleife praktisch als Timer. Grob beschrieben gibt es 3 Listen, die ich dazu brauche: 1. Angeforderte Fahrstaßen 2. Aktive Fahrstraßen 3. Timeout (Ausweichroute, wenn Fahrstraße nicht geschaltet werden kann) Jedesmal wenn ein Zug eine Fahrstraße befahren will, schreibt er eine Anforderung in Tabelle1. Der Endlostimer fragt diese Tabelle im 200ms Intervall ab. Findet er eine Anforderung, versucht er, die Fahrstraße zu aktivieren. Dazu prüft er alle enthaltenen Gleise auf besetzt, oder ob die Gleis schon in einer anderen aktiven FS in Tabelle2 enthalten sind. Klappt das Aktivieren, löscht er die Anforderung und schreibt sie in Tabelle2. Timeout habe ich hier noch nicht realisiert. Also versucht er es so lange, bis die Fahrstraße frei wird. Am Auflösekontakt hat er ja die Fahrstraße besetzt und löscht den Eintrag aus der Tabelle2! Die möglichen Ziele (Fahrstraßen) werden am Signal eingetragen. Man benötigt nur das Startsignal mit den Bremsparametern und 2 Kontakte, denen man eindeutige Nummern gibt, für jeden neuen Block. Das ist ratzfatz parametriert. Alles andere übernimmt das Lua Programm automatisch. Mal so ganz grob ohne Details.
  17. Hallo RB Wie sieht denn Dein Bahndamm bei 90 Grad Kurven aus inkl. der Schottertextur?
  18. Sehr schön, was Du da baust. Das wirkt alles sehr plastisch und natürlich und gut texturiert. Einige Modelle sind doch sehr grell, bunt und knallig, die ich im Katalog finde. Womit baust Du denn? Blender? Gruß Thomas
  19. Ist mir viel zu aufwändig, die ganzen Ausfahrten zu überwachen, besonders, wenn es noch Ausweichgleise oder alternative Möglichkeiten gibt, wo der Zug hinfahren könnte. Zugrichtungsänderungen, Rangieren u.s.w. müssen dann auch berücksichtigt werden. Und bei eingleisiger Strecke muß dann auch noch der Gegenverkehr berücksichtigt werden. Und ich setze gerne mal Züge von Hand ein. Auch das muß dann die Abfrage auslösen. Dem Timer ist das alles egal. Damit kann ich auch mal eine ganze Zugfahrt mit mehreren Fahrstraßen/Blöcken reservieren bei Gegenverkehr vor, hinter und im Bahnhof u.s.w. So ein Timer sollte das System auch nicht wirklich belasten. Vielleicht mache ich mal einen Test mit 100 aktiven Fahrstraßen mit je 20 Gleisen. Kann man im MBS die Zeit in ms messen?
  20. Nee, signal hieß früher o_signal. Hab den ganzen Kontakt vergessen umzubenennen :-( Hier nochmal mit 2 Loks: (Könnte ich stundenlang zugucken... ) Bremsen.mbp
  21. Danke Martin Habs korrigiert. Da hab ich den einen Kontakt vergessen. Ich hab mir hinterher überlegt, alle Schlagwörter groß zu schreiben. Da gibt es auch ein Problem beim Umbenennen im MBS. Man kann groß/klein nicht umbenennen. Gruß Thomas
  22. Ist ja nur EIN Timer für alle Fahrstraßen bei mir. Der arbeitet nur, wenn eine Fahrstraße angefordert ist, sonst läuft er ins Leere, damit ihm nicht langweilig wird. Siehe meine Beispielanlage im anderen Thread. So funktioniert es auch, wenn man das Fahrzeug von Hand entfernt.
×
×
  • Neu erstellen...