Cheetah Software
1.0
|
Common Leg Control Interface. More...
Go to the source code of this file.
Functions | |
template<typename T > | |
void | computeLegJacobianAndPosition (Quadruped< T > &quad, Vec3< T > &q, Mat3< T > *J, Vec3< T > *p, int leg) |
template void | computeLegJacobianAndPosition< double > (Quadruped< double > &quad, Vec3< double > &q, Mat3< double > *J, Vec3< double > *p, int leg) |
template void | computeLegJacobianAndPosition< float > (Quadruped< float > &quad, Vec3< float > &q, Mat3< float > *J, Vec3< float > *p, int leg) |
Common Leg Control Interface.
Implements low-level leg control for Mini Cheetah and Cheetah 3 Robots Abstracts away the difference between the SPIne and the TI Boards All quantities are in the "leg frame" which has the same orientation as the body frame, but is shifted so that 0,0,0 is at the ab/ad pivot (the "hip frame").
Definition in file LegController.cpp.
void computeLegJacobianAndPosition | ( | Quadruped< T > & | quad, |
Vec3< T > & | q, | ||
Mat3< T > * | J, | ||
Vec3< T > * | p, | ||
int | leg | ||
) |
Compute the position of the foot and its Jacobian. This is done in the local leg coordinate system. If J/p are NULL, the calculation will be skipped.
Definition at line 240 of file LegController.cpp.
References Quadruped< T >::_abadLinkLength, Quadruped< T >::_hipLinkLength, Quadruped< T >::_kneeLinkLength, computeLegJacobianAndPosition< double >(), computeLegJacobianAndPosition< float >(), and Quadruped< T >::getSideSign().
template void computeLegJacobianAndPosition< double > | ( | Quadruped< double > & | quad, |
Vec3< double > & | q, | ||
Mat3< double > * | J, | ||
Vec3< double > * | p, | ||
int | leg | ||
) |
template void computeLegJacobianAndPosition< float > | ( | Quadruped< float > & | quad, |
Vec3< float > & | q, | ||
Mat3< float > * | J, | ||
Vec3< float > * | p, | ||
int | leg | ||
) |