Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Lieferliste bei Quelle

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:  Lieferliste bei Quelle (4868 mal gelesen)
madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 08. Okt. 2012 14: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

Hallo! Brauche dringend hilfe! habe bei der quelle eine liferliste erstellt und zu jedem in der Liste stehenden Be mittels table einige Attribute erstellt. Jetzt will ich aber erst dem Attribut nach einer einzelstation einen wert zuweisen funktioniert auch nur wenn ich dann später in einer methode zb if @.attributname="1" then... aufrufe kennt er den namen nicht, da er den wert nicht sieht obwohl er in der liste vorhanden ist.
Bitte um Rat!!
Mfg

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: 08. Okt. 2012 17: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 Nur für madras25 10 Unities + Antwort hilfreich

Sie müssen auf jeden Fall die Attribute in der Klassenbibliothek im BE im Blatt Benutzerdefinierte Attribute anlegen. In der Lieferliste können Sie dann Werte festlegen oder später darauf zugreifen.

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 08. Okt. 2012 19: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

Kann ich dann eine lieferliste anlegen in der ich zb. zwei mal das selbe be habe d.h. der selbe Name aber mit unterschiedlichen benutzerdefinierten Attribute? Wenn ja kannst du mir sagen wie ich mittels Methode die werte dieser Attribute zuweisen kann. Mfg

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: 08. Okt. 2012 21:29    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 madras25 10 Unities + Antwort hilfreich

Von der Klassenbibliothek aus werden alle benutzerdefinierten Attribute an die Kinder im Netzwerk vererbt. Deshalb haben normalerweise alle BEs der selben Klasse die selben Attribute.
Die benutzerdefinierten Attribute können Sie verwenden, um Ihre BEs genauer zu bestimmen. So können Sie zum Beispiel ein Attribut Farbe festlegen und diesem Attribut in der Lieferliste unterschiedliche Werte zuweisen ("rot","blau" usw.).
Sie können auch spezielle Attribute nur für ein BE in der Lieferliste setzen und die anderen Werte auf dem Standardwert lassen.

Auf dei BEs können Sie in den Steuerungen mit @ zugreifen, ein Attribute setzen Sie mit :=  z.B.

@.farbe:="grün";

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 11. Okt. 2012 12: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

Hallo nochmals,
Hab noch eine frage. Hab die Bearbeitungszeiten in eine tabelle geschrieben und will nun manche davon um einen wert erhöhen bei denen ihr Attribut einen bestimmten wert hat.
zb.
if @.kapa>0 then
@.bearbeitungszeit:=@.bearbeitungszeit*@.kapa;
end;

kapa ist das Attribut so funktioniert es aber nicht bitte um einen Tipp!
Mfg

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. Okt. 2012 14:51    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 madras25 10 Unities + Antwort hilfreich

Wenn Sie die Werte in einer Tabelle ändern wollen, dann müssen Sie mit

<tabelle>[x,y] auf die Werte zugreifen, das könnte dann wie folgt aussehen:

Code:

if @.kapa>0 then
  bearbeitungszeit[1,1]:=bearbeitungszeit[1,1]*@.kapa;
end;


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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 15. Okt. 2012 12: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

Danke!
hab noch ne bitte,
wenn ich mehrere einzelstationen habe will ich wenn ein bestimmtes be kommt dass es dann auf eine beliebige einzelst. umgelagert wird und eine andere gesperrt wird bis das be aus der einzelstation wieder draußen ist. habs mit einer kartei probiert dass ich alle einzelst. die leer und bereit sind hineinspeichere funktioniert aber nicht.
Mfg

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: 15. Okt. 2012 19: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 madras25 10 Unities + Antwort hilfreich

Sie müssen noch ein paar Erläuterungen geben:
Was bedeutet:
Zitat:
ein bestimmtes be
?
Was meinen Sie mit
Zitat:
und eine andere gesperrt wird
?

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 15. Okt. 2012 20:33    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

Unter bestimmtes be mein ich nur wenn  Attribut einen best. wert hat hier aber nicht relevant da ich das weiß. Also einfach ein be. Und das zweite mein ich dass  eine zweite einzelstation gesperrt also der Eingang gesperrt werden soll. Lg

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: 15. Okt. 2012 21:49    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 madras25 10 Unities + Antwort hilfreich

Alle "verfügbaren" Maschinen in eine Liste zu schreiben, ist keine gute Idee, da sich der Zustand der Maschinen laufend ändert.
Sie können allerdings eine Liste(Tabelle) mit allen Maschinen anlegen und vor jeder anstehenden Umlagerung (oder periodisch) prüfen, welche Ihrer Maschinen verfügbar (bereit, eingangGesperrt=false und leer) ist. Wenn Sie etwas passendes finden, können Sie das wartende BE umlagern.
Sie können es auch mit einer waituntil-Anweisung lösen, bei einer großen Anzahl von Maschinen und einer Reihe von Bedingungen je Maschine wird das allerdings schnell kompliziert.

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 16. Okt. 2012 09: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

Mein Problem ist aber dass ein be auch 2 einzelstationen brauchen kann und daher eine zusätzliche einzelstation gesperrt werden soll.
hast du dazu einen tip
mfg

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: 16. Okt. 2012 19: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 Nur für madras25 10 Unities + Antwort hilfreich

Das kann man auch mit einer Tabelle organisieren (2 Spalten, Datentyp Object).
In der ersten Spalte könnten alle Maschínen stehen, die ein "langes" BE aufnehmen können und in der zweiten Spalte, die Maschinen, die jeweils bei Belegung der Maschine aus der ersten Spalte blockiert werden. Dann können Sie die Zeile in der Tabelle suchen, in der die Maschinen aus beiden Spalten einer Zeile leer sind.
Bei kurzen Teilen können Sie dann in der gesamten Tabelle suchen.

Ich würde zum Umlagern eine Methode schreiben, die alle paar Sekunden (oder Minuten, das hängt von Ihrer Taktzeit ab) von einem Generator aufgerufen wird. Die Methode erkennt das Teil und durchsucht die Tabelle nach einer (oder zwei) freien Maschinen. Wenn nichts frei ist, passiert nichts, sonst wird das Teil umgelagert. Damit die langen Teile keine kurzen blockieren, können Sie zwei Eingangsplätze definieren und abwechselnd abfragen...

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 17. Okt. 2012 10: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

Versteh ich nicht.
geht das nicht einfacher indem ich abfrage welche maschinen bereit sind und leer und diese in eine tabelle speichere und eine variable mitlaufen lasse und wenn diese größer 2 ist ich auf den ersten Eintrag in der Tabelle umlagere und den zweiten sperre und dann mit waituntil erster Eintrag ist wieder leer den zweiten Eintrag wieder entsperre?
is
i:integer;
o,k bject;
do
--überprüft welche hauben leer und bereit sind und speichert sie dann in kartei
if haube1.bereit and haube1.leer then
tabelle1.schreibeZeile(1,variable,haube1);
i:=i+1;
variable:=variable+1;
end;
if haube2.bereit and haube2.leer then
tabelle1.schreibeZeile(1,variable,haube2);
variable:=variable+1;
i:=i+1;
end;
if haube3.bereit and haube3.leer then
tabelle1.schreibeZeile(1,variable,haube3);
variable:=variable+1;
i:=i+1;
end;

if i>=2 then
o:=tabelle1[1,1];
@.umlagern(tabelle1[1,1]);
tabelle[1,2].EingangGesperrt:=true;
k:=tabelle[1,2];
waituntil o.leer prio 1;
k.EingangGesperrrt:=false;
end;

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: 17. Okt. 2012 10: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 madras25 10 Unities + Antwort hilfreich

Theoretisch funktioniert Ihr  Ansatz, wenn die gesperrte Maschine in keinerlei Beziehung zu der arbeitenden Maschine steht. Wenn es eine Beziehung gibt (z.B. steht in der Nähe, blockiert durch Fördertechnik, gemeinsamer Bediener...), ist Ihr Ansatz falsch, sie müssen dann die Maschinen paarweise betrachten, vor allem, wenn die Maschinen einzeln belegt werden können.


Wenn der Eingang gesperrt ist, ist die Maschine trotzdem bereit. Sie müssen eingangGesperrt mit in Ihre Abfrage aufnehmen.

Code:

if haube1.bereit and haube1.leer and haube1.eingangGesperrt=false then
...


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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 17. Okt. 2012 12: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

Ich brauche es dafür dass ich mehrere maschinen habe die alle gleich sind und in denen ein be passt nur wenn ein großes be kommt benötigt dieses zwei maschinen. FUnktioniert mein Ansatz hier wenn nicht kannst du mir deinen Ansatz kurz aufschreiben? Lg

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: 17. Okt. 2012 21: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 Nur für madras25 10 Unities + Antwort hilfreich

Wenn Ihr Modell sich so verhält wie es soll, dann ist Ihr Ansatz richtig.
Ich kann das schlecht beurteilen. Bei Fragen zu Plant Simulation helfe ich Ihnen gern weiter.

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 18. Okt. 2012 17:36    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

Wenn ich das mach wie oben speichert er mir die erste maschine nicht hinein in die tabelle und obwohl alle Maschinen alle bedingungen erfüllt lagert er auf die zweite haube um. Wieso? Mfg

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: 19. Okt. 2012 08:28    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 madras25 10 Unities + Antwort hilfreich

Sie müssen am Anfang variable:=1 setzen (Startwert ist sonst 0).

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 22. Okt. 2012 09:40    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 nochmal,
Hab noch ne frage.
wie kann ich den gesamten inhalt eines puffers umlagern?
Mfg

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 22. Okt. 2012 09: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

Hallo nochmal

Wie kann ich den gesamten inhalt eines puffers umlagern?
Mfg

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: 28. Okt. 2012 18:40    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 madras25 10 Unities + Antwort hilfreich

Wohin wollen Sie denn umlagern?
Umlagern können Sie nur ein BE nach dem anderen nach folgendem Muster:
Code:

while (puffer.belegt) loop
  puffer.inhalt.umlagern(ziel);
end;


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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 29. Okt. 2012 09: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

will zb. von einem puffer auf die zweite parallelstation den gesamten inhalt umlagern aber er lagert nur zwei auf die zweite und das erste Be im puffer wird auf die erste parallestation umgelagert.
zur info quelle-p1-p2-senke
warum?

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: 29. Okt. 2012 21: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 Nur für madras25 10 Unities + Antwort hilfreich

Wie sieht denn Ihre Methode aus?

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 02. Nov. 2012 10:17    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 schon,
wie kann man überhaupt auf die aufenhaltszeit zugreifen die ein be in einem baustein hat.
zb. hab eine quelle die eine ausgangssteuerung besitzt in der steht wenn beim nachfolgenden puffer kapazität vorhanden ist wird es zu diesem puffer umgelagert wenn nicht soll das be eine betsimmte zeit warten wenn dann der puffer noch immer nicht frei ist dann wird abgebrochen?
Mfg

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: 02. Nov. 2012 11: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 madras25 10 Unities + Antwort hilfreich

Sie können mit
Code:

be.eintrittszeit - ereignisverwalter.zeit


ermitteln, wie lang ein BE bereits auf einer Station ist
(lässt sich auch mit waituntil überwachen).

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 04. Nov. 2012 10: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

das funktioniert bei mir aber nicht.

Hab jetzt zb eine quelle und eine methode für die ausgangssteuerung.
methode:
if @.name="h" then
waituntil ereignisverwalter.zeit=60 prio 1;
@.umlagern(senke);
end;

hier müsste er ja nach 60 min das be umlagern oder?
bei mir tut sich nichts.
Wieso?
mfg

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: 05. Nov. 2012 12:08    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 madras25 10 Unities + Antwort hilfreich

Die Steuerung müsste beides enthalten, den "Geradeauslauf" und die Umlagerung in die Senke, z.B.

Code:

if @.name="h" then
  waituntil (ereignisverwalter.zeit-@.eintrittszeit >=3600) or
  (nachfolger.leer and nachfolger.bereit) prio 1;
  if nachfolger.leer and nachfolger.bereit then
    @.umlagern(nachfolger);
  else
    @.umlagern(senke);
  end;
end;


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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 06. Nov. 2012 17:17    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 das funktioniert aber so nicht.
Mfg

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: 07. Nov. 2012 07:59    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 madras25 10 Unities + Antwort hilfreich

Tja, bei mir funktioniert es.

Wenn Sie ereignisverwalter.zeit in einer waituntil Anweisung verwenden wollen, dann muss in der Simulation eine Menge passieren (sonst hat der Ereignisverwalter zu wenige Ereignisse zu verwalten). Zeiten, in denen nichts passiert, überspringt die Simulation. In größeren Simulationen ist das kein Problem (da gibt es immer genügend Ereignisse). Bei kleineren Simulationen müssten Sie sich einen kleinen Bypass legen. Dafür setzen Sie eine Quelle und eine Senke ins Modell ein, verbinden diese durch eine Kante und stellen einen Abstand von einer Minute ein. Dann stehen immer genügend Ereignisse zur Verfügung.

Eine weitere Möglichkeit ist, dass Sie die Methode regelmäßig durch einen Generator aufrufen lassen.

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 07. Nov. 2012 10: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

kann ich die zweite bedingung auch weglassen zb
if @.name="h" then
  waituntil (ereignisverwalter.zeit-be.eintrittszeit>=3600)prio 1;
  if nachfolger.leer and nachfolger.bereit then
    be.umlagern(nachfolger)
  else
..
  end;
end;

wartet er dann 60 min und schaut dann ob der nachfolger frei ist wenn ja lagert er um?

Mfg

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: 07. Nov. 2012 10:25    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 madras25 10 Unities + Antwort hilfreich

ja, dann wartet er allerdings immer 60 Minuten, bevor er umlagert

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

madras25
Mitglied



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

Beiträge: 18
Registriert: 08.10.2012

erstellt am: 07. Nov. 2012 10: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

ja stimmt aber sonst kann es sein dass er länger als 60min wartet und dann umlagert 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: 07. Nov. 2012 11: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 Nur für madras25 10 Unities + Antwort hilfreich

eigentlich nicht; das or bewirkt, dass die erste Bedingung, die erfüllt ist, zum Umlagern führt (entweder oder), wenn der Nachfolger das Teil aufnehmen kann oder spätestens nach 3600 Sekunden.

Wenn Sie die zweite Bedingung weglassen, dann wird nach 10 Minuten geprüft, ob das Teil auf den Nachfolger oder in die Senke umgelagert wird.

Für die Simulation ist das ein gewaltiger Unterschied.

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