Introduction
Ultrasonic sensors emit ultrasonic pulses, and by measuring the time of ultrasonic pulse reaches the object and back to the transducer, the distance of sensor from the target object is calculated. They are widely used in detecting displacement, thickness, distance, water level, material level and transparent objects.
The URM06 - Analog Ultrasonic sensor provides very short to long-range detection and ranging from 20cm ~ 10m, comes in a compact, robust PVC housing and matches 35mm electrical pipe mounting. It comes with analog interface and works at high output acoustic power. The ultrasonic sensor detects objects from 20cm to 1000cm and provides range information with 1cm resolution. The URM06 has 15 degree beam angle which has excellent receive sensitivity. And it works best when detecting soft targets. The similar sensors are widely used in professional mobile robot systems such as Pioneer robots.
The URM06 series sensors are the best ultrasonic sensor available in the market regarding its beam angle, senstivity and accuracy.
Specification
- Working Voltage: 6V-12V (5V is acceptable but not recommended)
- Rated Current: 16mA
- Peek Current: 2A
- Interface: Analog
- Working Frequency: 49.5KHZ
- Working Temperature: -10℃ ~ +70℃
- Detecting Angle: 15°(-6dB)
- Detecting Range: 20cm ~ 10m(Test on flat wall environment)
- Size: 50mm(diameter)*43mm(length)
- Mounting Thread Diameter: 35mm
- Weight: 45g
Applications
- robot navigation
- obstacle avoidance
- measuring distance devices
- engineering measurement tools
- industrial control system
Connection Diagram
Pin Definition
- VCC: 6~12V@Max 2A (5V is acceptable but not recommended)
- GND: Ground
- Trig: Measurement trigger pin - Low level pulse over 50us triggers one distance measurement. Holding this pin LOW will repeats the measurement every 100ms.
- OUT: Analog output pin – 0.33mV stands for 1mm.
Version Update
Version No. | Date | Description |
---|---|---|
V3.0 | 2021/05/10 | Optimized sensitivity and stability; Up to 12M detection distance in Flat wall environment test; Changed Analog Voltage output(0.2129mV equals to 1mm) |
Sample Code
#include "Arduino.h"
/*
Trig: Measurement trigger pin - Low level pulse over 50us triggers one distance measurement.
Holding this pin LOW will repeats the measurement every 100ms.
*/
#define TRIGGER 2
/*
OUT: analog output 0.33mV equals 1mm
*/
#define ANALOG 1
void setup()
{
pinMode(TRIGGER, OUTPUT);
digitalWrite(TRIGGER, HIGH);
Serial.begin(9600);
}
void loop()
{
// generate the pulse to trigger the sensor
digitalWrite(TRIGGER, LOW);
delayMicroseconds(50);
digitalWrite(TRIGGER, HIGH);
delayMicroseconds(50);
unsigned int distance = analogRead(ANALOG); //read the analog pin
distance = (unsigned int)(((unsigned long)distance * 5000)/1024); //change from analog value to voltage
distance = (unsigned int)((float)distance / 0.33f); //0.33mV equals to 1mm,
//distance = (unsigned int)((float)distance / 0.2129f); //For new version, 0.2129mV equals to 1mm.
Serial.print("distance:");
Serial.print(distance);
Serial.println("mm");
delay(500);
}