18 #ifndef __invdyn_robot_wrapper_hpp__
19 #define __invdyn_robot_wrapper_hpp__
25 #include <pinocchio/multibody/model.hpp>
26 #include <pinocchio/multibody/data.hpp>
27 #include <pinocchio/spatial/fwd.hpp>
39 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
62 const std::vector<std::string>& package_dirs,
63 bool verbose =
false);
66 const std::vector<std::string>& package_dirs,
67 const pinocchio::JointModelVariant& rootJoint,
68 bool verbose =
false);
76 virtual int nq()
const;
78 virtual int nv()
const;
79 virtual int na()
const;
113 const SE3&
position(
const Data& data,
const Model::JointIndex index)
const;
118 const Model::JointIndex index)
const;
134 const Model::FrameIndex index)
const;
140 const Model::FrameIndex index)
const;
143 const Model::FrameIndex index)
const;
149 const Model::FrameIndex index)
const;
152 const Data& data,
const Model::FrameIndex index)
const;
Wrapper for a robot based on pinocchio.
Definition: robot-wrapper.hpp:37
const Matrix3x & Jcom(const Data &data) const
Definition: robot-wrapper.cpp:162
void frameJacobianLocal(Data &data, const Model::FrameIndex index, Data::Matrix6x &J) const
Definition: robot-wrapper.cpp:338
math::Vector Vector
Definition: robot-wrapper.hpp:47
Vector m_Md
Definition: robot-wrapper.hpp:186
pinocchio::SE3 SE3
Definition: robot-wrapper.hpp:46
Matrix m_M
diagonal part of inertia matrix due to rotor inertias
Definition: robot-wrapper.hpp:187
math::ConstRefVector ConstRefVector
Definition: robot-wrapper.hpp:53
Motion frameVelocity(const Data &data, const Model::FrameIndex index) const
Definition: robot-wrapper.cpp:235
RobotWrapper(const std::string &filename, const std::vector< std::string > &package_dirs, bool verbose=false)
Definition: robot-wrapper.cpp:34
const Model & model() const
Accessor to model.
Definition: robot-wrapper.cpp:102
bool m_is_fixed_base
Definition: robot-wrapper.hpp:183
virtual int nq() const
Definition: robot-wrapper.cpp:96
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::Scalar Scalar
Definition: robot-wrapper.hpp:41
const Vector3 & com_acc(const Data &data) const
Definition: robot-wrapper.cpp:158
const Vector & gear_ratios() const
Definition: robot-wrapper.cpp:120
virtual ~RobotWrapper()=default
void jacobianLocal(const Data &data, const Model::JointIndex index, Data::Matrix6x &J) const
Definition: robot-wrapper.cpp:207
virtual int nv() const
Definition: robot-wrapper.cpp:97
Motion frameClassicAccelerationWorldOriented(const Data &data, const Model::FrameIndex index) const
Definition: robot-wrapper.cpp:319
SE3 framePosition(const Data &data, const Model::FrameIndex index) const
Definition: robot-wrapper.cpp:216
math::RefVector RefVector
Definition: robot-wrapper.hpp:52
pinocchio::Frame Frame
Definition: robot-wrapper.hpp:45
Motion frameAcceleration(const Data &data, const Model::FrameIndex index) const
Definition: robot-wrapper.cpp:265
void frameJacobianWorld(Data &data, const Model::FrameIndex index, Data::Matrix6x &J) const
Definition: robot-wrapper.cpp:330
Motion frameAccelerationWorldOriented(const Data &data, const Model::FrameIndex index) const
Definition: robot-wrapper.cpp:284
const Motion & velocity(const Data &data, const Model::JointIndex index) const
Definition: robot-wrapper.cpp:182
void jacobianWorld(const Data &data, const Model::JointIndex index, Data::Matrix6x &J) const
Definition: robot-wrapper.cpp:198
int m_na
Definition: robot-wrapper.hpp:181
pinocchio::Data Data
Definition: robot-wrapper.hpp:43
pinocchio::Motion Motion
Definition: robot-wrapper.hpp:44
pinocchio::Model Model
Definition: robot-wrapper.hpp:42
virtual int na() const
Definition: robot-wrapper.cpp:98
void setGravity(const Motion &gravity)
Definition: robot-wrapper.cpp:356
Vector m_gear_ratios
Definition: robot-wrapper.hpp:185
Vector m_rotor_inertias
Definition: robot-wrapper.hpp:184
bool m_verbose
Definition: robot-wrapper.hpp:176
int m_nq_actuated
Definition: robot-wrapper.hpp:178
std::string m_model_filename
Definition: robot-wrapper.hpp:175
const Motion & acceleration(const Data &data, const Model::JointIndex index) const
Definition: robot-wrapper.cpp:190
virtual int nq_actuated() const
Definition: robot-wrapper.cpp:99
e_RootJointType
Definition: robot-wrapper.hpp:56
@ FLOATING_BASE_SYSTEM
Definition: robot-wrapper.hpp:58
@ FIXED_BASE_SYSTEM
Definition: robot-wrapper.hpp:57
math::Matrix3x Matrix3x
Definition: robot-wrapper.hpp:51
virtual bool is_fixed_base() const
Definition: robot-wrapper.cpp:100
Vector3 angularMomentumTimeVariation(const Data &data) const
Definition: robot-wrapper.cpp:350
const Vector & rotor_inertias() const
Definition: robot-wrapper.cpp:119
const SE3 & position(const Data &data, const Model::JointIndex index) const
Definition: robot-wrapper.cpp:174
math::Matrix Matrix
Definition: robot-wrapper.hpp:50
const Data::Matrix6x & momentumJacobian(const Data &data) const
Definition: robot-wrapper.cpp:346
const Vector3 & com_vel(const Data &data) const
Definition: robot-wrapper.cpp:154
void updateMd()
Definition: robot-wrapper.cpp:140
void init()
Definition: robot-wrapper.cpp:89
const Matrix & mass(const Data &data)
Definition: robot-wrapper.cpp:164
math::Vector3 Vector3
Definition: robot-wrapper.hpp:48
Motion frameVelocityWorldOriented(const Data &data, const Model::FrameIndex index) const
Definition: robot-wrapper.cpp:254
const Vector & nonLinearEffects(const Data &data) const
Definition: robot-wrapper.cpp:170
Model m_model
Robot model.
Definition: robot-wrapper.hpp:174
math::Vector6 Vector6
Definition: robot-wrapper.hpp:49
void com(const Data &data, RefVector com_pos, RefVector com_vel, RefVector com_acc) const
Definition: robot-wrapper.cpp:145
Motion frameClassicAcceleration(const Data &data, const Model::FrameIndex index) const
Definition: robot-wrapper.cpp:295
enum tsid::robots::RobotWrapper::e_RootJointType RootJointType
void computeAllTerms(Data &data, const Vector &q, const Vector &v) const
Definition: robot-wrapper.cpp:105
#define TSID_DEPRECATED
Definition: deprecated.hh:37
Eigen::Matrix< Scalar, 3, Eigen::Dynamic > Matrix3x
Definition: fwd.hpp:42
Eigen::Matrix< Scalar, 3, 1 > Vector3
Definition: fwd.hpp:40
Eigen::Matrix< Scalar, 6, 1 > Vector6
Definition: fwd.hpp:41
const Eigen::Ref< const Vector > ConstRefVector
Definition: fwd.hpp:48
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > Vector
Definition: fwd.hpp:35
double Scalar
Definition: fwd.hpp:34
Eigen::Ref< Vector > RefVector
Definition: fwd.hpp:47
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > Matrix
Definition: fwd.hpp:36
pinocchio::SE3 SE3
Definition: trajectory-base.hpp:31
Definition: constraint-bound.hpp:25