Სარჩევი:
- ნაბიჯი 1: რა გჭირდებათ
- ნაბიჯი 2: გადადით Unwired Labs– ში
- ნაბიჯი 3: დარეგისტრირდით API ჟეტონის მისაღებად
- ნაბიჯი 4: შეამოწმეთ თქვენი ელ
- ნაბიჯი 5: ბიბლიოთეკები, რომლებიც დაგჭირდებათ
- ნაბიჯი 6: დაამატეთ კოდი Arduino– ში მდებარეობასთან API– ს დასაკავშირებლად
- ნაბიჯი 7: გახსენით სერიული მონიტორი იმის დასადგენად, ხართ თუ არა დაკავშირებული
- ნაბიჯი 8: მიიღეთ კოორდინატები
- ნაბიჯი 9: გადადით Google Maps– ში
- ნაბიჯი 10: გაგზავნეთ ადგილმდებარეობა თქვენს მობილურზე
ვიდეო: მდებარეობის თვალთვალის მქონე NodeMCU ESP8266: 10 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:19
გაინტერესებთ როგორ შეუძლია თქვენს NodeMCU თვალყური ადევნოს თქვენს მდებარეობას? ეს შესაძლებელია, თუნდაც GPS მოდულის გარეშე და ეკრანის გარეშე. გამომავალი იქნება კოორდინატები, სადაც თქვენ ხართ და ნახავთ მათ თქვენს სერიულ მონიტორზე.
შემდეგი კონფიგურაცია იქნა გამოყენებული NodeMCU 1.0 (ESP-12E მოდული) Arduino IDE– ით.
- Windows 10
- Arduino IDE v. 1.8.4
ნაბიჯი 1: რა გჭირდებათ
ის, რაც გჭირდებათ ამ გაკვეთილის შესასრულებლად, არის შემდეგი კომპონენტები:
- მიკრო USB კაბელი
- NodeMCU ESP8266
გარდა ამისა, თქვენ დაგჭირდებათ:
- მდებარეობა API (დაუკავშირებელი ლაბორატორიებიდან)
- უერთდება wifi ან ცხელ წერტილს
ნაბიჯი 2: გადადით Unwired Labs– ში
გეოლოკაცია ძალიან მოსახერხებელია, რადგან როდესაც თქვენი GPS გამორთულია, თქვენ კვლავ შეგიძლიათ გამოიყენოთ გეოლოკაცია თქვენი მდებარეობის თვალყურის დევნისთვის. ჩვენი მასპინძელი, რომელიც უზრუნველყოფს გეოლოკაციას, იქნება https://www.unwiredlabs.com/. გადადით ამ ვებსაიტზე და დარეგისტრირდით (ფორთოხლის ღილაკი ზედა მარჯვენა კუთხეში).
ნაბიჯი 3: დარეგისტრირდით API ჟეტონის მისაღებად
რეგისტრაციის გვერდზე, თქვენ უნდა შეავსოთ თქვენი სახელი, ელ.ფოსტა (თქვენი API ნიშანი გაიგზავნება თქვენს ელ.ფოსტაზე) და გამოყენების შემთხვევა (მაგალითად, პირადი გამოყენება). აირჩიეთ თქვენი ანგარიშის ტიპი. უფასო ვერსია ჯარიმა იქნება, მაგრამ გაითვალისწინეთ, რომ შეზღუდული ხართ და ვერ აკონტროლებთ თქვენს ადგილს 24/7. Დავიწყოთ!
ნაბიჯი 4: შეამოწმეთ თქვენი ელ
გადადით თქვენს ელ.ფოსტაზე და ნახავთ თქვენს API ნიშანს. დააკოპირეთ API ნიშანი, რადგან თქვენ გჭირდებათ ეს იმ კოდისთვის, რომელსაც ჩვენ ვიყენებთ. ასე გამოიყურება ელ.წერილი:
გამარჯობა!
გმადლობთ, რომ დარეგისტრირდით Unwired Labs LocationAPI– ით! თქვენი API ნიშანი არის "თქვენი API კოდი აქ არის" (ბრჭყალების გარეშე). ეს მოგცემთ 100 მოთხოვნას/ დღეში უფასოდ - სამუდამოდ.
თუ გსურთ თვალყური ადევნოთ 5 მოწყობილობას უფასოდ, გთხოვთ უპასუხოთ შემდეგ დეტალებს და ჩვენ განვაახლებთ თქვენს ანგარიშს 12 საათის განმავლობაში:
1. განლაგების ტიპი (აპარატურა/ აპლიკაცია/ სხვა):
2. თქვენი პროექტის შესახებ:
3. ვებ გვერდი:
თქვენ შეგიძლიათ შეხვიდეთ თქვენს დაფაზე აქ: https://unwiredlabs.com/dashboard. თუ პრობლემები შეგექმნათ ან გაქვთ შეკითხვები, უპასუხეთ ამ ელ.წერილს და მე დაგეხმარებით!
ბედნიერი მდებარეობა!
საგარი
დაუკავშირებელი ლაბორატორიები
ნაბიჯი 5: ბიბლიოთეკები, რომლებიც დაგჭირდებათ
შემდეგი ნაბიჯი არის არდუინოს გახსნა და ბიბლიოთეკების მართვა. თქვენ უნდა დააინსტალიროთ ArduinoJson ბიბლიოთეკა. სხვა ბიბლიოთეკები უკვე ჩაშენებულია. როდესაც მზად იქნებით, შეგიძლიათ დაიწყოთ კოდის წერა.
ნაბიჯი 6: დაამატეთ კოდი Arduino– ში მდებარეობასთან API– ს დასაკავშირებლად
გააკეთეთ ახალი ესკიზი და დაამატეთ შემდეგი კოდი არდუინოში. ჩაწერეთ თქვენი საკუთარი wifi/hotspot სახელი და პაროლი. ჩასვით ელ.ფოსტაში მიღებული API ნიშანი. ატვირთეთ თქვენი კოდი თქვენს NodeMCU- ში.
#ჩართეთ
#ჩართეთ
#მოიცავს "ESP8266WiFi.h"
// თქვენი ქსელის SSID (სახელი) და ქსელის პაროლი
char myssid = "თქვენი wifi/ცხელი წერტილის სახელი"; char mypass = "შენი პაროლი";
// unwiredlabs Hostname & Geolocation Endpoint url
const char* მასპინძელი = "www.unwiredlabs.com"; სიმებიანი ბოლო წერტილი = "/v2/process.php";
// UnwiredLabs API_Token. დარეგისტრირდით აქ, რომ მიიღოთ უფასო ნიშანი
სიმებიანი სიმბოლო = "d99cccda52ec0b";
სიმებიანი jsonString = "{ n";
// ცვლადები შენახვის unwiredlabs პასუხი
ორმაგი გრძედი = 0.0; ორმაგი გრძედი = 0.0; ორმაგი სიზუსტე = 0.0;
void setup () {
Serial.begin (115200);
// დააყენეთ WiFi სადგურის რეჟიმში და გათიშეთ AP– დან, თუ ის ადრე იყო დაკავშირებული
WiFi.mode (WIFI_STA); WiFi. გათიშვა (); Serial.println ("დაყენება შესრულებულია");
// ჩვენ ვიწყებთ WiFi ქსელთან დაკავშირებას
Serial.print ("დაკავშირება"); Serial.println (myssid); WiFi. დასაწყისი (myssid, mypass);
ხოლო (WiFi.status ()! = WL_CONNECTED) {
დაგვიანება (500); Serial.print ("."); } Serial.println ("."); }
ბათილი მარყუჟი () {
char bssid [6]; DynamicJsonBuffer jsonBuffer;
// WiFi.scanNetworks დააბრუნებს ნაპოვნი ქსელების რაოდენობას
int n = WiFi.scanNetworks (); Serial.println ("სკანირება დასრულებულია");
თუ (n == 0) {
Serial.println ("ქსელები მიუწვდომელია"); } else {Serial.print (n); Serial.println ("ნაპოვნია ქსელები"); }
// ახლა ააშენე jsonString…
jsonString = "{ n"; jsonString += "\" ნიშანი / ": \" "; jsonString += ნიშანი; jsonString +=" / ", / n"; jsonString += "\" id / ": \" saikirandevice01 / ", / n"; jsonString += "\" wifi / ": [n"; for (int j = 0; j <n; ++ j) {jsonString += "{ n"; jsonString += "\" bssid / ": \" "; jsonString += (WiFi. BSSIDstr (j)); jsonString +=" / ", / n"; jsonString += "\" სიგნალი / ":"; jsonString += WiFi. RSSI (j); jsonString += "\ n"; if (j <n - 1) {jsonString += "}, / n"; } else {jsonString += "} n"; }} jsonString += ("] n"); jsonString += ("} n"); Serial.println (jsonString);
WiFiClientSecure კლიენტი;
// დაუკავშირდით კლიენტს და განახორციელეთ api ზარი
Serial.println ("URL- ის მოთხოვნა: https://" + (სიმებიანი) მასპინძელი + საბოლოო წერტილი); if (client.connect (მასპინძელი, 443)) {Serial.println ("დაკავშირებულია"); client.println ("POST" + საბოლოო წერტილი + "HTTP/1.1"); client.println ("მასპინძელი:" + (სიმებიანი) მასპინძელი); client.println ("კავშირი: დახურვა"); client.println ("შინაარსი-ტიპი: პროგრამა/json"); client.println ("მომხმარებელი-აგენტი: Arduino/1.0"); client.print ("შინაარსი-სიგრძე:"); client.println (jsonString.length ()); client.println (); client.print (jsonString); დაგვიანება (500); }
// წაიკითხეთ და გაანალიზეთ სერვერის პასუხის ყველა ხაზი
while (client.available ()) {სიმებიანი ხაზი = client.readStringUntil ('\ r'); JsonObject & root = jsonBuffer.parseObject (ხაზი); if (root.success ()) {latitude = root ["lat"]; გრძედი = ფესვი ["ლონ"]; სიზუსტე = ფესვი ["სიზუსტე"];
Serial.println ();
Serial.print ("გრძედი ="); Serial.println (გრძედი, 6); Serial.print ("განედი ="); Serial.println (გრძედი, 6); Serial.print ("სიზუსტე ="); Serial.println (სიზუსტე); }}
Serial.println ("კავშირის დახურვა");
Serial.println (); client.stop ();
დაგვიანება (5000);
}
ნაბიჯი 7: გახსენით სერიული მონიტორი იმის დასადგენად, ხართ თუ არა დაკავშირებული
გადადით Arduino– ს ინსტრუმენტებზე და გახსენით სერიული მონიტორი. იმის დასადგენად, ხართ თუ არა ინტერნეტთან დაკავშირებული, სერიულ მონიტორში უნდა ნახოთ შემდეგი:
დაყენება დასრულებულია
დაკავშირება (თქვენი wifi სახელთან)… სკანირება დასრულდა
ნაბიჯი 8: მიიღეთ კოორდინატები
თუ ის წარმატებით მუშაობდა, თქვენ უნდა ნახოთ სკანირების ქვეშ გაკეთებული მონაცემების მთელი სია. ერთადერთი რაც ჩვენ გვჭირდება არის კოდი მოთხოვნის URL- ის ქვეშ, ასე რომ ჩვენ გვჭირდება გრძედი და გრძედი. ეს არის კოორდინატები.
მოთხოვნილი URL:
დაკავშირებულია
გრძედი = 52.385259
განედი = 5.196099
სიზუსტე = 41.00
კავშირის დახურვა
5 წამის შემდეგ კოდი მუდმივად განახლდება და თქვენ ალბათ დაინახავთ გრძედის, გრძედის და სიზუსტის ცვლილებას. ეს იმიტომ ხდება, რომ API ცდილობს მაქსიმალურად ზუსტად აკონტროლოს ადგილმდებარეობა.
ნაბიჯი 9: გადადით Google Maps– ში
გადადით https://www.google.com/maps/ და ჩაწერეთ თქვენი კოორდინატები საძიებო ზოლში. კოორდინატები უნდა დაიწეროს შემდეგნაირად: 52.385259, 5.196099. Google Maps- მა უნდა აჩვენოს სად მდებარეობს რუკაზე.
ნაბიჯი 10: გაგზავნეთ ადგილმდებარეობა თქვენს მობილურზე
და … თქვენ დაასრულეთ! ამიტომ, თუ გსურთ გაგზავნოთ ადგილმდებარეობა თქვენს მობილურზე, ეს შესაძლებელია. თუ გსურთ, Google Maps გამოგიგზავნით ელ.წერილს თქვენი კოორდინატებით.
ბედნიერი ადგილმდებარეობა!
გირჩევთ:
უისლის' მდებარეობის საათი 4 ხელით: 11 ნაბიჯი (სურათებით)
"უისლის" მდებარეობის საათი 4 ხელით: ასე რომ, ჟოლოს პი -ით, რომელიც ცოტა ხანს ტრიალებდა, მინდოდა ვიპოვო ლამაზი პროექტი, რომელიც საშუალებას მომცემდა მაქსიმალურად გამომეყენებინა იგი. მე წავაწყდი ამ უზარმაზარ ინსტრუქციულ ასაშენებელ უისლის მდებარეობის საათს ppeters0502– ის მიერ და ვიფიქრე რომ
ბატარეის მქონე ნათურა, რომელიც ჩართულია მაგნიტების გამოყენებით!: 8 ნაბიჯი (სურათებით)
ბატარეის მქონე ნათურა, რომელიც ჩართულია მაგნიტების გამოყენებით!: ჩვენ ვიცით, რომ ნათურების უმეტესობა ჩართულია/გამორთულია ფიზიკური გადამრთველის საშუალებით. ამ პროექტის მიზანი იყო შემექმნა უნიკალური გზა, რომ ნათურა ადვილად ჩართული/გამორთულიყო კლასიკური გადართვის გარეშე. მე დავინტერესდი ლამპის იდეით, რომელმაც შეცვალა ფორმა ამ პროცესის დროს
რეზისტორის შენახვის მდებარეობის სისტემა "Resys": 7 ნაბიჯი (სურათებით)
Resistor Storage Location System "Resys": ეს არის სისტემა, რომელიც აადვილებს თქვენი რეზისტორების პოვნას. მოძებნეთ სასურველი მნიშვნელობით და აისახება მარჯვენა უჯრა. ეს სისტემა შეიძლება გაგრძელდეს უჯრების სასურველ რაოდენობამდე
UD- გაფრთხილება. აუტიზმის მქონე ბიჭისთვის: 7 ნაბიჯი (სურათებით)
UD- გაფრთხილება. აუტიზმის მქონე ბიჭისთვის: Ud-Alert, ან უკეთესი Undress Alert, მაგრამ რისთვის? ჩვენი შვილი, სკოტი, 13 წლის, დაავადებულია აუტიზმით. ის არავერბალურია და მას ჯერ კიდევ აქვს პრობლემები, რომ დაგვანახოს, როდის სჭირდება ტუალეტში შესვლა. შეზღუდული კომუნიკაციის გამო, ტანსაცმელს იძენს
ინვალიდობის მქონე ინვალიდის ეტლი აქსელერომეტრზე: 13 ნაბიჯი
ინვალიდის ინვალიდის სავარძელი ფიზიკურად შეზღუდული შესაძლებლობის მქონე პირთათვის: ჩვენს ქვეყანაში 1.3 მილიარდი მოსახლეობით, ჩვენ ჯერ კიდევ გვყავს ხანდაზმულთა და შეზღუდული შესაძლებლობის მქონე პირთა 1% -ზე მეტი, რომელთაც სჭირდებათ მხარდაჭერა პირადი მობილობისთვის. ჩვენს პროექტს აქვს მიზანი დააკმაყოფილოს მობილობის მოთხოვნა ჭკვიანი ტექნოლოგიით. Პრობლემა