ዝርዝር ሁኔታ:
- ደረጃ 1 - ሰልፍ
- ደረጃ 2 - ስብሰባ
- ደረጃ 3 - ስብሰባ - ሠንጠረዥ
- ደረጃ 4: Ubidots
- ደረጃ 5: SimpleDHT ቤተ -መጽሐፍት
- ደረጃ 6 የ PubSubClient ቤተ -መጽሐፍት
- ደረጃ 7 - TinyGSM ቤተ -መጽሐፍት
- ደረጃ 8 TFT_eSPI ቤተመጽሐፍት
- ደረጃ 9 TFT_eSPI ቤተመፃህፍት
- ደረጃ 10 - Ubidots
- ደረጃ 11 በ.ino ውስጥ ያለውን ውሂብ መለወጥ
- ደረጃ 12 GPRS_ESP32_DHT.ino - መግለጫዎች እና ተለዋዋጮች
- ደረጃ 13: መሰካት
- ደረጃ 14: ማዋቀር
- ደረጃ 15: SetupDisplay
- ደረጃ 16: SetupGSM
- ደረጃ 17 ConnectMQTTServer ን ያገናኙ
- ደረጃ 18 - ሉፕ
- ደረጃ 19 ፦ ReadDHT ን ያንብቡ
- ደረጃ 20 ፦ PublishMQTT
- ደረጃ 21: CreateJsonString
- ደረጃ 22 ShowDataOnDisplay
- ደረጃ 23: ፋይሎች
ቪዲዮ: IOT ከሴሉላር አውታረ መረብ ጋር በ ESP32: 23 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:32
ዛሬ ስለ GPRS ሞደም ፣ ወይም ይልቁንም ፣ ስለ ESP32 እና ከሴሉላር ስልክ አውታረመረብ ጋር ስለ አጠቃቀሙ እንነጋገራለን። ይህ በጣም በጥሩ ሁኔታ የሚሠራ ነገር ነው። የ MQTT ፕሮቶኮልን በመጠቀም ከዚያ ወደ Ubidots ዳሽቦርድ ውሂብ እንልካለን። በዚህ ስብሰባ ውስጥ ከሲም 800 ኤል እና ከተንቀሳቃሽ ስልክ ቺፕ በተጨማሪ ለወረዳው ግብረመልስ ማሳያ ይጠቀሙ። በዚህ ፕሮጀክት ፣ ስለዚህ ፣ በ GPRS እና MQTT በኩል የሙቀት እና የእርጥበት መረጃን እንልካለን ፣ እና ውሂቡን በመስመር ገበታ ውስጥ በዓይነ ሕሊናችን እንመለከተዋለን።
ደረጃ 1 - ሰልፍ
ደረጃ 2 - ስብሰባ
ደረጃ 3 - ስብሰባ - ሠንጠረዥ
ደረጃ 4: Ubidots
ደረጃ 5: SimpleDHT ቤተ -መጽሐፍት
በአርዱዲኖ አይዲኢ ውስጥ ወደ Sketch-> ቤተ-መጽሐፍት አካትት-> ቤተ-መጽሐፍቶችን ያቀናብሩ…
SimpleDHT ን ይጫኑ
ደረጃ 6 የ PubSubClient ቤተ -መጽሐፍት
በአርዱዲኖ አይዲኢ ውስጥ ወደ Sketch-> ቤተ-መጽሐፍት አካትት-> ቤተ-መጽሐፍቶችን ያቀናብሩ…
PubSubClient ን ይጫኑ
ደረጃ 7 - TinyGSM ቤተ -መጽሐፍት
በ Arduino IDE ውስጥ ወደ Sketch-> ቤተ-መጽሐፍትን አካትት-> ቤተ-መጽሐፍቶችን ያቀናብሩ…
TinyGSM ን ይጫኑ
ደረጃ 8 TFT_eSPI ቤተመጽሐፍት
በ Arduino IDE ውስጥ ወደ Sketch-> ቤተ-መጽሐፍትን አካትት-> ቤተ-መጽሐፍቶችን ያቀናብሩ…
TFT_eSPI ን ይጫኑ
ደረጃ 9 TFT_eSPI ቤተመፃህፍት
በ lib አቃፊ ውስጥ የማሳያ መሰኪያዎችን ይለውጡ።
መሰካት በ User_Setup.h ፋይል ውስጥ ነው
ሐ: / ተጠቃሚዎች / \ ሰነዶች / Arduino / ቤተ -መጻሕፍት / TFT_eSPI
እነዚህን ነባሪዎች በምስሉ ላይ ወደሚከተሉት እሴቶች ይለውጡ።
ደረጃ 10 - Ubidots
በመለያዎ ወደ Ubidots ይግቡ እና መሣሪያዎች ላይ ጠቅ ያድርጉ
በላይኛው ቀኝ ጥግ ላይ ያለውን “+” ቁልፍን ጠቅ ያድርጉ
ባዶ ጠቅ ያድርጉ
የመሣሪያውን ስም ያስገቡ። ይህ እኛ በ
በመሳሪያዎች ዝርዝር ውስጥ እርስዎ የፈጠሩት መሣሪያ ብቅ ይላል። በእሱ ላይ ጠቅ ያድርጉ።
በሚታየው ማያ ገጽ ላይ “ተለዋዋጭ አክል” ላይ ጠቅ ያድርጉ። ብቅ -ባይ ብቅ ይላል። “ጥሬ” ላይ ጠቅ ያድርጉ።
የጽሑፍ ሳጥኑን ጠቅ ያድርጉ እና የንብረቱን ስም ያስገቡ።
በ.ino ውስጥ ባለው ጆንሰን ውስጥ የምንልከው በትክክል መሆን አለበት። ለሌላው ንብረት ይህንን ይድገሙት።
የ Ubidots አርማ ላይ ጠቅ በማድረግ ወደ ዳሽቦርዱ ይመለሱ።
በዳሽቦርዱ ውስጥ “አዲስ መግብር አክል” ላይ ጠቅ ያድርጉ
በመግብሮች ዝርዝር ውስጥ “ድርብ ዘንግ” ን ይምረጡ
ደረጃ 11 በ.ino ውስጥ ያለውን ውሂብ መለወጥ
ደረጃ 12 GPRS_ESP32_DHT.ino - መግለጫዎች እና ተለዋዋጮች
#ጥራት TINY_GSM_MODEM_SIM800 // Tipo de modem que estamos usando #ያካትታሉ #ያካትቱ #ያካትቱ #ያካትቱ #ይካተቱ // Token de usuário que pegamos የለም Ubidots (esp32_gprs é o nome do dispositivo no Ubidots) #defiine TOPIC "/v1.6/devices/esp32_gprs" // id do dispositivo que pegamos no painel do Ubidots #define DEVICE_ID "5c01234567890abc12345678" // URL do MQTT አገልጋይ mqtt: //things.ubidots.com "// Porta padrão do MQTT #define MQTT_PORT 1883 // Pino onde está o DHT22 #define DHT_PIN 27
ደረጃ 13: መሰካት
// Pinagem em User_Setup.h እና pasta da bibliotecaTFT_eSPI ማሳያ = TFT_eSPI (); // Intervalo entre os envios e refresh da tela #define INTERVAL 10000 // Canal serial que vamos usar para comunicarmos com o ሞደም። የፍሳሽ ማስወገጃ 1 ሃርድዌርSial SerialGSM (1) ይጠቀሙ። TinyGsm modemGSM (SerialGSM); TinyGsmClient gsmClient (modemGSM); // Cliente MQTT ፣ passamos a url do server ፣ porta // e o client GSM PubSubClient client (MQTT_SERVER ፣ MQTT_PORT ፣ gsmClient) ፤ // Tempo em que o último envio/refresh foi feito uint32_t lastTime = 0; ተንሳፋፊ እርጥበት; // Variável onde iremos armazenar o valor da umidade ተንሳፋፊ ሙቀት; // Variável onde iremos armazenar o valor da temperatura SimpleDHT22 dht; // Objeto que realizará a leitura da Umidade e temperatura
ደረጃ 14: ማዋቀር
ባዶነት ማዋቀር () {Serial.begin (115200); setupDisplay (); // Inicializa e configura o ማሳያ setupGSM (); // Inicializa e configura o modem GSM connectMQTTServer (); // Conectamos ao mqtt server // Espera 2 segundos e limpamos o ማሳያ መዘግየት (2000); display.fillScreen (TFT_BLUE); display.setCursor (0, 0); }
ደረጃ 15: SetupDisplay
ባዶነት ማዋቀር ማሳያ () {display.init (); display.setRotation (1); display.fillScreen (TFT_BLUE); // ሊምፓ ወይም ማሳያ ከኮር አዙል ማሳያ ጋር። setTextColor (TFT_WHITE ፣ TFT_BLUE); // ኮሎካ ወይም ቴክቶ ኮሞ ብራናኮ ኮም ፈንዶ አዙል ማሳያ። display.setCursor (0, 0, 2); // Posicção x, y e fonte do texto display.println ("የማዋቀር ማሳያ ተጠናቋል"); }
ደረጃ 16: SetupGSM
ባዶነት ማዋቀር GSM () {display.println («GSM Setup…»); // Inicializamos አንድ ተከታታይ onde está o ሞደም SerialGSM.begin (9600 ፣ SERIAL_8N1 ፣ 4 ፣ 2 ፣ ሐሰት); መዘግየት (3000); // Mostra informação sobre o modem Serial.println (modemGSM.getModemInfo ()); // Inicializa o modem ከሆነ (! ModemGSM.restart ()) {display.println («GSM ሞደም ዳግም ማስጀመር አልተሳካም»); መዘግየት (10000); ESP.restart (); መመለስ; } // Espera pela rede ((modemGSM.waitForNetwork ()) {display.println («ከአውታረ መረብ ጋር መገናኘት አልተሳካም»); መዘግየት (10000); ESP.restart (); መመለስ; } // Conecta à rede gprs (APN ፣ usuário ፣ senha) ከሆነ (! ModemGSM.gprsConnect ("" ፣ "" ፣ "")) {display.println ("GPRS ግንኙነት አልተሳካም") ፤ መዘግየት (10000); ESP.restart (); መመለስ; } display.println («GSM Success Setup») ፤ }
ደረጃ 17 ConnectMQTTServer ን ያገናኙ
ባዶነት connectMQTTServer () {display.println ("ከ MQTT አገልጋይ ጋር በመገናኘት ላይ …"); // conecta ao device que definimos if (client.connect (DEVICE_ID ፣ TOKEN ፣ "")) {// ተመልከት conexão foi bem sucedida display.println ("ተገናኝቷል") ፤ } ሌላ {// Se ocorreu algum erro display.print ("error ="); display.println (client.state ()); መዘግየት (10000); ESP.restart (); }}
ደረጃ 18 - ሉፕ
ባዶነት loop () {// Faz a leitura da umidade e temperatura readDHT (); // (! Client.connected ()) {// Mandamos conectar connectMQTTServer (); } // Tempo decorrido desde o boot em milissegundos ያልተፈረመ ረጅም አሁን = ሚሊስ (); // ካለዎት (አሁን - lastTime> INTERVAL) {// Publicamos para o server mqtt publishMQTT (); // Mostramos os dados ምንም ማሳያ showDataOnDisplay (); // Atualizamos o tempo em que foi feito o último envio lastTime = አሁን; }}
ደረጃ 19 ፦ ReadDHT ን ያንብቡ
ባዶነት readDHT () {float t, h; // Faz a leitura da umidade e temperatura e apenas atualiza as variáveis se foi bem sucedido if (dht.read2 (DHT_PIN ፣ & t, & h, NULL) == SimpleDHTErrSuccess) {ሙቀት = t; እርጥበት = ሸ; }}
ደረጃ 20 ፦ PublishMQTT
ባዶ ህትመትMQTT () {// Cria o json que iremos enviar para o server MQTT String msg = createJsonString (); Serial.print ("መልዕክት አትም:"); Serial.println (msg); // Publicamos no tópico int status = client.publish (TOPIC ፣ msg.c_str ()); Serial.println ("ሁኔታ:" + ሕብረቁምፊ (ሁኔታ)); // ሁኔታ 1 se sucesso ou 0 se deu erro}
ደረጃ 21: CreateJsonString
ሕብረቁምፊ createJsonString () {ሕብረቁምፊ ውሂብ = "{"; ከሆነ (! ኢስናን (እርጥበት) &&! እስናን (የሙቀት መጠን)) {data+= "\" እርጥበት / ":"; ውሂብ+= ሕብረቁምፊ (እርጥበት ፣ 2); ውሂብ+= ","; ውሂብ+= "\" ሙቀት / ":"; ውሂብ+= ሕብረቁምፊ (ሙቀት ፣ 2); } ውሂብ+= "}"; ውሂብን መመለስ; }
ደረጃ 22 ShowDataOnDisplay
ባዶነት ማሳያDataOnDisplay () {// ዳግም ጠቋሚውን ጠቋሚውን እና እጅግ በጣም ጥሩውን የሙቀት መጠን ማሳያውን ያሳያል። setCursor (0 ፣ 0 ፣ 2) ፤ display.println ("እርጥበት:" + ሕብረቁምፊ (እርጥበት, 2)); display.println ("ሙቀት:" + ሕብረቁምፊ (ሙቀት, 2)); }
ደረጃ 23: ፋይሎች
ፋይሎቹን ያውርዱ
INO
ፒዲኤፍ
የሚመከር:
በገመድ አልባ አውታረ መረብ ላይ ያለ ማንኛውም ኮምፒተር በ LAN ላይ ይንቁ 3 ደረጃዎች
በ LAN ላይ ማንኛውም ኮምፒውተር በገመድ አልባ አውታረመረብ ላይ ያነቃቃል - በ Raspbpian ምስል ለውጦች ምክንያት ይህ መማሪያ ከአሁን በኋላ ወቅታዊ አይደለም። እባክዎን የዘመነውን መማሪያ እዚህ ይከተሉ https://www.instructables.com/id/Raspberry-Pi-As-Wake-on-LAN-ServerWOL በአሁኑ ጊዜ በሁሉም የኤተርኔት ወደቦች ላይ ይገኛል። ይህ አይደለም
አርዱዲኖዎን ከአይፒ አውታረ መረብ ጋር ለማገናኘት የራስዎን የ WIFI መተላለፊያ እንዴት ማድረግ እንደሚቻል -11 ደረጃዎች (ከስዕሎች ጋር)
አርዱዲኖዎን ከአይፒ አውታረ መረብ ጋር ለማገናኘት የራስዎን የ WIFI መተላለፊያ መንገድ እንዴት ማድረግ እንደሚቻል -እንደ ብዙ ሰዎች አርዱዲኖ የቤት አውቶሜሽንን እና ሮቦትን ለመሥራት በጣም ጥሩ መፍትሄ ነው ብለው ያስባሉ! ግን በግንኙነት ጊዜ አርዱኒኖዎች በተከታታይ አገናኞች ብቻ ይመጣሉ። እኔ በቋሚነት መገናኘት ያለበት ሮቦት ላይ እየሠራሁ ነው።
የመከታተያ አውታረ መረብ መስመር 7 ደረጃዎች
የኔትወርክ መስመርን መከታተል -ደህና ፣ ቤቴ ከ 7 ዓመታት በፊት ሲሠራ የተጫኑትን አንዳንድ የአውታረ መረብ መስመሮችን ለመከታተል አንድ መንገድ እፈልጋለሁ። እንደ አለመታደል ሆኖ በዚያን ጊዜ አልተሰየሙም። በንግድ ክፍል ላይ ብዙ ገንዘብ ማውጣት ይችላሉ ፣ ወይም በጥቂቱ እንዴት እና 5 ዶላ
የቤት አውታረ መረብ የሙቀት ዳሳሽ 7 ደረጃዎች
የቤት አውታረ መረብ የሙቀት ዳሳሽ - ይህንን ፕሮጀክት ለመሥራት ምን ማወቅ አለብዎት -ስለ አንዳንድ ማወቅ ያስፈልግዎታል - - አንዳንድ የኤሌክትሮኒክስ ችሎታዎች (መሸጫ) - ሊኑክስ - አርዱinoኖ አይዲኢ (በ IDE ውስጥ ተጨማሪ ሰሌዳዎችን ማዘመን ያስፈልግዎታል http: // arduino.esp8266.com/stable/package_esp8266 …) - updatin
LTE CAT -M1 GSM IoT ዳሳሾች አውታረ መረብ ቲ - 15 ደቂቃዎች። 5 ደረጃዎች
LTE CAT -M1 GSM IoT ዳሳሾች አውታረ መረብ … ቲ -15 ደቂቃዎች። በኤፕሪል 08 ቀን 2018 R & amp Software D Solutions srl [itbrainpower.net] የ xyz -mIoT ማስታወቂያ በ itbrainpower.net ጋሻ ለህዝብ ይፋ አደረገ - የ ARM0 ማይክሮ መቆጣጠሪያን ሁለገብነት የሚያጣምረው የመጀመሪያው ፣ እና በጣም የታመቀ ፣ IoT ቦርድ