ardupilot/libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.h

23 lines
613 B
C++

#ifndef __AP_RangeFinder_SharpGP2Y_H__
#define __AP_RangeFinder_SharpGP2Y_H__
#include "RangeFinder.h"
#define AP_RANGEFINDER_SHARPEGP2Y_MIN_DISTANCE 20
#define AP_RANGEFINDER_SHARPEGP2Y_MAX_DISTANCE 150
class AP_RangeFinder_SharpGP2Y : public RangeFinder
{
public:
AP_RangeFinder_SharpGP2Y(AP_HAL::AnalogSource *source, FilterInt16 *filter);
int16_t convert_raw_to_distance(int16_t raw_value) {
if (raw_value == 0) {
return max_distance;
} else {
return 14500/raw_value;
}
} // read value from analog port and return distance in cm
};
#endif