Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
phidgets::ImuRosI Class Referencefinal

#include <imu_ros_i.h>

Inheritance diagram for phidgets::ImuRosI:
Inheritance graph
[legend]

Public Member Functions

bool calibrateService (std_srvs::Empty::Request &req, std_srvs::Empty::Response &res)
 
 ImuRosI (ros::NodeHandle nh, ros::NodeHandle nh_private)
 
- Public Member Functions inherited from phidgets::Imu
 Imu ()
 
virtual ~Imu ()
 
- Public Member Functions inherited from phidgets::Phidget
int close ()
 
std::string getDeviceLabel ()
 
std::string getDeviceName ()
 
int getDeviceSerialNumber ()
 
std::string getDeviceType ()
 
int getDeviceVersion ()
 
std::string getLibraryVersion ()
 
int openAndWaitForAttachment (int serial_number, int timeout)
 
 Phidget ()
 
virtual ~Phidget ()
 

Private Types

typedef sensor_msgs::Imu ImuMsg
 
typedef sensor_msgs::MagneticField MagMsg
 

Private Member Functions

void attachHandler () override
 
void calibrate ()
 
void dataHandler (const double acceleration[3], const double angularRate[3], const double magneticField[3], double timestamp) override
 
void detachHandler () override
 
void errorHandler (int error) override
 
void initDevice ()
 
void phidgetsDiagnostics (diagnostic_updater::DiagnosticStatusWrapper &stat)
 Main diagnostic method that takes care of collecting diagnostic data. More...
 

Private Attributes

double angular_velocity_stdev_
 
ros::Publisher cal_publisher_
 
ros::ServiceServer cal_srv_
 
double cc_gain0_
 
double cc_gain1_
 
double cc_gain2_
 
double cc_mag_field_
 
double cc_offset0_
 
double cc_offset1_
 
double cc_offset2_
 
double cc_T0_
 
double cc_T1_
 
double cc_T2_
 
double cc_T3_
 
double cc_T4_
 
double cc_T5_
 
diagnostic_updater::Updater diag_updater_
 updater object of class Update. Used to add diagnostic tasks, set ID etc. refer package API. Added for diagnostics More...
 
int error_number_
 
std::string frame_id_
 
ImuMsg imu_msg_
 
ros::Publisher imu_publisher_
 
std::shared_ptr< diagnostic_updater::TopicDiagnosticimu_publisher_diag_ptr_
 
bool is_connected_
 
ros::Time last_published_time_
 
double linear_acceleration_stdev_
 
MagMsg mag_msg_
 
ros::Publisher mag_publisher_
 
double magnetic_field_stdev_
 
ros::NodeHandle nh_
 
ros::NodeHandle nh_private_
 
int period_
 
int serial_number_
 
double target_publish_freq_
 
ros::Time time_zero_
 
bool use_imu_time_
 

Additional Inherited Members

- Static Public Member Functions inherited from phidgets::Phidget
static std::string getErrorDescription (int errorCode)
 
- Protected Member Functions inherited from phidgets::Imu
int setCompassCorrectionParameters (double cc_mag_field, double cc_offset0, double cc_offset1, double cc_offset2, double cc_gain0, double cc_gain1, double cc_gain2, double cc_T0, double cc_T1, double cc_T2, double cc_T3, double cc_T4, double cc_T5)
 
void setDataRate (int rate)
 
void zero ()
 
- Protected Member Functions inherited from phidgets::Phidget
void init (CPhidgetHandle handle)
 
void registerHandlers ()
 

Detailed Description

Definition at line 22 of file imu_ros_i.h.

Member Typedef Documentation

typedef sensor_msgs::Imu phidgets::ImuRosI::ImuMsg
private

Definition at line 24 of file imu_ros_i.h.

typedef sensor_msgs::MagneticField phidgets::ImuRosI::MagMsg
private

Definition at line 25 of file imu_ros_i.h.

Constructor & Destructor Documentation

phidgets::ImuRosI::ImuRosI ( ros::NodeHandle  nh,
ros::NodeHandle  nh_private 
)
explicit

Definition at line 5 of file imu_ros_i.cpp.

Member Function Documentation

void phidgets::ImuRosI::attachHandler ( )
overrideprivatevirtual

Reimplemented from phidgets::Phidget.

Definition at line 313 of file imu_ros_i.cpp.

void phidgets::ImuRosI::calibrate ( )
private

Definition at line 212 of file imu_ros_i.cpp.

bool phidgets::ImuRosI::calibrateService ( std_srvs::Empty::Request &  req,
std_srvs::Empty::Response &  res 
)

Definition at line 203 of file imu_ros_i.cpp.

void phidgets::ImuRosI::dataHandler ( const double  acceleration[3],
const double  angularRate[3],
const double  magneticField[3],
double  timestamp 
)
overrideprivatevirtual

Reimplemented from phidgets::Imu.

Definition at line 231 of file imu_ros_i.cpp.

void phidgets::ImuRosI::detachHandler ( )
overrideprivatevirtual

Reimplemented from phidgets::Phidget.

Definition at line 329 of file imu_ros_i.cpp.

void phidgets::ImuRosI::errorHandler ( int  error)
overrideprivatevirtual

Reimplemented from phidgets::Phidget.

Definition at line 336 of file imu_ros_i.cpp.

void phidgets::ImuRosI::initDevice ( )
private

Definition at line 175 of file imu_ros_i.cpp.

void phidgets::ImuRosI::phidgetsDiagnostics ( diagnostic_updater::DiagnosticStatusWrapper stat)
private

Main diagnostic method that takes care of collecting diagnostic data.

Parameters
statThe stat param is what is the diagnostic tasks are added two. Internally published by the diagnostic_updater package. Added for diagnostics

Definition at line 343 of file imu_ros_i.cpp.

Member Data Documentation

double phidgets::ImuRosI::angular_velocity_stdev_
private

Definition at line 65 of file imu_ros_i.h.

ros::Publisher phidgets::ImuRosI::cal_publisher_
private

Definition at line 38 of file imu_ros_i.h.

ros::ServiceServer phidgets::ImuRosI::cal_srv_
private

Definition at line 39 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_gain0_
private

Definition at line 76 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_gain1_
private

Definition at line 77 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_gain2_
private

Definition at line 78 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_mag_field_
private

Definition at line 72 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_offset0_
private

Definition at line 73 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_offset1_
private

Definition at line 74 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_offset2_
private

Definition at line 75 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_T0_
private

Definition at line 79 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_T1_
private

Definition at line 80 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_T2_
private

Definition at line 81 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_T3_
private

Definition at line 82 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_T4_
private

Definition at line 83 of file imu_ros_i.h.

double phidgets::ImuRosI::cc_T5_
private

Definition at line 84 of file imu_ros_i.h.

diagnostic_updater::Updater phidgets::ImuRosI::diag_updater_
private

updater object of class Update. Used to add diagnostic tasks, set ID etc. refer package API. Added for diagnostics

Definition at line 43 of file imu_ros_i.h.

int phidgets::ImuRosI::error_number_
private

Definition at line 49 of file imu_ros_i.h.

std::string phidgets::ImuRosI::frame_id_
private

Definition at line 62 of file imu_ros_i.h.

ImuMsg phidgets::ImuRosI::imu_msg_
private

Definition at line 55 of file imu_ros_i.h.

ros::Publisher phidgets::ImuRosI::imu_publisher_
private

Definition at line 36 of file imu_ros_i.h.

std::shared_ptr<diagnostic_updater::TopicDiagnostic> phidgets::ImuRosI::imu_publisher_diag_ptr_
private

Definition at line 45 of file imu_ros_i.h.

bool phidgets::ImuRosI::is_connected_
private

Definition at line 48 of file imu_ros_i.h.

ros::Time phidgets::ImuRosI::last_published_time_
private

Definition at line 52 of file imu_ros_i.h.

double phidgets::ImuRosI::linear_acceleration_stdev_
private

Definition at line 66 of file imu_ros_i.h.

MagMsg phidgets::ImuRosI::mag_msg_
private

Definition at line 56 of file imu_ros_i.h.

ros::Publisher phidgets::ImuRosI::mag_publisher_
private

Definition at line 37 of file imu_ros_i.h.

double phidgets::ImuRosI::magnetic_field_stdev_
private

Definition at line 67 of file imu_ros_i.h.

ros::NodeHandle phidgets::ImuRosI::nh_
private

Definition at line 34 of file imu_ros_i.h.

ros::NodeHandle phidgets::ImuRosI::nh_private_
private

Definition at line 35 of file imu_ros_i.h.

int phidgets::ImuRosI::period_
private

Definition at line 63 of file imu_ros_i.h.

int phidgets::ImuRosI::serial_number_
private

Definition at line 53 of file imu_ros_i.h.

double phidgets::ImuRosI::target_publish_freq_
private

Definition at line 50 of file imu_ros_i.h.

ros::Time phidgets::ImuRosI::time_zero_
private

Definition at line 58 of file imu_ros_i.h.

bool phidgets::ImuRosI::use_imu_time_
private

Definition at line 68 of file imu_ros_i.h.


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


phidgets_imu
Author(s): Ivan Dryanovski
autogenerated on Fri Apr 9 2021 02:56:04