Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
U ovom ćemo projektu implementirati uređaj koji pretvara indikaciju s Google karata u senzorski izlaz kako bi pokazao kako bismo mogli koristiti integrirani navigacijski sustav na svom tijelu.
To ćemo implementirati povezivanjem naše Arduino ploče s mobilnim telefonom putem Bluetooth modula. S našim telefonom možemo poslati signal koji želimo na našu Arduino ploču koja će se aktivirati s različitim uzorcima zujalice ovisno o indikaciji.
Zasad će naznake dolaziti iz Bluetooth aplikacije, a ne iz stvarnih Google karata jer naše znanje o programiranju ne ide tako daleko, no ovaj je projekt samo dokaz da bismo to mogli implementirati ako imamo alate.
Za to će biti nekoliko naznaka: skrenite desno ili lijevo (aktiviranje desnog ili lijevog zujalice), idite ravno (aktiviranje oba jednokratno), pogrešan način (aktiviranje oba zujalice dva puta), kraj rute (aktiviranje 3 puta oba zvučnika) i lagano okrenite ulijevo udesno (aktiviranje s manje snage lijevog ili desnog zujalice),
Korak 1: Nabavite komponente
Evo popisa komponenti koje su vam potrebne za ponovno stvaranje projekta.
-Arduino Lilypad.
-Bluetooth modul HM-10
-Žice
-zujalica za novčić (x2)
-Telefon (po mogućnosti Android)
-Zavarivač
-Tanka žica
Korak 2: Povežite sve
Korak 3: Napravimo kôd
#uključi
SoftwareSerial HM10 (10, 11); // RX = 10, TX = 11
char appData;
Niz inData = "";
void setup () {
Serial.begin (19200);
Serial.println ("Serija HM10 započela na 9600");
HM10.početak (9600); // postavi HM10 serijski na 9600 baud rate
pinMode (6, OUTPUT);
pinMode (5, OUTPUT); }
void loop () {{100} {101}
Ispitivanje niza;
HM10.listen (); // slušajte HM10 port
while (HM10.available ()> 0) {// ako HM10 šalje nešto tada pročitajte
appData = HM10.read ();
inData = String (appData); // spremanje podataka u format niza
}
if (Serial.available ()) {// Čitanje korisničkog unosa ako je dostupno.
kašnjenje (10);
HM10.write (Serijski.čitaj ());
}
if (inData.equals ("1")) {// ako je broj poslan s telefona jednak 1, tada aktivirajte desni zujalicu punom snagom za 200 ms
kašnjenje (10);
Serial.println ("DRETA");
analogWrite (6, 255);
kašnjenje (200);
analogWrite (6, 0);
}
if (inData.equals ("2")) {// ako je broj koji je poslan s telefona jednak 2, tada aktivirajte lijevi zujalicu punom snagom 200 ms
Serial.println ("ESQUERRE");
analogWrite (5, 255);
kašnjenje (200);
analogWrite (5, 0);
}
if (inData.equals ("3")) {// ako je broj koji je poslan s telefona jednak 3, tada aktivirajte oba zvučnika za 200 ms Serial.println ("RECTE");
analogWrite (5, 255);
analogWrite (6, 255);
kašnjenje (200);
analogWrite (5, 0);
analogWrite (6, 0);
}
if (inData.equals ("4")) {// ako je broj poslan s telefona jednak 4, tada aktivirajte prekidna oba zujalice 2 puta
Serial.println ("NEPRAVILNO");
analogWrite (5, 255);
analogWrite (6, 255);
kašnjenje (100);
analogWrite (5, 0);
analogWrite (6, 0);
kašnjenje (100);
analogWrite (5, 255);
analogWrite (6, 255);
kašnjenje (100);
analogWrite (5, 0);
analogWrite (6, 0); }
if (inData.equals ("5")) {// ako je broj poslan s telefona jednak 4, tada aktivirajte prekidna oba zujalice 3 puta
Serial.println ("FINAL");
analogWrite (5, 180);
analogWrite (6, 180);
kašnjenje (100);
analogWrite (5, 0);
analogWrite (6, 0);
kašnjenje (100);
analogWrite (5, 180);
analogWrite (6, 180);
kašnjenje (100);
analogWrite (5, 0);
analogWrite (6, 0);
kašnjenje (100);
analogWrite (5, 180);
analogWrite (6, 180);
kašnjenje (100);
analogWrite (5, 0);
analogWrite (6, 0);
} if (inData.equals ("6")) {// ako je broj koji je poslan s telefona jednak 6 aktivirajte desni zujalicu ne manje od pola snage
kašnjenje (10);
Serial.println ("DRETA");
analogWrite (6, 100);
kašnjenje (200);
analogWrite (6, 0);
}
}
Korak 4: Stavite sve na mjesto
Uzmite majicu s džepom i postavite zujalice po jednu na svako rame. Kablovi će proći kroz majicu i proći kroz rupu koja se pojavi na prednjem džepu. Tamo ćete postaviti arduino ploču sa svim spojenim. Da biste bili prijenosni, samo povežite arduino s baterijom i stavite ga u prednji džep.
Ako želite, isto možete primijeniti i na neke rukavice, negdje na tijelu u kojem je lako razlikovati lijevu/desnu oznaku.
Ako imate Arduino Lilypad, postaje mnogo prenosiviji.