![]() |
Laelaps
2.3.5
RoadNarrows Robotics Small Outdoor Mobile Robot Project
|
Range sensors interface base class. More...
#include <laeVL6180.h>
Public Member Functions | |
LaeRangeInterface (laelaps::LaeI2C &i2cBus) | |
Initialization constructor. More... | |
virtual | ~LaeRangeInterface () |
Destructor. | |
virtual int | getInterfaceVersion (uint_t &uVerMajor, uint_t &uVerMinor, uint_t &uFwVer) |
Get interface version. More... | |
virtual void | clearSensedData () |
Clear sensed data. | |
virtual int | configure (const laelaps::LaeDesc &desc) |
Configure sensor array from product description. More... | |
virtual int | configure (const laelaps::LaeTunes &tunes) |
Configure sensor array from tuning parameters. More... | |
virtual int | reload (const laelaps::LaeTunes &tunes) |
Reload configuration tuning parameters. More... | |
virtual void | exec () |
Execute task in one cycle to take measurements. More... | |
virtual int | getRange (const std::string &strKey, double &fRange) |
Get a range measurement. More... | |
virtual int | getRange (std::vector< std::string > &vecNames, std::vector< double > &vecRanges) |
Get all sensor range measurements. More... | |
virtual int | getAmbientLight (const std::string &strKey, double &fAmbient) |
Get an ambient light illuminance measurement. More... | |
virtual int | getAmbientLight (std::vector< std::string > &vecNames, std::vector< double > &vecAmbient) |
Get all sensor ambient light illuminance measurements. More... | |
virtual int | getSensorProps (const std::string &strKey, std::string &strRadiationType, double &fFoV, double &fBeamDir, double &fMin, double &fMax) |
Get range sensor properties. More... | |
virtual int | readSensorIdentity (const std::string &strKey, VL6180xIdentification &ident) |
Read sensor's identification. More... | |
virtual int | readSensorTunes (const std::string &strKey, uint_t &uRangeOffset, uint_t &uRangeCrossTalk, double &fAlsGain, uint_t &uAlsIntPeriod) |
Read sensor's current tuning parameters. More... | |
Protected Attributes | |
laelaps::LaeI2C & | m_i2cBus |
bound I2C bus instance | |
Range sensors interface base class.
Definition at line 779 of file laeVL6180.h.
|
inline |
Initialization constructor.
i2cbus | Bound open I2C bus instance. |
Definition at line 789 of file laeVL6180.h.
|
inlinevirtual |
Configure sensor array from product description.
desc | Product description. |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 834 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
Referenced by sensor::vl6180::LaeRangeSensorGroup::configure().
|
inlinevirtual |
Configure sensor array from tuning parameters.
tunes | Tuning parameters. |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 846 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
|
inlinevirtual |
Execute task in one cycle to take measurements.
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 869 of file laeVL6180.h.
Referenced by sensor::vl6180::LaeRangeSensorGroup::exec().
|
inlinevirtual |
Get an ambient light illuminance measurement.
strKey | Sensor's unique name (key). | |
[out] | fAmbient | Sensed ambient light (lux). |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 909 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
Referenced by sensor::vl6180::LaeRangeSensorGroup::readSensorTunes().
|
inlinevirtual |
Get all sensor ambient light illuminance measurements.
strKey | Sensor's unique name (key). | |
[out] | vecAmbient | Vector of associated sensor measured ambients (lux). |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 924 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
|
inlinevirtual |
Get interface version.
[out] | uVerMajor | Interface version major number. |
[out] | uVerMinor | Interface version minor number. |
[out] | uFwVer | Firmware version. |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 809 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
Referenced by sensor::vl6180::LaeRangeSensorGroup::getInterfaceVersion().
|
inlinevirtual |
Get a range measurement.
strKey | Sensor's unique name (key). | |
[out] | fRange | Sensed object range (meters). |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 881 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
Referenced by sensor::vl6180::LaeRangeSensorGroup::readSensorTunes().
|
inlinevirtual |
Get all sensor range measurements.
[out] | vecNames | Vector of sensor unique names. |
[out] | vecRanges | Vector of associated sensor measured ranges (meters). |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 895 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
|
inlinevirtual |
Get range sensor properties.
strKey | Sensor's unique name id (key). | |
[out] | strRadiationType | Radiation type. |
[out] | fFoV | Field of View (radians). |
[out] | fBeamdir | Center of beam direction (radians). |
[out] | fMin | Minimum range (meters). |
[out] | fMax | Maximum range (meters). |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 942 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
Referenced by sensor::vl6180::LaeRangeSensorGroup::getSensorProps().
|
inlinevirtual |
Read sensor's identification.
strKey | Sensor's unique name id (key). | |
[out] | ident | Identification structure. |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 960 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
Referenced by sensor::vl6180::LaeRangeSensorGroup::readSensorIdentity().
|
inlinevirtual |
Read sensor's current tuning parameters.
strKey | Sensor's unique name id (key). | |
[out] | uRangeOffset | ToF sensor part-to-part offset. |
[out] | uRangeCrossTalk | ToF sensor cross-talk compensation. |
[out] | fAlsGain | Ambient light sensor analog gain. |
[out] | uAlsIntPeriod | Ambient light sensor integration period (msec). |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 978 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
Referenced by sensor::vl6180::LaeRangeSensorGroup::readSensorTunes().
|
inlinevirtual |
Reload configuration tuning parameters.
tunes | Tuning parameters. |
Reimplemented in sensor::vl6180::LaeRangeMuxSubproc, and sensor::vl6180::LaeVL6180MuxArray.
Definition at line 858 of file laeVL6180.h.
References laelaps::LAE_ECODE_NO_RSRC.
Referenced by sensor::vl6180::LaeRangeSensorGroup::reload().