$15 360 degree XV proximity lidar

Here is the video:
https://www.youtube.com/watch?v=DrDv8gb22Eo

you have not set set Don’t forward mavlink to/from in your lidar serial port options. if you had then you would not be able to see the high resolution display.

I changed it back to normal just for video purposes, i had it set earlier.

try it on another serial port, blinking on the lidar indicates that its working ok, the error is like something is interrupting the signal. im not sure on the flight controller but does anything else share that serial port?

I don’t think that there is anything else using this port. It was originally prepared for digital VTX, but I don’t think that matters. Will try different port.

try one of the telemetry ports, its possible that the flight controller cannot run all its serial ports at such a high speed.

Ok, changed the port, and it seems that it got better! Yellow proximity sensor still blinks, but it is way less frequent, and most importantly, it’s not displaying the errors (for most of the time), and I am able to arm it. Still can’t get the map circles to work though…

1 Like

set “Don’t forward mavlink to/from” in your lidar serial port option.

Enable bendy ruler to get the circles to appear.OA type =1

got the circles now, I had OA_DB_COUNT set to 0 and it wasn’t displaying any points. What is the advantage of setting “Don’t forward mavlink to/from”?

1 Like

it stops forwarding all the raw lidar data to the ground station, its fine if you have a fast connection like USB but it will overload a regular telemetry link.

1 Like

Went outside for testing, and it was weird, the car could avoid obstacles (steer away from them) but could not navigate straight while in AUTO mode at all. It was constantly turning like there was an obstacle right in front of the car. I wonder if lowering OA_DB_SIZE, OA_DB_EXPIRE and increasing OA_DB_QUEUE_SIZE would do something about it? I also noticed that the lidar still has a bit of delay till it notices the change of obstacles

was anything showing on the red proximity display?

Reduce OA_DB_EXPIRE time if you’re dealing with dynamic objects that way it will only show the most recent data, also Increase the SRx ADSB rate on your telemetry and the circles will update faster on mission planner

1 Like

After even more testing, i saw that the rover couldn’t set the obstacles correctly on the map. For example when it was turning while in AUTO mode and was detecting obstacles while doing so, i saw that the circles from the obstacles were placed a bit off the actual location of an obstacle (when lidar detected the obstacle from the side of the rover, and the rover started to turn, the obstacle circles were set a bit too late and were set to an incorrect location). It seemed like the GPS and compass data weren’t properly synchronized with lidar data. Let me visualize it:

Also, antoher thing i noticed is that the lidar sometimes detects some non-existent obstacles (noise), and tries to avoid an obstacle that is not really there. But i noticed that the noise happens to be marked as 1, 2 or maybe 3 circles, whereas an actual obstacle is marked with a lot more circles than 3. Is it possbile to tell the rover to ignore obstacles that have 3 circles or less?

And the last issue i experienced so far is (i think) not really realted to the lidar, but the mission planning itself. I had issues with GPS position (the rover GPS position was a bit off to the side) and it couldnt always hit a waypoint because of detecting an obstacle, so i increased the WP_RADIUS setting, so it could hit the waypoint without actually driving thru the middle of it, but for some reason that didn’t work, the rover was still trying to drive straight thru the waypoint, that additional radius didn’t change anything. Am i setting something wrong?

I would be really happy if these problems could be fixed!

1 Like

So the circles are positioned relitive to the vehicle, so it needs to know where it is accuratly for them to line up with the real world. So you need good gps fix and compass heading for it to use the red circles for path planning in auto mode.

It should still do basic proximity avoid even without a GPS.

For the phantom objects, how far from the ground is the lidar mounted ? Is it possible the laser is catching the ground as it goes over bumps?

What is your GPS HDOP? It needs to be less than 1 for accurate navigation, have you calibrated the compass? Does the vehicle show pointing north on mission planner when you actually point it north?

have you set PRX1 orientation to 1? out the box the lidar is inverted, you need to set the orientation to 1 to flip it.

1 Like

I have 2 GPS modules mounted on my rover (I have GPS Blending turned on), one of them is showing 3D Fix, and the other one is showing 3D dgps, sometimes also 3D fix. For the frst GPS, the HDOP is around 0,7 while driving, and the second one is showing around 0,96 HDOP, but for some reason the GPS position tends to drift around 1 meter off the actual location, even while having low HDOP and 3D fix. I Have calibrated the compass many times and it is indeed showing correct position when i turn the vehicle.

My lidar is mounted around 21cm off the ground (measured from the lidar laser pointer), The Rover sometimes tilts very hard while driving over bigger obstacles, and i think that is the only time it detects ground, i am driving on a reasonably smoth bricks, so it should not be as bumpy (I also have shock absorbers mounted on the rover)

I set my PRX1 orient to 0, because when i had it set to 1, it was showing inverted data on the proximity viewer (when obstacle was on the left, proximity viewer was showing the obstacle to the right of the rover, (so it works the opposite of what you thought))

disable gps blending and use one GPS at a time, blending doesnt work that well, since if your mixing good data with bad data you just get more bad data. its best to just use the GPS with the best fix.

20cm is pretty low, remember its going out over 6 meters so that would only take a few degrees of tilt to pick up the ground. if you need to run it that low you might want to limit its range to avoid picking up the ground.

try changing the prx1 yaw to see if you can get it to line up, its possible your version of the lidar is offset, the one I had was 10 degrees offf so im sure I added that to the code. but yours might be different.

1 Like

exactly what i did, i have limited the range to 4,5 meters. I didn’t wanted it to be too high, because it would be too top-heavy and the vehicle would tip over at harder turns. I also tried to tilt the sensor forward by puting washers under the mounting screws so it could detect lower obstacles e.g. curbs, but it didn’t do much. Anyway, I would still want to know if there is a way for ardupilot to ignore obstacles with only a few cricles? I think it would do a lot of job for my issues. Will try the rest of the settings, thanks!

not that im aware of, just set a short expiry date and small database so it goes away quickly.

I have been thinking about at doing a lua script that limits the rangefinder range based on pitch and roll, i had boats in mind when i was going to make it but it would work for a vehicle with suspension.

lua wouldn’t work for me, my F405 with 1mb memory won’t accept scripts :confused:

other than the red circles not being off, can the car navigate in auto mode ok?