Ardurover for indoor navigation

Hi to all,

about two years ago, I successfully used Ardurover on my skid-steering robot with Pixhawk 5, two GPS modules mounted on a fixed baseline on the top of the robot and a base station to send the RTCM3 corrections (I used the holybro GPS kit).
The robot was able to move outdoor with a very high accuracy (+/- 3 cm).

Now, I have to design another robot, but this time it should navigate both outdoor and indoor.
What is the best solution to make it work indoor with Ardurover? I saw on the ardurover documentation that there are some sensors that can be used for non-GPS navigation.
In the past, I already used the MarvelMind Beacons alone, without the ardurover firmware, and the accuracy was really poor and I also tried the T265, alone, for the odometry.

Can you please suggest me a good method to use for indoor navigation in order to get a high accuracy on the robot’s pose, please?
Do you have experience about this?

2 Likes

I was thinking that the best method could be to use a 2D Laser like the SICK LMS151 or LMS111, but I found no documentation on it, so I think it is not possible to use it.

Use wheel encoders (cheap and simple). Basically, you define the GPS coordinates of a starting point (which may not be real (don’t approach the poles)) and the software can move relative to them thanks to the wheel encoders.

1 Like

Thank you for your suggestion.

Since wheel slippage affects wheel encoders, they are almost never a good method. Moreover, I’m using a skid-steering robot, so the slippage effect heavily affects the encoder readings.
I need to reach an accuracy of about 10 centimeters and I have to assume that the robot can start moving from indoor so I do not always have a GPS measurement.

True, but indoors, not lifting the vehicle, I didn’t find it to be a problem. Outdoors, on circuit, over asphalt, certainly it was very difficult to complete more than one lap, but I think it is more due to the fact that theoretical GPS coordinates cannot be followed forever than to slippage.

Outdoor, with dual gps system in RTK and three imu sensors I was able to correctly follow a path on agricultural terrain multiple times with high accuracy without using encoders. It is really amazing to see how it works.

Indoor, on flat surfaces, relying only on wheel encoders for path following can be difficult. I did different testa in past years and I never got good results.

Hello,

Cartographer is a good SLAM system for this purpose
This is the wiki (a little outdated), I know there are some development with ROS2 implementation as well
https://ardupilot.org/dev/docs/ros-cartographer-slam.html

Thank you for the suggestion! I was reading about this a while ago, but I was worried since I realized that the documentation was a little bit updated.
However, I will consider it since it seems to be the best method at the moment!

Do you know if it is possible to use a more professional laser instead rplidar? For example, LMS151 or LMS111 from Sick since they are more reliable and with a longer range.
Probably, using them can improve the performance of cartographer.

1 Like

Hello

This is ROS based, so any ROS compliant driver can work

1 Like

This is a different thing. Particularily this point is surrounded by trees and has a lot of GPS shadowing (not 50m away), so for a RTK test I had to choose a “good” satellites day. Of course, success with RTK will be maintained lap after lap (not as with encoders) during hours, until HDOP increases.

In my case, RTK works fine in every condition even with cloudy sky.

My main problem is that now I need a way to navigate indoor without gps.