11 #ifndef PROJECT_LEGCONTROLLER_H 12 #define PROJECT_LEGCONTROLLER_H 14 #include <eigen3/Eigen/Dense> 15 #include "leg_control_command_lcmt.hpp" 16 #include "leg_control_data_lcmt.hpp" 24 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
35 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
52 for (
auto& data : datas) data.setQuadruped(_quadruped);
56 void edampCommand(
RobotType robot, T gain);
57 void updateData(
const SpiData* spiData);
61 void setEnabled(
bool enabled) { _legsEnabled = enabled; };
62 void setLcm(leg_control_data_lcmt* data, leg_control_command_lcmt* command);
72 bool _legsEnabled =
false;
80 #endif // PROJECT_LEGCONTROLLER_H void computeLegJacobianAndPosition(Quadruped< T > &quad, Vec3< T > &q, Mat3< T > *J, Vec3< T > *p, int leg)
Quadruped< T > * quadruped
void setQuadruped(Quadruped< T > &quad)
EIGEN_MAKE_ALIGNED_OPERATOR_NEW LegControllerData()
typename Eigen::Matrix< T, 3, 3 > Mat3
Vec3< T > forceFeedForward
Data structure containing parameters for quadruped robot.
typename Eigen::Matrix< T, 3, 1 > Vec3
LegController(Quadruped< T > &quad)
EIGEN_MAKE_ALIGNED_OPERATOR_NEW LegControllerCommand()
void setMaxTorqueCheetah3(T tau)
Spine Board Code, used to simulate the SpineBoard.
Quadruped< T > & _quadruped
void setEnabled(bool enabled)