Autor
|
Thema: Werker mit BE mitwandern lassen (2855 mal gelesen)
|
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 28. Dez. 2005 23:02 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, normalerweise ist es in eM-Plant ja so, dass ein BE auf einen Werker wartet und dieser es dann zur Bearbeitung weitergibt z.B. in eine Einzelstation. Ist es moeglich und wenn ja wie einen Werker bei der Arbeitsoperation an einer Station zu "halten", so dass der Werker dann ueber mehrere Stationen mit "seinem" BE "mitwandert"? Vielen Dank fuer jegliches Bemuehen und Antworten! Viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 29. Dez. 2005 10:54 <-- editieren / zitieren -->
|
math4fun Mitglied
Beiträge: 167 Registriert: 12.12.2005
|
erstellt am: 29. Dez. 2005 10:59 <-- editieren / zitieren --> Unities abgeben: Nur für Werker
Die Bindung eines Teils an einen Werker über mehrere Bearbeitungsschritte hinweg ist mit der Methode broker.engage(ImporterObj,typInt,expTabelle); (engage = belegeMit) möglich. Das ist wirklich nicht so einfach. Ich habe diese Idee über die Modellsammlung "Examples" erhalten: Man geht in eM-Plant auf die Infoseiten im Tabviewer. Dann "Demos und Examples" und dann "Examples": Da öffnet sich ein Dialog: Kategorie "Ressourcen", Thema "Werker", Beispiel "Werker Strategien". In diesem Beispiel wird die Importeranfragesteuerung des Brokers verwendet. ------------------ PM www.math4fun.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 29. Dez. 2005 16:01 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, fuer die Simulation von manuellen Taetigkeiten muss man Werker ja manchmal ueber mehrere Stationen mit "ihrem Werkstueck" schicken. D.h. die Methode belegeMit soll das moeglich machen? Das hilft mir so allerdings nicht viel weiter. Wie stell ich denn die Verbindung zwischen BE und Werker her, etc.? Vielleicht habt Ihr ja ein kleines Beispiel fuer die Steuerung? Danke und viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
math4fun Mitglied
Beiträge: 167 Registriert: 12.12.2005
|
erstellt am: 29. Dez. 2005 16:59 <-- editieren / zitieren --> Unities abgeben: Nur für Werker
Der Broker bekommt eine Importeranfragesteuerung, die als Parameter den Importer (object) und den Typ (integer) bekommt. Die Methode "belegeMit" benötigt nun noch eine Tabelle, in der man den Werkerobjekt einen Dienst zuordnet. Das Kodebeispiel für die Methode "belegeMit" aus der Hilfe ist recht gut. Den Dienst bekommt man mit der Methode "holeAlternativeDienste" des Importers. Die entscheidende Frage ist, wie ich den richtigen Werker finde, der das Teil gerade bearbeitet. In der Importeranfragesteuerung ist das Teil der Bezeichner "@". Nun muss man in einer Tabelle die Zuordnung des Teils (z.B. .BEs.Fördergut:3) zu einen Werkerobjekt (z.B. .Ressourcen.Werker:1) speichern. Beim ersten Bearbeitungsschritt muss diese Zuordnung in die Tabelle geschrieben werden. Nach allen Bearbeitungsschritten eines Teils muss diese Zuordnung wieder gelöscht werden. Wenn es eine bessere Lösung geben sollte, so bin ich sehr interessiert daran. In einer früheren Lösung habe ich die Zuordnung durch einen speziellen Dienst für die Bearbeitung eines einzelnen Teils erreicht, der nur von einem Werker angeboten wurde. Der Aufwand war aber erheblich größer. Darüber hinaus ist eine Auswertung der Dienste unmöglich. Also Hände weg von diesem Ansatz. ------------------ PM www.math4fun.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 29. Dez. 2005 17:36 <-- editieren / zitieren -->
Hi @werker Hast Du Dir das Modell eigentlich mal angeschaut ? Die Verknüpfung Werker <-> Be´s wird zentral in einer Tabelle geführt. Gruss
------------------ DER SIMULATOR |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 29. Dez. 2005 17:38 <-- editieren / zitieren --> Unities abgeben:
Hallo, danke fuer die Muehe erstmal! Also bei mir siehts so aus: Habe mehrere "Montagezellen" (z.B. 3 ES) an denen jeweils unterschiedliche Werker arbeiten mit entsprechenden, zugehoerigen Diensten. D.h. es ist klar, wo die Werker arbeiten! mein Ansatz: Waere es nicht moeglich den BEs beim Eintritt in die jeweilige "Montagezelle" ein Attribut zu geben auf das der Werker dann anspricht und es solange "begleitet" bis das Attribut "variert" wird? Bin gespannt, ob es Moeglichkeiten dazu gibt, denn dann kann man sich doch diese Tabellen sparen... Vielleicht hat ja auch der Simulator noch einen Vorschlag... Viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 29. Dez. 2005 21:42 <-- editieren / zitieren --> Unities abgeben:
Hallo Simulator, habe mir Dein Modell montage06 mal angeschaut... tolles Modell! Hab eine Fragen zu m_belegen, wenn es erlaubt ist: - was heisst lockw. ? - was heisst nwerker ? Ausserdem sind mir die Abbruchbedingungen nicht ganz klar... i>anfragen.ydim; heisst laeuft solange bis i gleich letzte Zeile der Tabelle... (welche Tabelle?)? Ich moechte den Code wirklich verstehen und nicht einfach uebernehmen. Hab mal ein Testmodell von mir eingefuegt, vielleicht hast Du ja einen Vorschlag fuer m_belegen, so dass der eine Werker sein BE begleitet. Vielen Dank und viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 30. Dez. 2005 12:30 <-- editieren / zitieren -->
Hi, hier das Modell mit entsprechenden Kommentaren. Gruss
------------------ DER SIMULATOR |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 30. Dez. 2005 15:16 <-- editieren / zitieren --> Unities abgeben:
Hallo, vielen Dank. Verstehe nun das ganze schon wesentlich besser! Waere es moeglich, damit es wirklich klar wird, dass Du dieses Konzept mal in das mitgeschickte Testmodell einsetzt. Es soll jedes ankommende BE von der ersten Station an bis zur dritten "begleitet" werden. Die neuen, ankommenden BEs an der ersten Station sollen solange warten, bis der Werker sein BE an der letzten, dritten Station zuende bearbeitet hat und wieder zurueckgelaufen ist. Tausend Dank und viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 30. Dez. 2005 15:57 <-- editieren / zitieren -->
Hi, ???? aber das macht das Modell doch, oder ? Über die Variablen pro_zeit =(Prozesszeit) und takt_zeit wird die Anzahl der Werker , die für den Prozess an der jeweiligen Station benötigt werden,bestimmt. Wenn Du in dem Klassenobjekt MS die Pro_zeit = takt_zeit setzt, wird jeweils nur ein Werker angefordert. Dieser Werker wird dann mit dem BE "verheiratet" bis in einer MS-Station die Variable "lockw" auf "false" steht.
------------------ DER SIMULATOR |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 30. Dez. 2005 16:09 <-- editieren / zitieren --> Unities abgeben:
Hallo, ja danke das stimmt. Funktioniert einwandfrei! Waere trotzdem schoen, wenn ich ein Grundmodell haette, aus dem ich das Ganze wirklich verstehen und selber weiterentwickeln kann fuer mein geplantes Modell. Ich weiss Deine Muehe wirklich zu schaetzen!!! Vielen Dank und viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 30. Dez. 2005 17:15 <-- editieren / zitieren -->
Hi, O.K., hier eine abgespeckte Version. Gruss
------------------ DER SIMULATOR |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 30. Dez. 2005 17:30 <-- editieren / zitieren --> Unities abgeben:
Hallo, tausend Dank! Super!!! Habe nun im WerkerPoll nur den Werker W01 aktiviert und der begleitet nun "sein BE". Genauso soll es sein! Wuesstest Du, was ich tun muesste, wenn ich nach Station m03 noch eine weitere Station, sagen wir m04, betreiben will, die aber von einem anderen Werker W02 bedient werden soll, der dann das BE vom voherigen Werker W01 uebernimmt? Normalerweise gibt man ja dem Exporter bestimmte Dienste vor, die dann ja vom Importer jeweils abgefragt werden. Weisst Du ja mit Sicherheit, aber kann ich das verbinden bzw. so zusammen realisieren? Zusammengefasst: Ich will bestimmte Werker an bestimmten Stationen mit dieser "Begleitstrategie" betreiben. Tausend Dank und viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 30. Dez. 2005 20:33 <-- editieren / zitieren -->
Hi, hier eine Variante mit unterschiedlichen Diensten. Es gäbe da noch die Möglichkeit mit einem 2. Broker ("Gruppenleiter") und somit einer 2.Werker(Gruppe) zu arbeiten. D.h. in der Übergabestation wird der 2. Broker eingetragen und somit dann die Werker der 2. Gruppe angefragt. Muss hierueber aber nochmal mit TMX sprechen. Gruss ------------------ DER SIMULATOR [Diese Nachricht wurde von Simulator am 30. Dez. 2005 editiert.] |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 30. Dez. 2005 20:53 <-- editieren / zitieren --> Unities abgeben:
Hallo, Ich danke Dir fuer Deine ausserordentliche Muehe! Bei mir laueft das Modell leider nicht. m_belegen in Zeile 26 dienste_tab.ydim=0 meldet Fehler! Ja, ich stelle mir vor fuer mehrere Montagezellen, die jeweils drei Stationen haben, jeweils einen bestimmten Werker einzusetzen, die Ihr Werkstueck solange begleiten bis es die Zelle verlaesst. Muessen es danach dann an den nachfolgenden Werker uebergeben. Ausserdem waere zu bedenken, dass die BEs in den Zellen Attribute bekommen fuer eine NIO Steuerung. D.h. es kann sein, dass ein BE zur Nacharbeit muss. Die Kroenung sollte es dann sein, dass der Werker "sein" BE dann, im Falle der NIO Meldung, zu einer Nacharbeitstation traegt, repariert und wieder an den Eingang seiner Zelle zureckbringt. Ist das ueberhaupt realisierbar? Mein Problem ist hier, dass es so kompliziert ist die Werker die BEs begleiten zu lassen. Wuerde mich sehr freuen, wenn es eine Loesung gaebe! Tausend Dank und viele Gruesse! PS.: Bin gespannt was TMX dazu sagt!!! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 30. Dez. 2005 22:13 <-- editieren / zitieren -->
Hi, so jetzt geht´s ! kannst die Datei vom ursprünglichen Beitrag nochmal downloaden. Über "lockw" kannst Du ja bestimmen, ob das BE weiter "verheiratet" bleibt mit dem Werker oder nicht. Gruss
------------------ DER SIMULATOR
[Diese Nachricht wurde von Simulator am 30. Dez. 2005 editiert.] |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 30. Dez. 2005 22:17 <-- editieren / zitieren --> Unities abgeben:
|
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 30. Dez. 2005 22:23 <-- editieren / zitieren --> Unities abgeben:
|
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 30. Dez. 2005 22:41 <-- editieren / zitieren --> Unities abgeben:
|
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 30. Dez. 2005 23:03 <-- editieren / zitieren --> Unities abgeben:
Hallo, hier mal das Modell, wie es laufen soll mit 3 Werkern, fuer jeweils 3 verschiedene Bereiche. Muesste nun noch weiterueberlegt werden, wie man einen Werker auf ein Attribut eines BEs anspringen lassen kann. Viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 02. Jan. 2006 12:40 <-- editieren / zitieren -->
Hi, wie bereits besprochen, die Variante mit einem Standarddienst und verschiedenen Brokern (Werkergruppen). s. http://ww3.cad.de/foren/ubb/Forum262/HTML/000296.shtml#000014 Meines Erachtens ist diese Variante fuer die Aufgabenstellung einfacher zu parametrieren, da alle Werker & Importerbausteine den gleichen (Default-) Dienst nutzen. Soll also ein neuer Werker angefragt werden, so muss lediglich der Brokerpfad im Importerbaustein entsprechend gesetzt werden. Gruss ------------------ DER SIMULATOR
[Diese Nachricht wurde von Simulator am 02. Jan. 2006 editiert.] |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 03. Jan. 2006 16:07 <-- editieren / zitieren --> Unities abgeben:
Hallo, vielen Dank fuer das Konzeptmodell. Sieht nach einer sehr guten Loesung aus! Vom Ablauf her ist es grossartig! Nun ist es aber so, dass es mehrere WorkerPools gibt. Wie kann ich die denn zusammen in einem WorkerChart erfassen, um die Werkerstatistiken auslesen zu koennen? Vielen Dank und viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 03. Jan. 2006 18:22 <-- editieren / zitieren -->
Hi, die schnellste Möglichkeit ist, per drag&drop die einzelnen Werker in ein Diagramm ziehen. Gruss
------------------ DER SIMULATOR [Diese Nachricht wurde von Simulator am 03. Jan. 2006 editiert.] |
Ex-Mitglied
|
erstellt am: 03. Jan. 2006 19:08 <-- editieren / zitieren -->
Hi, und so geht´s automatisch. Gruss ------------------ DER SIMULATOR |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 04. Jan. 2006 16:41 <-- editieren / zitieren --> Unities abgeben:
|
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 04. Jan. 2006 22:49 <-- editieren / zitieren --> Unities abgeben:
Hallo, doch noch mal eine Rueckfrage zum Thema... Variable lockw Wenn ich nun einen weiteren Broker und Werkpool hinzufuege um einen weiteren Werker fuer eine weitere Station einzusetzen, kommt die Fehlermeldung lockw unbekannter Name. Kann mir das nicht so recht erklaeren..? Weisst Du warum sich das so verhaelt und wie ich die Fehlermeldung vermeiden kann? Vielen Dank und viele Gruesse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 05. Jan. 2006 00:51 <-- editieren / zitieren -->
Hi, "lockw" ist ein selbstdefiniertes Baustein-Attribut (s. Reiter benutzerdefinierte Attribute)um dem System mitzuteilen, ob eine Verbindung zw. Ressource und Be gesetzt- oder aufgehoben werden soll (true/false). Kopiere die jeweiligen Bausteine im Netz, die die spezifischen Attribute bereits besitzen, dann funktioniert es. Gruss
------------------ DER SIMULATOR [Diese Nachricht wurde von Simulator am 05. Jan. 2006 editiert.] |
Werker Mitglied
Beiträge: 64 Registriert: 14.11.2005
|
erstellt am: 05. Jan. 2006 14:15 <-- editieren / zitieren --> Unities abgeben:
|