Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Dienst wandert mit BE

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:  Dienst wandert mit BE (1386 mal gelesen)
christoph.essen
Mitglied
Ing.


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

Beiträge: 15
Registriert: 25.01.2006

erstellt am: 25. Jan. 2006 13:32    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


Test.spp.jpg

 
Hallo!

Mein Problem ist sehr ähnlich zu dem Problem "Werker mit BE mitlaufen lassen". Bei mir würde ich aus Performance Gründen aber gerne auf die Werker (+Animation) verzichten. Daher arbeite ich nur mit einem Exporter.

Wer kann mir hier eine einfache Lösunge verraten, wie ich meinen Dienst temporär mit meinem BE mitlaufen lassen kann?

Herzlichen Dank!

Christoph

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

math4fun
Mitglied



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

Beiträge: 167
Registriert: 12.12.2005

erstellt am: 25. Jan. 2006 14:43    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 christoph.essen 10 Unities + Antwort hilfreich

Wenn man nur Exporter mit Kapazität 1 verwendet, so sollte die genannte Methode für Werker auch funktionieren: Man verwendet eine Importeranforderungssteuerung des Brokers mit

(ImporterObj: object; typ : integer)
is
  tab : table[object, string, integer];
do
  tab.create;
  tab.writeRow(1,1, ExporterObj, "SA", 1 );
  Broker.belegeMit( ImporterObj, typ, tab );
end;

Natürlich muss dass Exporterobjekt gezielt ausgewählt werden.

------------------
PM

www.math4fun.de

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

christoph.essen
Mitglied
Ing.


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

Beiträge: 15
Registriert: 25.01.2006

erstellt am: 26. Jan. 2006 09: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

Hallo,

vielen Dank für Deine Antwort. Leider ist mein Problem insgesamt etwas komplizierter. Mein Problem ist mit all diesen Methoden nur sehr schwer zu lösen.

Das einfaste wäre den WERKER für eine gewisse Zeit wirklich einfach an das BE zu BINDEN. Die Bewegungen/Stationen des BEs durchläuft der gebundene Werker dann einfach mit, bis die Verbindung wieder gelöst wird. Anscheinend geht das bei PROMODEL und WITNESS genauso (einfach).

Soviel ich weiß, gibt es bei eM-Plant so eine Funktion aber leider nicht.

Für weitere Tipps wäre ich trotzdem sehr dankbar.

Schön Grüße

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


Ex-Mitglied

erstellt am: 26. Jan. 2006 12:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat


montage06_7.5_8.jpg


montage06_7.5_8.spp.jpg

 
Hi,

was mit Werkern geht, funktioniert natürlich auch mit Exportern.

Habe die Exporter im ursprüglichen Modell (Netzwerk1)
(s. http://ww3.cad.de/foren/ubb/Forum262/HTML/000296.shtml#000024)

& in Deinem Testmodell (Netzwerk2) hierfür mal eingebaut (s. Anhang).

Vielleicht wäre es eine Überlegung wert, wenn die Werker mit dem Bauteil mitwandern sollten, die Werker durch Fahrzeuge  und die Be´s durch Förderhilfsmittel abzubilden.

Die Fahrzeuge können auf die Förderhilfsmittel geladen werden (Montagebaustein)und wandern dementsprechend mit dem Förderhilfsmittel, bis zur Entladung (Demontagebaustein).

Gruss

------------------
SimulatoR    

[Diese Nachricht wurde von Simulator am 26. Jan. 2006 editiert.]

math4fun
Mitglied



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

Beiträge: 167
Registriert: 12.12.2005

erstellt am: 26. Jan. 2006 13:12    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 christoph.essen 10 Unities + Antwort hilfreich


Test.spp.jpg

 
Man geht auf die Info-Seite von eM-Plant und öffnet die Micromodelle.
Katagorie = Rssourcen, Thema = werker. Da wird die Idee von BelegeMit (=engage) gezeigt.

Die Importeranfordrungssteuerung sieht für Dein Beispiel so aus:

(ImporterObj: object; typ : integer)
is
tab : table[object, string, integer];t:table;i:integer;found:boolean;ExporterObj bject;
do
tab.create;t.create;
broker.getAdministeredExporters(t); -- gets all workers registered by the broker


if ImporterObj.name="A" then
repeat
ExporterObj := t[1,i];
if ExporterObj.exp.freeCapacity > 0
then

tab.writeRow(1,1, ExporterObj, "SA", 1 );
Broker.belegeMit( ImporterObj, typ, tab );
found := true;
@.meinArbeiter := ExporterObj;
end; 
i := i+1;
until found or i > t.ydim;

else
ExporterObj := @.meinArbeiter;
if ExporterObj/=void and ExporterObj.exp.freeCapacity>0 then
tab.writeRow(1,1, ExporterObj, "SA", 1 );
Broker.belegeMit( ImporterObj, typ, tab );
end;
end;
end;

Die Einzelstationen mit Importern heißen A und B.
Vielleicht hat es auch mit dem Anhang geklappt.

------------------
PM

www.math4fun.de

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

christoph.essen
Mitglied
Ing.


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

Beiträge: 15
Registriert: 25.01.2006

erstellt am: 26. Jan. 2006 14:03    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


Werker_folgt_BE.spp.jpg

 
Hallo,

Euch beiden vielen Dank für die Hilfe. Bei mir gibt es eine Besonderheit. Ein BE sollte nicht auf einer Arbeitssttation auf einen Werker warten, sondern nur in einem Puffer.

Daher habe ich mich nun für folgende (sehr viel einfachere) Lösung entschieden (siehe Modell).

Bevor die BEs überhaupt in die Linie eingelastet werden dürfen, muss ein Werker zum Werkerpool zurück gekehrt, also frei sein. Erst dann laste ich das BE in die Linie ein. Somit fasse ich keine der Importer oder Broker funktionen an (Fehlerquelle ist da doch recht hoch).

Da der Werkerpool aber leider (unverständlicher Weise) kein Attribut besitzt, dass mir sagt wieviele freie Werker sich gerade auf im Werkpool befinden, muss hier jedesmal die Methode "Count_Free_Workers" ausgelöst werden.

Was man auf den ersten Blick nicht sieht: Auch die Werker lösen bei "Freigabe" diese Methode aus.

Was haltet Ihr von dieser abgespeckten einfacheren Methode?

Schöne Grüße und Euch beiden nochmals Danke schön.

P.S. Ihr antwortet übrigens schneller als die Herren bei eM-Plant :-)

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


Ex-Mitglied

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

Hi,

Zu:
Da der Werkerpool aber leider (unverständlicher Weise) kein Attribut besitzt, dass mir sagt wieviele freie Werker sich gerade auf im Werkpool befinden, muss hier jedesmal die Methode "Count_Free_Workers" ausgelöst werden.

Versuchs einfach mal mit "werkerpool.anzahlbes" , denn der Werkerpool ist ja ein Baustein mit einem Inhalt! (s.Hilfe)

Deine vereinfachte Lösung scheint nur mit einem Werker zu funktionieren, oder ?
wenn mehrere Werker im Pool sind, werden die Werker kreuz und quer
zugeordnet und werden nicht mit einem Be "verheiratet".

Die Frage die sich mir nun noch stellt:
was soll denn das Ergebnis der Simulation eigentlich sein ?


Gruss

------------------
SimulatoR  

[Diese Nachricht wurde von Simulator am 27. Jan. 2006 editiert.]

christoph.essen
Mitglied
Ing.


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

Beiträge: 15
Registriert: 25.01.2006

erstellt am: 26. Jan. 2006 15: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,

zu "werkerpool.anzahlbes":

Super, vielen Dank! Aber warum finde ich dieses Attribut nicht und "Attribute und Methoden anzeigen"? Wie finde ich denn solche Methoden oder Attribute, die weder in der Hilfe (habe unter Werkerpool dieses Attribut nicht finden können), noch im "Attribute&Methoden" Fenster auftauchen?

zu "...Werker werden kreuz und quer zugeordnet..."

Das stimmt, die BEs sind leider nicht wirklich "verheiratet". Das wäre bestimmt besser. Doch das ist in meinem Anwendungsfall nicht wichtig. Wichtig ist nur, dass die Folge-Prozesse ohne Verzögerung bearbeitet werden und da ich keine Wegezeiten habe, stimmt die Statistik (über einen längeren Zeitraum zumindest) auch wieder.

Gruß

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


Ex-Mitglied

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

Hi,

zu "werkerpool.anzahlbes"

Die allgemeinen Attribute/Methoden der Bausteine (z.B. "Name") werden zentral unter "Eigenschaften der Bausteine" beschrieben.

Hier findest Du unter: "Methoden für den Inhalt der Materialflussbausteine" auch die Methode "objekt.anzahlbes"

Unter dem "Werkerpool"-Verzeichnis stehen - wie auch bei den anderen Klassenobjekten- die eher objektspezifischen Methoden/Attribute.

zu
... die BEs sind leider nicht wirklich "verheiratet". Das wäre bestimmt besser.

Nun die ursprüngliche Fragestellung hat sich damit deutlich geändert.
Brauchst Du nun überhaupt noch die Werker.

Du könntest doch einfach die Differenz zwischen ein- und ausgeschleuster Be´s bestimmen und hierüber die maximale Anzahl gleichzeitig bearbeiteter Be´s steuern.

Die statistischen Daten erhälst Du ja auch über die Einzelstationen.

Gruss

------------------
SimulatoR 

christoph.essen
Mitglied
Ing.


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

Beiträge: 15
Registriert: 25.01.2006

erstellt am: 26. Jan. 2006 16:32    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

kurzer Nachtrag!

Wie kann ich abfragen, ob sich meiner Werker im Werkerpool gerade "off-Shift" oder "On-Shift" befindet?

Bei meinem Modell dürfen nämlich nur dann BEs eingelastet werden, wenn im Werkerpool "freie" Werker, die gerade On-Shift sind vorhanden sind. Werker im Werkpool, die gerade "Off-Shift" sind darf ich beim zählen also nicht mitzählen.

Gruß

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


Ex-Mitglied

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

Hi,

über werker.exp.pause (=true/false).

Gruss

------------------
SimulatoR 

christoph.essen
Mitglied
Ing.


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

Beiträge: 15
Registriert: 25.01.2006

erstellt am: 27. Jan. 2006 13: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

Hallo, und vielen vielen Dank!

Auf eine Antwort folgt leider schon die nächste Frage, die in der Dokumentation auch  nicht ausreichend beschrieben wird.

1.
Für viele Objekte gibt es das Ereignis "Ungeplante Zeit", d.h ich kann eine Methode auslösen, wenn das Objekt in "Off-Shift" geht. Bei Werkern gibt es das leider nicht (oder ich finde es nicht). Ich bräuchte aber eine Methode, in der ich nach einer bestimmten Regel das "off-Shift" gehen steuere. Z.B. "Wenn Restbearbeitungszeit < 1h, weiterarbeiten, und erst danach 'Off-Shift' gehen" (oder ähnlich).


2.
Nochmals die Frage zu diesen "geheimen"Attributen oder Methoden. Wo kann ich die finden? Woher weißt Du das eigentlich?

Zum Schluss noch wirklich herzlichen Dank für die Hilfe!!!

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


Ex-Mitglied

erstellt am: 27. Jan. 2006 15:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

zu 1
warum nimmst Du nicht die vom Werkerpool - also z.B. "werkerpool.unplannedctrl:=ref(methode);"
Im Werkerpool trägst Du doch auch den Schichtkalender für die Werker ein, oder ?

zu 2
wenn Du die Begriffe "ungeplant"  oder "ungeplante Zeit" in der Hilfe-Suchfunktion einträgst werden die entsprechenden Themen angezeigt.

Gruss


------------------
SimulatoR  

[Diese Nachricht wurde von Simulator am 27. Jan. 2006 editiert.]

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