Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Dynamisches erzeugen von BEs

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:  Dynamisches erzeugen von BEs (1034 mal gelesen)
HansMaulwurf
Mitglied


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

Beiträge: 3
Registriert: 27.09.2012

erstellt am: 27. Sep. 2012 20:22    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 zusammen,

ich habe eine Frage bezüglich der Erzeugung von BEs. Folgendes Simulationsmodell habe ich:

Endmontagelinie, die sich Pull gesteuert aus einem Vormontagebereich Bauteile zieht. Der Vormontagebereich selbst holt sich aus einem vorgelagerten Netzwerk seine Bauteile. Ich gebe in der Endmontage eine Lieferliste vor. Aus dieser Lieferliste berechne ich mir den Produktionsstartzeitpunkt der Vormontage. Diesen Startzeitpunkt schreibe ich mir in eine Tabelle, die ich über eine wait Anweisung nach Inhalt überwache. Soweit funktioniert alles.

Nachdem der Zeitpunkt erreicht ist, soll das BE in der Vormontage erzeugt werden:

wait Ereignisverwalter.Zeit >= Produktionsstartzeitpunkt prio 1
BE.erzeugen(Quelle);

Hier hätte ich eine Frage: Unterbricht die Wait Anweisung die Methode komplett und setzt dann wieder fort, wenn die Bedingung erfüllt ist?

Je nach Produktionssituation in der Endmontage, wird die oben stehende Erzeugungsmethode öfter aufgerufen. Werden dann alle wait Anweisungen parallel abgearbeitet?
Ich habe auch noch andere Funktionen, die mit wait arbeiten. Leider bemerke ich, dass nicht immer alle wait Methoden richtig arbeiten. Teilweise werden die Bedingungen erfüllt, die Wait Methode aber nicht ausgeführt..

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: 27. Sep. 2012 20:37    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 HansMaulwurf 10 Unities + Antwort hilfreich

Es gibt zwei Anweisungen:

wait(time) unterbricht eine Methode für eine gewisse Zeit.
In den Ereignisverwalter wird ein Ereignis MethAufwecken eingetragen.
Zum berechneten Zeitpunkt wird die Methode dann fortgesetzt.

waituntil bedingung prio x;
Suspendiert eine Methode --> siehe Hilfe Suspendierung von Methoden.

Dabei kann es sein, dass mehrere Methoden zur gleichen Zeit aufgeweckt werden und die erste Methode die Bedingung wieder false werden lässt. Die nächste Methode wird dann wieder suspendiert...

Klicken Sie im Plant Simulation Fenster auf Dbuggen - Suspendierte Methoden anzeigen, dort sehen Sie was zurzeit mit welcher Bedingung suspendiert ist.

Ihre Anweisung

Zitat:

wait Ereignisverwalter.Zeit >= Produktionsstartzeitpunkt prio 1


dürfte so nicht funkionieren.

Lesen Sie auch mal die Hilfe zu stopuntil, vielleicht passt das besser.

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

HansMaulwurf
Mitglied


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

Beiträge: 3
Registriert: 27.09.2012

erstellt am: 27. Sep. 2012 20: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

Hallo,

danke für die Antwort. Ich muss mich entschuldigen, ich meine selbstverständlich waituntil mit Bedingung dahinter.

Die Hilfe habe ich schon durchforstet, ich stehe aber trotzdem noch immer auf dem Schlauch. In meinem Fall sollte ja die Möglichkeit, dass die Bedingung wieder false wird, ausgeschlossen sein. Die Ereignisverwalterzeit läuft ja weiter und der gespeicherte Produktionszeitpunkt ist fixiert. Oder sehe ich dies falsch?

Prinzipiell würde es mich interessieren, wie man eine derartige Pullsteuerung umsetzen kann. Ist der Ansatz wie beschrieben (also Tabelle Endmontage => Infos in Tabellen Vormontage schreiben und mit waituntil zum eingetragenen Zeitpunkt erzeugen) sinnvoll? 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: 27. Sep. 2012 21:53    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 HansMaulwurf 10 Unities + Antwort hilfreich

Mit waituntil-Anweisungen muss man etwas vorsichtig umgehen. Prinzipiell funktionieren Sie, es lässt sich auch gut beobachten (Debugger-... Haltepunkte setzen). Es können aber viele Fehler passieren z.B.:
- Sie rufen die Methode mit der waituntil-Anweisung aus Versehen mehrmals auf (z.B. Ausgangssteuerung-Bug, bei Stau wird die Ausgangssteuerung zwei Mal aufgerufen)
--> der zweite Methodenaufruf wird dann irgandwann aufgeweckt und verursacht Probleme
- sie verlieren den Überblick über Ihre Bedingungen und wer welche Bedingung verändert.

Das mit der Pull-Steuerung lässt sich schwer beurteilen.
´
Reale Pull-Steuerungen ziehen die Teile nicht direkt aus der Vormontage, sondern aus Zwischenpuffern oder Kanban-Flächen. Das Kanban-Lager löst dann die Vorproduktion aus (in der Regel ohne Verzögerung), die Vorproduktion die Einzelteilherstellung oder -lieferung. Dann erfolgt die Lieferung - Vorproduktion bis zum Bereitstellungslager.

Bei synchronisierter Vormontage (Sublinien) erfolgt der Start der Vorproduktion mit einem festgelegten Taktabstand (bis zum Einbauort), dort reicht es, wenn Sie x Takte vor Einbauort die Vormontage (analog Auftrag) anstoßen.

Echte Pull-Steuerung bedeutet, Sie holen (erzeugen) es sich, wenn Sie es brauchen und nicht zu einem bestimmten Zeitpunkt.

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