Home        Store        Learn        Blog

Ping 360 scan speed ros

Hi, i am controlling a ping360 using ROS. I currently use this library: GitHub - CentraleNantesRobotics/ping360_sonar: ROS package for Blue Robotics Ping360 Sonar

The scan speed at a 50 meter range is close to a minute. Note i am running the ROS node at a sufficient speed, so this should not be the source of the problem. The problem does not seem to be computational. Furthermore, I’ve connected the ping directly to my laptop.

Any suggestions for how i can speed this up? The current speed is to low. Feel free to suggest drastic changes etc.

Best,
Ole Haaland

Hi,

The theoretical max speed for full-circle scan at 50 m is 50(meters)*2(round-trip)*400(angular resolution)/1500(speed of sound) = 27 seconds. So while there’s room for improvement, you won’t be able to go lower than that. You could experiment using a higher baudrate, lowering the maximum range, or lowering the angular resolution.

A significant factor in the scan speed is the serial port latency. This is a setting on serial adapters to change how frequently the internal buffer is flushed and sent to the pc. In our programs, we configure this latency as small as possible to improve the scan speed.

https://www.ftdichip.com/Support/Knowledgebase/index.html?settingacustomdefaultlaten.htm
https://projectgus.com/2011/10/notes-on-ftdi-latency-with-arduino/
https://www.loadstarsensors.com/assets/manuals/html/how-to-set-latency-timer/latency-timer.html