Third Eye for the Blind
The Third Eye for the Blind is a project aimed to aid blind or visually impaired people. This project detects nearby objects using an ultrasonic sensor and lets the user know about this by beeping or vibrating.
Name
Andrew M.
Interests
Electrical and Mechanical Engineering
School
Lynbrook High School
Grade
Rising Sophomore
Demo Night and Reflection
Overall, my Bluestamp experience was very enjoyable. Not only did I have fun, I also learned so many things I didn’t know before as this was my first time doing a proper engineering project. I learned how to solder, how an ultrasonic sensor works, how a circuit works, how arduinos work, and many more. Throughout this process of building my Third Eye for the Blind project, I learned the importance of independence and perseverance. I’m not going to always have a mentor beside me to help me when I have problems, so it is very important to learn to be independent. I also experienced many roadblocks, such as problems with soldering, but my perseverance and patience helped me overcome them. Before this program, the Third Eye for the Blind project looked interesting but difficult. But now that I’ve completed it, I feel proud and excited to explore more in the field of engineering.
Third Milestone
In my third milestone, I completed the main project by soldering everything onto a perfboard and sewing it onto a glove. Soldering, which is melting solder to join wires with the circuit board or other wires, was the main challenge for me in this milestone. When I tried soldering the ultrasonic sensor wires onto the perfboard, the solder bridges were too long and crossed over with each other, which made the circuit not work. So when I restarted, I directly connected the ultrasonic sensor wires with the arduino and only soldered the circuits with the switch to switch between the piezo buzzer and the vibration motor. This was much easier, because I used short solder bridges and wires to keep things organized
One aspect I changed for this milestone was that I removed the on and off switch. Removing the on and off switch between the wires for the ultrasonic sensor allowed me to save space for me to solder other things. Also, the on and off switch didn’t have much use, as the portable charger I used as a power source had an on and off switch already built in.
Sewing was also a challenge, however, but not as difficult as the soldering. I don’t have much sewing experience, so I had to come up with a method to tightly sew on parts. At first, some of my methods didn’t work, as the thread kept breaking, but I later found out an efficient method where I can securely sew on everything. So when I figured that out, I finished sewing quickly.
Soldering Back View
Final Build
Second Milestone
For my 2nd milestone, I completed the circuit on the breadboard with the buzzer and the vibration motor. I added an on and off switch and an option to switch between the buzzer and the vibration motor. For both these modifications, I used a three pronged switch. Throughout this process, I learned about these kinds of switches while also experimenting with circuits and my code.
The three pronged switches work by enabling the two prongs that the switch is turned to, leaving the other prong disabled. This allows for me to switch between two circuits.
My on and off switch is simple. First, I placed the switch between the wires connecting the ultrasonic sensor and the arduino board. That way, it enables the connection when turned on way, and disables it when it’s turned the other way, turning on and off the ultrasonic sensor. But if I did this, the distance variable of the ultrasonic sensor would be set to 0.0, so the buzzer would still beep. So in my code, I used a simple if statement stating that if the distance is greater than zero, run the Tone() and noTone() functions
The second switch switches between the buzzer and the vibration motor. I didn’t have to alter the code because both are powered by pin 12, and both work with the Tone() and noTone functions(). I connected pin 12 to the middle prong, then created a circuit for the piezo buzzer on the right side and vibration motor on the left side. Both circuits start from the ground pin, go through the output (buzzer or vibration motor), go through the switch, and back to pin 12. That way, if the switch is switched to the right, just the buzzer sounds, and if the switch is switched to the left, only the vibration motor vibrates.
My future goals include soldering this onto a circuit board, sewing it onto a glove, and adding some more modifications.
Fritzing Diagram
First Milestone
In my first milestone, I made a simple structure of what my final project would be. I made a piezo buzzer beep faster when an object comes closer to the ultrasonic sensor. I put this on a half-sized breadboard, and I also coded the arduino for this to work. This first milestone has two components: the ultrasonic sensor (to detect the nearby object) and the piezo buzzer (to make the beeping sound). I also used a potentiometer with the piezo buzzer which allows me to alter the resistance and control the volume of the buzzer sound.
The ultrasonic sensor works by sending sound waves that bounce off the nearby object and return back to the sensor. It has four pins: ground, echo, trig, and voltage. Ground and voltage are for power, while echo and trig are for sending and receiving sound waves. Ground is obviously connected to the ground pin and voltage is connected to 5V. Echo and trig are connected to pin 9 and 10 because those were the closest pins. This, combined with the code, creates a simple working circuit that displays the distance of the object from the sensor. My code for the ultrasonic sensor is in a loop that sends out sound waves from the trig pin by turning it to HIGH. Then, I use the pulseIn() function to measure the duration in which the echo pin receives the bounce back waves. Using that duration variable, I can find the distance by multiplying that by the speed of sound (speed*time = distance), then dividing it by 2 (one-way distance). I print the distance on a serial monitor to easily test it.
The voltage-powered piezo buzzer is a very useful and simple buzzer I use for the beeping sound. When voltage is applied to it, the ceramic material inside, which has piezoelectric properties, vibrates, creating the buzzing sound. When I started off, I made a simple circuit on the breadboard next to the ultrasonic sensor which connected to the ground pin and pin 12. The code is in the same loop as the ultrasonic sensor code, with only two simple functions: tone() and noTone() – to start and stop the sound. The buzzer sounds at 1KHz for 100 milliseconds, then stops for distance*40 milliseconds. I used the distance variable in the noTone() function so that the delay is greater when the distance is greater, making the buzzer beep slower when the object is farther, and faster when the object is closer.
One challenge I faced was the volume of the buzzer. Originally, I used a resistor, which made the sound really soft. Then, I took out the resistor, which made it really loud. Eventually I overcame this challenge by using a potentiometer, which also acts as a resistor. The potentiometer has a knob that allows me to adjust the strength of the resistor, which subsequently alters the voltage and the volume.