Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  AGV Simulation mit Fahrzeugen

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:  AGV Simulation mit Fahrzeugen (2016 mal gelesen)
marwar
Mitglied


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

Beiträge: 3
Registriert: 02.11.2015

Plant Simulation Version 11.0.5

erstellt am: 04. Nov. 2015 09: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


WF01.spp.jpg

 
Hallo liebes PS Unterforum,

ich habe einige Fragen bzgl. der AGV Simulation in PS11. Die Bibliothek "AGVS" scheint ja nicht mehr Bestandteil des Software-Pakets zu sein, daher probiere ich mich an der Erstellung eines Netzwerkes anhand von Wegen und Fahrzeugen für meine Bachelorarbeit. Konkret geht es in meinem Beispiel um die Simulation von Hindernissen auf der Fahrtstrecke (siehe gestörte Wege 1, 2_1 und 2_2 im Anhang).

Nun scheinen die Fahrzeuge trotz der Einstellung "Automatische Zielfindung" (die, wie ich im Forum gelesen habe den Dijkstra-Algorithmus abbilden soll) nicht immer den kürzesten Weg zu finden. Auch eine Flusssteuerung hilft hier nicht weiter. Woran liegt das?

Dazu kommt, dass wenn ein Weg in der Laufzeit gestört wird, die errechnete Zielführung anscheinend erhalten bleibt und die Fahrzeuge beim gestörten Weg warten. Wie lässt sich die Wegfindung nochmals auslösen (wenn Störung auftritt), oder gibt es eine elegantere Methode, ein Hindernis auf einem Weg (bzw. gleich ein liegengebliebenes AGV/FTF) darzustellen?

Danke bereits für Eure hilfreichen Antworten.

[Diese Nachricht wurde von marwar am 06. Nov. 2015 editiert.]

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: 04. Nov. 2015 22:16    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 marwar 10 Unities + Antwort hilfreich

schauen Sie in der Hilfe mal unter Routengewichtung nach, Das können Sie gut dynamisch einsetzen.

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

marwar
Mitglied


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

Beiträge: 3
Registriert: 02.11.2015

Plant Simulation Version 11.0.5

erstellt am: 06. Nov. 2015 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


WF02.spp.jpg

 
Danke für den Tipp mit der Routengewichtung. Das hat das Problem mit der Wegfindung über Störungen gelöst. Allerdings benutze ich statt der Störungssimulation jetzt ein benutzerdefiniertes Attribut in den Wegen ("benutzbar") welches zwischen [-1;1] geschaltet die Wege für die Wegfindung heranzieht oder eben nicht.

Zu dem Problem mit der automatischen Wegfindung: Es reicht nicht, in der Klassenbibliothek dem Fahrzeug einen Zielort einzuprägen und dann in der Quelle zu erzeugen. Ich musste über einen Sensor und eine Methode den Zielort explizit nochmals festlegen, damit die Zielsuche angestoßen wurde (s. Anhang).

Edit: eine weitere Beobachtung ist, dass wenn alle Pfade einen unbenutzbaren Weg beinhalten, die Wegfindung nicht stattfinden kann und die Verzweigunsstelle ("Start" im Bsp.) in ihr ursprüngliches Ausgangsverhalten zurückfällt (z.B. "reihum").

[Diese Nachricht wurde von marwar am 06. Nov. 2015 editiert.]

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

marwar
Mitglied


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

Beiträge: 3
Registriert: 02.11.2015

Plant Simulation Version 11.0.5

erstellt am: 18. Nov. 2015 17:21    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,

es bleibt für mich das Problem, dass wenn ein Fahrzeug einmal die automatische zielfindung angeschmissen hat, sich an der Route nur etwas ändern kann, wenn das Fahrzeug den geplanten Weg verlässt (laut PS Hilfe). Wenn also nach erfolgter Wegsuche ein Weg dynamisch durch ein anderes Fahrzeug belegt wird (Routengewichtungsattribut treibt die Kosten normalerweise über Real-Wert -1 ins Unendliche), hält das Fahrzeug weiterhin and der geplanten Route fest, da es sie ja nicht verlassen hat. Die Fahrzeuge fahren auf. Um dies zu verhindern muss ich die automatische Zielfindung neu anschmeißen.

Ich habe probiert die Zielliste des Fahrzeug auszulesen, die enthaltenen Objekte nach der Belegung abzufragen und falls diese vorliegt die Liste ab der Störung rückwärts bis zum Standort des Fahrzeugs zu löschen. Das Fahrzeug fährt theoretisch also auf einen Nachfolger, der nicht in seiner (neuen) Zielliste einthalten ist und sollte daher einen neuen Weg suchen. Die Methode sieht bisher so aus:

Code:
(FZG bject)
is
--Zielroute:table[object]; --in Netzwerk vorhanden
Routenelement bject;
gefunden:boolean;
Bezeichnung:string;
do

Zielroute.initialisieren({1,*}..{1,*},VOID);
FZG.holeRoutezuziel(Zielroute);
zielroute.setzezeiger(1,1);
gefunden:=zielroute.finden({1,*}..{1,*},FZG.bugstandort);
if gefunden then
For local y:=Zielroute.Ydim downto zielroute.zeigerY loop
                --Abfrage ob es sich um Spur oder Objekt(Weg) handelt
                                        Bezeichnung:=to_str(Zielroute[1,y]);
if pos(".A",Bezeichnung) = strlen(Bezeichnung)-1 or pos(".B",Bezeichnung) = strlen(Bezeichnung)-1 then--Abfrage, ob Objekt nur eine Spur ist
routenelement:=Zielroute[1,y].~;--soll zweispurigen weg addressieren
Else
routenelement:=Zielroute[1,y];
End;
                        -- Ende Abfrage, ob Spur oder Objekt
if Routenelement.belegt and Routenelement /= FZG.standort then
if Routenelement.inhalt.prodwartend then
zielroute.löschen({1,zielroute.zeigerY}..{1,y});
                                                    --Exit Loop (fehlt noch im Beispiel)
end;
end;
next;
FZG.setzeroute(Zielroute);
else
Print "Fahrzeug "+to_str(?.name)+" befindet sich nicht auf der geplanten Route.";
end;
end;


Hier stoße ich auf das Problem, dass beim Durchlaufen der Zielliste ein Zweispuriger Weg nur mit seiner Spur eingetragen wird und der Code "Bezeichnung:=to_str(Zielroute[1,y]);" ein "Void" erhält. Gibt es hier eine Möglichkeit den Zweispurigen Weg selbst zu addressieren?

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