Hawkeye Posted June 27, 2023 Author Posted June 27, 2023 (edited) vor einer Stunde schrieb EASY: und bei "Skript" -> "Bearbeiten" folgendes eingeben: error("Deine Wunschmeldung") wie bei jeden Fehler, wird die Verarbeitung dann an dieser Stelle angehalten (-> pausiert und kann dann auch wieder weitergeführt werden). Hallo @EASY, super Tipp, Danke! Habe es gleich mal ausprobiert. Funktioniert Klasse. Mit einer informativen print(..) -Anweisung weiß man auch gleich wer wo die Anlage pausiert hat. vor 11 Minuten schrieb Neo: aber irgendwie gefällt mir der Zustand trotzdem Ja, mir auch, da man dann durch Abschalten des Ereignisprotokolls wieder den flüssigen Ablauf erhält. Danke, Hawkeye Edited June 27, 2023 by Hawkeye
Phrontistes Posted June 27, 2023 Posted June 27, 2023 Hallo @Neo, mehr oder weniger kommentarlos zu ignorieren. würde ich belassen wie es ist, schon in Deinem eigenen Interesse, da könnte sonst einiges Gejammer kommen. Ich denke z.B. an Endlosrekursionen, die Du kommentarlos noch 25 Versuchen ins Leere laufen lässt. Aber der Vorschlag von @Hawkeye vor 2 Stunden schrieb Hawkeye: Wäre es nicht sinnvoll und möglich, ein EV-Ereignis "Anlage pausieren" zu kreieren? wäre eine echte Bereicherung. Beste Grüße Phrontistes
Hawkeye Posted June 27, 2023 Author Posted June 27, 2023 Hallo @EASY, man ist die Funktion wertvoll! Das eröffnet ganz neue Möglichkeiten bei der Fehlersuche. Echt toll! Ich bin begeistert. VG, Hawkeye
Neo Posted June 27, 2023 Posted June 27, 2023 vor 37 Minuten schrieb Phrontistes: wäre eine echte Bereicherung. EASY hat doch bereits die Lösung genannt, das gibt es schon. Viele Grüße, Neo
Hawkeye Posted June 27, 2023 Author Posted June 27, 2023 Gerade eben schrieb Neo: das gibt es schon! Genau, wenn man weiß wie. Und damit kann man jetzt endlich auch Situationen oder unerwünschte Effekte dokumentieren. z.B. ist in der EV eingestellt, das LKW nur auf eine Geschwindigkeit von 40- 60 km/h beschleunigen sollen. Bei eingeschalteter "automatischer Beschleunigung" wird diese Vorgabe aber ignoriert, denn die LKW heften sich hinter die schnelleren vorausfahrenden PKW. Sie fahren also im Endeffekt schneller als es eigentlich gewünscht ist. Dies führt aber zu nicht gewollten Effekten bei der Steuerung, die man dann nicht mehr beeinflussen kann. Der LKW fährt mit einer größeren Geschwindigkeit als er soll auf den Kontakt und fährt somit weiter, obwohl er eigentlich (bei Soll-V <=60 km/h) an dieser Stelle abbremsen sollte. Das nur zur Erläuterung, damit sich darüber keiner wundert, warum der LKW nicht anhält. VG, Hawkweye
Phrontistes Posted June 27, 2023 Posted June 27, 2023 Hallo @Neo, vor 46 Minuten schrieb Neo: EASY hat doch bereits die Lösung genannt, das gibt es schon. hast ja recht. Das mit der offenen Ereignisprotokollierung und dem Anhalten bei Fehlern wusste ich und nutze es auch immer, wenn ich neue Sachen programmiere, die ja immer einen Fehler haben könnten, den ich sonst ja gar nicht sehe. Nur deshalb weiß ich ja auch von vor einer Stunde schrieb Phrontistes: Endlosrekursionen, die Du kommentarlos nach 25 Versuchen ins Leere laufen lässt. Schöner als ein Stack overflow und einem kalten Abschied ist das allemal . Beste Grüße Michael
Neo Posted June 27, 2023 Posted June 27, 2023 "Kommentarlos" würde ich nicht sagen. Bei aktiver Ereignisprotokollierung erscheint ein Fehlerhinweis, wenn zu viele Rekursionen genutzt werden. Das Ereignis wird an dieser Stelle abgebrochen. Viele Grüße, Neo
EASY Posted June 27, 2023 Posted June 27, 2023 Hallo @Hawkeye, es gibt als Fehler auch noch "assert(v,[message]" (erspart eine if-Abfrage) local v=$("LKW").currentSpeedAbs assert(v>=40 and v<=60,"Geschwindigkeit außehalb Bereich "..v) solange der Ausdruck... v>=40 and v<=60 ... wahr ist, gibt es keine Fehlermeldung. Gruß EASY
Phrontistes Posted June 27, 2023 Posted June 27, 2023 Hallo zusammen, Dank @EASY lernen wir jetzt auch die weniger bekannten Möglichkeiten von Lua kennen. Ich habe zwar die Referenz mal quergelesen, aber assert ist nicht hängengeblieben. Beste Grüße Phrontistes
Phrontistes Posted June 27, 2023 Posted June 27, 2023 Hallo @Hawkeye, vor 6 Stunden schrieb Hawkeye: Mach einer versucht zusätzlich noch sein Glück, wenn die Ampel auf "Gelb" steht ... und die ganz wagemutigen fahren - trotz Blitzer - sogar noch bei "rot" drüber. Geblitzt hat es aber nicht. Die Animation des Blitzers wäre aber auch kaum zu sehen und sowieso nur, wenn man halbwegs von vorne auf ihn draufschaut. Den ganzen Bildschirm mal kurz aufblitzen lassen kann man ja nicht - oder etwa doch und ich weiß es nicht? Beste Grüße Phrontistes
Hawkeye Posted June 27, 2023 Author Posted June 27, 2023 vor 7 Minuten schrieb Phrontistes: ... und die ganz wagemutigen fahren - trotz Blitzer - sogar noch bei "rot" drüber. Klar, ist doch auch logisch, das das passieren kann. Die „Gelb“-Phase dauert genau 2s. Wer sich erst bei „Dunkelgelb“ also nach 1,9s noch entscheidet Gas zu geben, den erwischt es auch.😆 Tja, ist halt wie im richtigen Leben. 🤪 vor 11 Minuten schrieb Phrontistes: Geblitzt hat es aber nicht Der Blitzer ist ja auch nicht über die EV gesteuert. Da das „Blitzen“ auch nur zu sehen wäre, wenn man in genau diesem Moment auch im Auto mitfährt, habe ich darauf verzichtet. VG, Hawkeye
Goetz Posted June 27, 2023 Posted June 27, 2023 vor 42 Minuten schrieb Phrontistes: bei "rot" das nennt man dann "kirschgelb" ...
Hawkeye Posted June 27, 2023 Author Posted June 27, 2023 vor 6 Minuten schrieb Goetz: das nennt man dann "kirschgelb" ... HAHA! Kannte ich auch noch nicht. vor 50 Minuten schrieb Phrontistes: Die Animation des Blitzers wäre aber auch kaum zu sehen Man @Phrontistes Sei doch mal etwas erfinderisch. Kann man doch alles mal versuchen. Hier mal ein erster Entwurf für einen "Blitzer", den man auch im MBS wahrnimmt. Blitzer.mbp VG, Hawkeye
EASY Posted June 27, 2023 Posted June 27, 2023 Hallo, vor 3 Stunden schrieb Hawkeye: Hier mal ein erster Entwurf für einen "Blitzer", den man auch im MBS wahrnimmt. passt!... (... da krame ich doch sofort in meinem Gedächtnis und frage mich wo ich das Schild für die Geschwindigkeitsbegrenzung übersehen haben könnte) Gruß EASY
Hawkeye Posted June 28, 2023 Author Posted June 28, 2023 (edited) Hallo @Goetz, ich habe diese Steuerung über den Bremsweg mal auf einen T-Abzweig erweitert. Für die reine Ampelschaltung habe ich dein schönes Beispiel unter Tutorials adaptiert. Ist das o.k. für dich, wenn ich das verwende? VG, Hawkeye Edited June 28, 2023 by Hawkeye
Goetz Posted June 28, 2023 Posted June 28, 2023 Gerade eben schrieb Hawkeye: Ist das o.k. für dich Ja, das darfst du sehr gerne tun. Ich freue mich, wenn du das für deine Zwecke nutzen kannst.
Hawkeye Posted June 28, 2023 Author Posted June 28, 2023 Danke @Goetz Hier mal die Erweiterung der Steuerung auf einen T-Abzweig. Ampelsteuerung über Bremsweg 01.mbp Da denkt man endlich einen flüssigen Ablauf erreicht zu haben, da tauchen wieder andere neue Probleme auf. Shit happens! Das neue Problem offenbart sich in der Tatsache, das durch die jetzt unterschiedlichen Richtungen, in die die Fahrzeuge zufällig fahren können, die "automatische Beschleunigung" gerade beim Anfahren recht wirkungslos ist. Der Kontakt zum Vordermann reißt sofort ab, wenn zwei Fahrzeuge, die hintereinander fahren unterschiedliche Richtungen einschlagen. Hier schön zu sehen, das der dunkelgraue Käfer gerade mal auf 10 km/h beschleunigt hat und dann der Beschleunigungsvorgang unterbrochen wird, da der dunkelblaue Käfer geradeaus fährt. Da muss man schon tief in die Trickkiste greifen, um einen einigermaßen flüssigen Ablauf beim Anfahren an der Ampel hinzubekommen. Ganz lässt sich das aber wohl nicht abstellen. Auch nicht mit vielen Gleiskontakten. Mein Ziel ist ja auch, Gleiskontakte auf ein Minimum zu reduzieren, damit es übersichtlich bleibt. VG, Hawkeye
Phrontistes Posted June 28, 2023 Posted June 28, 2023 (edited) Hallo @Hawkeye, vielleicht hilft es Dir weiter, wenn Du rechtzeitig weißt, wo das Fahrzeug hinwill. Das kann man in Grenzen (isHeadingToward prüft lt. Neo ca. 150m [im Maßstab 1:1] entlang des Fahrwegs) mit Kontakten vor und nach der Kreuzung feststellen und zwar so: Hier werden nur Anzeigen gesetzt weil ich das mal ausprobieren wollte und für einen Kreisverkehr, den ich gelegentlich mal machen will, auch wirklich brauche. Die Anzeigen kannst Du in FBAD92BF-D0D5-48E4-9B4D-A412437C4417 beobachten. Beste Grüße Phrontistes Edited June 28, 2023 by Phrontistes
Hawkeye Posted June 28, 2023 Author Posted June 28, 2023 vor 19 Minuten schrieb Phrontistes: vielleicht hilft es Dir weiter, wenn Du rechtzeitig weißt, wo das Fahrzeug hinwill. Hallo @Phrontistes, danke für die Idee, sie hilft aber nicht. Die Richtung, wo die Fahrzeuge hinmöchten ist doch schon an der „roten“ Ampel bekannt und löst das beschriebene Problem nicht. vor einer Stunde schrieb Hawkeye: Der Kontakt zum Vordermann reißt sofort ab, wenn zwei Fahrzeuge, die hintereinander fahren unterschiedliche Richtungen einschlagen. Ich habe aber schon einen Verdacht, woran das „zu frühe“ Abreißen des Kontaktes zum Vordermann liegen kann. 😉 VG, Hawkeye
Hawkeye Posted June 28, 2023 Author Posted June 28, 2023 vor 30 Minuten schrieb Hawkeye: Ich habe aber schon einen Verdacht, woran das „zu frühe“ Abreißen des Kontaktes zum Vordermann liegen kann. Jupp, gefunden! Es liegt an der Definition der Spuren des Abzweigs. Das ist der Abzweig, so wie er im Katalog definiert ist. Die geraden Spuren sind über die Länge durchgezogen. Und die abzweigende Strecke beginnt ebenfalls am Straßenende. Ich habe das mal auf eine 3-teilung geändert : Dadurch bricht der Kontakt zum Vordermann beim Beschleunigen aus dem Stand auch um die grüne Strecke später ab. Das ergibt einen wesentlich flüssigeres "Anfahren" der Fahrzeuge aus dem Stand. (Kleine Ursache, aber große Wirkung! ) VG, Hawkeye
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now