Cumpanasoiu Laurentiu
Schema bloc principala este urmatoarea:
Schema comunicarii dintre GPS si NodeMCU:
Schema comunicarii dintre NodeMCU si Arduino:
Simularea din Tinkercad cu Arduino si LCD:
Nu exista nevoie de configurare, deoarece se foloseste un web server care ruleaza pe NodeMcu. Am folosit Google Maps pentru afisarea hartilor. Comunicarea client-server se face prin intermediul HTML.
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>"; s += "a:link {background-color: YELLOW;text-decoration: none;}"; s += "table, th, td {border: 1px solid black;} </style> </head> <body> <h1 style="; s += "font-size:300%;"; s += " ALIGN=CENTER> GPS Tracker project</h1>"; s += "<p ALIGN=CENTER style=""font-size:150%;"""; s += "> <b>Location and Time Details</b></p> <table ALIGN=CENTER style="; s += "width:50%"; s += "> <tr> <th>Latitude</th>"; s += "<td ALIGN=CENTER >"; s += lat_str; s += "</td> </tr> <tr> <th>Longitude</th> <td ALIGN=CENTER >"; s += lng_str; s += "</td> </tr> <tr> <th>Date</th> <td ALIGN=CENTER >"; s += date_str; s += "</td></tr> <tr> <th>Time</th> <td ALIGN=CENTER >"; s += time_str; s += "</td> </tr> </table> ";
if (gps.location.isValid()) { s += "<p align=center><a style=""color:RED;font-size:125%;"" href=""http://maps.google.com/maps?&z=15&mrt=yp&t=k&q="; s += lat_str; s += "+"; s += lng_str; s += """ target=""_top"">Click here!</a> To check your location in Google maps.</p>"; }
s += "</body> </html> \n";
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).
Resurse Hardware:
Resurse Software: