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

Modify kinematic parameters dynamically or create targets as variables


Is there any workaround to modify kinematic parameters dynamically? I have the measurements and I know the deviation of each robot joint during the warm-up period and I would like to modify the kinematic parameters as a function of time or temperature. Or it is possible to create the targets as variables (via script or a modified post processor ?). 

What I am trying to achieve is to correct the robot targets or joint values during the warm-up period in hope of improving at least a little the robot's repeatability or precision. 

Does anyone knows if it is possible to add such a parameter in the robot programming file (external temperature or at least a time counter from the robot start) and create some variables function of these?

Best regards,
Hi Cozmin,

Take a look at this:

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

Hello again,

I am still struggling a little with trying to modify some kinematic parameters of IRB 140 robot. Is there any way to model a mechanism that has more parameters ? What I mean is I have placed the reference frame of each joint as close as I could in their real positions.  That means reference frames are not all aligned in a middle plane.

Do you think is any workaround to create such mechanism and compute inverse-kinematic?
Check attached images, it will be much clear what I mean.

Thank you,

Attached Files Thumbnail(s)
Replied only to keep the post alive. Still interested in the second reply (the one with the picture attached). Thank you.
Maybe you are looking for the d2 parameter to model robots like Staubli robots?

Otherwise, it is not possible to have different internal references.
It seems that d2 is not enough because during warmup all 6 axis are shifted (position and orientation also). This means, DH, DHM should not be considered when defining robot axes. Each reference frame needs to be defined (in relation with previous ones) by all 6 parameters (as in general coordinate transformations) X,Y,Z, rotX, rotY, rotZ. I am intrigued by the fact that Mitsubishi has the option for thermal compensation for some of their robots ( but they don't specify nowhere how they do it but it seems it is a software compensation that alters kinematic parameters of the robot in function of temperatures (this is what I am trying to do also with my ABB IRB140 robot).  I have tried some other softwares such as RobotStudio or Process Simulate, and in those the mechanism creation wizard allows each joint reference axis to be defined by all 6 parameters (3 coordinates and  3 angles for orientation). But that is all and it is a dead end for me because after the creation of the mechanism these values become constant. I don't also know what Inverse Kinematics solver they use because it seems that id doesn't rely on the DH or DHM). I have tried also Unity and Blender. They seems to be able to solve IK for many joints that are placed as I explained using FAST IK or FINAL IK ( solvers based on previos FABRIK). I have also tried in RoboDK to stack 6 mechanisms each one composed by 1 rotational axis but this is useless also because for such mechanism the IK can't be computed in RDK. Do you think it would be possible to have another (let's say beta) version of the Build Mechanism function that would allow creation of a mechanism based on joints positions defined by all 6 parameters? 

In other order of words, this is a long post but I am sure other people are interested too in this subject. To simplify the question, do you think it is possible to compute IK based on a model defined like in the following attached picture?

Attached Files Thumbnail(s)
Replied only to keep the post up. Still looking for a solution and think subject of thermal compensation is still interesting.

Users browsing this thread:
1 Guest(s)