Also ich hab die letzten Tage ein bissche probieren können und es hinbekommen.
Ich deklariere einfach die Variable
Anschließend in der Init-Prozedur kann ich über PoseMult die werkobjektabhänige Position in eine Weltposition transferieren.
Das funktioniert soweit ganz super mit der Einschränkung, dass wenn ein Punkt nachgeteacht, die Weltzone erst nach dem Neustart der aktualisiert wird. Damit kann ich aber erstmal leben.
Vielen Dank für eure Hilfe!
In der Doku steht das stationäre Weltzonen nur in einer POWER ON Eventroutine verwendet werden können, d.h. die Weltzone muss fertig definiert sein, da kann also nichts gerechnet werden während dem Ablauf. In dem Fall hilft Dir CRobT oder sogar nur CPos weiter um den Centerpoint der Weltzone zu bestimmen. Also Greifposition anfahren, dann das im Programm eingefügte CRobT oder CPos einmal ausführen, Daten in Weltzone übernehmen, CRobT oder CPos auskommentieren, Neu starten, fertig.
Über die Posemult brauch ich nichts übernehmen, sondern die Initialisierungsprozedur übernimmt das damit beim Neustart selbst.
Ein mögliches Problem bei den Weltzonen für die SPS ist dass sie nur mitbekommt das etwas passiert aber nicht genau was passiert. Legt der Greifer an derselben Stelle auch ab weiß die SPS nicht in welche Richtung die Bauteildaten kopiert werden sollen. Dafür wäre ein Signal 'Bauteil gegriffen' oder 'Bauteil abgelegt' eindeutiger.
Da der Greifer in meinem Fall eh über die SPS angesteuert wird, hab ich ja die Signale "Greifer offen" und "Greifer zu" so kann ich problemlos die entsprechenden Daten umkopieren.
Dennoch danke für den Einwand!