Jump to content

Recommended Posts

Posted (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! (y)(y) (y) 

Habe es gleich mal ausprobiert. Funktioniert Klasse. :)

Screenshot2023-06-27121425.thumb.jpg.635678c7176ed697fc11d1e3670c9115.jpg

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 by Hawkeye
Posted

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

Posted
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

Posted
Gerade eben schrieb Neo:

das gibt es schon!

Genau, wenn man weiß wie. 9_9 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.  

Screenshot2023-06-27133510.thumb.jpg.ffb9428f778bbdd403f40432c3a34155.jpg

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. 

Screenshot2023-06-27133544.thumb.jpg.fcb88b4dc264a9804bdb998d34848140.jpg

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.  

Screenshot2023-06-27133715.thumb.jpg.d388468cc5ef230766aa015c4f8fe036.jpg

Das nur zur Erläuterung, damit sich darüber keiner wundert, warum der LKW nicht anhält. 

VG,

Hawkweye

Posted

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

Posted

"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

Posted

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

Posted

Hallo zusammen,

Dank @EASY lernen wir jetzt auch die weniger bekannten Möglichkeiten von Lua kennen:D. Ich habe zwar die Referenz mal quergelesen, aber assert ist nicht hängengeblieben.

Beste Grüße

Phrontistes

Posted

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.

Screenshot2023-06-27173306.jpg.77d92b07349224a9ee774aeebc239416.jpg

Geblitzt hat es aber nicht:P. 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

Posted
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:P

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

Posted
vor 6 Minuten schrieb Goetz:

das nennt man dann "kirschgelb" ... :D

HAHA! (y) Kannte ich auch noch nicht. :D

vor 50 Minuten schrieb Phrontistes:

Die Animation des Blitzers wäre aber auch kaum zu sehen

Man @Phrontistes >:( Sei doch mal etwas erfinderisch. 9_9

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

Posted

Hallo,

vor 3 Stunden schrieb Hawkeye:

Hier mal ein erster Entwurf für einen "Blitzer", den man auch im MBS wahrnimmt.

passt!(y)...
(... 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

Posted (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 by Hawkeye
Posted
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.   :)

Posted

Danke @Goetz (y) :)

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. :P  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.   

Screenshot2023-06-28145734.thumb.jpg.faa4aa80c96a2be15b7b29a86349f249.jpg

Screenshot2023-06-28145749.thumb.jpg.9c02bc9b36dca608eece411737859abc.jpg

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. 

Screenshot2023-06-28145836.thumb.jpg.4e398ada78486e4a8165c76c0e0bc0d8.jpg

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 

Posted (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:

Screenshot2023-06-28164154.thumb.jpg.6833949564bcf0b105d4c066bfa81d0a.jpg

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 by Phrontistes
Posted
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

Posted
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! :D 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.  

Screenshot2023-06-28174811.thumb.jpg.7c3224aa194664aed89df686cb5ccf7b.jpg

Und die abzweigende Strecke beginnt ebenfalls am Straßenende. 

Screenshot2023-06-28175649.thumb.jpg.e179ef1893a913056850930fd1cce74f.jpg

Ich habe das mal auf eine 3-teilung geändert : 

 Screenshot2023-06-28174936.thumb.jpg.ec83b4c9306a17af1a975ddf46d4245a.jpg  

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! 9_9)   

VG, 

Hawkeye 

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...