Audio Navigation System for Visually Impaired People

Discussion in 'Embedded Systems and Microcontrollers' started by lozadarod, Nov 5, 2014.

  1. lozadarod

    Thread Starter New Member

    Nov 3, 2012
    10
    0
    Good day sir/madam, I am Vince from the Philippines. I am currently at my 3rd year level of my course Electronics Engineering, which I gained basic knowledge of electronics principles and some components. I am very interested to make an audio navigation system for my younger brother who is blind since 7 years ago. I am planning of making one where he could speak his destination and then, the device will tell him the directions he needed to reach his destination. I search in different books and in the internet which components should I used and come up with these results: RFID, speech recognition module, text-to-speech module, and a microcontroller (Arduino). I already bought the said components, however, my main problem is how to program the device. Robotics are taught in my school at higher levels, fortunately, C++ programming are already taught to us at the lower level.

    I already made syntax for the prototype but in the C++ format only and since I don't have any knowledge about Arduino programming, I would like to ask if you guys could help me to translate the syntax I made suitable to Arduine IDE for the prototype...

    I also planning to make it indoor as of now only for prototyping but I also want to implement this at the school of my brother. Thank you guys for your time and consideration. I am looking forward for your favorable response. Have a good day!

    Here is the code:

    Code (Text):
    1.  
    2. //Audio Navigation System using RFID for Visually Impaired People
    3.  
    4. int i = 0;
    5. int j = 0;
    6. int RFIDTAG //RFIDTAG stores the scanned RFID tag serial code
    7.  
    8. while (i != 0) { //i != 0 for infinite loop
    9.  
    10.     cin<<Destination; //User input his desired destination
    11.               //Valid Destinations are Room 1, Room 2, Room 3, and CR.
    12.  
    13.     if (Destination == 'Room 1') {
    14.  
    15.         cout<<"Desired Destination is Room 1"<<endl; //Output of Text-to-Speech module
    16.         Destination = Room1;
    17.        
    18.         cin<<RFIDTAG; //Device begins scanning the RFID tags
    19.  
    20.         //Each RFID tag has corresponding information
    21.         //Possible startings points are: entrance, Room 1, Room 2, Room 3, and CR
    22.         //For destination = Room 1; Possible startings points are: entrance, Room 2, Room 3, and CR
    23.  
    24.         if (RFIDTAG == 'RT1') {
    25.  
    26.             cout<<"Destination has reached, please stop"<<endl; //Output of Text-to-Speech Module
    27.  
    28.         }
    29.  
    30.         if else (RFIDTAG == 'RT2') {
    31.  
    32.             cout<<"Approaching to a wall, please turn right"<<endl;
    33.  
    34.         }
    35.  
    36.         if else (RFIDTAG == 'RT3') {
    37.  
    38.             cout<<"Please continue walking"<<endl;
    39.  
    40.         }
    41.  
    42.         if else (RFIDTAG == 'RT4') {
    43.  
    44.             cout<<"Approaching to a Wall, please turn right"<<endl;
    45.  
    46.         }
    47.  
    48.         if else (RFIDTAG == 'RT5') {
    49.  
    50.             cout<<"Please continue walking"<<endl;
    51.  
    52.         }
    53.  
    54.         if else (RFIDTAG == 'RT6') {
    55.    
    56.             cout<<"Please continue walking"<<endl;
    57.  
    58.         }
    59.  
    60.     }
    61.  
    62.     else if (Destination == 'Room 2') {
    63.  
    64.         cout<<"Desired Destination is Room 2"<<endl; //Output of Text-to-Speech module
    65.         Destination = Room2;
    66.  
    67.         cin<<RFIDTAG; //Device begins scanning the RFID tags
    68.  
    69.         //For destination = Room 2; Possible startings points are: entrance, Room 1, Room 3, and CR
    70.  
    71.         if (RFIDTAG == 'RT1') {
    72.  
    73.             cout<<"Please continue walking"<<endl; //Output of Text-to-Speech Module
    74.  
    75.         }
    76.  
    77.         if else (RFIDTAG == 'RT2') {
    78.  
    79.             cout<<"Approaching to a wall, please turn left"<<endl;
    80.  
    81.         }
    82.  
    83.         if else (RFIDTAG == 'RT3') {
    84.  
    85.             cout<<"Please continue walking"<<endl;
    86.  
    87.         }
    88.  
    89.         if else (RFIDTAG == 'RT4') {
    90.  
    91.             cout<<"Approaching to a Wall, please turn left"<<endl;
    92.    
    93.         }
    94.  
    95.         if else (RFIDTAG == 'RT5') {
    96.  
    97.             cout<<"Destination has reached, please stop"<<endl;
    98.  
    99.         }
    100.  
    101.         if else (RFIDTAG == 'RT6') {
    102.  
    103.             cout<<"Please continue walking"<<endl;
    104.  
    105.         }
    106.  
    107.     }
    108.  
    109.     else if (Destination == 'Room 3') {
    110.    
    111.         cout<<"Desired Destination is Room 3"<<endl; //Output of Text-to-Speech module
    112.         Destination = Room3;
    113.  
    114.         cin<<RFIDTAG; //Device begins scanning the RFID tags
    115.  
    116.         //For destination = Room 3; Possible startings points are: entrance, Room 1, Room 2, and CR
    117.  
    118.         if (RFIDTAG == 'RT1') {
    119.  
    120.             cout<<"Please continue walking"<<endl; //Output of Text-to-Speech Module
    121.  
    122.         }
    123.  
    124.         if else (RFIDTAG == 'RT2') {
    125.  
    126.             cout<<"Approaching to a wall, please turn left"<<endl;
    127.  
    128.         }
    129.  
    130.         if else (RFIDTAG == 'RT3') {
    131.  
    132.             cout<<"Please continue walking"<<endl;
    133.  
    134.         }
    135.    
    136.         if else (RFIDTAG == 'RT4') {
    137.  
    138.             cout<<"Approaching to a Wall, please turn left"<<endl;
    139.  
    140.         }
    141.  
    142.         if else (RFIDTAG == 'RT5') {
    143.  
    144.             cout<<"Please Continue Walking"<<endl;
    145.  
    146.         }
    147.        
    148.         if else (RFIDTAG == 'RT6') {
    149.  
    150.             cout<<"Destination has reached, please stop"<<endl;
    151.  
    152.         }
    153.  
    154.     }  
    155.  
    156.     else if (Destination == 'CR') {
    157.  
    158.         cout<<"Desired Destination is CR"<<endl; //Output of Text-to-Speech module
    159.         Destination = CR;
    160.  
    161.         cin<<RFIDTAG; //Device begins scanning the RFID tags
    162.  
    163.         //For destination = CR; Possible startings points are: entrance, Room 1, Room 2, and Room 3
    164.    
    165.         if (RFIDTAG == 'RT1') {
    166.  
    167.             cout<<"Please continue walking"<<endl; //Output of Text-to-Speech Module
    168.  
    169.         }
    170.  
    171.         if else (RFIDTAG == 'RT2') {
    172.  
    173.             cout<<"Approaching to a wall, please turn right"<<endl;
    174.  
    175.         }
    176.  
    177.         if else (RFIDTAG == 'RT3') {
    178.  
    179.             cout<<"Destination has reached, please stop"<<endl;
    180.  
    181.         }
    182.  
    183.         if else (RFIDTAG == 'RT4') {
    184.  
    185.             cout<<"Approaching to a Wall, please turn left"<<endl;
    186.  
    187.         }
    188.  
    189.         if else (RFIDTAG == 'RT5') {
    190.  
    191.             cout<<"Please Continue Walking"<<endl;
    192.  
    193.         }
    194.  
    195.         if else (RFIDTAG == 'RT6') {
    196.  
    197.             cout<<"Please continue walking"<<endl;
    198.  
    199.         }
    200.  
    201.     }
    202.  
    203.     else {
    204.  
    205.         cout<<"Incorrect Input, please speak your desired destination again"<<endl; //Output of Text-to-Speech module
    206.         i = 0;
    207.  
    208.     }
    209.  
    210. }
    Here is the floor plan:
     
  2. JWHassler

    Member

    Sep 25, 2013
    201
    33
    This is to alert you to a (to me) novel approach to vision-impaired navigation that is outlined in the November, 2014 issue of Circuit Cellar magazine called 'the Urban Wayfinder,' using echolocation.

    I wish you and your brother good fortune.
     
Loading...