Public Member Functions | Private Attributes | List of all members
Computed_torque_method Class Reference

Computer torque method controller class. More...

#include <controller.h>

Public Member Functions

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

Private Attributes

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

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 220 of file controller.h.

Constructor & Destructor Documentation

Computed_torque_method::Computed_torque_method ( const short  dof = 1)

Constructor.

Definition at line 513 of file controller.cpp.

Computed_torque_method::Computed_torque_method ( const Robot_basic robot,
const DiagonalMatrix Kp,
const DiagonalMatrix Kd 
)

Constructor.

Definition at line 523 of file controller.cpp.

Member Function Documentation

short 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 571 of file controller.cpp.

short 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 588 of file controller.cpp.

ReturnMatrix Computed_torque_method::torque_cmd ( Robot_basic robot,
const ColumnVector qd,
const ColumnVector qpd,
const ColumnVector qppd 
)

Output torque.

Definition at line 537 of file controller.cpp.

Member Data Documentation

int Computed_torque_method::dof
private

Degree of freedom.

Definition at line 232 of file controller.h.

DiagonalMatrix Computed_torque_method::Kd
private

Velocity error gain.

Definition at line 237 of file controller.h.

DiagonalMatrix Computed_torque_method::Kp
private

Position error gain.

Definition at line 237 of file controller.h.

ColumnVector Computed_torque_method::q
private

Robot joints positions.

Definition at line 233 of file controller.h.

ColumnVector Computed_torque_method::qp
private

Robot joints velocity.

Definition at line 233 of file controller.h.

ColumnVector Computed_torque_method::qpp
private

Robot joints acceleration.

Definition at line 233 of file controller.h.

ColumnVector Computed_torque_method::zero3
private

$3\times 1$ zero vector.

Definition at line 233 of file controller.h.


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


kni
Author(s): Martin Günther
autogenerated on Fri Jun 7 2019 22:06:46