I'm building an omni-directional robot base and want to add some kind of low-level obstacle detection. The complete robot will have LIDAR and camera for navigation but I'd like to add something at the low level to stop the motors in case the high-level navigation fails/crashes.

The issue I have is because it's omni-directional the sensors have to have all directions, which for even cheap sonar sensors starts to get pretty pricey. I was thinking of adding pressure sensor bumpers similar to what Kiva/Amazon uses: Meet the drone that already delivers your packages, Kiva robot teardown. It's a cool idea just a flexible tube attached to a pressure sensor, if anything bumps into the tube you get a small pressure change in the tube. This means I could cover the entire robot with a ring of tube and use a single pressure sensor!

The main issue I have is figuring out what type of pressure sensor to use. The Kiva robot appears to have a single pressure sensor connected to one end of the tube. I found this example, Air pressure based bumpers by Axbri on Lets Make Robots which uses a pair of differential pressure sensors.

The main question I have is around the type of sensor should it be absolute, gauge or differential (as in the LMR example). And maybe to have a rough idea how to calculate the pressure range required for the sensor? I guess the static pressure would be based on the length and diameter of the tube and the dynamic pressure (caused by the obstacle) would also depend on the size of the obstacle and how much the tube is compressed?


1 Answer 1


There are more things you should consider:

  • Air pressure change will be caused by a force acting on the tube. Now the elasticity of the tube will be an important factor also. A very rigid tube will only allow small deformations which will lead to small changes in air pressure.

  • Resolution of the sensor is important to consider. You want to be able to detect small pressure changes.

  • Maximum range is only a problem if the sensor will be damaged above the maximum treshold. Since you only want to detect a presence, saturating your sensor is not a problem, given that there is no damage from the overpressure.

  • the type of pressure sensor used is not important if you can corelate their measurement range and resolution to the above parameters

So, you should start with the tube. You can probably coralate a tube elasiticity to sensitivity and range if you define the minimum obstacle shape (area) that can collide with the robot and the threshold force at which you want to trigger something, and a variation of acceptable tolerance on that force. In may cases with "toy" robots, this could be done through trial and error, for indusrial deployment, you would need a risk analysis and risk mitigation measures (and all connected task, which you should know about if you are doing industrial deployment).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.