Hallo zusammen,
Ich glaube ich habe dieses Mal eine etwas ungewöhliche Frage und hoffe ihr könnt mir helfen. Ich bin gerade dabei die letzten Verbesserungen an unserer Demozelle zu tätigen. In der Zelle soll ein KR6 Teile aus einem Behälter herausgreifen und auf eine rutsche ablegen. Die Pose der Teile bekomme ich von einer Kamera und einem PC, die mir die Daten in das Base[5] System hineinschreiben. Danach muss sich der Robi nur noch auf den Ursprung des Base-Systems zubewegen und kann das Teil greifen. Soweit funktioniert auch alles ganz gut.
Da der Robi die Teile nach dem Greifen auf eine Rutsche ablegt und so zurück in den Behälter befördert, kommt es aber dazu, dass sich die Teile natürlich am Ende der Rutsche ansammeln. versucht er nun in der nähe der Rutsche zu greifen, ist die Gefahr für eine Kollision leider viel zu hoch. Daher würde ich gerne sobald ich die Positionsdaten vom PC erhalte überprüfen ob das ausgesuchte Teil in der nähe der Rutsche liegt und dann gegebenenfalls eine Meldung an den Bediener rausschicken, dass die Teile durchmischt werden müssen. Dazu müsste man meines Verständnis nach nur die Lage des BASE[5] im World bestimmen und mit vorgegebenen Werten vergleichen. Leider hab ich in meinen Unterlagen aber dazu nichts gefunden, bzw bin ich mir nicht sicher ob ich die Koordinaten der BASE einfach direkt mit vorgegebenen XYZ Werten vergleichen kann. Ich hoffe jemand kann mir da einen kleinen Tipp geben.
schöne Grüße
Bernhard
Bestimmung der Postion eines BASE Systems im Welt System
-
newbiemechatronic -
May 23, 2018 at 8:21 AM -
Thread is Resolved
-
-
Hallo,
der Ursprung deines Base-Koordinatensystems bezieht sich bereits auf das $WORLD-Koordinatensystem. Also ist die Verschiebung zu $WORLD gleich den Ursprungskoordinaten deiner Base. Diese sind in BASE_DATA[ x ] hinterlegt. Dabei unbedingt die Verdehungen beachten, sofern diese nicht gleich 0 sind.
Hoffe das hilft weiter.
Grüße, dax -
Lustige Methode für die Verarbeitung von Kameradaten.
Du fährst also immer auf einen Punkt {X 0, Y 0,Z 0} im Base5.
Genau so gut könntest Du auf die Koordinaten "base_data[5]" im Weltkoordinatensystem fahren.
Also kannst Du auch die Koordinaten des Base5 (base_data[5]) mit denjenigen des kritischen Bereichs vergleichen, und bei Unterschreitung eines Mindestabstands die Warnung ausgeben. -
Ja, ich gebe zu die Methode ist ungewöhlich, kommt aber durch den Lieferanten des Kamera-Systems. Hat zwar im ersten Moment gedauert, aber mittlerweile haben wir auch eine ganz gute Strategie entwickelt den Greifpunkt anzufahren. Vielen Dank für die Tipps.