upkie 6.1.0
Open-source wheeled biped robots
|
Bullet utility functions used in the simulation interface. More...
Classes | |
struct | ContactData |
Contact information for a single link. More... | |
struct | ExternalForce |
Parameters for a call to Bullet's applyExternalForce. More... | |
struct | JointProperties |
Properties for robot joints in the Bullet simulation. More... | |
struct | RobotSimulatorChangeDynamicsArgs |
Structure which contains the new link properties. More... | |
class | RobotSimulatorClientAPI |
Child class to enable modification of inertia matrices. More... | |
Functions | |
void | read_imu_data (ImuData &imu_data, b3RobotSimulatorClientAPI &bullet, int robot, const int imu_link_index, double dt) |
Compute groundtruth IMU quantities from the IMU link state. More... | |
btQuaternion | bullet_from_eigen (const Eigen::Quaterniond &quat) |
Convert an Eigen quaternion to a Bullet one. More... | |
btVector3 | bullet_from_eigen (const Eigen::Vector3d &v) |
Convert an Eigen vector to a Bullet one. More... | |
Eigen::Quaterniond | eigen_from_bullet (const btQuaternion &quat) |
Convert a Bullet quaternion to an Eigen one. More... | |
Eigen::Vector3d | eigen_from_bullet (const btVector3 &v) |
Convert a Bullet vector to an Eigen one. More... | |
int | find_link_index (b3RobotSimulatorClientAPI &bullet, int robot, const std::string &link_name) noexcept |
Find the index of a link. More... | |
Eigen::Vector3d | get_position_link_in_world (b3RobotSimulatorClientAPI &bullet, int robot, int link_index) noexcept |
Get the position of a link frame in the world frame. More... | |
double | compute_robot_mass (b3RobotSimulatorClientAPI &bullet, int robot) |
Get the total mass of the robot. More... | |
Eigen::Vector3d | compute_position_com_in_world (b3RobotSimulatorClientAPI &bullet, int robot) |
Get the position of the center of mass of a robot in the world frame. More... | |
Variables | |
constexpr double | kGravity = 9.81 |
Standard gravity constant used in Bullet simulations. | |
Bullet utility functions used in the simulation interface.
|
inline |
Convert an Eigen quaternion to a Bullet one.
[in] | quat | Eigen quaternion. |
|
inline |
Convert an Eigen vector to a Bullet one.
[in] | v | Eigen vector. |
|
inline |
Get the position of the center of mass of a robot in the world frame.
[in] | bullet | Bullet client. |
[in] | robot | Index of the robot. |
|
inline |
Get the total mass of the robot.
[in] | bullet | Bullet client. |
[in] | robot | Index of the robot. |
|
inline |
Convert a Bullet quaternion to an Eigen one.
[in] | quat | Bullet quaternion. |
|
inline |
Convert a Bullet vector to an Eigen one.
[in] | v | Bullet vector. |
|
inlinenoexcept |
Find the index of a link.
[in] | bullet | Bullet client. |
[in] | robot | Index of the robot to search. |
[in] | link_name | Name of the searched link. |
|
inlinenoexcept |
Get the position of a link frame in the world frame.
[in] | bullet | Bullet client. |
[in] | robot | Index of the robot to search. |
[in] | link_index | Index of the link frame. |
|
inline |
Compute groundtruth IMU quantities from the IMU link state.
[out] | imu_data | IMU data to update. |
[in] | bullet | Bullet client. |
[in] | robot | Bullet index of the robot model. |
[in] | imu_link_index | Index of the IMU link in the robot. |
[in] | dt | Simulation timestep in [s]. |