Home > @robot > rne.m

rne

PURPOSE ^

RNE Compute inverse dynamics via recursive Newton-Euler formulation

SYNOPSIS ^

function tau = rne(robot, varargin)

DESCRIPTION ^

RNE Compute inverse dynamics via recursive Newton-Euler formulation

    TAU = RNE(ROBOT, Q, QD, QDD)
    TAU = RNE(ROBOT, [Q QD QDD])

 Returns the joint torque required to achieve the specified joint position,
 velocity and acceleration state.

 Gravity vector is an attribute of the robot object but this may be 
 overriden by providing a gravity acceleration vector [gx gy gz].

    TAU = RNE(ROBOT, Q, QD, QDD, GRAV)
    TAU = RNE(ROBOT, [Q QD QDD], GRAV)

 An external force/moment acting on the end of the manipulator may also be
 specified by a 6-element vector [Fx Fy Fz Mx My Mz].

    TAU = RNE(ROBOT, Q, QD, QDD, GRAV, FEXT)
    TAU = RNE(ROBOT, [Q QD QDD], GRAV, FEXT)

 where Q, QD and QDD are row vectors of the manipulator state; pos, vel, 
 and accel.

 The torque computed also contains a contribution due to armature
 inertia.

 RNE can be either an M-file or a MEX-file.  See the manual for details on
 how to configure the MEX-file.  The M-file is a wrapper which calls either
 RNE_DH or RNE_MDH depending on the kinematic conventions used by the robot
 object.

 See also: ROBOT, ACCEL, GRAVLOAD, INERTIA.

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 %RNE Compute inverse dynamics via recursive Newton-Euler formulation
0002 %
0003 %    TAU = RNE(ROBOT, Q, QD, QDD)
0004 %    TAU = RNE(ROBOT, [Q QD QDD])
0005 %
0006 % Returns the joint torque required to achieve the specified joint position,
0007 % velocity and acceleration state.
0008 %
0009 % Gravity vector is an attribute of the robot object but this may be
0010 % overriden by providing a gravity acceleration vector [gx gy gz].
0011 %
0012 %    TAU = RNE(ROBOT, Q, QD, QDD, GRAV)
0013 %    TAU = RNE(ROBOT, [Q QD QDD], GRAV)
0014 %
0015 % An external force/moment acting on the end of the manipulator may also be
0016 % specified by a 6-element vector [Fx Fy Fz Mx My Mz].
0017 %
0018 %    TAU = RNE(ROBOT, Q, QD, QDD, GRAV, FEXT)
0019 %    TAU = RNE(ROBOT, [Q QD QDD], GRAV, FEXT)
0020 %
0021 % where Q, QD and QDD are row vectors of the manipulator state; pos, vel,
0022 % and accel.
0023 %
0024 % The torque computed also contains a contribution due to armature
0025 % inertia.
0026 %
0027 % RNE can be either an M-file or a MEX-file.  See the manual for details on
0028 % how to configure the MEX-file.  The M-file is a wrapper which calls either
0029 % RNE_DH or RNE_MDH depending on the kinematic conventions used by the robot
0030 % object.
0031 %
0032 % See also: ROBOT, ACCEL, GRAVLOAD, INERTIA.
0033 
0034 %
0035 % verified against MAPLE code, which is verified by examples
0036 %
0037 
0038 % Copyright (C) 1992-2008, by Peter I. Corke
0039 %
0040 % This file is part of The Robotics Toolbox for Matlab (RTB).
0041 %
0042 % RTB is free software: you can redistribute it and/or modify
0043 % it under the terms of the GNU Lesser General Public License as published by
0044 % the Free Software Foundation, either version 3 of the License, or
0045 % (at your option) any later version.
0046 %
0047 % RTB is distributed in the hope that it will be useful,
0048 % but WITHOUT ANY WARRANTY; without even the implied warranty of
0049 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0050 % GNU Lesser General Public License for more details.
0051 %
0052 % You should have received a copy of the GNU Leser General Public License
0053 % along with RTB.  If not, see <http://www.gnu.org/licenses/>.
0054 
0055 
0056 function tau = rne(robot, varargin)
0057     if robot.mdh == 0,
0058         tau = rne_dh(robot, varargin{:});
0059     else
0060         tau = rne_mdh(robot, varargin{:});
0061     end

Generated on Sun 15-Feb-2009 18:09:29 by m2html © 2003