13#include "yesense_sdk/analysis_data.h"
30 std::atomic<float>
roll = 0;
36 std::atomic<float>
yaw = 0;
39 std::atomic<float>
a_x = 0;
42 std::atomic<float>
a_y = 0;
45 std::atomic<float>
a_z = 0;
48 std::atomic<float>
w_x = 0;
51 std::atomic<float>
w_y = 0;
54 std::atomic<float>
w_z = 0;
78 friend class EncosBus;
165 void UpdateRuntimeData()
override;
166 void UpdateImuDataFromBus();
170 std::array<float, 3> cvtEuler(
const float* quat);
175 constexpr static int RX_BUF_LEN = 1024;
176 unsigned char g_recv_buf[RX_BUF_LEN * 2] = { 0 };
177 unsigned short g_recv_buf_idx = 0;
178 protocol_info_t g_output_info = { 0 };
182 char buffer[RX_BUF_LEN];
184 struct termios newtio;
185 unsigned short cnt = 0;
187 speed_t speed = B921600;
189 constexpr static float r2d = 180.0f / M_PI;
190 constexpr static float d2r = M_PI / 180.0f;
Bitbot Encos device header file
Encos_VirtualBusDevice(const pugi::xml_node &device_node)
构造函数
定义 Encos_device.hpp:186
Bitbot Encos总线类,继承自BusManagerTpl,该类型仅适用于开发者使用,用户无需关心其实现细节。
定义 Encos_bus.h:29
virtual ~YesenseIMU()
析构IMU对象,该对象由Bitbot Encos内核创建。用户无需关心该对象的析构过程。
float GetAccZ()
获取IMU z轴加速度
float GetGyroY()
获取IMU y轴角速度
float GetGyroX()
获取IMU x轴角速度
float GetPitch()
获取IMU俯仰角度
float GetGyroZ()
获取IMU z轴角速度
YesenseIMU(const pugi::xml_node &imu_node)
构造IMU对象,该对象由Bitbot Encos内核创建。用户无需关心该对象的创建过程。
float GetIMUTemperature()
获取IMU温度
float GetAccX()
获取IMU x轴加速度
float GetAccY()
获取IMU y轴加速度
IMU数据结构体
定义 yesense_imu.h:65
ImuRuntimeData runtime
IMU当前姿态数据
定义 yesense_imu.h:67
IMU运行时数据结构体
定义 yesense_imu.h:28
std::atomic< float > IMU_temp
IMU当前温度(°C)
定义 yesense_imu.h:57
std::atomic< float > w_y
IMU当前y轴角速度(rad/s)
定义 yesense_imu.h:51
std::atomic< float > a_x
IMU当前x轴加速度(m/s^2)
定义 yesense_imu.h:39
std::atomic< float > roll
IMU当前滚转角度(rad)
定义 yesense_imu.h:30
std::atomic< float > pitch
IMU当前俯仰角度(rad)
定义 yesense_imu.h:33
std::atomic< float > a_y
IMU当前y轴加速度(m/s^2)
定义 yesense_imu.h:42
std::atomic< float > w_z
IMU当前z轴角速度(rad/s)
定义 yesense_imu.h:54
std::atomic< float > yaw
IMU当前偏航角度(rad)
定义 yesense_imu.h:36
std::atomic< float > a_z
IMU当前z轴加速度(m/s^2)
定义 yesense_imu.h:45
std::atomic< float > w_x
IMU当前x轴角速度(rad/s)
定义 yesense_imu.h:48