Hi, I am currently working on a project where I need an ultrasonic sensor to detect objects at about 2 metres away. The sensor will be placed on the ceiling 3 metres above and will face downwards, however when I try pointing the sensor downwards the range seems to stop at 90-100 cm. I have successfully tried sensing objects 2 metres away when the sensor is pointed horizontally or upwards, however pointing downwards seems to limit the range. Is this a limitation of the ultrasonic sensor itself? I am using three HC-SR04 sensors with an Arduino Uno r3, with the sensors powered by an external 5V power supply. Thanks for any help!
Should not make a difference. Many people use them to sense water level in a tank, for instance.
What is the target? What is the shape of the target? Is the target perpendicular to the rangefinder?
Are you delaying a bit between sending pings to let the previous echo die down? I usually wait about 50ms between pings.
I'm using the sensor to sense when someone puts their hand within the range. The sensor is pointed perpendicular to the ground and within the 95 cm range it works perfectly, however outside of this range the sensor shows no change in values. The thing is this same code works at ranges of up to 300 cm when the sensor is pointed horizontally or upwards, which is very confusing. I put a delay of about 100ms between pulses.
The size of the echo depends on the size of the target and its distance from the sensor.
(OK and the shape of the response of sender and receiver, hardness and texture of the target etc etc.)
In your setup you have an "infinite" target at a distance of 3m, so the small closer target will not be detected.
The problem is that it is able to detect the hand from around 2m away just fine when the sensor is placed horizontally. One possible reason I could think of for the problem is that I did bend the leads so the sensor would fit flush on a breadboard, however, this reason sounds very farfetched to me as, how would damage like that limit the sensing range of a sensor?
Breadboards are a common source of bad connections .
When you run it horizontally is there a bigger distance to the far wall than that 3m .
There is also the problem of reflectivity and the size of the detected object . Think of the signal like a pulse of light , if the hand doesn’t reflect too well , or is at an angle to the sensor, or there are stray reflections etc ..
Ah ok I tried using another breadboard and it seems to have been fixed, but this still seems like a very weird problem to arise from a bad connection lol.