Homepage Demos Overview Downloads Tutorials Reference
Credits

ROBOOP::Computed_torque_method Class Reference

#include <controller.h>

List of all members.


Detailed Description

Computer torque method controller class.

The dynamic model of a robot manipulator can be expressed in joint space as

\[ B(q)\ddot{q} + C(q,\dot{q})\dot{q} + D\dot{q} + g(q) = \tau - J^T(q)f \]

The driving torques can be expressed as

\[ \tau = B(q)\big(\ddot{q}_d + K_d(\dot{q}_d-\dot{q}) + K_p(q_d-q)\big) + C(q,\dot{q})\dot{q} + D\dot{q} + g(q) + J^T(q)f \]

where $K_p$, $K_d$ are diagonal positive definie matrix.

Definition at line 215 of file controller.h.

Public Member Functions

 Computed_torque_method (const short dof=1)
 Constructor.
 Computed_torque_method (const Robot_basic &robot, const DiagonalMatrix &Kp, const DiagonalMatrix &Kd)
 Constructor.
 Computed_torque_method (const Computed_torque_method &x)
 Copy constructor.
Computed_torque_methodoperator= (const Computed_torque_method &x)
 Overload = operator.
ReturnMatrix torque_cmd (Robot_basic &robot, const ColumnVector &qd, const ColumnVector &qpd)
 Output torque.
short set_Kd (const DiagonalMatrix &Kd)
 Assign the velocity error gain matrix $K_d(i,i)$.
short set_Kp (const DiagonalMatrix &Kp)
 Assign the position error gain matrix $K_p(i,i)$.

Private Attributes

int dof
 Degree of freedom.
ColumnVector q
 Robot joints positions.
ColumnVector qp
 Robot joints velocity.
ColumnVector qpp
 Robot joints acceleration.
ColumnVector zero3
 $3\times 1$ zero vector.
DiagonalMatrix Kp
 Position error gain.
DiagonalMatrix Kd
 Velocity error gain.


Constructor & Destructor Documentation

ROBOOP::Computed_torque_method::Computed_torque_method const short  dof = 1  ) 
 

Constructor.

Definition at line 586 of file controller.cpp.

ROBOOP::Computed_torque_method::Computed_torque_method const Robot_basic robot,
const DiagonalMatrix Kp,
const DiagonalMatrix Kd
 

Constructor.

Definition at line 596 of file controller.cpp.

ROBOOP::Computed_torque_method::Computed_torque_method const Computed_torque_method x  ) 
 

Copy constructor.

Definition at line 610 of file controller.cpp.


Member Function Documentation

Computed_torque_method & ROBOOP::Computed_torque_method::operator= const Computed_torque_method x  ) 
 

Overload = operator.

Definition at line 622 of file controller.cpp.

short ROBOOP::Computed_torque_method::set_Kd const DiagonalMatrix Kd_  ) 
 

Assign the velocity error gain matrix $K_d(i,i)$.

Returns:
short: 0 or WRONG_SIZE if the matrix is not $dof \times dof$.

Definition at line 661 of file controller.cpp.

Referenced by Computed_torque_method(), and ROBOOP::Control_Select::set_control().

short ROBOOP::Computed_torque_method::set_Kp const DiagonalMatrix Kp_  ) 
 

Assign the position error gain matrix $K_p(i,i)$.

Returns:
short: 0 or WRONG_SIZE if the matrix is not $dof \times dof$.

Definition at line 678 of file controller.cpp.

Referenced by Computed_torque_method(), and ROBOOP::Control_Select::set_control().

ReturnMatrix ROBOOP::Computed_torque_method::torque_cmd Robot_basic robot,
const ColumnVector qd,
const ColumnVector qpd
 

Output torque.

Definition at line 636 of file controller.cpp.

Referenced by ROBOOP::Dynamics::xdot().


Member Data Documentation

int ROBOOP::Computed_torque_method::dof [private]
 

Degree of freedom.

Definition at line 228 of file controller.h.

Referenced by Computed_torque_method(), operator=(), set_Kd(), set_Kp(), and torque_cmd().

DiagonalMatrix ROBOOP::Computed_torque_method::Kd [private]
 

Velocity error gain.

Definition at line 234 of file controller.h.

Referenced by Computed_torque_method(), operator=(), set_Kd(), and torque_cmd().

DiagonalMatrix ROBOOP::Computed_torque_method::Kp [private]
 

Position error gain.

Definition at line 234 of file controller.h.

Referenced by Computed_torque_method(), operator=(), set_Kp(), and torque_cmd().

ColumnVector ROBOOP::Computed_torque_method::q [private]
 

Robot joints positions.

Definition at line 230 of file controller.h.

Referenced by Computed_torque_method(), operator=(), and torque_cmd().

ColumnVector ROBOOP::Computed_torque_method::qp [private]
 

Robot joints velocity.

Definition at line 230 of file controller.h.

Referenced by Computed_torque_method(), operator=(), and torque_cmd().

ColumnVector ROBOOP::Computed_torque_method::qpp [private]
 

Robot joints acceleration.

Definition at line 230 of file controller.h.

Referenced by Computed_torque_method(), operator=(), and torque_cmd().

ColumnVector ROBOOP::Computed_torque_method::zero3 [private]
 

$3\times 1$ zero vector.

Definition at line 230 of file controller.h.

Referenced by Computed_torque_method(), operator=(), and torque_cmd().


The documentation for this class was generated from the following files:

ROBOOP v1.21a
Generated Tue Jan 4 15:42:30 2005 by Doxygen 1.4.0