Main MRPT website > C++ reference for MRPT 1.9.9
CIMUXSens_MT4.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 
10 #ifndef CIMUXSens_MT4_H
11 #define CIMUXSens_MT4_H
12 
14 #include <mrpt/poses/CPose3D.h>
15 
16 namespace mrpt
17 {
18 namespace hwdrivers
19 {
20 /** A class for interfacing XSens 4th generation Inertial Measuring Units
21  * (IMUs): MTi 10-series, MTi 100-series.
22  * Usage considerations:
23  * - In Windows, you only need to install XSens drivers.
24  * - In Linux, this class requires the system libraries: libusb-1.0 &
25  * libudev (dev packages). Accessing USB devices may require
26  * running the program as super user ("sudo"). To avoid that, Or, install
27  * <code> MRPT/scripts/52-xsens.rules </code> in <code>/etc/udev/rules.d/</code>
28  * to allow access to all users.
29  *
30  * For the older 3rd generation devices, see the class
31  * mrpt::hwdrivers::CIMUXSens
32  *
33  * \code
34  * PARAMETERS IN THE ".INI"-LIKE CONFIGURATION STRINGS:
35  * -------------------------------------------------------
36  * [supplied_section_name]
37  * pose_x=0 // Sensor 3D position relative to the robot (meters)
38  * pose_y=0
39  * pose_z=0
40  * pose_yaw=0 // Angles in degrees
41  * pose_pitch=0
42  * pose_roll=0
43  * sensorLabel = <label> // Label of the sensor
44  * ;sampleFreq = 100 // The requested rate of sensor packets (default:
45  * 100Hz)
46  * ; If a portname is not provided, the first found device will be opened:
47  * ;portname_LIN = USB002:005
48  * ;portname_WIN = \\?\usb#vid_2639&pid_0003#...
49  * ;baudRate = 115200 ; Baudrate for communicating, only
50  * if the port is a COM port
51  * \endcode
52  *
53  * \note Set the environment variable "MRPT_HWDRIVERS_VERBOSE" to "1" to
54  * enable diagnostic information while using this class.
55  *
56  * \ingroup mrpt_hwdrivers_grp
57  */
59 {
61  protected:
62  /** Baudrate, only for COM ports. */
64  /** The USB or COM port name (if blank -> autodetect) */
67 
70 
72 
73  void* /*DeviceClass */ m_dev_ptr;
74  void* /*XsDeviceId */ m_devid_ptr;
75 
76  /** See the class documentation at the top for expected parameters */
78  const mrpt::config::CConfigFileBase& configSource,
79  const std::string& iniSection);
80 
81  public:
82  /** Constructor
83  */
84  CIMUXSens_MT4();
85 
86  /** Destructor
87  */
88  virtual ~CIMUXSens_MT4();
89 
90  /** This method will be invoked at a minimum rate of "process_rate" (Hz)
91  * \exception This method must throw an exception with a descriptive
92  * message if some critical error is found.
93  */
94  void doProcess();
95 
96  /** Turns on the xSens device and configure it for getting orientation data
97  */
98  void initialize();
99 
100 }; // end of class
101 
102 } // end of namespace
103 } // end of namespace
104 
105 #endif
mrpt::hwdrivers::CIMUXSens_MT4::m_timeStartUI
uint64_t m_timeStartUI
Definition: CIMUXSens_MT4.h:68
mrpt::hwdrivers::CIMUXSens_MT4::m_sensorPose
mrpt::poses::CPose3D m_sensorPose
Definition: CIMUXSens_MT4.h:71
mrpt
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
Definition: CKalmanFilterCapable.h:30
DEFINE_GENERIC_SENSOR
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
Definition: CGenericSensor.h:314
mrpt::hwdrivers::CIMUXSens_MT4::m_timeStartTT
mrpt::system::TTimeStamp m_timeStartTT
Definition: CIMUXSens_MT4.h:69
mrpt::system::TTimeStamp
uint64_t TTimeStamp
A system independent time type, it holds the the number of 100-nanosecond intervals since January 1,...
Definition: datetime.h:31
mrpt::hwdrivers::CIMUXSens_MT4::~CIMUXSens_MT4
virtual ~CIMUXSens_MT4()
Destructor.
Definition: CIMUXSens_MT4.cpp:352
mrpt::hwdrivers::CIMUXSens_MT4::loadConfig_sensorSpecific
void loadConfig_sensorSpecific(const mrpt::config::CConfigFileBase &configSource, const std::string &iniSection)
See the class documentation at the top for expected parameters.
Definition: CIMUXSens_MT4.cpp:762
mrpt::config::CConfigFileBase
This class allows loading and storing values and vectors of different types from a configuration text...
Definition: config/CConfigFileBase.h:44
mrpt::poses::CPose3D
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
Definition: CPose3D.h:88
CGenericSensor.h
mrpt::hwdrivers::CIMUXSens_MT4::initialize
void initialize()
Turns on the xSens device and configure it for getting orientation data.
Definition: CIMUXSens_MT4.cpp:599
uint64_t
unsigned __int64 uint64_t
Definition: rptypes.h:50
mrpt::hwdrivers::CIMUXSens_MT4::m_sampleFreq
int m_sampleFreq
Definition: CIMUXSens_MT4.h:66
mrpt::hwdrivers::CGenericSensor
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
Definition: CGenericSensor.h:70
mrpt::hwdrivers::CIMUXSens_MT4::m_portname
std::string m_portname
The USB or COM port name (if blank -> autodetect)
Definition: CIMUXSens_MT4.h:65
mrpt::hwdrivers::CIMUXSens_MT4::m_port_bauds
int m_port_bauds
Baudrate, only for COM ports.
Definition: CIMUXSens_MT4.h:63
CPose3D.h
mrpt::hwdrivers::CIMUXSens_MT4
A class for interfacing XSens 4th generation Inertial Measuring Units (IMUs): MTi 10-series,...
Definition: CIMUXSens_MT4.h:58
mrpt::hwdrivers::CIMUXSens_MT4::doProcess
void doProcess()
This method will be invoked at a minimum rate of "process_rate" (Hz)
Definition: CIMUXSens_MT4.cpp:367
mrpt::hwdrivers::CIMUXSens_MT4::m_dev_ptr
void * m_dev_ptr
Definition: CIMUXSens_MT4.h:73
string
GLsizei const GLchar ** string
Definition: glext.h:4101
mrpt::hwdrivers::CIMUXSens_MT4::m_devid_ptr
void * m_devid_ptr
Definition: CIMUXSens_MT4.h:74
mrpt::hwdrivers::CIMUXSens_MT4::CIMUXSens_MT4
CIMUXSens_MT4()
Constructor.
Definition: CIMUXSens_MT4.cpp:327



Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST