May 26, 2019, 09:42:41 AM
Robotforum | Industrial Robots Community

 Frame Manipulation

normal_post Author Topic:  Frame Manipulation  (Read 231 times)

0 Members and 1 Guest are viewing this topic.

May 10, 2019, 03:07:49 PM
Read 231 times
Offline

Iprogram


I have  a simple application where i will have a tray of parts that i will be picking from with a few rows and a few columns. I am trying to do it so the guy setting it up in the field can teach a plane and its good to go. The frame manipulation doesnt seem to work the way i would think it should.

I read the manual but i didnt see much in there showing what the difference was of the Pose_add, Pose_trans ect. but basically i want to only record the first pick position and offset the frame for every other pick. seems simple enough but when i record my first way point i have it set in the move statement of Feature "Plane_1" it doesnt go to the correct spot when i set the feature to Base it goes where i would expect it to.

Attached is a small sample code. I would think that Plane_1 would be actual coordinates but how do i get Posvar into a position based on the Frame i taught? I would think it would be represented as p[.1,0,0,0,0,0]
« Last Edit: May 10, 2019, 03:13:08 PM by Iprogram »

Today at 09:42:41 AM
Reply #1

Advertisement

Guest

May 11, 2019, 02:37:39 AM
Reply #1
Offline

matthewd92


If you want to move relative to the frame of Plane_1 you need to use that in your pose_add, not the waypoint which is giving you coordinates relative to the Base frame of reference.

When you define the plane you can check the box for use as a variable, there will automatically be a variable in the list called something like Plane_1_var that can be used in pose_add and pose_trans

To think about the difference between the two functions, pose_add works in the base frame of reference for x,y,z and pose_trans works in the frame of reference for whatever feature you are using in the formula. Often times the frame of the point does not line up with the base so it depends on how you are trying to move.

Generally if I am trying to move relative to a plane I’m using pose_trans as I want all motion to be dictated by the axes of the plane. You do have to understand how to set the plane points to get the correct axes and UR changed that math around 3.7. Originally planes were defined as the +Y axis was the first two points and then the third point defined +X so you could then derive the +Z axis using the right hand rule. Starting with, I believe, 3.7 they changed that to be the X axis is defined by the first two points and the third point sets the +Y axis. This does make for differences in how you use the planes.  However, planes taught in previous versions maintain the orientation they had previously so no worry that code would react differently on upgrade.


Sent from my iPhone using Tapatalk

May 11, 2019, 11:33:29 AM
Reply #2
Offline

Iprogram



Thank you now it works the way i need it to!

May 11, 2019, 11:36:16 AM
Reply #3
Offline

matthewd92


You’re welcome. Glad I could help


Sent from my iPhone using Tapatalk


Share via facebook Share via linkedin Share via pinterest Share via reddit Share via twitter

xx
String manipulation

Started by r00t8 on Universal Robots

0 Replies
1271 Views
Last post February 15, 2017, 09:35:27 AM
by r00t8
xx
String manipulation

Started by Axel Bäckman on KUKA Robot Forum

2 Replies
211 Views
Last post April 07, 2019, 04:30:57 AM
by panic mode
xx
Fanuc DI/DO Manipulation

Started by bwengren on Fanuc Robot Forum

1 Replies
1270 Views
Last post December 01, 2016, 04:12:20 PM
by dmbj
xx
robot manipulation with neural networks

Started by dugu on Robot Geometry, Linear Algebra, Forward and Inverse Kinematics

3 Replies
4736 Views
Last post November 04, 2014, 01:21:30 PM
by Tuipveus