sot-talos-balance
2.0.5
Collection of dynamic-graph entities aimed at implementing balance control on talos.
|
|
Go to the documentation of this file.
18 #ifndef __invdyn_robot_wrapper_hpp__
19 #define __invdyn_robot_wrapper_hpp__
21 #include <pinocchio/multibody/data.hpp>
22 #include <pinocchio/multibody/model.hpp>
23 #include <pinocchio/spatial/fwd.hpp>
31 namespace talos_balance {
38 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
42 typedef pinocchio::Data
Data;
45 typedef pinocchio::SE3
SE3;
55 const std::vector<std::string>& package_dirs,
56 bool verbose =
false);
59 const std::vector<std::string>& package_dirs,
60 const pinocchio::JointModelVariant& rootJoint,
61 bool verbose =
false);
63 virtual int nq()
const;
64 virtual int nv()
const;
97 const SE3&
position(
const Data& data,
const Model::JointIndex index)
const;
102 const Model::JointIndex index)
const;
105 Data::Matrix6x& J)
const;
108 Data::Matrix6x& J)
const;
121 const Model::FrameIndex index)
const;
127 const Model::FrameIndex index)
const;
133 Data::Matrix6x& J)
const;
136 Data::Matrix6x& J)
const;
157 #endif // ifndef __invdyn_robot_wrapper_hpp__
const Motion & acceleration(const Data &data, const Model::JointIndex index) const
void jacobianWorld(const Data &data, const Model::JointIndex index, Data::Matrix6x &J) const
const Vector3 & com_acc(const Data &data) const
SE3 framePosition(const Data &data, const Model::FrameIndex index) const
Model m_model
Robot model.
Motion frameVelocity(const Data &data, const Model::FrameIndex index) const
math::RefVector RefVector
Eigen::Matrix< Scalar, 6, 1 > Vector6
const Matrix & mass(const Data &data)
void com(const Data &data, RefVector com_pos, RefVector com_vel, RefVector com_acc) const
Eigen::Matrix< Scalar, 3, Eigen::Dynamic > Matrix3x
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > Matrix
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::Scalar Scalar
void jacobianLocal(const Data &data, const Model::JointIndex index, Data::Matrix6x &J) const
Wrapper for a robot based on pinocchio.
math::ConstRefVector ConstRefVector
Eigen::Matrix< Scalar, 3, 1 > Vector3
const Vector & rotor_inertias() const
const Matrix3x & Jcom(const Data &data) const
RobotWrapper(const std::string &filename, const std::vector< std::string > &package_dirs, bool verbose=false)
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > Vector
const Vector3 & com_vel(const Data &data) const
Motion frameClassicAcceleration(const Data &data, const Model::FrameIndex index) const
const Model & model() const
Accessor to model.
std::string m_model_filename
Motion frameAcceleration(const Data &data, const Model::FrameIndex index) const
void computeAllTerms(Data &data, const Vector &q, const Vector &v) const
void frameJacobianLocal(Data &data, const Model::FrameIndex index, Data::Matrix6x &J) const
const Vector & nonLinearEffects(const Data &data) const
Matrix m_M
diagonal part of inertia matrix due to rotor inertias
const Motion & velocity(const Data &data, const Model::JointIndex index) const
const Vector & gear_ratios() const
const SE3 & position(const Data &data, const Model::JointIndex index) const
const typedef Eigen::Ref< const Vector > ConstRefVector
void frameJacobianWorld(Data &data, const Model::FrameIndex index, Data::Matrix6x &J) const
Eigen::Ref< Vector > RefVector