rt_inertia - compute the manipulator joint-space inertia matrix[view code]
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(); drawlater(); surf(q2, q3, m11); xgrid(); xtitle("", "q2 (rad)", "q3 (rad)", "m11 (Kg*m^2)"); xset("colormap", jetcolormap(64)); drawnow();
Simulation execution may take a few minutes.
rt_accel, rt_frne, rt_rne, rt_robot,
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