Jump to content

Absetzen von Ladegut auf verschiedenen Wagen


aloys63

Empfohlene Beiträge

Hallo folgendes Kran hat Ladegut aufgenommen kann aber noch nicht absetzen weil wagen noch nicht auf halte Geis steht setzt es auch nicht ab wen der wagen dann auf Gleis steht kann ich das ändern das das Ladegut abgesetzt wird wen der Wagen auf halte gleis steht

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Aloys,

zuerst war mir nicht klar, welches Problem Du eigentlich beschreiben wolltest. Erst de Blick auf die Ereignisverwaltung Deiner Beispiel-Anlage lässt mich vermuten, dass es Dir darum geht, Fahrzeuge eines Zuges, der sich über ein bestimmtes Gleisstück bewegt, zu erkennen, auch wenn es sich nicht um die "aktive" Lokomotive des Zuges handelt (also ein Szenario, wie ich es bei der Anlage "Ablaufberg" realisiert habe).

Deine Ereignisverwaltung sieht hierbei wie folgt aus:

Originale EV.PNG

Das erste Ereignis ("A") soll ausglöst werden, wenn ein (beliebiger) Zug das Gleis "Halt" betritt. Als Zusatzbedingungen hast Du definiert, dass für beliebige Fahrzeuge das "sich befinden" auf Gleis "Halt" NICHT gelten soll, und zusätzlich die Eintrittsgeschwindigkeit positiv sein soll. Die erste Bedingung zeigt auch nochmals das nächste Bild.

Falsche Negation.png

Diese Bedingung kann aber niemals erfüllt sein: Wenn ein Zug das Gleis betritt, steht immer ein Fahrzeug auf diesem Gleis - die Bedingung ist also immer NICHT erfüllt. Damit kann der "Zähler"-Countdown niemals gestartet werden. Du darfst also das Häkchen für "Negieren" für diese Bedingung nicht setzen, wenn die Aktionen dieses Ereignisses ausgeführt werden sollen.

Im zweiten Ereignis ("Neues Ereignis", Countdown-Ereignis) soll die Variable "Nummer" auf "100" gesetzt werden, wenn sie den Wert "0" enthält. Da die Variable "Nummer" aber nie initialisiert wurde, enthält sie als Wert die leere Zeichenkette (""). Deshalb trifft die Bedingung aus dieser Ereignis-Definition nie zu, und der Wert von "Nummer" wird nie auf "100" gesetzt (behält die "leere Zeichenkette" bei).

In der dritten Ereignis-Definition (ebenfalls mit der Bezeichnung "Neues Ereignis") wird geprüft, ob ein Fahrzeug mit der Bezeichnung, die durch den Wert der Variable "Nummer" dargestellt wird, sich auf dem Gleis "Halt" befindet. Dies würde im vorliegenden Fall tatsächlich nur dann zutreffen, wenn das betroffene Fahrzeug keine Bezeichnung hätte (""). Da die beiden Fahrzeuge der Test-Anlage aber die Bezeichnungen "12" und "15" besitzen, können sie nicht erkannt werden.

Was muss also "korrigiert" werden, damit nach dem Betreten des Gleises "Halt" durch den Zug das Fahrzeug, das sich nun auf dem Gleis befindet, erkannt wird (siehe nachfolgendes Bild mit den korrigierten Ereignis-Definitionen):

Korrigierte EV.PNG

  1. Die Bedingung "(beliebiges) Fahrzeug steht auf Gleis Halt" in der ersten Ereignisdefinition darf nicht negiert werden!
    Wenn es sich bei den zu erkennenden Fahrzeugen wie im Anlagenbeispiel ausschließlich um Lokomotiven handelt, genügt es, in der ersten Ereignisdefinition deren Namen über die Objekt-Variable "_Trigger1._Name" festzustellen. Es würde dann genügen, in dieser Ereignis-Definition eine Aktion entsprechend des blau unterlegten Teils im obigen Bild zu implementieren. Die gelb unterlegten Teile (insbesondere die beiden nachfolgenden Ereignis-Definitionen) wären dann nicht mehr erforderlich. Ist das Fahrzeug, welches das Ereignis "Zug betritt Gleis" auslöst, dagegen nicht die "Lok des Zuges", sondern ein geschobener Wagen, wird der hier gelb unterlegte Algorithmus benötigt.
  2. Damit die im zweiten Ereignis definierte Zählerschleife auch wirklich "funktioniert", muss die Variable "Nummer" initialisiert werden (hier durch die rot umrahmte Aktion "Variable setzen" (Nummer = 100) in der ersten Ereignis-Definition), und
  3. die Nummer muss in der Zählerschleife der zweiten Ereignisdefinition herunter-gezählt werden (Variable "Nummer" auf Wert "-1" setzen als Alternativ-Aktion, wenn die Bedingung "Nummer = 0" nicht erfüllt ist - ebenfalls rot eingerahmt).

Nur wenn die Ereignisdefinition diese 3 (rot eingerahmten) Korrekturen aufweist, kann die dritte Ereignisdefinition wirksam werden, und nach dem Erreichen des "Treffers" (Bezeichnung des Wagens auf Gleis "Halt" stimmt mit dem aktuellen Wert der Variable "Nummer" überein) ist das Fahrzeug erkannt, und sein Name kann in dem Textfeld ausgegeben werden.

Im beiliegenden Anlagenbeispiel mit korrigierter Ereignisverwaltung hab ich sowohl die blaue als auch die gelbe Variante berücksichtigt, wobei der Lok-Name bei der "blauen" Aktion in das bisher nicht benutzte Textfeld ausgegeben wird. Da die blaue Aktion sofort wirksam wird, der "Treffer" in der dritten Ereignis-Definition aber erst dann eintritt, wenn die Variable "Nummer" hinreichend lange herunter-gezählt wurde, wird das zweite Textfeld erst zeitverzögert korrekt versorgt.

Test_korr.mbp

Nun hoffe ich, dass ich Dir das Ganze verständlich herüber bringen konnte, und Du darauf aufsetzend Deine Ereignisveraltung weiterentwickeln kannst.

Viele Grüße
BahnLand

Link zu diesem Kommentar
Auf anderen Seiten teilen

Am ‎23‎.‎07‎.‎2016 um 21:04 schrieb aloys63:

Hallo folgendes Kran hat Ladegut aufgenommen kann aber noch nicht absetzen weil wagen noch nicht auf halte Geis steht setzt es auch nicht ab wen der wagen dann auf Gleis steht kann ich das ändern das das Ladegut abgesetzt wird wen der Wagen auf halte gleis steht

Kannst du mir auch dabei helfen der Kran soll die Beladung weiter machen wen wagen X auf dem Gleis Y steht schau mahl in der ev

Kran Test.mbp

Bearbeitet von aloys63
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Aloys,

mit den Kränen und der zugehörigen Ereignisverwaltung habe ich mich noch nicht beschäftigt und müsste mich daher hier selbst erst einarbeiten. Deshalb möchte ich Dich bitten, Dich hier an jene zu wenden, die hiermit schon Erfahrung gesammelt haben.

Viele Grüße
BahnLand

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Danke an alle  quackster  Stefan BahnLand bin einen großen schritt weiter durch testen (meine Frau:( >:() habe ich eine Lösung um Einträge in der EV zu sparen

wie leicht kann das jemand für verladen von Container brauchen Fahrzeuge brauchen nicht neu  benennen Kran Test 2.mbp schaut euch das bitte an und sagt mir eure Meinung  Kippschalter betätigen  ich bin stolz auf mich :D

Gruß aloys63

Bearbeitet von aloys63
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Aloys,

der erste Fahrversuch ging bei mir "daneben":
Der blaue Container "fuhr" parallel zur Bewegung des ersten Wagens "davon". Damit kam der Kran "durcheinander" und hat sich anstelle des (nicht mehr "vorhandenen" blauen Containers den zweiten Wagen "geschnappt".

Wenn man vor dem Umlegen des Schalters die Verknüpfung des blauen Containers mit dem (ersten) Wagen entfernt. und dann den Schalter betätigt, klappt alles wunderbar.

Nur dies als Hinweis für diejenigen, die mit dem zuerst beschriebenen Verhalten nichts anzufangen wissen.

Ansonsten: Feine Arbeit! (y)

Jetzt fehlt nur noch das "Abladen". :)

Viele Grüße
BahnLand

Link zu diesem Kommentar
Auf anderen Seiten teilen

hallo Aloys,

ja, prima - du/ihr könnt schon ein wenig stolz sein. der umgang mit der ev wird immer besser. und die ideen (zb aufbau eines lagers) sind sind super. (y)

also weiter so.

vor 3 Stunden schrieb BahnLand:

Der blaue Container "fuhr" parallel zur Bewegung des ersten Wagens "davon".

wenn die ladegüter von hand angeordnet werden, immer daran denken, die evtl vorhandene verknüpfungen zu den abstellorten löschen.

vg quackster

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