10 #ifndef PROJECT_MINICHEETAH_H 11 #define PROJECT_MINICHEETAH_H 44 Mat3<T> rotorRotationalInertiaZ;
45 rotorRotationalInertiaZ << 33, 0, 0, 0, 33, 0, 0, 0, 63;
46 rotorRotationalInertiaZ = 1e-6 * rotorRotationalInertiaZ;
48 Mat3<T> RY = coordinateRotation<T>(CoordinateAxis::Y, M_PI / 2);
49 Mat3<T> RX = coordinateRotation<T>(CoordinateAxis::X, M_PI / 2);
50 Mat3<T> rotorRotationalInertiaX =
51 RY * rotorRotationalInertiaZ * RY.transpose();
52 Mat3<T> rotorRotationalInertiaY =
53 RX * rotorRotationalInertiaZ * RX.transpose();
57 abadRotationalInertia << 381, 58, 0.45, 58, 560, 0.95, 0.45, 0.95, 444;
58 abadRotationalInertia = abadRotationalInertia * 1e-6;
63 hipRotationalInertia << 1983, 245, 13, 245, 2103, 1.5, 13, 1.5, 408;
64 hipRotationalInertia = hipRotationalInertia * 1e-6;
65 Vec3<T> hipCOM(0, 0.016, -0.02);
68 Mat3<T> kneeRotationalInertia, kneeRotationalInertiaRotated;
69 kneeRotationalInertiaRotated << 6, 0, 0, 0, 248, 0, 0, 0, 245;
70 kneeRotationalInertiaRotated = kneeRotationalInertiaRotated * 1e-6;
71 kneeRotationalInertia = RY * kneeRotationalInertiaRotated * RY.transpose();
80 bodyRotationalInertia << 11253, 0, 0, 0, 36203, 0, 0, 0, 42673;
81 bodyRotationalInertia = bodyRotationalInertia * 1e-6;
84 bodyRotationalInertia);
106 #endif // PROJECT_MINICHEETAH_H
typename Eigen::Matrix< T, 3, 3 > Mat3
Data structure containing parameters for quadruped robot.
SpatialInertia< T > _abadRotorInertia
typename Eigen::Matrix< T, 3, 1 > Vec3
Vec3< T > _hipRotorLocation
Vec3< T > _abadRotorLocation
SpatialInertia< T > _kneeInertia
Quadruped< T > buildMiniCheetah()
SpatialInertia< T > _hipRotorInertia
EIGEN_MAKE_ALIGNED_OPERATOR_NEW RobotType _robotType
SpatialInertia< T > _abadInertia
Vec3< T > _kneeRotorLocation
SpatialInertia< T > _bodyInertia
SpatialInertia< T > _hipInertia
SpatialInertia< T > _kneeRotorInertia
Implementation of Rigid Body Floating Base model data structure.