Hawkeye Geschrieben 10. Februar 2022 Geschrieben 10. Februar 2022 Moin @Neo, ich frage mich, ob es in Lua möglich ist, die Länge einer Fahrstraße [m] oder besser den genauen Abstand zwischen zwei Gleiskontakten exakt abzurufen. I Mit den bisher gefundenen Lua-Anweisungen bekomme ich nur die Länge der Summe aller Gleise auf denen sich die beiden GK befinden. Dabei wird die Position des GK, wo auch immer er auf dem Gleis steht, aber nicht berücksichtigt. Genauer wird es nur , wenn die GK genau am Schnittpunkt der Gleise liegen. Gibt es eine bessere Möglichkeit, die genaue Länge zwischen den GK zu bestimmen? Viele Grüße Hawkeye
Neo Geschrieben 10. Februar 2022 Geschrieben 10. Februar 2022 Hallo Hawkeye, aktuell gibt es keine Möglichkeit, den Abstand zwischen zwei beliebigen Gleiskontakten zu ermitteln. Wofür benötigst du diese Information? Die Länge einer Fahrstraße selbst wird intern bereits gespeichert und könnte per Lua abfragbar gemacht werden. Viele Grüße, Neo
Hawkeye Geschrieben 10. Februar 2022 Autor Geschrieben 10. Februar 2022 Hallo Neo, vor 28 Minuten schrieb Neo: Die Länge einer Fahrstraße selbst wird intern bereits gespeichert und könnte per Lua abfragbar gemacht werden. Das wäre klasse.👍 vor 29 Minuten schrieb Neo: aktuell gibt es keine Möglichkeit, den Abstand zwischen zwei beliebigen Gleiskontakten zu ermitteln. Wofür benötigst du diese Information? Zum experimentieren und berechnen von Werten. 😁 z.B. um über die aktuelle Geschwindigkeit eines Fahrzeuges die Fahrzeit bis zum Zielpunkt zu ermitteln, oder eine Strecke (ohne zusätzliche GK) in mehrere definierte Haltepunkte zu unterteilen. Viele Grüße, Hawkeye
Hawkeye Geschrieben 4. Juli 2023 Autor Geschrieben 4. Juli 2023 (bearbeitet) Hallo @Neo, ich komme nochmal zurück auf meine Anfrage vom Frühjahr letzten Jahres. Ich stoße bei meinen Experimenten immer auf das gleiche Problem. Ich benötige den Abstand zwischen zwei Gleiskontakten als Strecke [m]. Momentan beschäftige ich mich (mal wieder ) mit dem unsäglichen Problem des "durch den Vordermann hindurchfahren" von Fahrzeugen im Straßenverkehr, wenn sie unterschiedliche Wege an Kreuzungen oder Abzweigen einschlagen. Eine statische Lösung durch Vermessen der Strecke habe ich gefunden. Um das Ganze aber abzurunden und für beliebige Strecken oder verschobenen Gleiskontakte zu optimieren, benötige ich den Abstand zweier beliebiger Gleiskontakte, bzw. die Länge der fahrbaren Strecke, wie in den Bildern oben dargestellt, z.B. die Fahrstrecke zwischen 2 Wegpunkten. In meinem aktuellen Experiment vom GK "türkis oder cyan" zum "roten" Stoppkontakt. Lässt sich das nicht doch irgendwie einrichten, das man diese Information per Lua abgreifen kann? VG, Hawkeye Bearbeitet 4. Juli 2023 von Hawkeye
Phrontistes Geschrieben 4. Juli 2023 Geschrieben 4. Juli 2023 Hallo @Hawkeye, @EASY kann die Distanz zwischen zwei Objekten mit seinem Plugin jedenfalls messen. Wie er das genau macht, weiß ich nicht, aber wohl nicht mit Lua. Und er misst wohl "nur" auf dem direkten Weg und nicht entlang des Fahrweges. Aber vielleicht hilft Dir das Plugin ja auch schon mal weiter. Beste Grüße Phrontistes
Hawkeye Geschrieben 5. Juli 2023 Autor Geschrieben 5. Juli 2023 vor 8 Stunden schrieb Phrontistes: Aber vielleicht hilft Dir das Plugin ja auch schon mal weiter. Hallo @Phrontistes, danke für den Tip. Das Plugin selber hilft natürlich nicht. vor 8 Stunden schrieb Phrontistes: EASY kann die Distanz zwischen zwei Objekten mit seinem Plugin jedenfalls messen. Wie er das genau macht, weiß ich nicht, aber wohl nicht mit Lua. Aber dieser Satz hat mich an meine eigenen (schon vergessenen) Experimente erinnert. Ich habe eine solch ähnliche Funktion in einem anderen Zusammenhang in Lua schon mal selbst geschrieben. Dabei ging es u.a. darum, wo genau sich das Zentrum (Koordinatenmittelpunkt) einer Lok in Bezug zum Gleis befindet, auf dem sie steht. Werde diese Funktion entsprechend anpassen und mir die benötigte daraus selbst erzeugen. also ganz "Easy". VG, Hawkeye
Neo Geschrieben 5. Juli 2023 Geschrieben 5. Juli 2023 Hallo Hawkeye, vor 11 Stunden schrieb Hawkeye: Abstand zweier beliebiger Gleiskontakte das Problem mit so einer Funktion ist, dass sie potentiell eine unendliche Laufzeit hat, nämlich wenn es keine Verbindung zwischen beiden Kontakten gibt oder die Strecke dahin durch viele Abzweigungen zu komplex wird. Bei den Fahrstraßen gibt es entsprechende Abbruchbedingungen, wie z.B. die berühmten maximal 7 Abzweigungen, aber es kann bei langen Strecken entsprechend auch mal die eine oder andere Sekunde dauern, bis eine Fahrstraße aufgebaut ist. Für eine dynamische Steuerung in Echtzeit wäre das System nicht gut geeignet. Wenn dir der geometrische Abstand ausreicht, so wie von Phrontistes vorgeschlagen, wäre das die schnellere Lösung. Viele Grüße, Neo
Hawkeye Geschrieben 5. Juli 2023 Autor Geschrieben 5. Juli 2023 (bearbeitet) vor 3 Stunden schrieb Neo: Wenn dir der geometrische Abstand ausreicht, so wie von Phrontistes vorgeschlagen, wäre das die schnellere Lösung. Hallo Neo, durch diese Diskussion ist mir etwas klar geworden. Eine Fahrstraße (orange) wird bildet zwischen zwei Gleiskontakten. Ein Fahrweg wird gebildet zwischen einem Fahrzeug (Zentrum) und einem Gleiskontakt (Target) . Genau diese (grüne) Strecke von Fahrzeug zum Target möchte ich ermitteln. Da habe ich mich wohl etwas unverständlich ausgedrückt. vor 3 Stunden schrieb Neo: das Problem mit so einer Funktion ist, dass sie potentiell eine unendliche Laufzeit hat, nämlich wenn es keine Verbindung zwischen beiden Kontakten gibt oder die Strecke dahin durch viele Abzweigungen zu komplex wird. Die grüne Strecke als Distanz vom Fahrzeug zum Ziel existiert doch im Programm! Eine Funktion könnte doch so aussehen. VG, Hawkeye Bearbeitet 5. Juli 2023 von Hawkeye
Neo Geschrieben 5. Juli 2023 Geschrieben 5. Juli 2023 vor 34 Minuten schrieb Hawkeye: Die grüne Strecke als Distanz vom Fahrzeug zum Ziel existiert doch im Programm! Ja, diese Strecke existiert, sie ist aber statisch, d.h. sie wird nur einmal bei der Zuweisung eines neues Ziels generiert. Der Startpunkt der Strecke verändert sich nicht mehr, wenn das Auto weiterfährt.
Hawkeye Geschrieben 5. Juli 2023 Autor Geschrieben 5. Juli 2023 vor 1 Stunde schrieb Neo: Ja, diese Strecke existiert, sie ist aber statisch, d.h. sie wird nur einmal bei der Zuweisung eines neues Ziels generiert. Der Startpunkt der Strecke verändert sich nicht mehr, wenn das Auto weiterfährt. Hallo Neo, es reicht doch auch, wenn die Strecke zum Zeitpunkt der Zielzuweisung gelesen werden kann. Auslöser in der EV ist doch immer ein Gleiskontakt, der von einem Fahrzeug betreten wird. Verschiebe ich jetzt den Gleiskontakt beim Testen um ein Delta (+/-), dann wird mir auch beim Betreten des Gleiskontaktes durch ein Fahrzeug an dieser neuen Stelle die aktualisierte Strecke angegeben, ohne das ich die Strecke von Hand neu ausmessen muß. Das habe ich mit „dynamisch“ gemeint. VG, Hawkeye
prinz Geschrieben 5. Juli 2023 Geschrieben 5. Juli 2023 Hallo @Hawkeye , Bin gespannt, was aus Deiner Forschung wird. Ich hatte mich ja auch mal länger mit den Abzweigungen befasst . Hier vielleicht ein anderer Ansatz: Für Dein aktuelles Problem hatte ich ein Lösung gefunden. Das Problem kann bei Abzweigungen nur für Linksabbieger auf derjenigen Spur der Hauptstraße auftreten, die der Nebenstraße gegenüberliegt. In dieser Situation (obere Spur von rechts nach links) muss ein Fahrzeug nur halten, wenn es als Linksabbieger Gegenverkehr abwarten muss. Dies wird hier beim Gleiskontakt Linksabbieger geregelt. Da das Fahrzeug hier schon nicht mehr auf der Geradeausspur steht, wird der Gleiskontakt Vorstopper gesperrt, sobald ein Linksabbieger ihn verlässt. Verlässt er anschliessend den Linksabbiegerkontakt, wird der Vorstopper wieder freigegeben. Vorteil: Funktioniert Nachteil: Der Abstand zwischen Linksabbieger- und Vorstopperkontakt muss so groß sein, wie der längste Fahrzeugverbund. Dies sieht dann unter Umständen nicht so gut aus. Vielleicht kann der Linksabbieger den Vorstopperkontakt entsprechend seiner Länge "verschieben". Viele Grüße, Wolfgang
Hawkeye Geschrieben 5. Juli 2023 Autor Geschrieben 5. Juli 2023 (bearbeitet) vor 32 Minuten schrieb prinz: Vorteil: Funktioniert Nachteil: Der Abstand zwischen Linksabbieger- und Vorstopperkontakt muss so groß sein, wie der längste Fahrzeugverbund. Dies sieht dann unter Umständen nicht so gut aus. Hallo Wolfgang, das hatte ich ja auch mal ausprobiert. Aber mit ebenso unbefriedigenden Ergebnissen. Genau, deshalb verfolge ich jetzt ja auch einen neuen Ansatz. Der "dunkelgraue" PKW fährt geradeaus. Der gelbe PKW biegt ab und hält am Stoppkontakt. Am auslösenden Startkontakt (Start 03) = Anfang des grünen Fahrweges wird dem gelben PKW der Verfolger (dunkelgraue PKW) zugwiesen, wenn dieser den Kontakt betritt. Der Kontakt merkt sich also das letzte Fahrzeug, das ihn betreten hat. Stoppt der vorausfahrende (gelbe) PKW, dann wird synchron auch der Verfolger (dunkelgraue) gestoppt. Vorteil: solange der Abstand zwischen den Fahrzeugen moderat ist, sieht es gut aus. Nachteil: Hat der gelbe PKW schon gestoppt, wenn der Verfolger den Startkontakt betritt, dann bremst der Verfolger viel zu früh ab. Dies Lücke lässt sich schließen, wenn man den Abstand zum gelben Fahrzeug ermitteln kann. Lücke = Distanz zum Stoppkontakt - Länge des vorausfahrenden (hier: gelben) Fahrzeugs incl. Anhänger (= Fahrzeugverband) - Halteabstand von ca. 2-3m Je nach Abstand kann man dann entweder eine geringer Bremsverzögerung einstellen, oder eine zeitliche Verzögerung, bis das Verfolgerfahrzeug hinter dem (gelben) Fahrzeug hält. VG, Hawkeye Bearbeitet 5. Juli 2023 von Hawkeye
prinz Geschrieben 5. Juli 2023 Geschrieben 5. Juli 2023 Hallo @Hawkeye, Sicher ist Dein Lösungsansatz der "RollsRoyce". Trotzdem bis zu Deiner Lösung noch eine Ergänzung: Hinter dem LKW mit Hänger halten die Fahrzeuge mit normalem Abstand: Hinter einem PKW rücken die Verfolger weiter auf: Realisiert ist dies mit mehreren Stop-Elementen für Verfolger (hier mit kurzen Straßenelementen, wahrscheinlich besser mit Gleiskontakten): Bei Betreten des Linksabbiegerkontaktes werden die Vorstopperelemente von links nach rechts durchgegangen. Auf dem ersten, auf dem NICHT ein Fahrzeug aus dem Linksabbieger-Fahrzeugverbund steht, wird eine Stop-Eigenschaft gesetzt. Etwas durchs Knie ins Auge geschossen, aber aktuell so realisierbar. Mir sind so kurze Elemente mal begegnet, als ich eine alte Anlage aus V3 (Bergwandern in Budenheim) nach V8 hochgezogen habe. Das wurde da für langsame Beschleunigung / langsames Anhalten genutzt. Übrigens ist mir hier nochmal ein altes Problem aufgefallen: Auf der Abzweigung springt der Anhänger schon mal kurz auf eine andere Spur. Viele Grüße und gespannt auf Dein weiteres Vorankommen Wolfgang
Hawkeye Geschrieben 5. Juli 2023 Autor Geschrieben 5. Juli 2023 vor 10 Minuten schrieb prinz: Übrigens ist mir hier nochmal ein altes Problem aufgefallen: Auf der Abzweigung springt der Anhänger schon mal kurz auf eine andere Spur. Hallo Wolfgang, das kenne ich auch noch. Es liegt daran, das ein Ziel im Fahrzeug zu früh gelöscht wird, bevor das Fahrzeug die Fahrspuren der Kreuzung komplett verlassen hat, oder erst gar kein Ziel im Fahrzeug vorhanden ist. Das sehe ich in deinem letzten Bild an der Position der „schwarzen“ Gleiskontakte. Das „Ausschlagen“ hängt mit der Reihenfolge der Spuren in einer Kreuzung oder einem Abzweig zusammen. Treffen sich an einer Stelle zwei Spuren und laufen in nur einer Spur weiter, dann wird das Fahrzeug inkl. Anhänger immer auf die niedriger definierte Spur katapultiert. Habe da schon mit vielen Spureinstellungen experimentiert, aber es gibt bei allen zu konstruierenden Spuren dabei leider immer eine niedriger Spur, so das es aus diesem Grund wenig Sinn macht, die Reihenfolge der Spuren zu verändern. Dafür gibt es aber mehrere Lösungen. Den Zielkontakt verschieben, so das das Fahrzeug in seiner Gesamtlänge die Kreuzung auch komplett verlassen hat. Oder das Ziel nicht beim „Betreten“, sondern beim „Verlassen“ löschen. Oder bei „Betreten (in Fahrzeugmitte)“ und eine kurze Verzögerung einbauen, so dass das Ziel erst nach 1-2 s gelöscht wird. Hauptsache das Fahrzeug hat die Kreuzung komplett verlassen, bevor das Ziel gelöscht wird. VG, Hawkeye
prinz Geschrieben 5. Juli 2023 Geschrieben 5. Juli 2023 Hallo Hawkeye, Werde ich bei Gelegenheit nochmal prüfen. Hier war es jedenfalls so, dass der Anhänger auch beim Rechtsabbiegen aus der Nebenstraße auf eine andere Spur sprang, obwohl dort der Zielkontakt weit genug entfernt ist. Viele Grüße, Wolfgang
Hawkeye Geschrieben 9. Juli 2023 Autor Geschrieben 9. Juli 2023 (bearbeitet) Am 5.7.2023 um 14:45 schrieb prinz: . . . gespannt auf Dein weiteres Vorankommen Hallo Wolfgang, ist doch alles etwas komplizierter als gedacht. . . . Aber hier wird nicht aufgegeben! Zur Ablenkung und um den Kopf freizubekommen, habe ich noch ein paar nette kleine Zusatzfeatures eingebaut. Die Fahrzeuge blinken jetzt bei Abbiegen und die Bremsleuchten werden ebenfalls aktiviert. Apropos Bremsleuchten: Der Anhänger der "Spedition Eder" müsste mal in die Werkstadt zur Kontrolle der Kfz-Beleuchtung. Beim der nächsten TÜV Inspektion fällt er sonst durch. VG, Hawkeye Bearbeitet 9. Juli 2023 von Hawkeye
Hawkeye Geschrieben 12. Juli 2023 Autor Geschrieben 12. Juli 2023 Am 5.7.2023 um 09:25 schrieb Neo: Ja, diese Strecke existiert, sie ist aber statisch, d.h. sie wird nur einmal bei der Zuweisung eines neues Ziels generiert. Der Startpunkt der Strecke verändert sich nicht mehr, wenn das Auto weiterfährt. Hallo @Neo, nach unzähligen Versuchen habe ich das Problem des "durch Fahrzeuge hindurchfahren", bei unterschiedlichen Spuren wohl endlich gelöst. Du hattest recht, die von mir gewünschte Information ist dabei doch nicht hilfreich. Es muss an diesen Abzweigstellen, bei denen die Fahrzeuge auf unterschiedlichen Fahrspuren stehen und weiterfahren, der Abstand des Verfolgers zum vorausfahrenden Fahrzeug ständig überprüft werden und die Geschwindigkeit des Verfolgers dem vorausfahrenden Fahrzeug angepasst werden. Dafür muss die "automatische Beschleunigung" des Verfolgers aber auch temporär ausgeschaltet sein, damit er von vorbeifahrenden Fahrzeugen nicht doch wieder beschleunigt wird. Meine Anfrage hat sich damit erledigt. VG, Hawkeye
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen.
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden