Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2022:sionescu:gps_tracker [2022/05/27 14:57]
lcumpanasoiu
pm:prj2022:sionescu:gps_tracker [2022/05/27 15:48] (current)
lcumpanasoiu
Line 9: Line 9:
   * conectare dispozitive la placa de dezvoltare   * conectare dispozitive la placa de dezvoltare
   * afisarea coordonatelor pe un ecran   * afisarea coordonatelor pe un ecran
-  * afisare data si timpul cand au fost preluate coordonatele 
   * trimiterea datelor în retea    * trimiterea datelor în retea 
-  * afisarea datelor ​din aplicatia de la punctul anterior ​pe o harta+  ​* afisare data si timpul cand au fost preluate coordonatele 
 +  ​* afisarea datelor pe o harta
 </​note>​ </​note>​
  
Line 33: Line 33:
  
 Schema bloc principala este urmatoarea: Schema bloc principala este urmatoarea:
-{{ :​pm:​prj2022:​sionescu:​schema_bloc.jpg |}}+{{ :​pm:​prj2022:​sionescu:​bloc_schem.jpg |}} 
 + 
 +Schema comunicarii dintre GPS si NodeMCU: 
 +{{ :​pm:​prj2022:​sionescu:​gps_nodemcu.jpg |}} 
 + 
 +Schema comunicarii dintre NodeMCU si Arduino: 
 +{{ :​pm:​prj2022:​sionescu:​arduino_nodemcu.jpg?​300 |}} 
 + 
 +Simularea din Tinkercad cu Arduino si LCD: 
 +{{ :​pm:​prj2022:​sionescu:​tinkercad.jpg?​300 |}} 
  
 </​note>​ </​note>​
Line 39: Line 49:
 ===== Software Design ===== ===== Software Design =====
 <note tip> <note tip>
-Pentru partea acestanu exista nevoie de configurare,​ deoarece se foloseste un web server care ruleaza pe NodeMcu. ​+Ca biblioteciam folosit pentru codul de pe NodeMCU TinyGPS++.h,​ SoftwareSerial.h si ESP8266WiFi.h,​ iar pentru Arduino SoftwareSerial.h si LiquidCrystal.h. 
 + 
 +Nu exista nevoie de configurare,​ deoarece se foloseste un web server care ruleaza pe NodeMcu. ​
 Am folosit Google Maps pentru afisarea hartilor. Am folosit Google Maps pentru afisarea hartilor.
 Comunicarea client-server se face prin intermediul HTML. Comunicarea client-server se face prin intermediul HTML.
  
-Codul pentru crearea paginii html din functia loop() este mai jos:+In functia loop() ​de pe NodeMCU, verificam ca locatia, data si ora sunt valide. Daca da, atunci luam aceste date si le trimitem server-ului web care le afiseaza pe o pagina html, al carei cod de creare ​este mai jos:
   String s = "​HTTP/​1.1 200 OK\r\nContent-Type:​ text/​html\r\n\r\n <​!DOCTYPE html> <​html>​ <​head>​ <​title>​GPS Tracker project</​title>​ <​style>";​   String s = "​HTTP/​1.1 200 OK\r\nContent-Type:​ text/​html\r\n\r\n <​!DOCTYPE html> <​html>​ <​head>​ <​title>​GPS Tracker project</​title>​ <​style>";​
   s += "​a:​link {background-color:​ YELLOW;​text-decoration:​ none;​}";​   s += "​a:​link {background-color:​ YELLOW;​text-decoration:​ none;​}";​
Line 73: Line 85:
  
   s += "</​body>​ </​html>​ \n";   s += "</​body>​ </​html>​ \n";
- 
  
  
Line 80: Line 91:
  
 ===== Rezultate ===== ===== Rezultate =====
-<note tip> 
 Imaginea cu montajul realizat: Imaginea cu montajul realizat:
 +{{ :​pm:​prj2022:​sionescu:​imaginea_montaj.jpeg?​300 |}}
  
-</​note>​ 
  
 ===== Concluzii ===== ===== Concluzii =====
Line 90: Line 100:
 Ca realizare, partea cea mai grea pentru mine a fost aceea de conectare a placutei de NodeMCU cu Arduino. Intrucat exista doar doi pini pentru comunicare I2C, D1 si D2 (acestia ii foloseam initial pentru conectarea cu GPS), a fost nevoie sa ma documentez foarte mult pentru a putea face legatura cu succes dintre cele placute. In final am folosit alti 2 pini de pe NodeMCU pentru conectarea cu GPS. Ca realizare, partea cea mai grea pentru mine a fost aceea de conectare a placutei de NodeMCU cu Arduino. Intrucat exista doar doi pini pentru comunicare I2C, D1 si D2 (acestia ii foloseam initial pentru conectarea cu GPS), a fost nevoie sa ma documentez foarte mult pentru a putea face legatura cu succes dintre cele placute. In final am folosit alti 2 pini de pe NodeMCU pentru conectarea cu GPS.
  
-O problema majora pe care o are proiectul de GPS Tracker este aceea de preluare corecta a locatiei si a timpului. In interiorul cladirilor, senzorul nu face fata si nu poate lua coordonatele,​ astfel ca este nevoie de un loc din spatiul exterior ​cladirilor (unde locatia este preluata cu exactitate) sau langa o fereastra deschisa (unde locatia este data ca fiind cladirea de vizavi).+O problema majora pe care o are proiectul de GPS Tracker este aceea de preluare corecta a locatiei si a timpului. In interiorul cladirilor, senzorul nu face fata si nu poate lua coordonatele,​ astfel ca este nevoie de un spatiu in exteriorul ​cladirilor (unde locatia este preluata cu exactitate) sau langa o fereastra deschisa (unde locatia este data ca fiind cladirea de vizavi).
 </​note>​ </​note>​
  
 ===== Download ===== ===== Download =====
 <note warning> <note warning>
 +{{:​pm:​prj2022:​sionescu:​gps_tracker.rar|}}
 </​note>​ </​note>​
  
Line 101: Line 111:
 ===== Jurnal ===== ===== Jurnal =====
 <​note>​ <​note>​
-* **martie 2022** - Ideea inițială de GPS Tracker\\ +  ​* **martie 2022** - Ideea inițială de GPS Tracker\\ 
-* **25 aprilie 2022** - Alegere proiect\\ +  * **25 aprilie 2022** - Alegere proiect\\ 
-* **26 aprilie 2022** - Schema proiect, lista de piese, documentare pe internet\\ +  * **26 aprilie 2022** - Schema proiect, lista de piese, documentare pe internet\\ 
-* **28 aprilie 2022** - Cumparare si obtinere piese\\ +  * **28 aprilie 2022** - Cumparare si obtinere piese\\ 
-* **11 mai 2022** - Milestone 1 si inceput documentație\\ +  * **11 mai 2022** - Milestone 1 si inceput documentație\\ 
-* **25 mai 2022** - Finalizare construcție proiect\\ +  * **25 mai 2022** - Finalizare construcție proiect\\ 
-* **27 mai 2022** - Milestone 2 si finalizare documentație\\+  * **27 mai 2022** - Milestone 2 si finalizare documentație\\
  
 </​note>​ </​note>​
pm/prj2022/sionescu/gps_tracker.1653652629.txt.gz · Last modified: 2022/05/27 14:57 by lcumpanasoiu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0