Autor
|
Thema: Simtalk: setzeRoute (5708 mal gelesen)
|
Maxii Mitglied
 Beiträge: 3 Registriert: 29.04.2013
|
erstellt am: 29. Apr. 2013 12:04 <-- editieren / zitieren --> Unities abgeben:         
Hallo ein Fahrzeug soll 4 Stationen nacheinander abfahren. Dazu habe ich eine Tabelle erzeugt mit einer (Object-)Spalte, in der die Stationen gespeichert sind. Mittels der setzeRoute Methode habe ich die Tabelle dem Fahrzeug übergeben. Das Fahrzeug fährt komischerweise immer nur zu der Station, die in der letzten Zeile der Tabelle ist. Die anderen Stationen werden gar nicht berücksichtig. Kann mir da jemand weiterhelfen? Wenn ich genau die gleiche Tabelle im Netzwerk erzeuge und diese als Zielort dem Fahrzeug zuweise, fährt das Fahrzeug alle Stationen ab. Ich muss die Tabelle aber leider als Datentyp in Simtalk erstellen und in Simtalk habe ich kein Weg gefunden, dem Fahrzeug die Tabelle als Zielort zuweisen. Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mattib Mitglied Student / CAD-Konstrukteur

 Beiträge: 28 Registriert: 13.06.2004 SW08/10/12,Abaqus 6.8-6.10, PlantSimulation 10.1 Win7,HP Z800 24GB
|
erstellt am: 29. Apr. 2013 13:40 <-- editieren / zitieren --> Unities abgeben:          Nur für Maxii
Hallo, zuerst ein Auszug aus der Hilfe aus dem Punkt "setzeRoute / setRoute" ---- Die Methode setzeRoute schickt das Fahrzeug auf bestimmten Objekten zu seinem Ziel. Der Parameter des Datentyps Table enthält, in der ersten Spalte (des Datentyps Object), die Objekte entlang der Route. Wenn das letzte anzufahrende Objekt nicht das Zielobjekt des Fahrzeugs ist, fügt Plant Simulation das Zielobjekt automatisch zur Route hinzu. ---- man muss beachten dass mit setzeRoute nur die Elemente vorgegeben werden auf dem sich das Fahrzeug befindet bzw. fährt vorgegeben werden können, dh. verschiedene Weg, nicht jedoch die Zielorte. Ich habe eine ähnliche Anwendung und ich löse das Problem mit einer Zielortliste (Liste, Kartei, Stapel) die den Zielort vorgibt und als Zielortliste im Fahrzeug hinterlegt ist (die drei verschieden Möglichkeiten (Liste, Kartei, Stapel, kannst du in der Hilfe nachlesen, was Vor- und Nachteile der jeweiligen Möglichkeiten sind). Grüße Matthias
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bon Simul Mitglied Simulant
   
 Beiträge: 1250 Registriert: 08.08.2011 Plant Simulation 10.1, 11 ff Professional
|
erstellt am: 29. Apr. 2013 13:53 <-- editieren / zitieren --> Unities abgeben:          Nur für Maxii
Zitat:
Wenn ich genau die gleiche Tabelle im Netzwerk erzeuge und diese als Zielort dem Fahrzeug zuweise, fährt das Fahrzeug alle Stationen ab.
So funktioniert es auch in SimTalk:
Code:
Fahrzeug.zielort:=IhreZieltabelle;
Sorry! [Diese Nachricht wurde von Bon Simul am 29. Apr. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Maxii Mitglied
 Beiträge: 3 Registriert: 29.04.2013
|
erstellt am: 29. Apr. 2013 14:39 <-- editieren / zitieren --> Unities abgeben:         
@Bon Simul Es gibt keine Variable "Ziel", zumindestens nicht bei der Version 10.0.2. Und der Variable "Zierlort" kann man nur ein String oder ein Objekt zuweisen. @mattib Könntest du das mit der Zielortliste nochmal genauer erklären? Wie hinterlegst du diese beim Fahrzeug? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mattib Mitglied Student / CAD-Konstrukteur

 Beiträge: 28 Registriert: 13.06.2004 SW08/10/12,Abaqus 6.8-6.10, PlantSimulation 10.1 Win7,HP Z800 24GB
|
erstellt am: 29. Apr. 2013 15:06 <-- editieren / zitieren --> Unities abgeben:          Nur für Maxii
Hallo, der Variable .Zielort kannst du eben eine der drei möglichen Arten von Listen hinterlegen (Stapel, Warteliste, Kartei), die du unter dem Menü Informationsfluss findest und ins Netzwerk ziehen kannst, in diesen Listen kannst du dann deine Zielorte eintragen, zB ich glaube bei einer Warteliste löscht das Fahrzeug bei erreichen des aktuellen (1.Zeile) Zielortes die erste Zeile (erreichter Zielort) heraus und die nachflogenden rutschen nach, somit sollte ein stetiges abfahren möglich sein. Grüße Matthias Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Maxii Mitglied
 Beiträge: 3 Registriert: 29.04.2013
|
erstellt am: 29. Apr. 2013 15:14 <-- editieren / zitieren --> Unities abgeben:         
|
mattib Mitglied Student / CAD-Konstrukteur

 Beiträge: 28 Registriert: 13.06.2004 SW08/10/12,Abaqus 6.8-6.10, PlantSimulation 10.1 Win7,HP Z800 24GB
|
erstellt am: 29. Apr. 2013 16:00 <-- editieren / zitieren --> Unities abgeben:          Nur für Maxii
Hallo, Zitat aus der Hilfe: ---- create Syntax: <Lokale_Variable>.create[(<integer> )]; Die Methode create baut eine Datenstruktur ohne Einträge in der mit <Lokale_Variable> bezeichneten lokalen Variable auf. Der optional Parameter des Datentyps Integer bezeichnet die Anzahl der Zeilen in der Liste oder Tabelle. Beispiel: is Auftragsliste : table[string,real]; do Auftragsliste.create; Auftragsliste[1,1] := "Dosen"; Auftragsliste[2,1] := 3000.0; Auftragsliste.forget; -- löscht die Tabelle Auftragsliste.create(4); -- erstellt die Tabelle mit 4 Zeilen end; Die Methode create gilt nur für lokale Variablen der Datentypen List, Queue, Stack und Table. ---- Als Letztes steht das dies nur lokal (in einer Methode) möglich ist. Aber dadurch das dein Fahrzeug ja immer das gleich im Netzwerk ist, kannst du diese Zielortliste meines Achtens ja auch fix im Netzwerk belassen einmal ins Netzwerk ziehen) und musst diese nicht jedesmal mit der Methode erzeugen. Der Zugriff auf diese Liste ist dann aus jeder Methode im Netzwerk möglich. Grüße Matthias Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Newbie0815 Mitglied

 Beiträge: 11 Registriert: 20.05.2014
|
erstellt am: 20. Mai. 2014 21:11 <-- editieren / zitieren --> Unities abgeben:          Nur für Maxii
Hallo, ich bin auf diesen Beitrag gestoßen und auch neu hier. Ich stehe ziemlich am Anfang beim Arbeiten mit Simulationen und vorallem das Programmieren bereitet mir große Probleme. Das Thema Simulation interessiert mich aber sehr und ich will das lernen. Zu den Beiträgen oben: Wo wird die Methode hinterlegt, die auf die Tabelle zugreift? Direkt auf dem Fahrzeug? Wie kann eine solche Route an ein Fahrzeug übergeben werden? Es wäre für mein Verständnis sehr hilfreich mal einen solchen Quelltext zu sehen, da ich mir ein ziemlich ähnliche Simulation vorgenommen habe. Schonmal vielen Dank! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Newbie0815 Mitglied

 Beiträge: 11 Registriert: 20.05.2014
|
erstellt am: 20. Mai. 2014 22:31 <-- editieren / zitieren --> Unities abgeben:          Nur für Maxii
Ich hatte mir das so vorgestellt, das die Station in einer Tabelle hinterlegt wird. Da es sich im mehrere Aufträge handelt, will ich dann immer die erste Zeile nach der Erledigung löschen. Den Anfang und den Schluss habe ich soweit, nur tue ich mich mit dem Aufträge zuweise sehr schwer und brächte hier mal eine Hilfestellung. Im Anhang mein Quellcode... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |