Description
Reported by baxter.irt, Jul 28, 2014
What steps will reproduce the problem?
- create robot model (for example stanford manipulator or baxter robot model from https://groups.google.com/a/rethinkrobotics.com/forum/#!mydiscussions/brr-users/5X1-6w-Ja1I)
mdl_stanford - calculate inertia matrix without base transformation
stanf.base = eye(4);
M1 = stanf.inertia(qz) - calculate inertia matrix with abitrary different base transformation
stanf.base = trotz(pi/2)*transl([1;2;3]);
M2 = stanf.inertia(qz)
What is the expected output?
Expected: The inertia matrix should stay the same
What do you see instead?
Output: Inertia matrix changes with base transformation matrix
M1-M2
What version of the product are you using? On what operating system?
Robotics Toolbox 9.9; Linux 64 bit; Should not matter here
Please provide any additional information below.
In rne_dh.m, Line 122 (https://code.google.com/p/matlab-toolboxes-robotics-vision/source/browse/matlab/robot/trunk/@SerialLink/rne_dh.m?r=751#112), the base transformation is added to the vector from the first joint frame to the second joint frame (pstar). By doing this, the lever arm is not calculated for the first joint but for the point [0;0;0]. By removing this line, the problem seems solved.
Please contact me, if this is not a bug and I missed something
Regards,
Moritz Schappler,
[email protected]
Research Assistant at the Institute for Automatic Control, Leibniz Universität Hannover, Germany