Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Fahrzeug lässt BE nach rüsten liegen

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:  Fahrzeug lässt BE nach rüsten liegen (612 mal gelesen)
el-loschi
Mitglied


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

Beiträge: 9
Registriert: 07.04.2010

erstellt am: 27. Apr. 2010 10:58    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,

Bin gerade dabei eine Montagelinie zu simulieren.
2 Fahrzeuge fahren dabei in einer Kreisbahn verschiedene Stationen an, laden ihr BE auf die Station um, warten die Bearbeitungszeit ab und nehmen dann das BE wieder mit.
Das klappt auch alles super mit folgender Methode:

Code:
if sensorID=2 then -- Montageplatz 1

@.anhalten;
if @.belegt then --fahrzeug hat ein Teil geladen
  @.inhalt.umlagern(montage1);
  @.pausieren(t_01);        
    montage1.inhalt.umlagern(@);                   @.fahren;
else @.fahren;
end;

t_01 ist die Bearbeitungszeit der Station 1, diese schwankt mit einer Normalverteilung und wird mit der Eingangssteuerung der Montagestation 1 erzeugt.

Code:
is
do
if ?=Montage1 then
          t_01:=montage1.bearbeitungszeit;
elseif ?=Verpacken then
          t_03:=verpacken.bearbeitungszeit;
elseif ?=Montage2 then
          t_02:=montage2.bearbeitungszeit;
end;
end;

Nun kommt dazu, dass bei einem Typenwechsel an der ersten Station eine Rüstung erfolgen muss, die ca. 30s dauert.
Meine Idee bei der ganzen Sache war, dass nun t_01 nicht nur die Bearbeitungszeit, sondern bearbeitungszeit+rüstzeit sein muss.
Das wollte ich mit folgender, veränderter Methode als Eingangssteuerung von Montage1 lösen:

Code:
is
do

if Montage1.ruestet=true then
t_01:=montage1.bearbeitungszeit+montage1.ruestzeit;
else
t_01:=montage1.bearbeitungszeit;
end;
end;


Beim Start der Simulation rüstet die Station ein erstes Mal. Kann man das unterbinden? Würde gerne ohne anfängliche Rüstung zu produzieren beginnen, die Station in der Init_Funktion über "istgeruestetfuer" auf Typ1 zu setzen klappt leider nicht.

Nach 300 Teilen wird umgerüstet. Hier wird auch t_01 auf die korrekte Zeit aktualisiert, das Fahrzeug wartet auch diese Zeit ab. Am Ende läd er jedoch das BE nicht auf sonder fährt leer weiter und ich hab leider keine Idee warum er das tut. Auch wenn ich die Pausenzeit etwas länger mache fährt er konsequent leer weiter.

Ich hoffe jemand versteht was ich meine, wenn nicht kann ich gerne noch ein paar Screenshots machen.

Gruß

Christian

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

el-loschi
Mitglied


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

Beiträge: 9
Registriert: 07.04.2010

erstellt am: 27. Apr. 2010 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

Sorry für den Doppelpost aber ich glaub ich bin dem Problem auf der Spur.

Das Problem, dass das BE liegen bleibt entsteht nur, wenn das Fahrzeug noch in der Wartezeit ist, wenn die Station schon fertig ist.
Das kann aufgrund eines kleinen Fehlers leider passieren. Die Bearbeitungszeit der Montagestation ergibt sich aus einer Normalverteilung mit Schwankungen von +-1s.

Die Zeit t_01 wird dem Fahrzeug als Wartezeit zugewiesen und zwar wenn das Fahrzeug den Sensor berührt und das BE umgelagert ist.
t_01 wird jedoch erst neu gesetzt, wenn das BE auf die Station umlagert ist (Eingangssteuerung Bug Montage1)
Anscheinend ist dies jedoch die Bearbeitungszeit vom Vorgängerteil.

Nun gehen mir leider die Ideen aus, denn das Fahrzeug muss ja schon pausiert sein, wenn die Bearbeitungszeit für das BE erst erzeugt wird. Gibts dafür eine Lösung?

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

tsx
Mitglied



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

Beiträge: 103
Registriert: 06.03.2010

Plant Simulation 10.0

erstellt am: 27. Apr. 2010 17: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 el-loschi 10 Unities + Antwort hilfreich

Die Lösung lautet:
Code:
waituntil Montage1.fertig prio 1;

------------------
Grüße,
tsx 

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