ArduPilot / ardupilot

ArduPlane, ArduCopter, ArduRover, ArduSub source
http://ardupilot.org/
GNU General Public License v3.0
11.02k stars 17.57k forks source link

Copter: Copter does not slow down vertically while precision landing is active if downward facing rangefinder is not present #17706

Open rishabsingh3003 opened 3 years ago

rishabsingh3003 commented 3 years ago

Bug report

Issue details Copter slows down vertically when it approaches the landing target if a downward-facing rangefinder is configured. However, a rangefinder is only compulsory while using IR-Lock landing system. If we have a companion computer (mavlink based) precision landing, which specifies the "distance" field, we do not need a rangefinder for landing.

Therefore the speed will never reduce for a companion computer-based precision landing and the end result is that the copter may reach the ground before it reaches the landing target horizontally.

Version Master ( and probably since many years)

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

khancyr commented 3 years ago

Nice one. But I am pretty sure that all vehicles using precland got a rangefinder as it is really helpful for landing situation. Anyways, feel free to open a PR to fix that

rishabsingh3003 commented 3 years ago

Yes, you are probably right. That's why no one noticed it till now! I'll fix it soon, should be an easy fix

amilcarlucas commented 3 years ago

Strange... we use a companion computer for vision based precision landing and it emits MavLink DISTANCE_SENSOR messages, and it does reduce the lading speed near the ground ... Or am I imagining things ??

rishabsingh3003 commented 3 years ago

@amilcarlucas if you emit a DISTANCE _SENSOR that has downward facing orientation, then you're basically just mocking a rangefinder (I.e rangefinder lib reads this as a valid rangefinder driver). You'll get all functionality you'll normally get from any other downward facing rangefinder.