Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Simulation eines Puffers

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:  Simulation eines Puffers (2284 mal gelesen)
picoi
Mitglied



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

Beiträge: 47
Registriert: 06.11.2009

Plant Simulation Version 8.1.3

erstellt am: 16. Nov. 2009 14:46    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


Puffer.gif

 
Ich möchte einen Puffer simulieren, auf dem verschiedene Materialien abgestellt und dann je nachdem, welcher Staplerfahrer vorbeikommt, ausgelagert werden. D.h. ich habe z.B. eine Gitterbox von Material A, eine von Material B und eine von Material C im Puffer. Alle 3 Materialien haben unterschiedliche Ziele hinterlegt. Dann habe ich 3 verschiedene Stapler, die an diesem Puffer vorbeikommen.
Stapler1 kann nur Material A mitnehmen. Stapler 2 nur B und Stapler 3 nur C.
Nun kommt z.B. Stapler 1 vorbei am Puffer und soll prüfen, ob für ihn Material im Puffer vorhanden ist. Wenn ja, soll er es auslagern und mitnehmen.

Wie kann ich am besten den Puffer simulieren? Ich habe es schonmal mit einem Platzpuffer probiert. Nur ist dort das Problem, dass dieser nach FIFO abläuft. Ich möchte aber auf alle Materialien zugreifen können.
Dann ist doch das Lager besser, oder?
Das habe ich nun ausprobiert. Nur wird das Material (BE) nicht auf meinen Stapler umgelagert, wenn ich folgende Methode an die Ausgangssteuerung meines Weges am Puffer übergebe:

@.pausieren(60);
Puffer.BE.umlagern(@);

Das Fahrzeug fährt einfach weiter. Zum Verständnis habe ich mein Netzwerk mal als jpg angehangen. Was muss ich machen, damit überhaupt erstmal Material aus dem Puffer auf mein Fahrzeug umgelagert wird? Hab schon den ganzen Tag versucht, eine Lösung zu finden. Geht einfach nicht.

Doch selbst die obige Methode sorgt noch nicht dafür, dass der Puffer auf zum Stapler passendes Material durchsucht werden kann.
Wie könnte ich den Puffer nach Material mit einer bestimmten Eigenschaft durchsuchen?

Würd mich sehr über n paar Gedanken/Vorschläge/Quelltextschnipsel freuen.


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

planty
Mitglied
Dipl.-Ing.


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

Beiträge: 139
Registriert: 18.09.2006

erstellt am: 16. Nov. 2009 15:48    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 Nur für picoi 10 Unities + Antwort hilfreich

Moin,

auf das pausierte Objekt kannst Du nicht umlagern.

um solche Fehler zu vermeiden eignen sich Konstrukte wie:

Code:

if not Puffer.BE.umlagern(@) then
  -- assert move failed
  debug;
end;

So stellt man sicher, dass wenn per Definition ein Umlagern möglich sein soll, es auch ist (bzw.... man merkt wenn es nicht funktioniert).

Um zu wissen welche Teile im Puffer sind nimmst Du Dir pro Teileart eine Warteschlange oder besser Du baust Dir eine geschachtelte Tabelle, die Du in der Eingangssteuerung des Puffers befüllst.
Wenn Du das Fahrzeug belädst, entnimmst Du den das BE aus der Warteschlange.
So sparst Du Dir das Durchsuchen des Puffers und über Zeilen/Spaltenindex ist der Zugriff auch ziemlich fix.

Gruß
P.

------------------
Two hours of trial and error can save ten minutes of manual reading!

[Diese Nachricht wurde von planty am 16. Nov. 2009 editiert.]

[Diese Nachricht wurde von planty am 16. Nov. 2009 editiert.]

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

picoi
Mitglied



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

Beiträge: 47
Registriert: 06.11.2009

Plant Simulation Version 8.1.3

erstellt am: 16. Nov. 2009 16:02    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

Aha... danke für den Tipp.

Aber wieso kann ich auf meinen pausierenden Stapler nicht umlagern? Beim Platzpuffer hatte ich genau den gleichen Quelltext und da hat es ohne Fehler funktioniert.

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

planty
Mitglied
Dipl.-Ing.


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

Beiträge: 139
Registriert: 18.09.2006

erstellt am: 16. Nov. 2009 17:44    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 Nur für picoi 10 Unities + Antwort hilfreich


platzpufferUmlagern.JPG

 
Vielleicht hast Du nur nicht gemerkt, dass es nicht funktioniert hat (deshalb das 'debug;').
Screenshot anbei, dass es auch mit dem Platzpuffer nicht funktioniert.

wenn Du die Zeilen vertauscht, erst umlagern, dann pausieren, funktioniert es.
Gruß
P.

------------------
Two hours of trial and error can save ten minutes of manual reading!

[Diese Nachricht wurde von planty am 16. Nov. 2009 editiert.]

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

picoi
Mitglied



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

Beiträge: 47
Registriert: 06.11.2009

Plant Simulation Version 8.1.3

erstellt am: 19. Jan. 2010 14:46    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

Hi

nochmal zu dem Thema: wie kann ich denn sicherstellen, dass ein bestimmtes BE aus dem Lager ausgelagert wird (an mein Fahrzeug)? In einer Inventarliste habe ich vermerkt, welche BEs im Lager liegen. Ihre Position weiß ich leider nicht, da ich die BEs zufällig einlager und mich deren genaue Position eigentlich auch nicht interessiert. Nur zum Auslagern muss ich ja irgendwie wissen, von wo ich das BE auslager oder geht das auch anders?

Gruß
picoi

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

picoi
Mitglied



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

Beiträge: 47
Registriert: 06.11.2009

Plant Simulation Version 8.1.3

erstellt am: 19. Jan. 2010 15:54    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

Ok.. Lösung gefunden.

Ich sag einfach:

Code:

is
  ladeeinheit_instanz : object;
do
  ladeeinheit_instanz := TAB_Transportauftraege["LADEEINHEIT_INSTANZ",1]; --muss mir die Info aus ner Tabelle holen.
  ladeeinheit_instanz.umlagern(BeladeStation);
end;

D.h. dabei muss ich gar nicht direkt auf das Lager zugreifen. Plant Simulation erkennt selbst automatisch, dass das betreffende BE im Lager ist und entfernt es von dort, wenn ich es umlager.

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