SF-SR02 Ultrasonic Module

From Wiki
Revision as of 03:49, 2 June 2016 by Root (Talk | contribs)

Jump to: navigation, search

Introduction

This module contains an ultrasonic sensor to detect the distance to an obstacle in front. It is usually used on robots to avoid obstacles. With the two holes, it can be installed easily on the robot. The sensor detects obstacles 2cm-700cm away, though it keeps stable signal output within 5m and the signals become weaker and weaker when it gets farther away from the obstacle beyond 5m. There is power indicator light added onside to indicate power on/off. The 3-pin design makes it unique among most of the ultrasonic module in the market: the same pin to trigger and receive signals. The 3-pin anti-reverse cable included make the wiring tighter and more convenient. Also the beautiful cartoon design and the red PCB add to its fascination

SF SR02.png

Feature

1) An ultrasonic module with a detecton range of 2cm-700cm; signals detected are stable within 5m, grow weaker beyond 5m and at last disappear 2) With a power indicator LED so you can tell whether it is powered 3) Auxiliary 3-pin anti-reverse cable, thus making the wiring tighter and convenient 4) Operating voltage: 5V; working current: 16mA 5) A cartoon shape with red PCB design, making it adorable and cute


Pin Function

SIG: Trigger Pulse Input and Echo Pulse Output
GND: Ground
VCC: 5V Supply

Features

Working Voltage DC5V
Working Current 16mA
Working Frequency 40Hz
Max Range 700cm, Ensured stable signal within 5m, gradually faded signal outside 5m till disappearing at 7m position.
Min Range 2cm
Trigger Input Signal 10uS TTL pulse
Echo Output Signal Input TTL lever signal and the range in proportion
Dimension 46x20.5x15 mm

Pricinple

The Timing diagram is shown below. You only need to supply a short 10uS pulse to the trigger input to start the ranging, and then the module will send out an 8 cycle burst of ultrasound at 40 kHz and raise its echo. The Echo is a distance object that is pulse width and the range in proportion .You can calculate the range through the time interval between sending trigger signal and receiving echo signal. Formula: uS / 58 = centimeters or uS / 148 =inch; or: the range = high level time * velocity (340M/S) / 2; we suggest to use over 60ms measurement cycle, in order to prevent trigger signal to the echo signal. Cha.png

Test Code

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

#define Echo 11 //Echo connnect to pin11
#define Trig 12 //Trig connect to pin12
unsigned long rxTime; //define a variable
float distance; 
LiquidCrystal_I2C lcd(0x27,16,2);
void setup() 
{
  // put your setup code here, to run once:
  Serial.begin(115200); //set the baud rate of serial monitor
  pinMode(Echo,INPUT);
  pinMode(Trig,OUTPUT);
  lcd.init();                      // initialize the lcd

  // Print a message to the LCD.
  lcd.backlight(); //turn o the backlight
  lcd.setCursor(0, 0); //set the cursor on 0 row,0 col
  lcd.print("Ping:"); //print the "Ping: "on the LCD
}

void loop()
{
  // Generates a pulse
  digitalWrite(Trig, HIGH);
  delayMicroseconds(10);
  digitalWrite(Trig, LOW);
  rxTime = pulseIn(Echo, HIGH); //read the Receive time
  //  Serial.print("rxTime:");
  //  Serial.println(rxTime);
  distance = (float)rxTime * 34 / 2000.0; //Converted into a distance ,cm
  if(distance < 800 ) //filter interference signal
  {
    Serial.print("distance:");
    Serial.print(distance); //print it the distance in serial monitor
    Serial.println("CM");
    lcd.setCursor(6, 0);
    lcd.print(distance);//print it in LCD1602
    lcd.print("CM");
    delay(100);
  }
}

Fdfd.jpg

Resource

Ultrasonic Test CodeZIP.jpg
MAX232_DataSheetPDF.jpg
SGM324YS14 datasheetPDF.jpg