The product aimed at providing voice enabled navigation system using smart phone and obstacle detection system for visually impaired people. The model uses TTS (Text To Speech) to provide navigation through voice and Google map API to apply map information. GPS is embedded in users’ shoe which communicates with smart phone via Bluetooth technology. The prototype uses user friendly android based application which gets user’s current location with the help of GPS available in shoe and destination location is feed as voice input. The app makes use of Google map API to determine the path and guide user through various verbal instructions. This method offers innovative solutions to replace the conventional methods of guiding visually impaired person. Since it has been integrated with Google map it can be used to guide the user anywhere. Additionally the location of missing children or mentally retarded people can also be tracked with the help of a GPS separately embedded in shoe.
The distance of obstacle from user is detected with help of ultrasonic wave sensor and different patterns of vibration produced using haptic technology. To ensure that a navigation system will be accessible to the greatest proportion of vision impaired people, usability is a key focus of the project, and speech technology was identified as a priority feature of the system. The device is portable and less cumbersome to use while walking. As the ultrasonic sensor is capable of identifying obstacles and the output of the ultrasonic sensor can be connected to a vibrator which can be held in hands of the blind person.
If any obstacle is detected then the person can able to identify it through vibration. The Gyroscope is used to find the orientation of the person. Finally the GSM is used to locate the person in case if he/she lost their path. An additional advantage is that through piezo electric charge can be generated in each steps of walking. SensorTile board with sensors like Gyroscope, accelerometer and microphone are used for development of this project. Since sensor tile is very small and it has battery also to get connected with cradle Board.
- Connecting this smart IoT shoe to cloud is one of the effective ideas for safe navigation and machine learning principles come handy.
- If any emergency situation is predicted with the drowsiness or swaying motion of walking for few minutes using accelerometer sensor, a trigger is sent to the medical aid around and an alert to the person's relatives – a health wearable like shoe indeed!
- Charging the battery through Piezo electric power generation makes the product eco-friendly.
Nucleo boards are the highly affordable and powerful boards from the ST Microelectronics. STM32 Nucleo boards allow anyone to try out new ideas and to quickly create prototypes with any STM32 MCU.
However, Arduino is unbeatable in this segment due its simplicity and ease of its IDE. The performance to the cost ration of the Arduino boards is very low, which make some hobbyists to look into other boards. STM has bought up the Nucleo development boards, whose performance to the cost ratio is pretty high as compared to that of Arduino.
Thanks to "STM32 Core" (Official) team for porting some of their popular Nucleo boards into Arduino IDE and helping all the Arduino users happy to the core.
Firstly open the Arduino IDE:
Go to files and click on the preference in the Arduino IDE.
Enter: 'https://raw.githubusercontent.com/stm32duino/BoardManagerFiles/master/STM32/package_stm_index.json' into the "Additional Boards Manager URLs"
Click "Ok" to close the preference tab.
Now Click on "Tools", click on "Board" a drop-down menu will be popped. Click on "Boards Manager". This opens the Boards Manager, scroll down and navigate to the "STM32 Core" package by ST-Microelectronics and install it.
And that's it, you've done with installing the Nucleo board packages into the Arduino IDE.
I have remapped the default pin map of Nucleo board to the Arduino IDE such that it would be much convenient to remember the pin notation. Copy the downloaded folder to the Arduino-Library directory. Default directory in Windows: 'C:\Program Files (x86)\Arduino\libraries'
Before going to the coding part, firstly we have to select the Board and the port to which the board has been connected. For this: Click on "Tools", click on "Board"- a drop-down box appears. scroll down and navigate to Nucleo-X (in my case, it is Nucleo-64) and select it, click on "Tools", click on "Board part number" and select your board (in my case, it is Nucleo F401RE) and again click on "Tools", click on "Port" and select the port on which your Nucleo board is mounted.