Fang-Robotics-MCB
Fang Robotics Team Codebase
Loading...
Searching...
No Matches
tap::communication::sensors::imu::ImuInterface Class Referenceabstract

#include <imu_interface.hpp>

Inheritance diagram for tap::communication::sensors::imu::ImuInterface:

Public Types

enum class  ImuState { IMU_NOT_CONNECTED , IMU_NOT_CALIBRATED , IMU_CALIBRATING , IMU_CALIBRATED }
 

Public Member Functions

virtual const char * getName () const =0
 
virtual float getAx () const =0
 
virtual float getAy () const =0
 
virtual float getAz () const =0
 
virtual float getGx () const =0
 
virtual float getGy () const =0
 
virtual float getGz () const =0
 
virtual float getYaw () const =0
 
virtual float getPitch () const =0
 
virtual float getRoll () const =0
 

Detailed Description

An interface for interacting with a 6 axis IMU.

Member Enumeration Documentation

◆ ImuState

Possible IMU states for an IMU.

Enumerator
IMU_NOT_CONNECTED 

Indicates the IMU's init function was not called or initialization failed, so data from this class will be undefined.

IMU_NOT_CALIBRATED 

Indicates the IMU is connected and reading data, but calibration offsets have not been computed.

IMU_CALIBRATING 

Indicates the IMU is in the process of computing calibration offsets. Data read when the IMU is in this state is undefined.

IMU_CALIBRATED 

Indicates the IMU is connected and calibration offsets have been computed.

Member Function Documentation

◆ getAx()

virtual float tap::communication::sensors::imu::ImuInterface::getAx ( ) const
inlinepure virtual

Returns the linear acceleration in the x direction, in $\frac{\mbox{m}}{\mbox{second}^2}$.

Implemented in tap::communication::sensors::imu::AbstractIMU.

◆ getAy()

virtual float tap::communication::sensors::imu::ImuInterface::getAy ( ) const
inlinepure virtual

Returns the linear acceleration in the y direction, in $\frac{\mbox{m}}{\mbox{second}^2}$.

Implemented in tap::communication::sensors::imu::AbstractIMU.

◆ getAz()

virtual float tap::communication::sensors::imu::ImuInterface::getAz ( ) const
inlinepure virtual

Returns the linear acceleration in the z direction, in $\frac{\mbox{m}}{\mbox{second}^2}$.

Implemented in tap::communication::sensors::imu::AbstractIMU.

◆ getGx()

virtual float tap::communication::sensors::imu::ImuInterface::getGx ( ) const
inlinepure virtual

Returns the gyroscope reading (rotational speed) in the x direction, in $\frac{\mbox{radians}}{\mbox{second}}$.

Implemented in tap::communication::sensors::imu::AbstractIMU.

◆ getGy()

virtual float tap::communication::sensors::imu::ImuInterface::getGy ( ) const
inlinepure virtual

Returns the gyroscope reading (rotational speed) in the y direction, in $\frac{\mbox{radians}}{\mbox{second}}$.

Implemented in tap::communication::sensors::imu::AbstractIMU.

◆ getGz()

virtual float tap::communication::sensors::imu::ImuInterface::getGz ( ) const
inlinepure virtual

Returns the gyroscope reading (rotational speed) in the z direction, in $\frac{\mbox{radians}}{\mbox{second}}$.

Implemented in tap::communication::sensors::imu::AbstractIMU.

◆ getName()

virtual const char * tap::communication::sensors::imu::ImuInterface::getName ( ) const
inlinepure virtual

◆ getPitch()

virtual float tap::communication::sensors::imu::ImuInterface::getPitch ( ) const
inlinepure virtual

Returns pitch angle in radians.

Implemented in tap::communication::sensors::imu::AbstractIMU.

◆ getRoll()

virtual float tap::communication::sensors::imu::ImuInterface::getRoll ( ) const
inlinepure virtual

Returns roll angle in radians.

Implemented in tap::communication::sensors::imu::AbstractIMU.

◆ getYaw()

virtual float tap::communication::sensors::imu::ImuInterface::getYaw ( ) const
inlinepure virtual

Returns yaw angle. in radians.

Implemented in tap::communication::sensors::imu::AbstractIMU.


The documentation for this class was generated from the following file: