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

continous paths with joint movements and no stopping at each position

#1
I am new to robodk and struggling with how to make a KUKA robot move in a continuous pattern. I am using the Python API. I am going to test some instruments, and I need to be able to move them continuously along different patterns without the robot taking sudden turns or stopping at each point. And I do also need to change the angles (roll/pitch) along these patterns.

I have checked out addMillingProject / add MachiningProject. But it seems to me they can only take a list of xyz points, and no joint angles?

If I use MoveJ the robot does not take the shortest path, but might suddenly turn to get a better angle, and it stops for every position. The latter might be solved by lots of points and slow speed, but it does not prevent it from suddenly taking a large turn to change the angles.

I read about and tried using the setRounding or setZoneData to smooth the  curves, but it seems it does not prevent it from stopping at each position.
Do you have any other suggestions on how to achieve this?
#2
Do you have a list of joint values or Cartesian points? This example shows 5 different ways you can convert a list of points or joint values to a robot program using the RoboDK API:
https://robodk.com/doc/en/PythonAPI/exam...to-program

setRounding with a rounding value greater than 0 is the right instruction to use at the top of your program if you want to have a smooth movement. For example:
Code:
prog = RDK.AddProgram('MyProgramAPI')
prog.setRounding(10)

# Iterate through your list of joints
for i in range(len(joints)):
   ti = RDK.AddTarget('Auto Target %i' % (i + 1))
   ti.setJoints(joints[i])
   ti.setAsJointTarget()
   prog.MoveL(ti)

For a KUKA robot, this will output the correct C_DIS and C_PTP flags in the linear and joint movements. This will also set the ADVANCE variable to 5 (maximum allowed).
  




Users browsing this thread:
1 Guest(s)