Jump to content

Empfohlene Beiträge

Geschrieben

Hallo zusammen, ist es irgendwie möglich, über die Obektvariablen (deren Syntax ich übrigens noch immer nicht verstanden habe) einen Zeitwert auszulesen?

konkretes Beispiel:

ein Kreis, Fahrzeug fährt, und soll mir anzeigen auf einer Beschriftung wie lange ein Umlauf dauert, geht das überhaupt?

mfg max

Geschrieben

Hallo Max,

Du kannst beim Start eines Umlaufs einen sich wiederholenden Countdown aufziehen, der eine Variable von 0 im Sekundentakt (oder auch einem anderem Takt , z.B. 1/10 sec) hochzählt. Am Ende des Umlaufs stoppst Du den Countdown und gibst den Inhalt der Variable in der Beschriftung aus. Das Ergebnis zeigt Dir dann die Anzahl der Countdown-Durchläufe während eines Umlaufs an.

Mit folgenden "Ungenauigkeiten" musst Du allerdings rechnen:

  1. Die Ereignisverarbeitung kann die Schleife möglicherweise etwas verzögern, sodass das Ergebnis möglicherweise eine etwas zu kleine Dauer für den Umlauf anzeigt.
  2. Da der Zähler-Takt genau einem Countdown-Durchgang entspricht, und dieser möglicherweise nicht exakt mit einem Umlauf der Lok aufgeht, kann es sein, dass die verbrauchte Umlaufzeit um bis zu einem Countdown-Durchgang zu kurz ist (nämlich dann, wenn der Countdown unmittelbar vor seinem nächsten "Anschlag" gestoppt wurde.

Beide effekte führen also dazu, dass die "abgelesene" Umlaufzeit immer etwas kürzer ist als die tatsächliche Umlaufzeit. Eine "exakte" Umlaufzeit kannst Du leider nicht messen.

Viele Grüße
BahnLand

Geschrieben

Hallo BahnLand, vielen Dank für die Antwort, werde da mal rumexperimentieren.

mfg max

PS. so genau muss es eh nicht sein, reicht mir ungefähr

Geschrieben

Hallo maxwei!

Wenn Du dann für Deine Lok "Lok" die Objektvariable mit Namen Zeit erstellst (im Bearbeitungsmenü bei der Lok selbst, neben dem Verknüpfen-Symbol),
dann kannst Du Dein Resultat als Aktion Variable setzen Lok.Zeit in der Lok selbst hinterlegen (der Punkt ist wichtig!).
Du könntest dann eine Variable Lokname erzeugen, in die Du Lok einträgst. Texte nehmen Variablen ja auch entgegen.
Dann würde per indirektem Zugriff (Lokname).Zeit auf diese Zeit zugegriffen. Hier sind die Klammern wichtig (und der Punkt).
Bei Bedingung und Aktion geht das gut, bei Ereignis ist einiges eingeschränkt, nicht wundern.

Gruß
  Andy

Geschrieben

Hallo, der Hintergrund des Ganzen ist; bei verschiedenen Kreisen (Autoverkehr) Umlaufzeiten zu messen, diese rauszudividieren um dann bei Zusammenschiebungen durch geschlossene Bahnschranken verschiedene Verzögerer  zu setzen um den Abstand der Fahrzeuge wieder herzustellen, aber soweit bin ich noch lange nicht;).

mfg max

Geschrieben

Wenn alles richtig kalibriert ist, mußte man das ja sogar rechnen können. Straßenlänge, Fahrzeuggeschwindigkeit (Bremsen+Beschleunigen mal außen vor gelassen). Das sollte dem gemessenen Wert nahe kommen. Wäre interessant.

Gruß Andy

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