Jump to content

Empfohlene Beiträge

Geschrieben

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

 

 

Geschrieben (bearbeitet)

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
Geschrieben (bearbeitet)

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
Geschrieben

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

Geschrieben
vor 11 Minuten schrieb liftboy:

Allerdings reißt die Verbindung ab einer bestimmten Entfernung ab

Bei meinem Versuch war die Entfernung auf einer Anlage im H0 Maßstab 1,50 reale Meter.

Geschrieben

Hallo @liftboy,

vor 35 Minuten schrieb liftboy:

Allerdings reißt die Verbindung ab einer bestimmten Entfernung ab

isHeadingToward prüft lt. Neo ca. 150m [im Maßstab 1:1] entlang des Fahrwegs.

Beste Grüße

Phrontistes

 

Geschrieben (bearbeitet)

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

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