ArduPilot / ardupilot

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

Copter 3.6 and up : able to import 3D object for avoidance #11343

Open roque-canales opened 5 years ago

roque-canales commented 5 years ago

Hello,

Idea is to import 3D object for avoidance without sensor.

Just with GPS, for example , I enter the 3D volume of one tree, and copter can't go in.

Is this feature exist ? If this feature not exist maybe with companion computer it's possible to send 3D objects for avoidance ?

rmackay9 commented 5 years ago

We don't support this but I think it is very similar to stay-out zones. The possible addition here is the vertical axis.. stay out zones are generally 2D with infinite height.

IamPete1 commented 3 years ago

@rishabsingh3003 I think we can do this now?

rishabsingh3003 commented 3 years ago

Yes, it is! Via OBSTACLE_DISTANCE_3D mavlink message. Fences are still 2D though .. or rather Horizontal + Vertical

rmackay9 commented 3 years ago

TBH, I don't think that the obstacle-distance-3d is really for the purpose specified by this issue. I'm not sure we will ever implement this request but we could theoretically if we supported polygon fences with individual altitude limits.

peterbarker commented 3 years ago

On Sun, 15 Aug 2021, Randy Mackay wrote:

TBH, I don't think that the obstacle-distance-3d is really for the purpose specified by this issue.

Agreed. It's more like the opposite of the mavlink SAFETY_ALLOWED_AREA concept. Which is a volume, not an area....

peterbarker commented 3 years ago

.... but @rmackay9 's suggestion of alt limits for separate polygon fences is probably a better way forward. if rather computationally expensive.

manavgandhi17 commented 2 years ago

Pinging back on this to see if there has been any developmental work done on fence-based 3D obstacle avoidance. Would be very helpful for sectioning out trees instead of an infinite vertical cylinder.

We would probably also need to integrate altitude type into this distinction (MSL, AGL, Terrain) - as well has somehow configuring the same altitude value/type for all vertices of a singular polygon.