Abstract
After the successful prototype for the Blind Glass @Blind-targeted AI Glasses
Friends and colleagues reached out to me to further develop the project. I was highly motivated and took the path in developing the project although PCB design is what I craved for. I added a Camera (esp32-cam), 2W Speaker, Two 3.7V batteries, and Ultrasonic Sensor. Camera for vision, face detection, and differentiating objects from animate (object identification), Speaker speaks out what it sees and obstacle to avoid, HC-Sr04 Sensor for distance measurement and detect (avoid) obstacles.
It took a very long time (days and nights) in writing the code but at a later time, everything works out. I'm using this to solve the problems for people suffering from low vision, legally blindness, and glaucoma by adding the necessary lenses for Carnot Efficiency.
Review and Methodology
The project made use of the Arduino Uno Board, Esp32-cam module, 2W Speaker, HC-Sr04 module. All of these except the Arduino Board are embedded on eyeglasses.
I made use of the Arduino IDE with the Atmega328 microcontroller for encoding and uploading.
Installed the Esp_32 espressif system library to Arduino library, and after installation, I changed the Board type to ESP32 Wrover Module, Upload Speed (115200), Flash Frequency (40MHZ), Flash mode ("Q/O"), and Programmer (AVR ISP).
The Esp32-cam module consists of 10 Inputs/Output pins which can be used to communicate with (any board) the Arduino Uno board and other components or modules.
GPIO1 and GPO3 are the transmitter and receiver of the camera module respectively and are connected to the TX and RX of the Arduino Board.
Connect the 5V and GND of the camera module to the 5V and GND of the Arduino socket.
Pins GPIO12 and GPIO15 were used as the outputs for HC-Sr04 and pin GPIO13 is used for 2W Speaker.
WiFi.SoftAP
During the course of coding, the line_notify(library) was used to send SD card messages for a successful operation.
Before uploading the code, I connected the GPIO0 pin to the GND.
Declared Mobile Access Point (WiFi.SoftAP) to get the AP declared as HYDROSTECH AP in the code.
After successful coding, the code is then uploaded on the Esp32-cam module, thereby the GPIO0 was also disconnected from GND on the Esp32-cam module before checking the Serial Monitor. To get the AP, I press the reset button on the Esp32-cam and it displayed the IP address on the screen. I copied it, then disconnected the camera module from the Arduino Board.
I inserted the SD card to the designed slot, connected the HC-sr04 module to the appropriate pins on the camera module, and also the panel of the speaker was connected to the camera module. Therefore, the two 3.7V batteries were connected in series and are regulated to 5v using 7805 regulators. Hence, the battery polarities were connected to the 5v and GND respectively of the camera module.
Operation
The system operates on the principle that the camera serves as the eye to see and capture the image of the object to detect whether it's animate or object through face detection, then at a particular distance in, it alerts the ultrasonic sensor to calculate the distance of the obstacle from the user. When the distance is <=200, the speaker will be triggered to alert the person about the obstacle at the front.