ArduPilot/ardupilot

RangeFinder: Using existing Analog offset for other interfaces (I2C or Serial)

Aperta

#9873 aperta il 21 nov 2018

 (4 commenti) (0 reazioni) (0 assegnatari)C++ (15.603 fork)batch import
EnhancementLibrarygood first issue

Metriche repository

Star
 (9336 stelle)
Metriche merge PR
 (Merge medio 26g 16h) (166 PR mergiate in 30 g)

Descrizione

Feature request

Expand rangefinder offset

Is your feature request related to a problem? Please describe. Need some easy fix to adjust sensor offset. For example, the Garmin Lidar Lite, has an offset of approx. 25 cm on low range, and users do not have a mean to compensate.

Describe the solution you'd like Just tested using the existing analog offset within this code https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_RangeFinder/AP_RangeFinder_PulsedLightLRF.cpp#L94

uint16_t _distance_cm = be16toh(val);
float offset  = state.offset;
// remove momentary spikes
if (abs(_distance_cm - last_distance_cm) < 100) {
    state.distance_cm = (_distance_cm-offset);

Platform [x ] All [ ] AntennaTracker [ ] Copter [ ] Plane [ ] Rover [ ] Submarine

Guida contributor