|
iCub-main
|
A Base class for defining a Link with standard Denavit-Hartenberg convention. More...
#include <iKinFwd.h>
Inheritance diagram for iCub::iKin::iKinLink:Public Member Functions | |
| iKinLink (double _A, double _D, double _Alpha, double _Offset, double _Min=-iCub::ctrl::CTRL_PI, double _Max=iCub::ctrl::CTRL_PI) | |
| Constructor. | |
| iKinLink (const iKinLink &l) | |
| Creates a new Link from an already existing Link object. | |
| iKinLink & | operator= (const iKinLink &l) |
| Copies a Link object into the current one. | |
| void | setConstraint (bool _constrained) |
| Sets the constraint status. | |
| bool | getConstraint () const |
| Returns the constraint status. | |
| void | setVerbosity (unsigned int _verbose) |
| Sets Link verbosity level. | |
| unsigned int | getVerbosity () const |
| Returns the current Link verbosity level. | |
| bool | isBlocked () const |
| Returns the Link blocking status. | |
| double | getA () const |
| Returns the Link length A. | |
| void | setA (const double _A) |
| Sets the Link length A. | |
| double | getD () const |
| Returns the Link offset D. | |
| void | setD (const double _D) |
| Sets the Link offset D. | |
| double | getAlpha () const |
| Returns the Link twist Alpha. | |
| void | setAlpha (const double _Alpha) |
| Sets the Link twist Alpha. | |
| double | getOffset () const |
| Returns the joint angle offset. | |
| void | setOffset (const double _Offset) |
| Sets the joint angle offset. | |
| double | getMin () const |
| Returns the joint angle lower bound. | |
| void | setMin (const double _Min) |
| Sets the joint angle lower bound. | |
| double | getMax () const |
| Returns the joint angle upper bound. | |
| void | setMax (const double _Max) |
| Sets the joint angle higher bound. | |
| double | getAng () const |
| Returns the current joint angle value. | |
| double | setAng (double _Ang) |
| Sets the joint angle value. | |
| yarp::sig::Matrix | getH (bool c_override=false) |
| Computes the homogeneous transformation matrix H of the Link. | |
| yarp::sig::Matrix | getH (double _Ang, bool c_override=false) |
| Same as getH() with specification of new joint angle position. | |
| yarp::sig::Matrix | getDnH (unsigned int n=1, bool c_override=false) |
| Computes the derivative of order n of the homogeneous transformation matrix H with respect to the joint angle. | |
| virtual | ~iKinLink () |
| Default destructor. | |
| virtual double | setDAng (const double) |
| virtual double | setD2Ang (const double) |
| virtual void | setPosVelAcc (const double, const double, const double) |
| virtual bool | setDynamicParameters (const double, const yarp::sig::Matrix &, const yarp::sig::Matrix &, const double, const double, const double, const double) |
| virtual bool | setDynamicParameters (const double, const yarp::sig::Matrix &, const yarp::sig::Matrix &) |
| virtual bool | setStaticParameters (const double, const yarp::sig::Matrix &) |
| virtual bool | setInertia (const yarp::sig::Matrix &) |
| virtual void | setMass (const double) |
| virtual bool | setCOM (const yarp::sig::Matrix &) |
| virtual bool | setCOM (const yarp::sig::Vector &) |
| virtual bool | setForce (const yarp::sig::Vector &, const yarp::sig::Vector &) |
| virtual bool | setMoment (const yarp::sig::Vector &) |
| virtual void | setTorque (const double) |
| virtual const yarp::sig::Matrix & | getInertia () const |
| virtual double | getMass () const |
| virtual double | getIm () const |
| virtual double | getKr () const |
| virtual double | getFs () const |
| virtual double | getFv () const |
| virtual const yarp::sig::Matrix & | getCOM () const |
| virtual double | getDAng () const |
| virtual double | getD2Ang () const |
| virtual const yarp::sig::Matrix & | getR () |
| virtual const yarp::sig::Matrix & | getRC () |
| virtual const yarp::sig::Vector & | getr () |
| virtual const yarp::sig::Vector & | getrC () |
| virtual const yarp::sig::Vector & | getW () const |
| virtual const yarp::sig::Vector & | getdW () const |
| virtual const yarp::sig::Vector & | getdWM () const |
| virtual const yarp::sig::Vector & | getLinAcc () const |
| virtual const yarp::sig::Vector & | getLinAccC () const |
| virtual const yarp::sig::Vector & | getLinVel () const |
| virtual const yarp::sig::Vector & | getLinVelC () const |
| virtual const yarp::sig::Vector & | getForce () const |
| virtual const yarp::sig::Vector & | getMoment () const |
| virtual double | getTorque () const |
Protected Member Functions | |
| iKinLink () | |
| virtual void | clone (const iKinLink &l) |
| bool | isCumulative () |
| void | block () |
| void | block (double _Ang) |
| void | release () |
| void | rmCumH () |
| void | addCumH (const yarp::sig::Matrix &_cumH) |
Protected Attributes | |
| double | A |
| double | D |
| double | Alpha |
| double | Offset |
| double | c_alpha |
| double | s_alpha |
| double | Min |
| double | Max |
| double | Ang |
| bool | blocked |
| bool | cumulative |
| bool | constrained |
| unsigned int | verbose |
| yarp::sig::Matrix | H |
| yarp::sig::Matrix | cumH |
| yarp::sig::Matrix | DnH |
| const yarp::sig::Matrix | zeros1x1 |
| const yarp::sig::Vector | zeros1 |
Friends | |
| class | iKinChain |
A Base class for defining a Link with standard Denavit-Hartenberg convention.
|
protected |
| iKinLink::iKinLink | ( | double | _A, |
| double | _D, | ||
| double | _Alpha, | ||
| double | _Offset, | ||
| double | _Min = -iCub::ctrl::CTRL_PI, |
||
| double | _Max = iCub::ctrl::CTRL_PI |
||
| ) |
Constructor.
| _A | is the Link length. |
| _D | is the Link offset. |
| _Alpha | is the Link twist. |
| _Offset | is the joint angle offset in [-pi,pi] |
| _Min | is the joint angle lower bound in [-pi,pi] (-pi by default). |
| _Max | is the joint angle higher bound in [-pi,pi] (pi by default). |
Definition at line 39 of file iKinFwd.cpp.
| iKinLink::iKinLink | ( | const iKinLink & | l | ) |
Creates a new Link from an already existing Link object.
| l | is the Link to be copied. |
Definition at line 99 of file iKinFwd.cpp.
|
inlinevirtual |
|
protected |
Definition at line 248 of file iKinFwd.cpp.
|
inlineprotected |
|
protectedvirtual |
Definition at line 73 of file iKinFwd.cpp.
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inline |
|
inline |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
| Matrix iKinLink::getDnH | ( | unsigned int | n = 1, |
| bool | c_override = false |
||
| ) |
Computes the derivative of order n of the homogeneous transformation matrix H with respect to the joint angle.
| n | is the order of the derivative (1 by default) |
| c_override | if true avoid accumulating the computation of previous links in the chain (false by default). |
Definition at line 202 of file iKinFwd.cpp.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
| Matrix iKinLink::getH | ( | bool | c_override = false | ) |
Computes the homogeneous transformation matrix H of the Link.
| c_override | if true avoid accumulating the computation of previous links in the chain, i.e. H=Hn and not H=Hn*Hn-1 (false by default) |
Definition at line 169 of file iKinFwd.cpp.
| Matrix iKinLink::getH | ( | double | _Ang, |
| bool | c_override = false |
||
| ) |
Same as getH() with specification of new joint angle position.
| _Ang | is the new joint angle position. |
| c_override. |
Definition at line 193 of file iKinFwd.cpp.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inline |
|
inline |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inline |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inline |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inline |
|
inlineprotected |
Copies a Link object into the current one.
| l | is a reference to an object of type iKinLink. |
Definition at line 106 of file iKinFwd.cpp.
|
inline |
| void iKinLink::setAlpha | ( | const double | _Alpha | ) |
Sets the Link twist Alpha.
| new | Link twist _Alpha. |
Definition at line 142 of file iKinFwd.cpp.
| double iKinLink::setAng | ( | double | _Ang | ) |
Sets the joint angle value.
| _Ang | new value for joint angle. |
Definition at line 152 of file iKinFwd.cpp.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inline |
| void iKinLink::setD | ( | const double | _D | ) |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
| void iKinLink::setMax | ( | const double | _Max | ) |
Sets the joint angle higher bound.
| _Max | is the joint angle higher bound in [-pi,pi]. |
Definition at line 125 of file iKinFwd.cpp.
| void iKinLink::setMin | ( | const double | _Min | ) |
Sets the joint angle lower bound.
| _Min | is the joint angle lower bound in [-pi,pi]. |
Definition at line 115 of file iKinFwd.cpp.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inline |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inlinevirtual |
Reimplemented in iCub::iDyn::iDynLink.
|
inline |
|
protected |
|
protected |