Jump to content

Frage zu Benutzerdefiniertem Ereignis (nachfolgend BdE genannt))


Ralfbold2

Empfohlene Beiträge

Hallo zusammen

Hab eine Einmündung gebastelt ohne Ampeln die mit diversen Gleiskontakten und mehreren BdE gesteuert wird.

Es laufen für diese Einmündung bis zu 6 BdE´s gleichzeitig (incl. der 3 Depots). Meine Frage:

Die BdE´s laufen in Schleife und das fast ständig mit 0,1 sec. Intervall. Ist dies sehr Ressourcen fressend?

Anlage ist angehängt

Gruß Ralf

Einmündung Final 15,11.mbp

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 20 Stunden schrieb Ralfbold2:

Ist dies sehr Ressourcen fressend?

Guten Morgen, Ralf

nachdem ich mir dein BdE West angeschaut habe, möchte ich dir eine schonendere Methode vorschlagen:

Anstatt im Abstand von einer Zehntelsekunde zu untersuchen, ob die Variable einen bestimmten Wert hat, kannst du auf das Ereignis "Objektvariable wird gesetzt" reagieren. Dann musst du nur einmalig bei jeder Änderung des Wertes schauen, ob dieser neue Wert = 0 ist oder nicht.

275640924_Variablewirdgesetzt.jpg.913cd4be45031f3b366dcad96f399206.jpg

Viele Grüße
Götz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Götz, 

danke für die Antwort.

Die Lösung hab ich probiert und dort geht das auch recht einfach.

Schwieriger ist es mit BdE Nord da es da zwei mögliche Ziele gibt die zwei unterschiedliche Abfragen benötigen.

Bei BdE 3 müssen zähler 5 und zähler 1+2 auf null stehen, bei BdE 4 nur zähler 5. Also muss auch geprüft werden welche Richtung das wartende Fahrzeug fahren wird und ob überhaupt ein Fahrzeug da steht.

Das wurde sehr denkintensiv, da kam mir der Gedanke vorher mal zu fragen wie wichtig es ist dies umzustellen betreffend der Ressourcen. Man könnte ja auch bei entsprechender Anpassung die Abfrage auf 0,2 oder 0,3 stellen.

Aber wenn diese Abfragen wenig Ressourcen verbrauchen ist es da nötig das zu ändern?

Darauf suche ich eine Antwort

Gruß Ralf

Link zu diesem Kommentar
Auf anderen Seiten teilen

Und nochmal hallo

Bei deiner obigen Lösung fehlt noch die Abfrage ob dort überhaupt ein Fahrzeug steht, sonst passiert ein Fehler wenn ein Fahrzeug starten soll aber keins in der Variablen abgespeichert ist. Aber das ist ja einfach zu erstellen mit einer Bedingung die prüft ob die Variable "fahrzeug" existiert.

Gruß Ralf

Link zu diesem Kommentar
Auf anderen Seiten teilen

Und nochmal Hallo

Und es muss aus nord etwas eingerichtet sein daß das Fahrzeug, welches ja wegen der Stoppstraße anhalten muss, auch wieder losfährt wenn von west und ost kein Fahrzeug kommt welches die entsprechenden Variablen setzt und damit zum Auslöser wird.

Werd ich mich mit beschäftigen und die Lösung bereitstellen wenn bis dahin noch keine Lösung da ist.

Gruß Ralf

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Ralf,

vor 1 Stunde schrieb Ralfbold2:

Wenn ich dich recht verstehe deutest du mir an daß es besser wäre ohne Schleifen zu arbeiten zumal ich ja mehrere dieser Einmündungen haben möchte.

So war das gemeint, stimmt.

Unabhängig davon, wie viel Last man konkret wo erzeugt, ist es immer klug keine unnötige Last zu erzeugen.
Den Rechner permanent zu fragen "sind wir bald da?" scheint mir ein unkluger Ansatz.

Jede Zustandsänderung ist ein Ereignis. Darauf kann ich reagieren und dann verschiedene Aspekte prüfen.

Gruß
Götz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo zusammen, 

hab jetzt die Einmündung hinbekommen ohne Schleifen, nach Versuchen deutlich weniger Performance nötig. Ist angehängt.

Mit einer Ampel geht es deutlich einfacher. Nur so eine Einmündung mit Ampel gefällt mir optisch nicht. Habe versucht solch eine Einmündung zu bauen wo (in meinem Fall) die Vorfahrtsstraße aus beiden Richtungen Abbiegespuren haben. Die Einmündende Straße braucht das nicht. Als Kreuzung gibt es das ( Landstraße/Kreuzung 3+2), aber als Einmündung nicht. Gebastelt hab ich es nicht hinbekommen. Kann mir jemand helfen?

Gruß Ralf

Einmündung Final 17,11 ohne Schleife.mbp

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