Obstacle Detection shoes for blind person Project

Obstacle Detection shoes for blind person Project

Obstacle Detection shoes for blind person Project
Obstacle Detection shoes for blind person

Obstacle Detection shoes for blind person Project

In this article, we will learn how to make Obstacle Detection shoes for blind person Project.

In the last post, we learned how to download Proteus Libraries of Different Embedded Sensors.

 

 

Components required:

  1. Arduino Uno
  2. Ultrasonic sensors
  3. Vibration motors or buzzer
  4. Power source (battery or power bank)
  5. Shoe or prototype shoe base
  6. Connecting wires

Circuit Connections: 

Obstacle Detection shoes for blind person Project
Obstacle Detection shoes for blind person circuit diagram

Arduino UNO:

The Arduino Uno is a popular microcontroller board used for various electronics projects. It’s often favored by beginners due to its ease of use and a wide array of resources available for learning.

Key features:

  • Microcontroller:

The Uno is based on the ATmega328P microcontroller. It has digital and analog input/output pins that can be programmed to perform various functions.

 

  • I/O Pins:

It has 14 digital input/output pins, among which 6 can be used as PWM (Pulse Width Modulation) outputs, and 6 analog inputs.

  • Programming:

Arduino Uno is programmed using the Arduino Software (IDE), which utilizes a simplified version of C++ programming language. Users write code, upload it to the board via USB, and the Uno executes the instructions.

  • Power:

The Uno can be powered via USB connection, an external power supply, or a battery. It operates at 5 volts.

  • Connectivity:

It has USB connectivity for programming and power, and it can communicate with other devices via serial communication, I2C, and SPI protocols.

  • Versatility:

Arduino Uno is versatile and can be used in a wide range of projects, including robotics, sensors, home automation, and more.

  • Community and Support:

There is a vast community of Arduino enthusiasts and plenty of online resources like tutorials, forums, and documentation to assist users.

Obstacle Detection shoes for blind person Project
Obstacle Detection shoes for blind person Project image

Ultrasonic sensors:

Ultrasonic sensors are devices that use sound waves at frequencies higher than the human ear can detect (typically above 20,000 Hz) to measure distances to objects. They work on the principle of sending out ultrasonic waves and then receiving the waves that bounce back after hitting an object.

Here’s how they generally function:

  • Transmitter and Receiver:

Ultrasonic sensors consist of a transmitter and a receiver. The transmitter emits ultrasonic waves, and the receiver detects the waves that bounce back.

  • Time Calculation:

The sensor measures the time it takes for the ultrasonic waves to bounce off an object and return to the sensor.

  • Distance Calculation:

Using the known speed of sound in the air, the sensor calculates the distance to the object based on the time it took for the waves to travel back and forth.

  • Accuracy:

Ultrasonic sensors are commonly used for proximity sensing and distance measurement in various applications. They’re accurate within a certain range but might be affected by factors like the material of the object, angle of incidence, and environmental conditions.

Prototype shoe base:

 

A prototype shoe base refers to a foundational structure or platform used as a starting point to develop and test the components of a shoe-related project. It serves as the initial structure onto which various elements, such as sensors, circuits, or feedback mechanisms, can be mounted or integrated for experimentation and testing purposes.

Programming code: 

[dt_code]

#define TRIGGER_PIN 7
#define ECHO_PIN 6
#define BUZZER_PIN 4
#define VIBRATOR_PIN 10
void setup() {
Serial.begin(9600);
pinMode(TRIGGER_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(BUZZER_PIN, OUTPUT);
digitalWrite(BUZZER_PIN, HIGH);
pinMode(VIBRATOR_PIN, OUTPUT);
digitalWrite(VIBRATOR_PIN, HIGH);
}
void loop() {
long duration, distance;

digitalWrite(TRIGGER_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIGGER_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIGGER_PIN, LOW);

duration = pulseIn(ECHO_PIN, HIGH);
distance = (duration / 2) / 29.1;
Serial.print(“Distance: “);
Serial.print(distance);
Serial.println(” cm”);
if (distance < 20) {
digitalWrite(BUZZER_PIN, LOW);
delay(500);
digitalWrite(BUZZER_PIN, HIGH);
}
if (distance < 20) {
digitalWrite(VIBRATOR_PIN, HIGH);
delay(500);
digitalWrite(VIBRATOR_PIN, LOW);
}
if (distance > 20 &&distance <30) {
digitalWrite(BUZZER_PIN, LOW);
delay(300);
digitalWrite(BUZZER_PIN, HIGH);
}
if (distance > 20 &&distance <30) {
digitalWrite(VIBRATOR_PIN, HIGH);
delay(300);
digitalWrite(VIBRATOR_PIN, LOW);
}

if (distance > 30 &&distance <40) {
digitalWrite(BUZZER_PIN, LOW);
delay(100);
digitalWrite(BUZZER_PIN, HIGH);
}
if (distance > 30 &&distance <40) {
digitalWrite(VIBRATOR_PIN, HIGH);
delay(100);
digitalWrite(VIBRATOR_PIN, LOW);
}
if (distance > 40 &&distance <50) {
digitalWrite(BUZZER_PIN, LOW);
delay(50);
digitalWrite(BUZZER_PIN, HIGH);
}
if (distance > 40 &&distance <50) {
digitalWrite(VIBRATOR_PIN, HIGH);
delay(50);
digitalWrite(VIBRATOR_PIN, LOW);
}
if (distance > 60 &&distance <80) {
digitalWrite(BUZZER_PIN, LOW);
delay(30);
digitalWrite(BUZZER_PIN, HIGH);
}
if (distance > 60 &&distance <80) {
digitalWrite(VIBRATOR_PIN, HIGH);
delay(30);
digitalWrite(VIBRATOR_PIN, LOW);
}
delay(100);
}

[/dt_code]