The following are the equations used to compute the distance from an ultrasonic range sensor to an obstacle:
Distance = Speed * Time/2
Speed of sound at sea level = 343 m/s or 34,300 cm/s
Thus, Distance = 17,150 * Time (unit cm)
We can compute the distance to the obstacle using the pulse duration of the output. The following is the code to work with the ultrasonic sound sensor and send a value through the ultrasound topic using the range message definition in ROS:
#include <ros.h> #include <ros/time.h> #include <sensor_msgs/Range.h> ros::NodeHandle nh; #define echoPin 7 // Echo Pin #define trigPin 8 // Trigger Pin int maximumRange = 200; // Maximum range needed int minimumRange ...