Rover Object Avoidance

Hi Guys.

I need some help to setup my Rover Object Avoidance.

I’m running Ardurover v3.3.0.
My lidar is a Benewake TF mini LiDAR.
When drive it in “steering mode” I can see a message in Mission Planner saying: “Rangefinder obstacle 38 cm” but the Rover don’t avoid the obstacle.
If I avoid it manually then the message says “Obstacle passed” .

My settings are:
SERIAL4_PROTOCOL = 9 (Lidar)
SERIAL4_BAUD = 115
RNGFND_TYPE = 8 (LightWareSerial)
RNGFND_SCALING = 1
RNGFND_MIN_CM = 5
RNGFND_MAX_CM = 1200
RNGFND_GNDCLEAR = 10
AVOID_ENABLE = 7
AVOID_MARGIN = 4
RNGFND_ORIENT = 0

The controller is a Pixhack 2.8.4
The chassis is a Wild Thumper 6x6
Battery 2S 4000 mah

Any help will be greatly appreciated.

Antonio,

Sorry I missed your message. In rover we have two forms of objects avoidance. There’s the “simple avoidance” in which the vehicle will stop before hitting things. Then there’s the older method which attempts to dodge around objects.

It looks like the wiki’s object avoidance page is out-of-date and only describes the older method so I’ll update this over the next week. this involves setting the AVOID_ and PRX_ parameters. There’s a bit of info on this Copter wiki page and much of the code is shared with Rover.

Hello rmackay9, I am still trying to make it through the wineyard in straight line with my rover. Even trying nongps nav with rplidar and cartographer which is a fascinating concept. But thinking maybe i am overdoing it with companion Rpi3 and am now trying also a simplier approach with sonars. It looks to me that when only using two sonars at position 1 and position 7, rover is behaving as per wiki for Copter Object Avoidance and assuming it is in the “cup” when it detects an object and copies distance to adjacent sectors. For my purpose it shoud assume there is nothing between two sonars and proceed straight between them. I suppose It could help if i could add another sonar at the front pointing straight (and telling it is free to go straight). Is there any way to add multiple (three) sonars on rover, or to change “cup” logic to " hallway" logic so to speak ? Or am i wrong and there is another reason i can not achieve the required behavior.

Hi @AnJu,

The offboard Cartographer + ROS Object Avoidance setup described on the developer wiki is probably the most likely to be able to get the vehicle between the rows of trees.

In Rover-3.6 I think we will hopefully have the Canberra UAV’s object avoidance code integrated into Rover but the algorithm was designed for Plane so it works best with larger wide open spaces. It may need some significant changes to get it working. Below is a picture of it running in SITL and shows a particular case where it gets confused and drives away from the target instead of towards it. Probably not worth getting into the details but it’s related to having the destination within a relatively tight corner of the fence.

Hello, thanks for response.It is exciting what you do in this area.It is so much going on.That is actually the reason i bought RPlidar.Will follow a development and try everything.The cartographer works quite nice allready, but have not tested it in the field yet. I will try to reduce inertia (speed) in lateral leg before turning in to next row of plants (In your test cones) so it hopefully does not increase the positional error in that part.

1 Like

@AnJu,

Sounds good. Here’s a video of the “Bendy Cane” (or perhaps “Bendy Ruler”) onboard object avoidance working in the simulator. It’s not quite ready but it’s getting close.

2 Likes

@Randy, i reply to this old thread with a request:

Can we get back the slide / dodge option in rovers simple avoidance ?

During the years i have tried Rplidar - alone, and with Ros, Tfminis, Intel realsence, but none of them gives me what i need- just slight corrections to follow a corridor. Most of the named wont even let the rover enter the 1.8 meter wide wineyard row.

I would use old 2.5 rover, (which worked nice) but i cannot use RTK in that case.