Class for interfacing with a Honeywell HMR-3300 compass. More...
#include <Devices/HMR3300.H>
Public Member Functions | |
HMR3300 (OptionManager &mgr, const std::string &descrName="HMR3300", const std::string &tagName="HMR3300", const char *dev="/dev/ttyS0") | |
Initialize. | |
~HMR3300 () | |
Destructor. | |
void | setListener (rutz::shared_ptr< HMR3300Listener > &listener) |
Install a callback (listener). | |
void | get (Angle &heading, Angle &pitch, Angle &roll) |
Get the current filtered heading, pitch, and roll from the compass. | |
Angle | getHeading () |
Get the current filtered heading. | |
Angle | getPitch () |
Get the current filtered pitch. | |
Angle | getRoll () |
Get the current filtered roll. | |
void | run () |
The user need not concern himself with this method. | |
Protected Member Functions | |
void | start2 () |
get started | |
void | stop1 () |
get stopped |
Class for interfacing with a Honeywell HMR-3300 compass.
This is a 3-axis compass. The compass communicates with a host via RS-232 at 19,200 bauds. The compass sends the 3 angular measurements at regular intervals.
In our BeoSub, Pitch is approx 0.0 when horizontal; tilting the sub nose down makes the pitch more negative.
For Heading, 0.0 is north, turning left decreases the heading angle.
For Roll, rolling leftwards (so that the left side of the sub goes down while the right side goes up) increases the roll angle.
Definition at line 70 of file HMR3300.H.
HMR3300::HMR3300 | ( | OptionManager & | mgr, | |
const std::string & | descrName = "HMR3300" , |
|||
const std::string & | tagName = "HMR3300" , |
|||
const char * | dev = "/dev/ttyS0" | |||
) |
Angle HMR3300::getHeading | ( | ) |
Angle HMR3300::getPitch | ( | ) |
void HMR3300::run | ( | ) |
The user need not concern himself with this method.
Should have been protected, but is not because of the pthread hack.
Definition at line 90 of file HMR3300.C.
References rutz::shared_ptr< T >::is_valid().
void HMR3300::setListener | ( | rutz::shared_ptr< HMR3300Listener > & | listener | ) |
void HMR3300::start2 | ( | ) | [protected, virtual] |
void HMR3300::stop1 | ( | ) | [protected, virtual] |