As a part of my master’s thesis, for implementing the inverse dynamics algorithm to an upper-body bi-manual robot base on my supervisor paper, Dr. Mohammad Shahbazi, in a 3D simulator, I had to work with Gazebo. First the URDF model of the robot was prepared by the help of my teammate, Ms Nooshin Kohli, then other dependencies like torque controllers of joints, launch file, and etc attached, finally of courese the script of algorithm was written by a great deal of work. Actually the fundaments of algorithm for a 2D simulation was obtained beforehand by my supervisor and I developed it to 3D simulation in Gazebo.
Although the control approach is dynamic cancellation, It was cumbersome to adjust joints’ damping
and friction
in URDF model.
First the desired trajectory of the object (green box) is calculated, a triangular path in this case. After that, regrading dynamic equations of robot and object are derived in joint space, it is necessary to determine desired joint position, velocity and acceleration.
What is notable in this method is that, the effect of force and torque of object in hands’ contacts (end-effectors) of robot, removes by a projector, obtained from orthogonal decomposition of a specially defined jacobian. Therefore the total dynamics equation becomes free from the effect of the object, so it is possible to specify inverse dynamics of arms analytically.
Some of the results are plotted below,
I have uploaded the video of the simulation on my LinkedIn profile, check here, please. Also, the source code is on my GitHub page, but I’m not allowed to reveal it yet.