Robot XY Location
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- rdagger
- Posts: 88
- Joined: Mon Nov 30, 2015 5:44 pm
Robot XY Location
I have a small robot that will be navigating within a 2400 mm (~8 ft) square pit. The floor of the outdoor shallow pit is an 8x8 grid of 300mm squares. I need to be able to determine the robot’s X, Y coordinates on the grid with roughly 5 mm of accuracy. I’m thinking I could use 2 orthogonally mounted distance sensors on top of the robot to ascertain its position. Would the VL53L4CX be the best solution or is there something better? What is the status of the CircuitPython driver for the VL53L4CX?
- adafruit_support_bill
- Posts: 88136
- Joined: Sat Feb 07, 2009 10:11 am
Re: Robot XY Location
That might work - assuming that:I’m thinking I could use 2 orthogonally mounted distance sensors on top of the robot to ascertain its position.
- The robot is oriented square to the perimeter
You know which way the robot is pointed
There are no other robots or obstacles between the robot and the walls.
A magnetometer (or a full 9-axis IMU) would help determine the orientation.
- rdagger
- Posts: 88
- Joined: Mon Nov 30, 2015 5:44 pm
Re: Robot XY Location
I should have mentioned I am already using an Adafruit 9-DOF Orientation IMU Fusion Breakout - BNO085 which works well to determine orientation.adafruit_support_bill wrote: A magnetometer (or a full 9-axis IMU) would help determine the orientation.
I just noticed that Adafruit also sells a VL53L1X version too. It looks like the range is less than the VL53L4CX but still within my design parameters and there is an available CircuitPython library. Is there any difference in accuracy between the 2 sensors?
The Slamtec 360 degree Lidar sensor looks very cool but I am on a budget; unless you don't think the time of flight sensors would work well.
- adafruit_support_bill
- Posts: 88136
- Joined: Sat Feb 07, 2009 10:11 am
Re: Robot XY Location
Accuracy for these sensors is not a fixed number. It depends on the distance mode and timing budget. And it decreases with increasing distance to the target. Also note that the maximum working range is dependent on the reflectivity of the target and decreases significantly with high levels of ambient light. Since the robot will be operating in an outdoor venue, you need to take that into account as well.
The datasheets describe the distance modes and timing budget configuration. And they provide charts showing the accuracy & repeatability in various conditions.
https://cdn-learn.adafruit.com/assets/a ... 1651243306
https://cdn-learn.adafruit.com/assets/a ... 1634930163
Ultrasonic rangefinders would be another option to consider. They are not affected by ambient light or the color of the target. The Maxbotix HRLV sensors have 1mm resolution out to 5 meters. Maxbotix datasheets provide accurate beam sensitivity patterns for various target types.
https://www.adafruit.com/?q=maxbotix+hr ... =BestMatch
The datasheets describe the distance modes and timing budget configuration. And they provide charts showing the accuracy & repeatability in various conditions.
https://cdn-learn.adafruit.com/assets/a ... 1651243306
https://cdn-learn.adafruit.com/assets/a ... 1634930163
Ultrasonic rangefinders would be another option to consider. They are not affected by ambient light or the color of the target. The Maxbotix HRLV sensors have 1mm resolution out to 5 meters. Maxbotix datasheets provide accurate beam sensitivity patterns for various target types.
https://www.adafruit.com/?q=maxbotix+hr ... =BestMatch
- gammaburst
- Posts: 1016
- Joined: Thu Dec 31, 2015 12:06 pm
Re: Robot XY Location
Are you allowed to place reference targets in the vicinity (for your distance sensors)?
Is the floor painted black/white like an 8x8 checkerboard, illuminated by daylight?
Are you playing robo-checkers, robo-chess?
Maybe a two-step process. A GNSS RTK receiver could get you within a couple centimeters, assuming good sky visibility. Then some other technique that detects the nearest square edges and gives you 5mm. No need to place any reference targets.
I've played with the ZED-F9P: https://www.sparkfun.com/products/16481
Sounds like fun.
Is the floor painted black/white like an 8x8 checkerboard, illuminated by daylight?
Are you playing robo-checkers, robo-chess?
Maybe a two-step process. A GNSS RTK receiver could get you within a couple centimeters, assuming good sky visibility. Then some other technique that detects the nearest square edges and gives you 5mm. No need to place any reference targets.
I've played with the ZED-F9P: https://www.sparkfun.com/products/16481
Sounds like fun.
- rdagger
- Posts: 88
- Joined: Mon Nov 30, 2015 5:44 pm
Re: Robot XY Location
The floor is the same pattern as a chess board and will be exposed to daylight. It hasn't been painted yet, but could be black and white. It would also be possible to paint or place reference targets along the 4 perimeter walls of the pit. How could the reference targets be used?gammaburst wrote:Are you allowed to place reference targets in the vicinity (for your distance sensors)?
Is the floor painted black/white like an 8x8 checkerboard, illuminated by daylight?
Are you playing robo-checkers, robo-chess?
Maybe a two-step process. A GNSS RTK receiver could get you within a couple centimeters, assuming good sky visibility. Then some other technique that detects the nearest square edges and gives you 5mm. No need to place any reference targets.
I've played with the ZED-F9P: https://www.sparkfun.com/products/16481
Sounds like fun.
We weren't planning on playing chess but I guess we could if we had more robots (the robot is alone on the grid). The robot is testing a thorium based quantum random number generator.
The GNSS RTK receiver is a great idea but it is pretty expensive and we have limited space especially on the top of the robot. We may also want to be able to move the experiment indoors.
I will also review the Ultrasonic and time of flight sensor datasheets.
- adafruit_support_bill
- Posts: 88136
- Joined: Sat Feb 07, 2009 10:11 am
Re: Robot XY Location
If you have visible delineation between the squares, you can use inexpensive optical reflectance sensors to improve your positioning accuracy. In effect, it gives you 7 known reference lines in both the X and Y direction. You can detect with great precision when you cross a boundary and can use that to correct for any drift in your position calculations.
If you can paint reference targets on the walls and can mount an android phone on your robot, you could use an AR package like Vuforia for localization:
https://library.vuforia.com/
This is used in FTC robotics which operates in a similar environment:
https://www.firstinspires.org/sites/def ... umarks.pdf
If you can paint reference targets on the walls and can mount an android phone on your robot, you could use an AR package like Vuforia for localization:
https://library.vuforia.com/
This is used in FTC robotics which operates in a similar environment:
https://www.firstinspires.org/sites/def ... umarks.pdf
- gammaburst
- Posts: 1016
- Joined: Thu Dec 31, 2015 12:06 pm
Re: Robot XY Location
The reference targets would be clearly visible objects having accurately known positions.
Your robot could measure their distances and calculate its position.
A thorium (radioactive) RNG with robots?!
I'm guessing you have a college prof with an imagination.
Your robot could measure their distances and calculate its position.
A thorium (radioactive) RNG with robots?!
I'm guessing you have a college prof with an imagination.
- rdagger
- Posts: 88
- Joined: Mon Nov 30, 2015 5:44 pm
Re: Robot XY Location
The 2 perpendicular distance sensors along with the orientation sensor should be enough to calculate the robot's position in the pit.gammaburst wrote:The reference targets would be clearly visible objects having accurately known positions.
Your robot could measure their distances and calculate its position.
A thorium (radioactive) RNG with robots?!
I'm guessing you have a college prof with an imagination.
The QRNG does use small amounts of radioisotopes (thorium and uranium).
This isn't a school project. It's just for fun. I'll post a video when it's finished.
- gammaburst
- Posts: 1016
- Joined: Thu Dec 31, 2015 12:06 pm
Re: Robot XY Location
The pit has reasonably straight accurate walls? Ok, that's a big help.
"Pit" sounded like something dug with a shovel. ;-)
"Pit" sounded like something dug with a shovel. ;-)
- rdagger
- Posts: 88
- Joined: Mon Nov 30, 2015 5:44 pm
Re: Robot XY Location
I'll strive to ensure the grid is level and square and I can place a short plum wall around the grid perimeter to improve reflectivity. It doesn't have to be below ground.gammaburst wrote:The pit has reasonably straight accurate walls? Ok, that's a big help.
"Pit" sounded like something dug with a shovel. ;-)
Please be positive and constructive with your questions and comments.