Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Fahrzeug startet nicht vor 6:00 Uhr

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Fahrzeug startet nicht vor 6:00 Uhr (538 mal gelesen)
pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 16. Jan. 2008 08:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

ich hab ein Problem das ich mir nicht erklären kann. Ein Fahrzeug soll eine bestimmte Anzahl von Bes aufnehmen und erst ab einem bestimmten Zeitpunkt losfahren, die Daten kommen aus einer Excel Datei.
Funktioniert auch alles ausser das Fahrzeug soll vor 6:00 Uhr losfahren.

Hier mein Quellcode:

Code:

is
Gb,i:integer;
StartZeit:time;
do

StartZeit:=Str_to_time(Fahrplan[1,1]);
Print StartZeit;
Gb:=Fahrplan[2,1];

If @.Status="Leer" then
For i:=1 to Gb loop
waituntil Lager.belegt prio 1;
Lager.Inhalt.umlagern(@)
next;
@.Status:="Beladen";
@.dreheBild;
@.dreheBild;
Waituntil Ereignisverwalter.Zeit = StartZeit  prio 1;
  @.rueckwaerts := true;
end;

If @.Status="Beladen" then
for i:=1 to Gb loop
@.inhalt.umlagern(KundeLager);
next;
@.Status:="Leer";
@.dreheBild;
@.dreheBild;
Fahrplan.EntferneZeile(1);
@.rueckwaerts:=false;
end;

end;



Hier der Inhalt der ExcelDatei:
4:0:0.0 | 10
6:0:0.0 | 10
8:0:0.0 | 15
10:0:0.0 | 5
12:0:0.0 | 10
14:0:0.0 | 15

Vllt. sieht ja jemand das Problem. Der Ereignisverwalter ist auf die Startzeit 0:0:0.0 eingestellt.

MFG
Patrick

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 16. Jan. 2008 09:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

wo sind denn "@.anhalten" bzw. "@.fahren"  in Deiner Methode ?

------------------
Der Simulator
WSL, Bruxelles

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 16. Jan. 2008 10:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich setz es durch @.rückwaerts:=true/false in bewegung. Es fährt ja auch wunderbar hin und her, nur leider nicht vor 6. Aber anhalten und fahren ist natürlich eleganter. Da es wirklich nur von einem Ende zum anderen fährt reicht das ja im Moment so.

[Diese Nachricht wurde von pom am 16. Jan. 2008 editiert.]

[Diese Nachricht wurde von pom am 16. Jan. 2008 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 16. Jan. 2008 11:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Code:
Waituntil Ereignisverwalter.Zeit = StartZeit  prio 1;

Hierzu muss es ein Simulationsereignis geben mit einem Zeitstempel=Startzeit !

Gibt es so ein Ereignis während Deines Simulationslaufes ?

Versuchs mal mit >=


------------------
Der Simulator
WSL, Bruxelles

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 16. Jan. 2008 11:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

>= funktioniert

Keine Ahnung warum = nicht geht aber passt

Danke!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 16. Jan. 2008 12:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Da bin ich zu voreilig gewesen.

Hab jetzt kontrolliert wann die BEs bzw. das Fahrzeug ankommt. Es kommt um 6:0:0.0 Uhr an, obwohl es um 4:0:0.0 losfahren sollte und ein Fahrtweg von 0 sec hat....

Mir kommt es vor als wenn die Simulationszeit von 0 Uhr bis 2 Uhr normal läuft un dann einen sprung auf 6 Uhr macht.

Was könnte der Grund dafür sein? Die eM-Plant Version ist 7.5.5

MFG
Patrick

[Diese Nachricht wurde von pom am 16. Jan. 2008 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 16. Jan. 2008 14:53    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Du kennst das Prinzip der ereignisorientierten bzw. diskreten Simulation, oder ?

Ereignisse werden in einer sog. Ereignisliste (s. auch Ereignisverwalter) chronologisch eingereiht und entsprechend abgearbeitet.

Das ist korrekt so und hat nichts mit der Version zu tun.

Wenn Du um Punkt 6:00h ein Fahrzeug starten willst, so solltest Du ein Ereignis fuer diesen Zeitpunkt generieren z.B. via "methaufr...."

------------------
Der Simulator
WSL, Bruxelles

[Diese Nachricht wurde von Simulator am 16. Jan. 2008 editiert.]

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 16. Jan. 2008 15:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Das es Zeitsprünge während des Simulationslaufes gibt ist mir bekannt.
Das erklärt aber nicht weshalb ein Ereignis übersprungen wird, auf welches eine bereits aufgerufene Methode wartet.

Das Problem war/ist das ein "Waituntil" Befehl nicht als Ereignis erkannt und deswegen übersprungen wird.

Dann versuch ich es auf einen anderen Weg.

Danke für die Hilfestellung
Patrick

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 16. Jan. 2008 16:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

 
Zitat:

Das erklärt aber nicht weshalb ein Ereignis übersprungen wird, auf welches eine bereits aufgerufene Methode wartet.

Doch das erklärt alles !!!!

Mit waituntil ereignisverwalter.zeit=6:00h  wartet das System auf die Erfüllung der Bedingung "Ereignisverwalter.zeit  = 6:00h" und reiht nicht ein Ereignis um 6:00h ein.
Wenn allerdings kein Ereignis für 6:00h eingereiht wurde, wird die waituntil-Bedingung nie erfüllt.

 

Zitat:

Das Problem war/ist das ein "Waituntil" Befehl nicht als Ereignis erkannt und deswegen übersprungen wird.


Dies ist auch kein Problem, da der waituntil-Befehl grundsätzlich keine Ereignisse einreiht - wieso auch?
das kannst mit methaufr s.Hilfe


------------------
Der Simulator
WSL, Bruxelles

[Diese Nachricht wurde von Simulator am 16. Jan. 2008 editiert.]

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 17. Jan. 2008 10:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Methode.JPG


FahrZeug.JPG

 
Ich hab alles mal umgeschrieben. Jetzt hab ich aber ein anderes Problem.
Die Methode und das Modell ist als Screenshot angehängt.

In der Console sieht man das Problem das ich jetzt habe.

Geplante Startzeit 4:00h Losgefahren um ca. 4:0h. i.O.
Geplante Startzeit 8:00h Losgefahren um 12:0h. ??

Was ist hab ich falsch gemacht?

MFG
Patrick

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 17. Jan. 2008 11:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

4h + 8h = 12h , oder ?

der Zeitwert in "methaufr" verzögert den Methodenaufruf, ist also ein relativer- und kein absoluter Wert (s. Hilfe)!!!! 

------------------
Der Simulator
WSL, Bruxelles

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 17. Jan. 2008 11:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Alles klar...
Hab ich nicht Aufmerksam genug gelesen.

Danke, jetzt klappt alles.

Grüße
Patrick

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz