52 bool init()
override {
return true; }
106 Eigen::Matrix3f accT = Eigen::Matrix3f::Identity();
107 Eigen::Matrix3f gyroT = Eigen::Matrix3f::Identity();
108 Eigen::Matrix3f magT = Eigen::Matrix3f::Identity();
A software IMU sensor that allows applying transformations to the data after sampling via a callback....
static Eigen::Matrix3f rotateAroundZ(float angle)
Creates a rotation matrix around the Z axis.
void addGyroTransformation(const Eigen::Matrix3f &t)
Multiplies the current gyroscope transformation.
static Eigen::Matrix3f rotateAroundX(float angle)
Creates a rotation matrix around the X axis.
void resetTransformations()
Resets all the transformations to the original (Identity) ones.
IMUData sampleImpl() override
Read a data sample from the sensor. In case of errors, the method should return the last available co...
bool selfTest() override
Check if the sensor is working.
void addAccTransformation(const Eigen::Matrix3f &t)
Multiplies the current accelerometer transformation.
std::function< IMUData()> SampleIMUFunction
static Eigen::Matrix3f rotateAroundY(float angle)
Creates a rotation matrix around the Y axis.
void addMagTransformation(const Eigen::Matrix3f &t)
Multiplies the current magnetometer transformation.
bool init() override
Initialize the sensor.
Base sensor class with has to be extended by any sensor driver.
Driver for the VN100S IMU.