10 #define CBoardSonars_H
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
A definition of a CStream actually representing a USB connection to a FTDI chip.
This class allows loading and storing values and vectors of different types from a configuration text...
This "software driver" implements the communication protocol for interfacing a Ultrasonic range finde...
CBoardSonars()
Constructor.
float m_maxRange
The maximum range in meters, used for the internal device timer (value between 4cm and 11m).
float m_minTimeBetweenPings
The minimum time between sonar pings (in seconds).
void loadConfig_sensorSpecific(const mrpt::config::CConfigFileBase &configSource, const std::string &iniSection)
Loads specific configuration for the device from a given source of configuration parameters,...
void doProcess()
This method will be invoked at a minimum rate of "process_rate" (Hz)
bool programI2CAddress(uint8_t currentAddress, uint8_t newAddress)
Requests a command of "change address" for a given SRF10 device.
std::vector< int32_t > m_firingOrder
The order in which sonars will be fired, indexed by their I2C addresses [0,15].
bool getObservation(mrpt::obs::CObservationRange &obs)
Request the latest range measurements.
std::map< uint16_t, int32_t > m_sonarGains
The individual gains of the sonars, indexed by their I2C addresses [0,15].
std::string m_usbSerialNumber
A copy of the device serial number (to open the USB FTDI chip)
bool checkConnectionAndConnect()
Tries to connect to the USB device (if disconnected).
bool sendConfigCommands()
Sends the configuration (max range, gain,...) to the USB board.
virtual ~CBoardSonars()
Destructor.
std::map< uint16_t, mrpt::math::TPose3D > m_sonarPoses
The poses of the sonars: x[m] y[m] z[m] yaw[deg] pitch[deg] roll[deg] Up to 16 devices,...
uint8_t m_gain
A value between 0 and 16, for gains between 40 and 700 (not linear).
bool queryFirmwareVersion(std::string &out_firmwareVersion)
Query the firmware version on the device (can be used to test communications).
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
Declares a class derived from "CObservation" that encapsules a single range measurement,...
GLsizei const GLchar ** string
Contains classes for various device interfaces.