Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

How to force cartesian coordinates for moves?

#1
Hello
I can't seem to figure out how to get RoboDK to use Cartesian coordinates to define positions. I've messed with every setting I could find. 

I'm working on a palletizing program and I need all the moves to be in relation to the frame I have defined. I have the program start by going to a target above my pallet "AboveA", then progress through some moves and a drop program, then I have it return to AboveA.
The problem is that the first move to AboveA is a joint move that is defined by a joint position. The second time it goes to AboveA is a linear move defined my a cartesian position in relation to frame 2. The joint position does not change if my frame changes, resulting in possible crashes. 

How do I force the software to use a cartesian definition for the position? 
I found some settings in Options>Program that seemed like it would force the output to be cartesian but it doesn't seem to have done anything.
I've made sure I have the latest version and even tried restarting my pc...

I'm using a fanuc r2000 robot with a rj3ib controller

Please advise
Thanks
#2
Looks like I forgot to attach my screen grabs


Attached Files Thumbnail(s)
tree.png    move config.png    settings.png    pallet layer.png   
#3
RoboDK should generate targets in Cartesian data for linear movements to Cartesian targets by default. This will work unless the post processor you use does not support movements to Cartesian targets.

With the setting you changed in Tools-Options-Program and set the setting Output for linear movements to be Cartesian data, you are also forcing the output to be Cartesian even if your targets are defined as joint targets.

What post processor are you using?
Can you send us the RoboDK project file?
#4
Quote:"RoboDK should generate targets in Cartesian data for linear movements to Cartesian targets by default. This will work unless the post processor you use does not support movements to Cartesian targets."

Great. How do I force it to choose linear moves? Joint moves are ideal but not required. I know I can change them after they are generated but I have my palletizing plugin making almost 300 drop routines. 

Quote:"With the setting you changed in Tools-Options-Program and set the setting Output for linear movements to be Cartesian data, you are also forcing the output to be Cartesian even if your targets are defined as joint targets."

I have all of my targets defined with cartesian coordinates (I think). At some point I went through every setting and changed everything to cartesian that I could. If I understand correctly this is what I wanted to do. I need all the moves to be relative to a frame that will be redefined.
Also, I'm using the same target for the first and last move in each program. RoboDk is only defining the first move with a joint position, the other move is defined with cartesian. I'm assuming because it decided to use a joint move for the first one. 

Quote:"What post processor are you using?"
Not sure... I tried (not very hard) to find this and before I came up with a band-aid solution
I think I mentioned above, but I have an FANUC R2000iA with a Rj3iB controller


Quote:"Can you send us the RoboDK project file?"
I'll have to strip out some customer data but I can send it over tomorrow

For the time being I've made a python script that finds and replaces "P[1]" with "P[5]". Since position 1 and 5 are the same target and for some reason position 5 is defined with cartesian coordinates I can just use P5 instead of P1. I'm assuming this is something the post processor could do, but for now I have what I need. 

It would be nice to be able to define what type of move and position is going to be used when setting up the program in the palletizing software.
  




Users browsing this thread:
1 Guest(s)