Jump to content

Richtung bezüglich eines in der Ferne liegenden Kontaktes


Empfohlene Beiträge

Hallo,

wie stelle ich fest ob die Startrichtung ("drivingDirection")  +1 oder -1 sein muß, bezüglich eines contactes in der Ferne.

Ich denke es kommt nicht nur auf Aufgleisrichung des vehicle an ?

Das ganze wird erschwert wenn keine "Vergangenheit" vorliegt (Kaltstart).

Grüße vom liftboy

 

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du kannst prüfen, ob ein bestimmter Kontakt in Fahrtrichtung voraus liegt.
Und ein Fahrzeug hat immer eine Fahrtrichtung. Auch nach einem Kaltstart.
Wenn der Kontakt nicht in Fahrtrichtung gefunden wird, dann kannst du die Fahrtrichtung mit einem Kommando umkehren.

Beachte dabei bitte, dass Kontakte nur über eine gewisse Distanz erkannt werden. Die genaue Länge kenne ich leider nicht.

Pardon! Mein Versuch hat ergeben, dass es sich etwas anders verhält (siehe unten)

Bearbeitet von Goetz
Aussage zurückgenommen
Link zu diesem Kommentar
Auf anderen Seiten teilen

Tut mir leid, aber da war ich voreilig, @liftboy.

Bei meinem Versuch, den ich leider erst nach dem Schreiben gemacht habe, wird der Kontakt bei einem stehenden Fahrzeug auch dann "gesehen", wenn er nicht in Fahrtrichtung vor, sondern hinter dem Fahrzeug, also entgegen der eingestellten Fahrtrichtung liegt. Nur wenn das Fahrzeug in Bewegung ist, wird korrekt unterschieden.

Bearbeitet von Goetz
Ergänzungen
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Goetz

meine Versuche ergeben, daß auch bei stehendem Fahrzeug ein Kontakt richtig erkannt wird, sowohl nach vorne wie auch nach hinten
(auch wenn andere Kontakte dazwischen sind)
und deshalb aus dieser Info eine Fahrtrichtung abgeleitet werden kann.

Ich verwende  boo = v:isHeadingToward($("Testkontakt"))

Allerdings reißt die Verbindung ab einer bestimmten Entfernung ab - ich kann nicht genau sagen wieweit entfernt, aber scheinbar nicht soo weit!

Grüße vom lifboy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @liftboy,

wenn die maximale Distanz der Erkennung von "isHeadingToward" nicht ausreicht, kann man den Gleiskontakt auch als Ziel setzen (geht auch wenn Lok steht).
 

$("Lok").target=$("Gleiskontakt") --Gleiskontakt als Fahrziel setzen
if $("Lok").target~=nil then -- konnte Fahrziel gesetzt werden? (Aktuelle Fahrtrichtung in Richtung Gleiskontakt?)
print("aktuelle Fahrtrichtung ist in Richtung Gleiskontakt")
else
print("aktuelle Fahrtrichtung ist entgegen in Richtung Gleiskontakt")
end
$("Lok").target=nil -- Fahrziel wieder löschen

Gruß
EASY

Bearbeitet von EASY
Link zu diesem Kommentar
Auf anderen Seiten teilen

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 erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...