Detecting obstacles and warning - Arduino, ultrasonic and buzzer

by 02:15 0 comments
This is tutorial to help you understand ultrasonic and buzzer and go deeper into learning Arduino, follow these steps and give me feedback please.

1. Prepare your material and tools

1. Test Board
2. Ultrasonic sensor
3. Arduino cable
4.  +5V buzzer
5. Male to male pins
6. Arduino uno board

Tools and materials are shown in the pics







2. Connect your circuit

         Connect the Buzzer positive terminal to the Arduino pin 2 and the negative terminal to the Gnd.
         Connect the VCC pin of ultrasonic to +5v pin and the Gnd to the ground.
         Connect trig pin to pin 10 and echo pin to pin 9.
         The pictures shows you the connection.












 3. Load the code to your Arduino

         You can find code in codebender.cc here, it is well described and commented.
         This is copy of the code any way.
/*
    This code should work to get warning cross the buzzer when something be closer than 0.5 meter
    Circuit is ultrasonic sensor and buzzer +5v and Arduino uno is used
    a_atef45@yahoo.com
    www.zerosnones.net
    +201153300223
*/
// Define pins for ultrasonic and buzzer
int const trigPin = 10;
int const echoPin = 9;
int const buzzPin = 2;

void setup()
{
    pinMode(trigPin, OUTPUT); // trig pin will have pulses output
    pinMode(echoPin, INPUT); // echo pin should be input to get pulse width
    pinMode(buzzPin, OUTPUT); // buzz pin is output to control buzzering
}

void loop()
{
    // Duration will be the input pulse width and distance will be the distance to the obstacle in centimeters
    int duration, distance;
    // Output pulse with 1ms width on trigPin
    digitalWrite(trigPin, HIGH);
    delay(1);
    digitalWrite(trigPin, LOW);
    // Measure the pulse input in echo pin
    duration = pulseIn(echoPin, HIGH);
    // Distance is half the duration devided by 29.1 (from datasheet)
    distance = (duration/2) / 29.1;
    // if distance less than 0.5 meter and more than 0 (0 or less means over range)
    if (distance <= 50 && distance >= 0) {
        // Buzz
        digitalWrite(buzzPin, HIGH);
    } else {
        // Don't buzz
        digitalWrite(buzzPin, LOW);
    }
    // Waiting 60 ms won't hurt any one
    delay(60);
}





4. Try it

         Watch this video for it working, record you video and show us.



Ammar Atef

Blog Creator

Always work and you will be happy, Writing code, designing system and learning some thing new, I call that real life, No matter what is the problem, humanity can solve it any way, Creative one who believes he is creative, Who really watch, think, try and success, World is watching us because we are engineers.

0 comments:

Post a Comment