ዝርዝር ሁኔታ:
- ደረጃ 1: ክፍሎች እና መሣሪያ
- ደረጃ 2 - ጉግል ኤፒአይ ያግኙ
- ደረጃ 3: በአርዱዲኖ አይዲኢ ላይ NodeMCu ን ያዋቅሩ
- ደረጃ 4: ArduinoJson Library ን ያውርዱ
- ደረጃ 5 - ፕሮግራም
ቪዲዮ: ፍልስፍና - 5 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:33
እሱ የእኔ የበጋ internship ፕሮጀክት ነው። የጂፒኤስ ሞዱል ኖድኤምሲዩን ብቻ በመጠቀም የትኛውንም መሣሪያ መከታተል እንደምንችል ስሰማ በጣም አስገርመኛል። በዚህ በኩል ማንኛውንም መሣሪያ መከታተል እንችላለን። እንዲሁም WiFi ብቻ በመጠቀም መሣሪያን እንዴት መከታተል እንደምንችል ይገርማሉ። እሱን ለመረዳት የድርድሩ መግለጫ እዚህ አለ።
- · ሁሉንም ማለት ይቻላል WiFiዎን ይቃኛል።
- · ጉግል ኤፒአይን በመጠቀም ይህንን የመሣሪያ ሥፍራ ለ Google ይላኩ
- · በዚህ መሠረት የመሣሪያዎን ሥፍራ ያገኝበታል
- · ለዚህ ፕሮጀክት ጠንካራ የአውታረ መረብ ግንኙነት አለዎት።
ደረጃ 1: ክፍሎች እና መሣሪያ
ክፍሎች
- NodeMCU (ESP8266 1.0 12E)
- የዩኤስቢ ገመድ
መሣሪያዎች
አርዱዲኖ አይዲኢ ከ NodeMcu 1.0 12E ቦርድ ጋር
ጉግል ኤ.ፒ.አይ
ደረጃ 2 - ጉግል ኤፒአይ ያግኙ
- አሳሽዎን ይክፈቱ እና ይተይቡ: console.developer.google.com
- አዲስ ፕሮጀክት ይፍጠሩ
- አዲስ ፕሮጀክት ከፈጠሩ በኋላ በእውቅና ማረጋገጫ ላይ ጠቅ ያድርጉ
- በኤፒአይ ቁልፍ ላይ ጠቅ ያድርጉ
-
የእርስዎ ኤፒአይ ቁልፍ ተፈጥሯል
በቀላሉ ለመረዳት የሚከተለውን ስዕል |> ይመልከቱ
ደረጃ 3: በአርዱዲኖ አይዲኢ ላይ NodeMCu ን ያዋቅሩ
- ከሚከተለው አገናኝ አርዱዲኖ IDE ን ያውርዱ-- https:// www. ዋና/ሶፍትዌር arduino.cc/en/
- በአርዱዲኖ አይዲኢ ላይ የመስቀለኛ MCu ሰሌዳ ያክሉ
-
በ NodeMCU ላይ ኮድ ለመስቀል የ NodeMCu ሰሌዳውን በ ARDUINO IDE ላይ ማከል አለብዎት።
- በአርዱዲኖ አይዲኢ ውስጥ ወደ ፋይል እና ምርጫ ይሂዱ
- እና ተጨማሪ የቦርድ አስተዳደር ክፍል ውስጥ የሚከተለውን አገናኝ ይቅዱ
- arduino.esp8266.com/stable/package_esp8266c…
- እና እሺን ጠቅ ያድርጉ
- ቦርዱ ወርዷል
- ወደ መሳሪያዎች እና ሰሌዳ ይሂዱ እና NodeMCU 1.0 12E ን ይምረጡ
- በቀላሉ ለመረዳት የአቦቦ ሥዕሉን ይመልከቱ
ደረጃ 4: ArduinoJson Library ን ያውርዱ
- ወደ ሂድ
ንድፍ ቤተመጽሐፍት ቤተ -መጽሐፍትን ያቀናብሩ
በፍለጋ ሳጥን ውስጥ አርዱዲኖ ጄሰን ይተይቡ
የቅርብ ጊዜውን የ ArduinoJson ቤተ -መጽሐፍትን ያውርዱ
ቤተ -መጽሐፍትን ካወረዱ በኋላ ጠቅ ያድርጉ ዝጋ
ቤተ -መጽሐፍት ያክሉ ከ
ንድፍ ከቤተመጽሐፍት አርዱinoኖ ጆንሰን ጋር
ደረጃ 5 - ፕሮግራም
በ NodeMCU ቦርድ ላይ የሚከተለውን ፕሮግራም ይስቀሉ። እና በተከታታይ ማሳያ ላይ የእርስዎን መሣሪያ (NodeMCU 1.0 12E ቦርድ) ቦታን ይመልከቱ።
#ያካትቱ
#ያካትቱ
#ያካትቱ
char myssid = "የእርስዎ SSID"; // አውታረ መረብዎ SSID (ስም)
char mypass = "የይለፍ ቃልዎ"; // የአውታረ መረብ የይለፍ ቃልዎን
// ምስክርነቶች ለ Google GeoLocation API…
const char* አስተናጋጅ = "www.googleapis.com";
ይህን ገጽ ሕብረቁምፊ = "/geolocation/v1/geolocate? Key =";
// --- እዚህ የጉግል ካርታዎች አፕ ቁልፍን ያግኙ-
developers.google.com/maps/documentation/geolocation/intro
የሕብረቁምፊ ቁልፍ = "የእርስዎ የጉግል ኤፒአይ ቁልፍ" ፤ // ከደረጃ 2 ያግኙ
ትምህርት
int ሁኔታ = WL_IDLE_STATUS;
ሕብረቁምፊ jsonString = "{ n";
ድርብ ኬክሮስ = 0.0;
ድርብ ኬንትሮስ = 0.0;
ድርብ ትክክለኛነት = 0.0;
int more_text = 1; ለተጨማሪ የማረም ውፅዓት // ወደ 1 ተቀናብሯል
ባዶነት ማዋቀር () {
Serial.begin (9600);
Serial.println ("ጀምር");
// WiFi ን ወደ ጣቢያው ሁኔታ ያዋቅሩ እና
ቀደም ሲል የተገናኘ ከሆነ ከኤ.ፒ
WiFi.mode (WIFI_STA);
WiFi. ግንኙነት ያቋርጡ ();
መዘግየት (100);
Serial.println ( ማዋቀር
ተከናውኗል );
// እኛ በማገናኘት እንጀምራለን ሀ
የ WiFi አውታረ መረብ
Serial.print ( ከ ጋር በመገናኘት ላይ
);
Serial.println (myssid);
WiFi.begin (myssid, mypass);
ሳለ (WiFi.status ()! = WL_CONNECTED) {
መዘግየት (500);
Serial.print (".");
}
Serial.println (".");
}
ባዶነት loop () {
char bssid [6];
DynamicJsonBuffer jsonBuffer;
Serial.println ("የፍተሻ ጅምር");
// WiFi.scan አውታረ መረቦች ይመለሳሉ
የተገኙ አውታረ መረቦች ብዛት
int n = WiFi.scanNetworks ();
Serial.println ("scandone");
ከሆነ (n == 0)
Serial.println ("ምንም አውታረ መረቦች አልተገኙም");
ሌላ
{
Serial.print (n);
Serial.println ("አውታረ መረቦች መሠረተ…");
ከሆነ (ተጨማሪ_ጽሑፍ) {
// የተቀረፀውን json ያትሙ…
Serial.println ("{");
Serial.println ("\" homeMobileCountryCode / ": 234,"); // ይህ እውነተኛ የዩኬ ኤምሲሲ ነው
Serial.println ("\" homeMobileNetworkCode / ": 27,"); // እና እውነተኛ የዩኬ ኤምኤንሲ
Serial.println ("\" radioType / ": \" gsm / ","); // ለጂ.ኤስ.ኤም
Serial.println ("\" carrier / ": \" Vodafone / ","); // ከቮዳፎን ጋር የተቆራኘ
Serial.println ("\" cellTowers / ": ["); // እኔ ማንኛውንም የሕዋስ ማማዎች ሪፖርት አላደርግም
Serial.println ("],");
Serial.println ("\" wifiAccessPoints / ": [");
ለ (int i = 0; i <n; ++ i)
{
Serial.println ("{");
Serial.print ("\" macAddress / ": \" ");
Serial.print (WiFi. BSSIDstr (i));
Serial.println ("\", ");
Serial.print ("\" signalStrength / ":");
Serial.println (WiFi. RSSI (i));
ከሆነ (i <n - 1)
{
Serial.println ("},");
}
ሌላ
{
Serial.println ("}");
}
}
Serial.println ("]");
Serial.println ("}");
}
Serial.println ("");
}
// አሁን jsonString ን ይገንቡ…
jsonString = "{ n";
jsonString += "\" homeMobileCountryCode / ": 234, / n"; // ይህ እውነተኛ የዩኬ ኤምሲሲ ነው
jsonString += "\" homeMobileNetworkCode / ": 27, / n"; // እና እውነተኛ የዩኬ ኤምኤንሲ
jsonString += "\" radioType / ": \" gsm / ", / n"; // ለጂ.ኤስ.ኤም
jsonString += "\" carrier / ": \" Vodafone / ", / n"; // ከቮዳፎን ጋር የተቆራኘ
jsonString += "\" wifiAccessPoints / ": [n";
ለ (int j = 0; j <n; ++ j)
{
jsonString += "{ n";
jsonString += "\" macAddress / ": \" ";
jsonString += (WiFi. BSSIDstr (j));
jsonString += "\", / n ";
jsonString += "\" signalStrength / ":";
jsonString += WiFi. RSSI (j);
jsonString += "\ n";
ከሆነ (j <n - 1)
{
jsonString += "}, / n";
}
ሌላ
{
jsonString += "} n";
}
}
jsonString += ("] n");
jsonString += ("} n");
//--------------------------------------------------------------------
Serial.println ("");
የ WiFiClientSecure ደንበኛ;
// ከደንበኛው ጋር ይገናኙ እና የኤፒአይ ጥሪ ያድርጉ
Serial.print ("URL ን በመጠየቅ ላይ");
// ---- የ Google ካርታዎች Api ቁልፍን እዚህ ያግኙ ፣ አገናኝ
Serial.println ("https://" + (String) Host + thisPage + "PUT-YOUR-GOOGLE-MAPS-API-KEY-HERE");
Serial.println ("");
ከሆነ (client.connect (አስተናጋጅ ፣ 443)) {
Serial.println ("ተገናኝቷል");
client.println ("POST" + thisPage + key + "HTTP/1.1");
client.println ("አስተናጋጅ:" + (ሕብረቁምፊ) አስተናጋጅ);
client.println ("ግንኙነት: ዝጋ");
client.println ("የይዘት-ዓይነት: ትግበራ/json");
client.println ("ተጠቃሚ-ወኪል አርዱinoኖ/1.0");
client.print ("የይዘት-ርዝመት:");
client.println (jsonString.length ());
client.println ();
client.print (jsonString);
መዘግየት (500);
}
// ሁሉንም መስመሮች ያንብቡ እና ይተንትኑ
መልሱ ከአገልጋይ
ሳለ (ደንበኛ. ይገኛል ()) {
ሕብረቁምፊ መስመር = ደንበኛ ።readStringUntil ('\ r');
ከሆነ (ተጨማሪ_ጽሑፍ) {
Serial.print (መስመር);
}
JsonObject & root = jsonBuffer.parseObject (መስመር);
ከሆነ (root.success ()) {
ኬክሮስ = ሥር ["ሥፍራ"] ["lat"];
ኬንትሮስ = ሥር ["ሥፍራ"] ["lng"];
ትክክለኛነት = ሥር ["ትክክለኛነት"];
}
}
Serial.println ("የመዝጊያ ግንኙነት");
Serial.println ();
client.stop ();
Serial.print ("Latitude =");
Serial.println (ኬክሮስ ፣ 6);
Serial.print ("ኬንትሮስ =");
Serial.println (ኬንትሮስ ፣ 6);
Serial.print ("ትክክለኛነት =");
Serial.println (ትክክለኛነት);
መዘግየት (10000);
Serial.println ();
Serial.println ("ዳግም ማስጀመር …");
Serial.println ();
መዘግየት (2000);
}
የሚመከር:
በ Flick ውስጥ የጨዋታ ንድፍ በ 5 ደረጃዎች 5 ደረጃዎች
በ 5 ደረጃዎች ውስጥ በ Flick ውስጥ የጨዋታ ንድፍ -ፍሊክስ ጨዋታን በተለይም በእውነቱ እንደ እንቆቅልሽ ፣ የእይታ ልብ ወለድ ወይም የጀብድ ጨዋታ የመሰለ ቀላል መንገድ ነው።
የአርዱዲኖ መኪና የተገላቢጦሽ የመኪና ማቆሚያ ማስጠንቀቂያ ስርዓት - ደረጃዎች በደረጃ: 4 ደረጃዎች
የአርዱዲኖ መኪና የተገላቢጦሽ የመኪና ማቆሚያ ማንቂያ ስርዓት | ደረጃዎች በደረጃ-በዚህ ፕሮጀክት ውስጥ አርዱዲኖ UNO እና HC-SR04 Ultrasonic Sensor ን በመጠቀም ቀላል የአርዱዲኖ መኪና የተገላቢጦሽ የመኪና ማቆሚያ ዳሳሽ ወረዳ እቀዳለሁ። ይህ በአርዱዲኖ ላይ የተመሠረተ የመኪና ተገላቢጦሽ የማስጠንቀቂያ ስርዓት ለራስ ገዝ አሰሳ ፣ ሮቦት ሬንጅንግ እና ለሌላ ክልል አር
በ Raspberry Pi 4B ላይ የፊት ለይቶ ማወቅ በ 3 ደረጃዎች 3 ደረጃዎች
በ Raspberry Pi 4B ላይ የፊት ለይቶ ማወቅ በ 3 እርከኖች-በዚህ መመሪያ ውስጥ የሹንያፊትን ቤተመፃሕፍት በመጠቀም ከ Rasyaberry O/S ጋር Raspberry Pi 4 ላይ የፊት ለይቶ ማወቅን እናከናውናለን። ሹነፊታ የፊት መታወቂያ/ማወቂያ ቤተ -መጽሐፍት ነው። ፕሮጀክቱ ፈጣን የመለየት እና የማወቅ ፍጥነትን ለማሳካት ያለመ ነው
በ GameGo ላይ በ ‹GoGo› ላይ ማለቂያ ከሌላቸው ደረጃዎች ጋር የመሣሪያ ስርዓት - 5 ደረጃዎች (ከስዕሎች ጋር)
በ GameGo ላይ በ MakeGo Arcade የመጫወቻ ማዕከል ላይ ገደብ የለሽ ደረጃዎች ያለው የመሣሪያ ስርዓት - GameGo በ TinkerGen STEM ትምህርት የተገነባ የ Microsoft Makecode ተኳሃኝ የሆነ የሬትሮ ጨዋታ ተንቀሳቃሽ ኮንሶል ነው። እሱ በ STM32F401RET6 ARM Cortex M4 ቺፕ ላይ የተመሠረተ እና ለ STEM አስተማሪዎች ወይም የሬትሮ ቪዲዮ ጨዋታን መፍጠር መዝናናትን ለሚወዱ ሰዎች ብቻ የተሰራ ነው
ቀላል ደረጃዎች (DID Strip Lights በመጠቀም) DIY Vanity Mirror - 4 ደረጃዎች
DIY Vanity Mirror በቀላል ደረጃዎች (የ LED ስትሪፕ መብራቶችን በመጠቀም) - በዚህ ልጥፍ ውስጥ በ LED ሰቆች እገዛ የ DIY Vanity Mirror ን ሠራሁ። በእውነቱ አሪፍ ነው እና እርስዎም እነሱን መሞከር አለብዎት