Autor
|
Thema: Quelle zeitlich und prozentual steuern (1755 mal gelesen)
|
Zitrusfrucht Mitglied
Beiträge: 7 Registriert: 25.06.2011
|
erstellt am: 25. Jun. 2011 18:22 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich möchte für ein Projekt den Ausgang der Quelle prozentual und zeitlich steuern. zb dass es zwei Schübe gibt, einmal um 6 Uhr morgens 75% und dann um 17 Uhr 25% Ich bin noch nicht sehr erfahren und würde mich über detaillierte Antworten freuen. [Diese Nachricht wurde von Zitrusfrucht am 26. Jun. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zitrusfrucht Mitglied
Beiträge: 7 Registriert: 25.06.2011
|
erstellt am: 26. Jun. 2011 19:34 <-- editieren / zitieren --> Unities abgeben:
Ich habe jetzt versucht, über den Trigger dieses Problem zu lösen. Trigger: Startzeit: 0 aktive Zeit: 24 h Periodenlänge: 24 h In der Wertetabelle ist dann z.B. eine Zeile. Zeitpunkt Wert 08:00:00 75, BE.Fördergut,Konst Diesen Trigger habe ich dann als Erzeugungszeitpunkt der Quelle angegeben (die Quelle sonst unverändert in ihrem ursprünglichen zustand gelassen) Wenn ich nun den Ereignisverwalter starte und einen Testdurchlauf mache erstellt die Quelle keine BEs. Könnte mir bitte jemand helfen? Ich weiß nicht, was ich falsch gemacht habe. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
math4fun Mitglied
Beiträge: 167 Registriert: 12.12.2005
|
erstellt am: 27. Jun. 2011 09:27 <-- editieren / zitieren --> Unities abgeben: Nur für Zitrusfrucht
Hi Zitrusfrucht, sowohl 7,.BEs.Fördergut,konst,0 als auch 7,.BEs.Fördergut,konst funktioniert in der Wertetabelle des Triggers. Dein Pfad des BEs ist falsch. Der Pfad muss mit einem Punkt beginnen. Der Ordner heißt "BEs", nicht "BE". Um die zuerst formulierte Aufgabe zu lösen, musst Du wissen, wieviele BEs erzeugt werden sollen. ------------------ PM ___________________ www.math4fun.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zitrusfrucht Mitglied
Beiträge: 7 Registriert: 25.06.2011
|
erstellt am: 27. Jun. 2011 11:23 <-- editieren / zitieren --> Unities abgeben:
Erstmal danke! Um das problem mit den Prozenten zu umgehen lass ich die Quelle einfach insgesamt 100 BEs erstellen. Und zu der Sache mit dem Pfad, nein, das ist nicht falsch eingetippt, ich habs nur vor lauter Dusel gestern falsch hier eingetippt, sorry dafür. Ich habe mal ein Bild mitgeschickt. Ich weiß echt nicht was ich falsch gemacht habe und suche und suche und finde nichts... [Diese Nachricht wurde von Zitrusfrucht am 27. Jun. 2011 editiert.] [Diese Nachricht wurde von Zitrusfrucht am 27. Jun. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der simulant Mitglied
Beiträge: 71 Registriert: 28.02.2007 ----------- der simulant
|
erstellt am: 27. Jun. 2011 11:37 <-- editieren / zitieren --> Unities abgeben: Nur für Zitrusfrucht
Hi Zitrusfrucht, Deiner Beschreibung nach kannst Du Dir den Trigger sparen. Stell bei Deiner Quelle mal Delivery Table ein. Hierzu musst Du in Deinem Netzwerk noch eine Tabelle einsetzen. Das formatieren der Tabelle übernimmt dann die Quelle. Trage dann wie in meinem Beispiel (siehe .jpg) den Erzeugungszeitpunkt, das BE, die Anzahl und den Namen ein. Optional könntest Du noch Attribute definieren. Ich hoffe, das hilft Dir weiter Gru der simulant Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zitrusfrucht Mitglied
Beiträge: 7 Registriert: 25.06.2011
|
erstellt am: 27. Jun. 2011 11:52 <-- editieren / zitieren --> Unities abgeben:
Vielen vielen Dank. Es funktioniert so, zumindest erzeugt die Quelle nun einmalig nach dieser Tabelle die Fördergüter. Kann ich das irgendwie steuern, dass die das wiederholt? Und auch wenn das nun eigentlich zum anderen Thema gehört: In dieser Tabelle kann man ja auch Attribute bestimmen. Nun habe ich 3 Subnetzwerken mit jeweils mehreren Stationen und diese Fördergüter sollen diese Stationen anlaufen. Nicht jedes Fördergut jede Station sondern stochastisch. Das ein Fördergut z.B. nur eine Station durchlaufen muss, das andere 3 in einem Subnetzwerk, das nächste 3 in jeweils einem Subnetzwerk. Ich habe diese Stationen schon als benutzerdefinierte Attribute des Förderguts eingestellt. Kann ich das mit der Tabelle irgendwie manövrieren? [Diese Nachricht wurde von Zitrusfrucht am 27. Jun. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der simulant Mitglied
Beiträge: 71 Registriert: 28.02.2007 ----------- der simulant
|
erstellt am: 27. Jun. 2011 13:55 <-- editieren / zitieren --> Unities abgeben: Nur für Zitrusfrucht
Hallo Zitrusfrucht, freut mich, dass es so klappt. Natürlich kannst Du diese Erzeugung wiederholen lassen. Musst nur neue Einträge in die Tabelle schreiben ;-) Ich lass mir das aber über eine Methode machen. Zu Deiner zweiten Frage: Du kannst diese zusätzlichen Attribute z.B. über eine Flowcontrol nutzen- sieh Dir dazu die Hilfe an Gruß der simulant Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zitrusfrucht Mitglied
Beiträge: 7 Registriert: 25.06.2011
|
erstellt am: 27. Jun. 2011 15:24 <-- editieren / zitieren --> Unities abgeben:
Ok, die Hilfe werde ich mir einmal durchlesen. Zu der Methode, könntest Du mir vielleicht einen Hinweis geben wie ich die irgenwie anfangen kann. Wie gesagt ich bin ein Anfänger, dies ist mein erstes Projekt und ich habe schon einige Methoden versucht aufzubauen aber es ist leider nie gut geendet... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der simulant Mitglied
Beiträge: 71 Registriert: 28.02.2007 ----------- der simulant
|
erstellt am: 27. Jun. 2011 15:50 <-- editieren / zitieren --> Unities abgeben: Nur für Zitrusfrucht
Hallo Zitrusfrucht, anbei ein kleiner Code: -- methode zum befüllen einer delivery table -- benutzt die variablen number_delivery_days und starttime -- aus dem netzwerk is i,b,a : integer; lstarttime,lstarttimeorg : time; ltab : object; do ltab := tdeliverytable;--tdeliverytable ist Deine Delivery Tab ltab.delete; lstarttimeorg := starttime;--starttime ist eine globale Variable im Netzwerk z.B.6:00:00.0000 lstarttime := starttime; a := 2; -- a entspricht der anzahl der teile die produziert werden solllen for i := 1 to number_delivery_days loop --Wieviele Tage willst Du produzieren for b := 1 to a loop ltab [1,ltab.ydim+1] := lstarttime; ltab [2,ltab.ydim] := part;--Pfad Deiner BEs ltab [3,ltab.ydim] := number_parts;--Anzahl Deiner Teile ltab [4,ltab.ydim] := "TeilA";--Name Deines Teils lstarttime := lstarttime +1; next; lstarttime := lstarttimeorg + i*(24*60*60);--24 Stunden später next; end; -- end of method Diese Methode dient dazu, zwei Teile alle 24h in Deine Liste einzutragen Willst Du was anderes, musst Du Sie Deinen Wünschen entsprechend anpassen Gruß der simulant Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zitrusfrucht Mitglied
Beiträge: 7 Registriert: 25.06.2011
|
erstellt am: 27. Jun. 2011 17:37 <-- editieren / zitieren --> Unities abgeben:
|
der simulant Mitglied
Beiträge: 71 Registriert: 28.02.2007 ----------- der simulant
|
erstellt am: 28. Jun. 2011 06:56 <-- editieren / zitieren --> Unities abgeben: Nur für Zitrusfrucht
Hallo Zitrusfrucht, du hast ein end nach dem letztem next vergessen. (schliesst die if schleife) Dann müsste die methode laufen Gruß der simulant ps: lass dir vielleicht die Zeilennummer in den Methoden anzeigen - erleichtert oftmals die Fehlerfindung (unter Menü Ansicht - Zeilennummern anzeigen) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Homer Simpson Mitglied
Beiträge: 345 Registriert: 14.09.2005
|
erstellt am: 01. Jul. 2011 13:16 <-- editieren / zitieren --> Unities abgeben: Nur für Zitrusfrucht
Warum zum Geier rückst du die Anweisungen innerhalb von Schleifen und if-Anweisungen nicht ein? Das kann ja kein Mensch erkennen, welches if-end und welches for-next zusammengehört. Die Einrückung macht der Methodeneditor doch automatisch für dich. Warum in aller Welt hast du das abgeschalten?? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |