I am currently investigating the use of an optical sensor for navigation over a concrete surface. During initial testing, the sensor was positioned approximately 13 mm above the ground. When driving the vehicle around a loop, the results were not consistent.
The loop we are driving is approximately 193 feet in total length, and our speed does not exceed 1 m/s. The data below represents the results logged from the sensor. We have logic in place to handle rollover since we are traveling such a long distance. Ideally, the loops should overlap more consistently with one another.
I was specifically testing the repeatability of the sensor, and the results were not as strong as I expected. It is possible that this sensor is simply not well-suited for our use case, which is acceptable if that is the conclusion. However, I wanted to get a second opinion before deciding to move on from this sensor.
Hi there,
Tthe OTOS should have better accuracy than what you’re seeing. There’s a few things that can cause poor accuracy like that:
- Poor tracking from the optical sensor. This can happen for a number of reasons (surface, height, sensor flatness, dirty sensor, etc.).
- Poor code logic. For example, repeatedly overwriting the pose registers can mess with the sensor’s tracking algorithm.
- Defective sensor. Manufacturing defects can happen sometimes, resulting in a sensor that has poor tracking.
How smooth is the surface? Is it smooth cement like a warehouse floor, or rough concrete like a road? Could you please share a photo of the surface? The OTOS requires a fairly smooth surface to get accurate tracking.
Could you please share some code snippets, or at least give an idea of how you’re interacting with the OTOS?
Could you also please share a photo of how you’ve mounted the OTOS to the vehicle? And what is the vehicle? Does it have any kind of suspension? Excessive motion from a wobbly mount or vehicle suspension can mess with the tracking algorithm.
Can you try on a smaller loop? Ideally one that doesn’t require handling rollover, just in case that code logic is somehow causing issues.
Thanks!