This shows you the differences between two versions of the page.
pm:prj2021:dbrigalda:blind_assistant [2021/06/04 02:21] oana.diaconescu0512 |
pm:prj2021:dbrigalda:blind_assistant [2021/06/04 02:31] (current) oana.diaconescu0512 |
||
---|---|---|---|
Line 9: | Line 9: | ||
In implementarea proiectului am pornit de la ideea de a oferi o alternativa mai putin costisitoare la tehnologiile deja existente pentru persoane nevazatoare. In plus, dispozitivul functioneaza fara Internet, deci este accesibil si simplu de utilizat. | In implementarea proiectului am pornit de la ideea de a oferi o alternativa mai putin costisitoare la tehnologiile deja existente pentru persoane nevazatoare. In plus, dispozitivul functioneaza fara Internet, deci este accesibil si simplu de utilizat. | ||
===== Descriere generală ===== | ===== Descriere generală ===== | ||
- | {{ :pm:prj2021:dbrigalda:schema_bloc_smart_cane.png?direct&700 |}} | + | |
- | {{ :pm:prj2021:dbrigalda:schema_bloc_smart_cane.jpg.jpg?direct&300 |}} | + | {{ :pm:prj2021:dbrigalda:schema_bloc_smart_cane.jpg.jpg?direct&700 |}} |
Detectia obstacolelor se realizeaza pe baza senzorului de distanta. Distanta se citeste in mod continuu de catre senzor, iar in momentul in care aceasta depaseste o limita prestabilita se declanseaza buzzer-ul sau motorul cu vibratie. La apasarea unui buton se poate activa sau dezactiva modul silentios, selectand una dintre cele doua forme de feedback. | Detectia obstacolelor se realizeaza pe baza senzorului de distanta. Distanta se citeste in mod continuu de catre senzor, iar in momentul in care aceasta depaseste o limita prestabilita se declanseaza buzzer-ul sau motorul cu vibratie. La apasarea unui buton se poate activa sau dezactiva modul silentios, selectand una dintre cele doua forme de feedback. | ||
Line 53: | Line 53: | ||
Traseul utilizat in testarea functiei de navigatie a fost stocat pe cardul microSD sub forma unui fisier .txt. Fiecare linie a fisierului contine coordonatele unui punct de interes (intersectie a doua strazi, cotitura, etc.), impreuna cu un cod asociat directiei in care utilizatorul trebuie sa mearga in continuare. Pentru a folosi modulul microSD am inclus biblioteca Arduino [[https://www.arduino.cc/en/reference/SD|SD.h]]. | Traseul utilizat in testarea functiei de navigatie a fost stocat pe cardul microSD sub forma unui fisier .txt. Fiecare linie a fisierului contine coordonatele unui punct de interes (intersectie a doua strazi, cotitura, etc.), impreuna cu un cod asociat directiei in care utilizatorul trebuie sa mearga in continuare. Pentru a folosi modulul microSD am inclus biblioteca Arduino [[https://www.arduino.cc/en/reference/SD|SD.h]]. | ||
- | {{ :pm:prj2021:dbrigalda:smart_cane_4.png?direct&200 |}} | + | {{ :pm:prj2021:dbrigalda:smart_cane_coords_jpg.jpg?direct&200 |}} |
Pentru citirea valorilor de la modulul GPS am folosit biblioteca [[https://github.com/SlashDevin/NeoSWSerial|NeoSWSerial]] care permite comunicarea seriala pe orice pini digitali pe langa pinii seriali nativi 0 si 1. Datele receptionate le-am parsat folosind biblioteca [[https://www.arduino.cc/reference/en/libraries/tinygps/|TinyGPS]], obtinand coordonatele sub forma de latitudine si longitudine. | Pentru citirea valorilor de la modulul GPS am folosit biblioteca [[https://github.com/SlashDevin/NeoSWSerial|NeoSWSerial]] care permite comunicarea seriala pe orice pini digitali pe langa pinii seriali nativi 0 si 1. Datele receptionate le-am parsat folosind biblioteca [[https://www.arduino.cc/reference/en/libraries/tinygps/|TinyGPS]], obtinand coordonatele sub forma de latitudine si longitudine. | ||
Line 64: | Line 64: | ||
Comunicarea cu placuta Arduino se realizeaza prin intermediul modulului Bluetooth, care permite selectarea dispozitivului pentru conectare si faciliteaza transmiterea de date. | Comunicarea cu placuta Arduino se realizeaza prin intermediul modulului Bluetooth, care permite selectarea dispozitivului pentru conectare si faciliteaza transmiterea de date. | ||
- | |||
{{ :pm:prj2021:dbrigalda:smart_cane6.jpeg?direct&400 |}} | {{ :pm:prj2021:dbrigalda:smart_cane6.jpeg?direct&400 |}} | ||
- | |||
Pentru comunicarea Bluetooth am folosit un principiu simplu, prin care se trimite un byte pe Serial corespunzator fiecarei comenzi: | Pentru comunicarea Bluetooth am folosit un principiu simplu, prin care se trimite un byte pe Serial corespunzator fiecarei comenzi: | ||
Line 74: | Line 72: | ||
* **6**, **7**, **8** si **9** semnifica identificarea uneia din culorile RED, BLUE, GREEN sau CLEAR (culoare necunoscuta) | * **6**, **7**, **8** si **9** semnifica identificarea uneia din culorile RED, BLUE, GREEN sau CLEAR (culoare necunoscuta) | ||
- | + | {{ :pm:prj2021:dbrigalda:smart_cane_blocks_jpg.jpg?direct&700 |}} | |
- | {{ :pm:prj2021:dbrigalda:smart_cane_blocks1.png?direct&700 |}} | + | |
Aplicatia functioneaza in felul urmator: | Aplicatia functioneaza in felul urmator: | ||
Line 94: | Line 90: | ||
===== Demo ===== | ===== Demo ===== | ||
- | [[https://www.youtube.com/watch?v=dlPbu20nvBQ |{{ :pm:prj2021:dbrigalda:smart_cane_yt.png?nolink&600 |}}]] | + | [[https://www.youtube.com/watch?v=dlPbu20nvBQ |{{ :pm:prj2021:dbrigalda:smart_cane_yt_jpg.jpg?direct&700 |}}]] |
===== Concluzii ===== | ===== Concluzii ===== | ||
Proiectul a fost interesant de realizat, dar a fost o provocare, in special pentru ca senzorii nu erau suficient de performanti si a trebuit sa adaptez ideea proiectului in functie de asta. Imi doream initial sa conectez aplicatia la un API care sa simplifice functia de navigatie, dar eroarea data de modulul GPS era prea mare pentru a permite realizarea unor rute dinamice de mers. La fel si in cazul senzorului de culoare, pe care am incercat sa il ajustez cat mai precis pentru a identifica un spectru mai larg de culori. Fiind reglat empiric insa depindea foarte mult de lumina ambientala si atunci in lumina mai puternica avea momente cand detecta verdele ca fiind rosu sau invers. :-/ | Proiectul a fost interesant de realizat, dar a fost o provocare, in special pentru ca senzorii nu erau suficient de performanti si a trebuit sa adaptez ideea proiectului in functie de asta. Imi doream initial sa conectez aplicatia la un API care sa simplifice functia de navigatie, dar eroarea data de modulul GPS era prea mare pentru a permite realizarea unor rute dinamice de mers. La fel si in cazul senzorului de culoare, pe care am incercat sa il ajustez cat mai precis pentru a identifica un spectru mai larg de culori. Fiind reglat empiric insa depindea foarte mult de lumina ambientala si atunci in lumina mai puternica avea momente cand detecta verdele ca fiind rosu sau invers. :-/ | ||
Line 114: | Line 110: | ||
* https://create.arduino.cc/projecthub/muhammedazhar/third-eye-for-the-blind-8c246d | * https://create.arduino.cc/projecthub/muhammedazhar/third-eye-for-the-blind-8c246d | ||
- | <note tip>Documentația în format <html><a class="media mediafile mf_pdf" href="?do=export_pdf">PDF</a></html></note> | + | <note tip>Documentația în format PDF <html><a class="media mediafile mf_pdf" href="?do=export_pdf">DiaconescuOana_SmartCane</a></html></note> |