Joint-Torque control

Hi,

we are working in some research projects and would also like to use an existing UR10(e) as a demonstrator for control algorithms. Is there any way (e.g. low level APIs, own UR-CAPs, etc) we can comand and control the joint torques / currents / voltages? Anything more low level than joint speed?

-Klaus

2 Likes

Hi @klaus.ening,

There is no method for setting the joint torques. The script function “force_mode()” is what get closest. Maybe with the DH-parameters you can do the dynamics calculation from joint torques into tool force/torques
https://www.universal-robots.com/articles/ur-articles/parameters-for-calculations-of-kinematics-and-dynamics/

Hi Ebbe,

thanks for the answer. This sounds like a suboptimal and computation intensive route. I will have a look though.
Any chance the “servoj” “a”-parameter" might be useable in the future? Or to provide a low level “research-interface” ?

-Klaus

Hi @klaus.ening,

I completely agree. I think if the ROS community is having the same need. Then the likelihood is much higher.

Hi @Ebbe,

are there any updates on this?

We would like to use the UR10e on top of 3 additional axes (6+3=9DoF) for a teleoperation application. Our workaround would is to command the torques of the first 3 joints directly to the motor drivers and then mapping the last 6 torques (corresponding to the UR10e) to the UR10e end effector and using forcemode(). This is computationally not great however.

Thank you!

Hi @hannes.gamper,

Unfortunately there is still no way to do this directly. But thank you for sharing your wish.

You might take a look here: URScript_Examples/admittance-control at main · UniversalRobots/URScript_Examples · GitHub. It is in the cartesian space. If it is required to be in joint space maybe you can get inspired and utilize get_joint_torques() and speedj()

Ebbe

You could try the torque control through current control, as torque and current are linearly related. Joint current control is possible. Ref: https://pure.au.dk/ws/files/197603831/Phd_Thesis_Emil_Madsen.pdf

Thank you very much for the reply. We are still interested in a solution.

Can you let me know what the RTDE call would be to set the motor current? I cant find it in the documentation or in the PhD thesis you cited.

Thanks!

In fact, I too don’t know how to write RTDE. I am new to Universal robot.
Also, to apply torque/current control we need to put real time joint position and velocities in the control equation, this is real hurdle I feel.