Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Extracting TCP coordinates from RoboDK
#1
Hello, I have a question regarding to recording or extracting the TCP coordinates. 

To import curves or points and let the robot follow them is easy, but is it possible to do it inversely? For example, I define some points in RoboDK and set a CIRC or LIN function for KUKA robot, as shown in the picture below:

   

And is it possible to extract the cartesian coordinates of the points from the yellow auto-generated curves (not only the coordinates of the targets I defined) shown in the above picture that RoboDK made?

Thank you very much.
#2
Hi Robo,

I don't think there's a specific feature for that, but I see many ways to access this information.

What exactly is your goal here? Do you want to use that information on the robot or in RoboDK?

Jeremy
Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel


#3
(12-01-2020, 07:18 PM)Jeremy Wrote: Hi Robo,

I don't think there's a specific feature for that, but I see many ways to access this information.

What exactly is your goal here? Do you want to use that information on the robot or in RoboDK?

Jeremy

Hi Jeremy,

We have a laser scanner that we want to use in combination with the robot and we want to extract the points of the full route of the TCP of the robot, in order to know exactly where the scanner passed through. For the extracted points of the curves, we can then take it to any programming software, let's say MATLAB, for further route plotting. What are the possible ways to access the information of these paths?

Robo
#4
Hi Robo, 

OK, I see. 

One simple option would be to go to:
"Tools"->"Options"->"Program" and modify the maximum step size of the generated program. 

   

That will split lines into small portions. 
I think it will also work for the circular motion with the "Maximum Arc size".

So you know, "-1" means the option is disabled.

Note that this option will only affect the post-processed program, you won't see any difference in the simulation environment. 

How do you plan on bringing the information to Matlab? 
We already have a CSV post-processor that will generate the program in a .csv format easy to manipulate later. 



Jeremy
Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel


#5
(12-02-2020, 07:46 PM)Jeremy Wrote: Hi Robo, 

OK, I see. 

One simple option would be to go to:
"Tools"->"Options"->"Program" and modify the maximum step size of the generated program. 



That will split lines into small portions. 
I think it will also work for the circular motion with the "Maximum Arc size".

So you know, "-1" means the option is disabled.

Note that this option will only affect the post-processed program, you won't see any difference in the simulation environment. 

How do you plan on bringing the information to Matlab? 
We already have a CSV post-processor that will generate the program in a .csv format easy to manipulate later. 



Jeremy

Hi Jeremy,

Thanks a lot! The method worked really well. Actually it doesn’t have to be for Matlab, Matlab is just an example, .csv is also fine. However, I do have another question. 

What if we take it to a further step, in which we also want to know the time at which the robot is at what point? Is that possible? 

For example, robot TCP reaches [1,1,1] at 0.1 sec and reaches [2,2,2] at 0.15 sec. Can the data be accessed/recorded in addition to those extracted points? 

Thank you in advance! 

Robo
#6
Hi Robo,

Not really.
Cycle time in RoboDK are estimations assuming a trapezoidal speed profile.
This provides good enough results for cycle time estimation, but won't be that accurate for what you are describing.
We don't really provide that information either, but you could calculate the same kind of estimation we do for each point by combining distance between points, max speed, and acceleration.

But many things on the real robot could false this estimate.

Jeremy
Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel


#7
(12-04-2020, 04:11 AM)Jeremy Wrote: Hi Robo,

Not really.
Cycle time in RoboDK are estimations assuming a trapezoidal speed profile.
This provides good enough results for cycle time estimation, but won't be that accurate for what you are describing.
We don't really provide that information either, but you could calculate the same kind of estimation we do for each point by combining distance between points, max speed, and acceleration.

But many things on the real robot could false this estimate.

Jeremy

Hi Jeremy,

Thank you very much for your help, I will try it out with the calculation method you suggested.

Just one more question back to exporting the points: where can I find the CSV post-processor? I tried to change the post-processor from the default "KUKA KRC2" into "KUKA CamRob CSV" and then export the program, but the exported file is blank, and "KUKA CamRob CSV" is the only CSV post-processor I can find in the post-processor list (as shown below).

   

Robo
#8
Hi Robo, 

You need to go higher is the list. 

The "White" post-processor are legacy ones dating from the first version of RoboDK. 
If you scroll up, you should see the new "Black" ones. There a straight CSV post-processor there. 


   

Hope it helps. 

Jeremy
Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel


#9
(12-04-2020, 06:14 PM)Jeremy Wrote: Hi Robo, 

You need to go higher is the list. 

The "White" post-processor are legacy ones dating from the first version of RoboDK. 
If you scroll up, you should see the new "Black" ones. There a straight CSV post-processor there. 




Hope it helps. 

Jeremy

Hi Jeremy, 

I've searched through the list and still couldn't find the CSV post processor, I've attached the post processor list below:

   

Is it because of the robot I am using? Or the version or RoboDK I am using? I am currently using RoboDK v4.0.1.13451 release date: 2019-11-01.

Robo
#10
Oh, yeah, that's an older version that did not include that specific post-processor.

We are now at version 5.1.3

Jeremy
Find useful information about RoboDK and its features by visiting our Online Documentation and by watching tutorials on our Youtube Channel


  




Users browsing this thread:
1 Guest(s)