Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

ROBOOP::Proportional_Derivative Class Reference

#include <controller.h>

List of all members.


Detailed Description

Proportional derivative controller class.

The driving torques can be expressed as

\[ \tau = K_p(q_d-q) + K_d(\dot{q}_d-q) \]

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

Definition at line 246 of file controller.h.


Public Member Functions

 Proportional_Derivative (const short dof=1)
 Constructor.
 Proportional_Derivative (const Robot_basic &robot, const DiagonalMatrix &Kp, const DiagonalMatrix &Kd)
 Constructor.
 Proportional_Derivative (const Proportional_Derivative &x)
 Copy constructor.
Proportional_Derivativeoperator= (const Proportional_Derivative &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_p(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 tau
 Output torque.
ColumnVector zero3
 $3\times 1$ zero vector.
DiagonalMatrix Kp
 Position error gain.
DiagonalMatrix Kd
 Velocity error gain.

Constructor & Destructor Documentation

ROBOOP::Proportional_Derivative::Proportional_Derivative ( const short  dof = 1  ) 

Constructor.

Definition at line 698 of file controller.cpp.

ROBOOP::Proportional_Derivative::Proportional_Derivative ( const Robot_basic robot,
const DiagonalMatrix Kp,
const DiagonalMatrix Kd 
)

Constructor.

Definition at line 707 of file controller.cpp.

ROBOOP::Proportional_Derivative::Proportional_Derivative ( const Proportional_Derivative x  ) 

Copy constructor.

Definition at line 721 of file controller.cpp.


Member Function Documentation

Proportional_Derivative & ROBOOP::Proportional_Derivative::operator= ( const Proportional_Derivative x  ) 

Overload = operator.

Definition at line 733 of file controller.cpp.

ReturnMatrix ROBOOP::Proportional_Derivative::torque_cmd ( Robot_basic robot,
const ColumnVector qd,
const ColumnVector qpd 
)

Output torque.

Definition at line 747 of file controller.cpp.

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

short ROBOOP::Proportional_Derivative::set_Kd ( const DiagonalMatrix Kd_  ) 

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

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

Definition at line 772 of file controller.cpp.

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

short ROBOOP::Proportional_Derivative::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 789 of file controller.cpp.

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


Member Data Documentation

Degree of freedom.

Definition at line 259 of file controller.h.

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

Robot joints positions.

Definition at line 260 of file controller.h.

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

Robot joints velocity.

Definition at line 260 of file controller.h.

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

Robot joints acceleration.

Definition at line 260 of file controller.h.

Output torque.

Definition at line 260 of file controller.h.

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

$3\times 1$ zero vector.

Definition at line 260 of file controller.h.

Referenced by operator=(), and Proportional_Derivative().

Position error gain.

Definition at line 265 of file controller.h.

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

Velocity error gain.

Definition at line 265 of file controller.h.

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


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

ROBOOP v1.21a
Generated Thu Nov 22 00:51:35 2007 by Doxygen 1.5.4