GCOP  1.0
Public Types | Public Member Functions | Public Attributes
gcop::Body3dAvoidController< nu > Class Template Reference

#include <body3davoidcontroller.h>

Inheritance diagram for gcop::Body3dAvoidController< nu >:
Inheritance graph
[legend]
Collaboration diagram for gcop::Body3dAvoidController< nu >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Matrix< double, nu, 1 > Vectorcd
typedef Matrix< double, 5, 1 > Vector5d

Public Member Functions

 Body3dAvoidController (const Body3d< nu > &sys, Body3dState *xd=0, Vector6d *ad=0, Body3dConstraint *con=0)
virtual bool Set (Vectorcd &u, double t, const Body3dState &x)
virtual bool SetParams (const Vector5d &s)
virtual bool SetContext (const Body3dState &c)

Public Attributes

Body3dController< nu > stabCtrl
GavoidControlleravoidCtrl

Detailed Description

template<int nu = 6>
class gcop::Body3dAvoidController< nu >

Controller combining rigid body stablization and gyroscopic avoidance This basically combines two existing controller from DGC. The controller has 5 parameters s containing: rot_Kp, rot_Kd, trans_Kp, trans_Kd, obst_K

Author: Marin Kobilarov, 2015


Member Typedef Documentation

template<int nu = 6>
typedef Matrix<double, 5, 1> gcop::Body3dAvoidController< nu >::Vector5d
template<int nu = 6>
typedef Matrix<double, nu, 1> gcop::Body3dAvoidController< nu >::Vectorcd

Constructor & Destructor Documentation

template<int nu>
gcop::Body3dAvoidController< nu >::Body3dAvoidController ( const Body3d< nu > &  sys,
Body3dState xd = 0,
Vector6d ad = 0,
Body3dConstraint con = 0 
)

BODY3D PD controller

Parameters:
syssystem
xddesired state (optional, set to origin by default)
addesired acceleration (optional, set to zero by default)
conobstacle constraint (optional)

References gcop::Body3dAvoidController< nu >::avoidCtrl.


Member Function Documentation

template<int nu = 6>
virtual bool gcop::Body3dAvoidController< nu >::Set ( Vectorcd u,
double  t,
const Body3dState x 
) [virtual]

Feedback controller of the form u = k(t, x)

Parameters:
ucontrols
ttime
xstate
Returns:
true if arguments are valid, false if e.g. x is infeasible

Implements gcop::Controller< Body3dState, Matrix< double, nu, 1 >, Matrix< double, 5, 1 >, Body3dState >.

template<int nu>
bool gcop::Body3dAvoidController< nu >::SetContext ( const Body3dState c) [virtual]

Set context

Returns:
true if arguments are valid, false if e.g. s is infeasible

Reimplemented from gcop::Controller< Body3dState, Matrix< double, nu, 1 >, Matrix< double, 5, 1 >, Body3dState >.

template<int nu>
bool gcop::Body3dAvoidController< nu >::SetParams ( const Vector5d s) [virtual]

Set controller parameters

Returns:
true if arguments are valid, false if e.g. s is infeasible

Reimplemented from gcop::Controller< Body3dState, Matrix< double, nu, 1 >, Matrix< double, 5, 1 >, Body3dState >.


Member Data Documentation

template<int nu = 6>
Body3dController<nu> gcop::Body3dAvoidController< nu >::stabCtrl

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