Jump to content

Timer läuft ab / Timer expires


Empfohlene Beiträge

Hallo @Neo,

bei der Behandlung des Ereignisses "Timer läuft ab" würde man sich wünschen, dass man bei den Aktionen "Timer starten" / "Timer stoppen" mit dem Zahnrad auch den Auslöser (= Timer) wählen könnte.

When handling the "Timer expires" event, one would wish that the gear wheel could also be used to select the trigger (= timer) for the "Start timer" / "Stop timer" actions.

Beste Grüße / Kind regards

Phrontistes

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

vor 27 Minuten schrieb Phrontistes:

bei der Behandlung des Ereignisses "Timer läuft ab" würde man sich wünschen, dass man bei den Aktionen "Timer starten" / "Timer stoppen" mit dem Zahnrad auch den Auslöser (= Timer) wählen könnte.

... hast Du ein Beispiel warum?

Gruß
EASY

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @EASY,

vor 30 Minuten schrieb EASY:

hast Du ein Beispiel warum?

Screenshot2023-07-12103045.jpg.7e06b63a138a73aa46bf246043da5c5e.jpg

Es geht mit vor allem um die Programmierphase. Im Beispiel: Eingleisige Strecke (die haben es steuerungstechnisch in sich), Ausfahrt aus Daudieck nach Bossel nur dann, wenn eine (gegenläufige, sich aber nicht überschneidende) FS nicht aktiv ist, sonst stehen such demnächst zwei Züge dank FS zwar unfallfrei aber eben gleichwohl so gegenüber, dass nichts mehr geht :(. Da das öfter vorkommt, musste ich auch mal Timer umbenennen, was (wie das Umbenennen einer Variable) ja wieder einige Anpassungen nach sich zieht. Mit meinem Vorschlag würde ich wenigstens nicht Gefahr laufen, den auslösenden Timer unten zu vergessen. Und sag' jetzt nicht, das Stoppen könnte ich mir im Beispiel oben auch sparen, ich weiß - aber vielleicht hatte ich ihn an anderer Stelle ja aus Versehen mit "Automatischer Neustart" gestartet.

Du kannst gerne mal hier reinsehen:

Nebenbahn Wietmarschen - Grüner Jäger mit Trapeztafeln.mbp

Nachdem @Roter Brummer auf meine Anregung die Trapeztafel realisiert hat und nachdem er mich darauf hingewiesen hat, dass man möglichst am Hausbahnsteig einzufahren hat (ich hatte der Einfachheit halber immer das in Fahrtrichtung rechte Gleis genommen mit der Konsequenz, dass dort aussteigende Fahrgäste vom erst gerade ankommenden Gegenzug überfahren werden :() und ich überdies zwei Züge habe, die in Bossel nicht zwischen die beiden Weichen am Hausbahnsteig passen, ist die Steuerung immer komplexer geworden, wobei mein neuster Einfall von zwei Haltetafeln auf Gleis 1 von Bossel in Richtung Daudieck von @Roter Brummer noch nicht abgesegnet ist, d.h. ich weiß nicht, ob das zulässig wäre. Jedenfalls führt das dazu, dass sich zwei FS gegenüberstehen, sich aber nicht überschneiden. Also darf in Daudieck kein Zug ausfahren, solange einer in Bossel auf Gleis 1 an der zweiten Haltetafel steht, was die ausfahrende Fahrstraße aber nicht wissen kann, denn diese endet an der Trapeztafel, denn die Entscheidung, welches Gleis ich einfahrend nehme, kann ich (vorbildgerecht) nicht schon im Abfahrbahnhof sondern erst kurz vor dem Ankunftsbahnhof treffen.

So, um das jetzt sauber und übersichtlich hinzubekommen, wäre mein Feature-Vorschlag eine kleine Hilfe.

Beste Grüße

Phrontistes

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @EASY

die Programmierung und das mbp hatten noch einen Fehler. Bevor ich in Daudieck losfahre, muss auch noch noch abfragen, ob ein Fahrzeug in Bossel auf der 2. Haltetafel  (Endpunkt seiner Fahrstraße) steht, denn damit wird die FS in der ersten Bedingung ja aufgelöst:

Screenshot2023-07-12110955.jpg.49134c61bd9ef0fb419a1185f2cf4b0c.jpg

Beste Grüße

Phrontistes

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

der Timer steht bereits als Auslöser zur Verfügung. Da es sich bei einem Timer aber um ein zusammengesetztes Objekt handelt (aus historischen Gründen), besteht ein Timer eigentlich aus zwei Auslösern, nämlich dem Timernamen und dem dazugehörigen Ereignismodul. Du musst daher die Option "Timer (Erweitert)" wählen.

Timer.thumb.jpg.91cbf2917e439f1fc3f99f93f53d8817.jpg

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Phrontistes,

wenn der Auslöser eh ein ganz konkreter Timer ist, gewinnst du doch mit der generischen Angabe "Ausöser" nichts.
Es macht keinen Unterschied, wenn du den Timer ganz konkret angibst.

"Auslöser" ist dann als Adressat sinnvoll, wenn es eine Gruppe möglicher Auslöser gibt und du in jedem Fall denjenigen aus der Gruppe ansprechen willst, der der akute Auslöser war. Wenn beispielsweise viele Autos über denselben Kontakt fahren können und du dasjenige Auto anhalten willst, welches akut über den Kontakt fuhr.

Viele Grüße
Götz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @EASY,

Du kannst gerne auch AE2F6792-B250-44C4-8697-F506F42E6197 (Entwurf) anschauen Ich bin aber nicht ganz sicher, ob bei meinen Versuchsfahren jede denkbare Situation schon eingetreten ist und ich in den 20 Fahrstraßen und einiges an EV nicht doch noch ein Logikfehler drin habe.

Beste Grüße

Phrontistes

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 1 Minute schrieb Neo:

der Timer steht bereits als Auslöser zur Verfügung

Bestens! Man muss es nur wissen. "Timer erweitert" und "Ereignismodul" als Auslöser hatte ich gesehen wusste damit aber nichts anzufangen und habe nicht weiter geforscht :$.

Beste Grüße

Phrontistes

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Neo,

Darf ich nochmals nachfassen und das Thema erweitern? Es geht letztlich um ein allgemeineres Problem in der Programmierphase.

vor 4 Stunden schrieb Phrontistes:

Programmierphase ... Timer umbenennen ... Umbenennen einer Variable ... einige Anpassungen nach sich zieht.

Optimal wäre für (Timer-)Variabeln ein globales Search & Replace über den gesamten Code. Das würde dann auch die (Timer-)Variable auf die zu reagieren ist mit ändern und alles wäre funktional wie vorher.

Beste Grüße

Phrontistes

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