INTEGRATED GOOGLE MAPS
In this project we're going to implement a device that turns the indication from the Google Maps into a sensorial output to demostrate hwo we could use an integrated navigation system on our body.
We're going to implement this by connecting our Arduino board with our mobile phone device using a Bluetooth module. With our phone we can send the signal we want to our Arduino board that will activate with different patterns of the coin buzzer depending on the indication.
For now the indications will come from a Bluetooth app and not the actual Google Maps because our knowledge of programming doesn't go that far, however this project is all about showing that we could implement this is we had the tools.
There will be several indications for this, turn right or left (activating the right or left buzzer), go straight (activating both one time), incorrect way (activating both buzzers twice), end of the route (activating 3 times both buzzers) and sligh turn to lef ot right (activating with less power the left or right buzzer),
Get You Components!
Here's the list of components you'll need to recreate the project.
-Arduino Lilypad.
-Bluetooth module HM-10
-Wires
-Coin buzzer (x2)
-Phone (preferebly Android)
-Welder
-Tin wire
Connect Everything!
Let's Make the Code!
#include
SoftwareSerial HM10(10, 11); // RX = 10, TX = 11
char appData;
String inData = "";
void setup() {
Serial.begin(19200);
Serial.println("HM10 serial started at 9600");
HM10.begin(9600); // set HM10 serial at 9600 baud rate
pinMode (6, OUTPUT);
pinMode (5, OUTPUT); }
void loop() {
String test;
HM10.listen(); // listen the HM10 port
while (HM10.available() > 0) { // if HM10 sends something then read
appData = HM10.read();
inData = String(appData); // save the data in string format
}
if (Serial.available()) { // Read user input if available.
delay(10);
HM10.write(Serial.read());
}
if ( inData.equals("1" )) { //if the number send from the phone equals 1 then activate the right buzzer at full power fo 200ms
delay(10);
Serial.println("DRETA");
analogWrite (6, 255);
delay (200);
analogWrite (6, 0);
}
if ( inData.equals ("2")) { //if the number send from the phone equals 2 then activate the left buzzer at full power for 200ms
Serial.println("ESQUERRE");
analogWrite (5, 255);
delay (200);
analogWrite (5, 0);
}
if ( inData.equals ("3")) { //if the number send from the phone equals 3 then activate both buzzers for 200 ms Serial.println("RECTE");
analogWrite (5, 255);
analogWrite (6, 255);
delay (200);
analogWrite (5, 0);
analogWrite (6, 0);
}
if ( inData.equals ("4")) { //if the number send from the phone equals 4 then activate intermitent both buzzers 2 times
Serial.println("INCORRECTE");
analogWrite (5, 255);
analogWrite (6, 255);
delay (100);
analogWrite (5, 0);
analogWrite (6, 0);
delay (100);
analogWrite (5, 255);
analogWrite (6, 255);
delay (100);
analogWrite (5, 0);
analogWrite (6, 0); }
if ( inData.equals ("5")) { //if the number send from the phone equals 4 then activate intermitent both buzzers 3 times
Serial.println("FINAL");
analogWrite (5, 180);
analogWrite (6, 180);
delay (100);
analogWrite (5, 0);
analogWrite (6, 0);
delay (100);
analogWrite (5, 180);
analogWrite (6, 180);
delay (100);
analogWrite (5, 0);
analogWrite (6, 0);
delay (100);
analogWrite (5, 180);
analogWrite (6, 180);
delay (100);
analogWrite (5, 0);
analogWrite (6, 0);
} if ( inData.equals("6" )) { //if the number send from the phone equals 6 activate right buzzer not less than half power
delay(10);
Serial.println("DRETA");
analogWrite (6, 100);
delay (200);
analogWrite (6, 0);
}
}
Put Everything on Place!
Get a t-shirt with a pocket and place the buzzers one on each shoulder. The cables will go trhough the t-shirt and trough a hole that ens up on the fron pocket, There you will place the arduino board with everything connected. To be portable just connect the arduino with a battery and place it in the front pocket as well.
If you want you can also apply the same on some gloves, somewhere on the body in which is easy to distinguish the left/right indications.
If you have an Arduino Lilypad it becomes much more portable.