Scilab Function
Last update : October 2007

rt_inertia - compute the manipulator joint-space inertia matrix[view code]

Calling Sequence

M = rt_inertia(robot, q)



This function computes the joint-space inertia matrix which relates joint torques to joint accelerations. If q is a vector (p = 1), then M is an n-by-n symmetric matrix. Else (p > 1) M is a p-dimensional array in which each entry is the manipulator joint-space inertia matrix for the corresponding row in q.

Note that if robot contains motor inertia parameters, then motor inertia, referred to the link reference frame, will be added to the diagonal of each matrix in M.


   // To show how the inertia "seen" by the waist joint of a Puma 560
   // varies as a function of joint angles q2 and q3, the following
   // code could be used.

   // manipulator's pose definition
   [q2, q3] = meshgrid(-%pi:0.2:%pi);
   [r, c] = size(q2);
   q = [zeros(r*c,1) q2(:) q3(:) zeros(r*c,3)];

   // rt_inertia() execution
   exec <PATH>/models/rt_puma560.sce;           // load Puma 560 parameters
   M = rt_inertia(p560, q);                     // compute inertia matrix

   // results plotting
   M11 = M(1, 1, :); m11 = matrix(M11, r, c);   // reshape M11
   cfh = scf();
   surf(q2, q3, m11);
   xtitle("", "q2 (rad)", "q3 (rad)", "m11 (Kg*m^2)");
   xset("colormap", jetcolormap(64));


Simulation execution may take a few minutes.

See Also

rt_accel,  rt_frne,  rt_rne,  rt_robot,  


original Matlab version by

Peter I. Corke CSIRO Manufacturing Science and Technology

Scilab implementation by

Matteo Morelli Interdepartmental Research Center "E. Piaggio", University of Pisa


Corke, P.I. "A Robotics Toolbox for MATLAB", IEEE Robotics and Automation Magazine, Volume 3(1), March 1996, pp. 24-32

M.W. Walker and D.E. Orin. Efficient dynamic computer simulation of robotic mechanisms. ASME Journal of Dynamic Systems, Measurement and Control, 104:205-211, 1982

Get the Robotics Toolbox for Scilab/Scicos at Fast, secure and Free Open Source software downloads