Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  einzelstation Statistik: warten auf aufträge oder teile?

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:  einzelstation Statistik: warten auf aufträge oder teile? (2943 mal gelesen)
zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 08. Jul. 2013 16: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

Hallo,

Ich bekomme hier viele gute Tipps, erstmals vielen Dank! Ich habe mich sehr gefreut!

Jetzt habe ich eine Frage über die Statistik der Einzelstation.
Ich habe eine Station, die für Endmontage steht.
Davor steht ein MontagePuffer, die zu produzierte Produkte für jeden Tag werden hier erzeugt.
Vor diese MontagePuffer steht ein Teilepuffer. Hier stehen die Teile, die die Produkte benötigen.

Jeden Tag werden zuerst die Produkte mit richtige Menge bei MontagePuffer erzeugt, bevor die Produkte zu Endmontage übergehen, wird es bei TeilePuffer nach Stückliste für dieses Produkt überprüft, ob die benötigen Teile da sind. Falls ja, werden die Teile (mit richtige Stückzahl) gelöscht und dann wird das Produkt zu Endmontage transportiert. Falls nein, darf das Produkt nicht weiter transportieren. Diese Produkt wird gewartet, bis es genügende Teile bei TeilePuffer ankomme und dann vernichtet werden.

Jetzt habe ich die Frage:
In der Statistik Fenster sehe ich die Statistik: arbeitend und wartend.
Wenn das Produkt in MontagePuffer wegen fehlende Teile nicht transportieren kann, wird die EndMontage warten.
Aber wenn es keine Aufträge mehr gibt, wartet die Endmontage auch.
Wie kann ich die beide Statistik unterscheiden?

Und noch eine Frage über blockiert, wird es hier die Rüstzeiten erfasst?

Vielen Dank und viele Grüße,
Jing

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

fun2smile
Mitglied



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

Beiträge: 15
Registriert: 01.03.2012

erstellt am: 09. Jul. 2013 07:31    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 zhang1jing4 10 Unities + Antwort hilfreich

Du könntest in dem Moment, in dem es keine Aufträge mehr gibt, die Endmontage in einen anderen Zustand setzen, z. B. "Pause" oder "Angehalten".
Sobald dann wieder ein Auftrag in die Lieferliste kommt müsstest du den Status zurück auf "Arbeitend" setzen

Beim Zustand "Blockiert" werden keine Rüstzeiten erfasst. Beim Rüsten gilt der Zustand "Rüstend".

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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 09. Jul. 2013 10:45    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

Zitat:
Original erstellt von fun2smile:
Du könntest in dem Moment, in dem es keine Aufträge mehr gibt, die Endmontage in einen anderen Zustand setzen, z. B. "Pause" oder "Angehalten".
Sobald dann wieder ein Auftrag in die Lieferliste kommt müsstest du den Status zurück auf "Arbeitend" setzen

Beim Zustand "Blockiert" werden keine Rüstzeiten erfasst. Beim Rüsten gilt der Zustand "Rüstend".



Danke schön.
Aber wie kann ich unterscheiden, ob es noch Aufträge gibt?
Die Aufträge gehen erst zu Endmontage, nachdem die benötigte Teile gelöscht werden.
Ich wollte aber die Zeiten unterscheiden, ob es noch Teile fehlt, oder einfach keine Aufträge mehr gibt.
Vielen Dank!

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 09. Jul. 2013 13:07    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 zhang1jing4 10 Unities + Antwort hilfreich

Zunächst: es gibt nur eine Wartezeit (die Station ist leer...). Warum die Station leer ist, interessiert Plant Simulation nicht.

Sie können aber ohne große Probleme Ihre eigenen statistischen Daten erheben.

Sie müssten eine kleine Steuerung schreiben, die den Grund für das Warten ermittelt und die Zeit registriert.
Dafür bitet sich ein Beobachter an (Extras - Beobachter auswählen). Hier können Sie ein Attribut auswählen und eine Methode zuweisen, die jeweils aufgerufen wird, wenn der Wert des Attributes sich ändert.

Das Attribut, das Sie überwachen müssen heißt: ResWartend.
Die Methode wird aufgerufen, wenn das Warten beginnt und beendet ist (resWartend=true/false).

In Ihrer Montagestation können Sie dann eine Reihe benutzerdefinierte Attribute verwenden, um die Wartezeit weiter aufzusplitten z.B.

wartenStart (time)
statWartenAufAuftragDauer(time)
statwartenAufTeileDauer(time)


wartenAuf(string: "Teil","Auftrag")

Wenn das Warten beginnt, ermitten Sie die Ursache und speichern diese in wartenAuf und die aktuelle Zeit des Ereignisverwalters in wartenStart.
Am Ende des Wartens ermitteln Sie die Dauer des Wartens und zählen Sie diese je nach dem Wert von wartenAuf zu statWartenAufAuftragDauer oder statwartenAufTeileDauer hinzu.

In einer Init müssen Sie dann die Werte von statWartenAufAuftragDauer  und
statwartenAufTeileDauer zurück auf 0 setzen.

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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 09. Jul. 2013 14: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

Zitat:
Original erstellt von Bon Simul:
Zunächst: es gibt nur eine Wartezeit (die Station ist leer...). Warum die Station leer ist, interessiert Plant Simulation nicht.

Sie können aber ohne große Probleme Ihre eigenen statistischen Daten erheben.

Sie müssten eine kleine Steuerung schreiben, die den Grund für das Warten ermittelt und die Zeit registriert.
Dafür bitet sich ein Beobachter an (Extras - Beobachter auswählen). Hier können Sie ein Attribut auswählen und eine Methode zuweisen, die jeweils aufgerufen wird, wenn der Wert des Attributes sich ändert.

Das Attribut, das Sie überwachen müssen heißt: ResWartend.
Die Methode wird aufgerufen, wenn das Warten beginnt und beendet ist (resWartend=true/false).

In Ihrer Montagestation können Sie dann eine Reihe benutzerdefinierte Attribute verwenden, um die Wartezeit weiter aufzusplitten z.B.

wartenStart (time)
statWartenAufAuftragDauer(time)
statwartenAufTeileDauer(time)


wartenAuf(string: "Teil","Auftrag")

Wenn das Warten beginnt, ermitten Sie die Ursache und speichern diese in wartenAuf und die aktuelle Zeit des Ereignisverwalters in wartenStart.
Am Ende des Wartens ermitteln Sie die Dauer des Wartens und zählen Sie diese je nach dem Wert von wartenAuf zu statWartenAufAuftragDauer oder statwartenAufTeileDauer hinzu.

In einer Init müssen Sie dann die Werte von statWartenAufAuftragDauer  und
statwartenAufTeileDauer zurück auf 0 setzen.


Vielen Dank!
Aber ich habe eine alte Version von diese Software. Die Version 6.0.
Leider finde ich kein Beobachter.
Gibt es eine andere Lösung?

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 09. Jul. 2013 15:10    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 zhang1jing4 10 Unities + Antwort hilfreich

resWartend müsste es auch in der Version 6 geben und es sollte überwachbar sein.

Sie könnten eine Ausgangssteuerung (Heck) verwenden.
Sehen, ob etwas kommt --> Warten Grund setzen, Zeit speichern

dann waituntil ?.resWartend=false prio 1;
--> dann auswerten wie oben...


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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 09. Jul. 2013 15:13    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

Zitat:
Original erstellt von Bon Simul:
resWartend müsste es auch in der Version 6 geben und es sollte überwachbar sein.

Sie könnten eine Ausgangssteuerung (Heck) verwenden.
Sehen, ob etwas kommt --> Warten Grund setzen, Zeit speichern

dann waituntil ?.resWartend=false prio 1;
--> dann auswerten wie oben...



Ich habe es gerade gefunden.
Vielen Dank!
Ich probiere es gleich aus!
Liebe Grüße,
Jing

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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 09. Jul. 2013 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

danke schön!


[Diese Nachricht wurde von zhang1jing4 am 09. Jul. 2013 editiert.]

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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 10. Jul. 2013 13:38    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

Zitat:
Original erstellt von Bon Simul:
resWartend müsste es auch in der Version 6 geben und es sollte überwachbar sein.

Sie könnten eine Ausgangssteuerung (Heck) verwenden.
Sehen, ob etwas kommt --> Warten Grund setzen, Zeit speichern

dann waituntil ?.resWartend=false prio 1;
--> dann auswerten wie oben...


Da ich noch andere Methode bei Ausgang der Montagestation geschrieben habe, muss die Ausgangsteuerung Bug sein.
Wird es genauso funktionieren bei der Statistik?

Bei Grund Erkennung wollte ich so machen:
Für jede MontageStation gibt es eine dazugehörige Nivellierungstabelle, wo die Aufträge für diese Montagestation jeden Tag aufgelistet werden. Wenn ein Produkt produziert wird, wird den Anzahl für dieses Produkt um 1 reduziert.
Dann werde ich bei Grund Erkennung in diese Nivellierungstabelle durchgehen, falls alle Aufträge an diesen Tag 0 sind, dann wartet diese Montage auf Aufträge. Wenn es ein Produkt mit Anzahl größer als 0 gibt,dann wartet diese Montage auf Teile.

Wie soll ich es realisieren?
Vielen Dank!


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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 10. Jul. 2013 16:05    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 zhang1jing4 10 Unities + Antwort hilfreich

Das Problem mit der Ausgangssteuerung Bug ist, dass sie bei Stau zwei mal aufgerufen wird. Das in Kombination mit waituntil ergibt ein nicht zu beherrschendes Verhalten.
Alternativ könnten Sie eine Eingangssteuerung im Nachfolger der Montagestation einsetzen. Die wird garantiert nur einmal je Teil aufgerufen.

Die beste Lösung ware ein Update auf eine aktuelle Version...

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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 10. Jul. 2013 16: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

Zitat:
Original erstellt von Bon Simul:
Das Problem mit der Ausgangssteuerung Bug ist, dass sie bei Stau zwei mal aufgerufen wird. Das in Kombination mit waituntil ergibt ein nicht zu beherrschendes Verhalten.
Alternativ könnten Sie eine Eingangssteuerung im Nachfolger der Montagestation einsetzen. Die wird garantiert nur einmal je Teil aufgerufen.

Die beste Lösung ware ein Update auf eine aktuelle Version...


Leider bekomme ich keine aktuelle Version.
Die Firma möchte das Geld nicht ausgeben.
Eine Montagestation kann mehrere Produktvariante produzieren.
In meine Ausgangsmethode für eine Montagestation wird bei Ausgang eines BEs überprüft, ob es in Montagepuffer noch diese Produkt gibt. Falls ja, wird wieder das gleich Produkt in MontageStation umgelagert und montiert. Falls nein, wird das nächste Produkt umgelagert.
Hier dient dazu, dass an einem Tag ein Produktvariant am Stück montiert werden, damit wird Rüstzeit gespart.
In der Ausgang wird es auch identifiziert (benutzerdefinierte BE für jedes Produkt mit Kundensenke als attribut),in welche Kundensenke diese Produkt geht und danach umgelagert.

Soll ich vielleicht diese Methode wo andere schreiben?
Damit ich die Statistik bei Ausgang mit Heck schreiben kann.
Haben Sie vielleicht eine Idee?

Nochmal vielen Dank!
Sie haben mir viel geholfen!
Jing

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 10. Jul. 2013 17:14    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 zhang1jing4 10 Unities + Antwort hilfreich

Dann wäre es das Beste eine Methode zu schreiben und diese jeweils in die Eingangssteuerungen der Kundensenken zu hängen (wenn dazwischen sich kein weiterer Baustein befindet).

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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 10. Jul. 2013 17:26    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

Zitat:
Original erstellt von Bon Simul:
Dann wäre es das Beste eine Methode zu schreiben und diese jeweils in die Eingangssteuerungen der Kundensenken zu hängen (wenn dazwischen sich kein weiterer Baustein befindet).

aber der Kundensenken und die EndmontageStation sind nicht verbunden.
Das heißt, wenn die BE bei Endmontagestation ankommt, identifiziere ich wohin es geht und umlargern es in den richtigen Kundensenken.
Wenn ich bei Ausgang der Endmontagestation nichts schreibe, dann stauen die BEs bei Endmontagestation, oder?

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 11. Jul. 2013 13:42    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 zhang1jing4 10 Unities + Antwort hilfreich

Sie können die Ausgangssteuerung für die Verteilung auf die Kundensenken verwenden. Die Eingangssteuerung in der Senke wird durch das Teil aufgerufen, das funktioniert auch, wenn Sie keine Kanten benutzen, sondern die Teile mit SimTalk umlagern.

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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 11. Jul. 2013 15: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

Zitat:
Original erstellt von Bon Simul:
Sie können die Ausgangssteuerung für die Verteilung auf die Kundensenken verwenden. Die Eingangssteuerung in der Senke wird durch das Teil aufgerufen, das funktioniert auch, wenn Sie keine Kanten benutzen, sondern die Teile mit SimTalk umlagern.

Sorry, ich habe es nicht so gut verstanden.
Was haben Sie genau gemeint?
Wo soll ich die Ausgangssteuerung schreiben? Bei Kundensenken Ausgang?
aber wenn ich Baustein Senke verwende, gibt es kein Ausgangssteuerung.
Das Problem ist das die Produkte bei Montagestation bleiben. Ich muss irgendwo Zuweisungen geben, wohin die Produkte gehen sollen.
Da ich wegen Statistik für die Ausgangssteuerung der Montage Heck verwenden muss, gehen die Produkte nirgendwo hin.
Wenn ich bei der Eingangssteuerung der Kundensenke die Produkte von Montage umlagern möchte, wird diese Methode doch nicht aufgerufen, da es am Anfang keine Produkte in KundenSenke kommen werden.
Wird die Eingangssteuerung nur aufgerufen, wenn ein BE auf diese Baustein aufkommt, oder?

Vielen Dank!

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 11. Jul. 2013 15:35    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 zhang1jing4 10 Unities + Antwort hilfreich

Verwenden Sie in der Montagestation Ihre Ausgangssteuerung Bug zur Verteilung der Teile auf die Senke.
Zuerst muss Ihr Modell (Materialfluss) funktionieren.

Eine andere Idee:
Sie könnten die Warten-Statistik auch mit Hilfe eines Generators und einer Methode realisieren (Abfragen, ob die Station wartet, Klassifizieren, wenn das Warten beendet ist, Zeit ermitteln und speichern).

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

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 11. Jul. 2013 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

Zitat:
Original erstellt von Bon Simul:
Verwenden Sie in der Montagestation Ihre Ausgangssteuerung Bug zur Verteilung der Teile auf die Senke.
Zuerst muss Ihr Modell (Materialfluss) funktionieren.

Eine andere Idee:
Sie könnten die Warten-Statistik auch mit Hilfe eines Generators und einer Methode realisieren (Abfragen, ob die Station wartet, Klassifizieren, wenn das Warten beendet ist, Zeit ermitteln und speichern).



Das wäre auch eine gute Möglichkeit.
Dann muss ich diese Generator jede Sekunde mal aufrufen, oder?
Weil ich ständig überprüfen muss, ob meine MontageStationen wartet oder nicht.

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 11. Jul. 2013 16:26    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 zhang1jing4 10 Unities + Antwort hilfreich

zhang1jing4
Mitglied
studentin


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

Beiträge: 53
Registriert: 14.05.2013

Jing

erstellt am: 12. Jul. 2013 13:27    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

Zitat:
Original erstellt von Bon Simul:
genau

Hallo,

ich habe eine Methode geschrieben, diese Methode wird durch eine Generator jeder Sekunden ein Mal aufgerufen.
Hier ist mein Code:
/*Diese Methode erfasst den Grund und Zeit der Warten.
Sie wird von Generator G_statWartenDauer gesteuert.
*/

is
i:integer;
j:integer;
wartenStart:time;
wartenEnd:time;
Dauer:time;
aktuellNivTab bject;
aktuellEM bject;
wartenAuf:string;
do
for j := 1 to AlleBaustein_als_Objekt.yDim loop

if AlleBaustein_als_Objekt[1,j] /= void then

--Bekomme das EM und Nivellierungstabelle für diese EM.
aktuellEM := AlleBaustein_als_Objekt[1,j];
aktuellNivTab := aktuellEM.NivTab;

if aktuellEM.ResWartend = true then
--wartenAuf ist auf "Auftrag" default gesetzt.
wartenAuf = "Auftrag";

wartenStart := Ereignisverwalter.zeit;

--Der Grund wird erkennt. Falls es noch Auftrag für ein Produkt gibt(Anzahl nicht gleich 0), dann wartet es auf "Teile"
for i := 1 to aktuellNivTab.yDim loop
if aktuellNivTab[AktuellNivPeriode,i] > 0 then
wartenAuf := "Teile";
i := 10000;  
  end;
next;

waituntil aktuellEM.ResWartend = false prio 1;
wartenEnd := Ereignisverwalter.zeit;

Dauer := wartenEnd - wartenStart;

--Diese Dauer wird summiert.
if wartenAuf = "Teile" then
aktuellEM.statWartenAufTeileDauer := aktuellEM.statWartenAufTeileDauer + Dauer;
elseif wartenAuf = "Auftrag" then
aktuellEM.statWartenAufAuftragDauer := aktuellEM.statWartenAufAuftragDauer + Dauer;
end;
end;

end;

next;

 
end;

Danach habe ich mein Modell laufen gelassen.
Plötzlich habe ich eine Fehlermeldung bei waituntil bekommen:
Die eingestellte max. Anzahl suspendierter Methode(500) ist erreicht worden.
Alle momentan aktiven Aufrufketten werden abgebrochen.

Was ist das Problem?
Vielen Dank!

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 12. Jul. 2013 15:39    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 zhang1jing4 10 Unities + Antwort hilfreich

So erzeugen Sie viele waituntil Aufrufe, Sie dürfen in dieser Version kein  Waituntil verwenden.

Sie müssten innerhalb Ihrer Methode den Statuswechsel erkennen und dann entsprechende Aktionen ausführen (z.B. setzen Sie wartenAuf auf "" wenn resWartend=false ist, dann können Sie den Statuswechsl identifizieren, wenn resWartend="" ist und resWartend=true ist --> nur dann müssen Sie etwas tun, ebenso, wenn wartenAuf /= "" ist und resWartend=false ist)

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