Мазмұны:
- 1 -қадам: демонстрация
- 2 -қадам: құрастыру
- 3 -қадам: Ассамблея - Кесте
- 4 -қадам: Убидоттар
- 5 -қадам: SimpleDHT кітапханасы
- 6 -қадам: PubSubClient кітапханасы
- 7 -қадам: TinyGSM кітапханасы
- 8 -қадам: TFT_eSPI кітапханасы
- 9 -қадам: TFT_eSPI кітапханасы
- 10 -қадам: Убидоттар
- 11 -қадам:.ino ішіндегі деректерді өзгерту
- 12 -қадам: GPRS_ESP32_DHT.ino - Декларациялар мен айнымалылар
- 13 -қадам: түйреу
- 14 -қадам: Орнату
- 15 -қадам: SetupDisplay
- 16 -қадам: GSM орнату
- 17 -қадам: ConnectMQTTServer
- 18 -қадам: ілмек
- 19 -қадам: ReadDHT
- 20 -қадам: MQTT жариялау
- 21 -қадам: CreateJsonString
- 22 -қадам: ShowDataOnDisplay
- 23 -қадам: файлдар
Бейне: ESP32 ұялы желісі бар IOT: 23 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Бүгін біз GPRS модемі, дәлірек айтқанда, ESP32 және оны ұялы телефон желісінде қолдану туралы талқылайтын боламыз. Бұл өте жақсы жұмыс істейтін нәрсе. MQTT протоколының көмегімен біз Ubidots бақылау тақтасына деректерді жібереміз. Бұл жинақта SIM800L мен ұялы телефон чипінен басқа тізбектің кері байланысы үшін дисплейді қолданыңыз. Осы жобаның көмегімен біз температура мен ылғалдылық туралы ақпаратты GPRS және MQTT арқылы жібереміз және деректерді сызықтық диаграммада елестетеміз.
1 -қадам: демонстрация
2 -қадам: құрастыру
3 -қадам: Ассамблея - Кесте
4 -қадам: Убидоттар
5 -қадам: SimpleDHT кітапханасы
Arduino IDE-де Sketch-> Кітапхананы қосу-> Кітапханаларды басқару бөліміне өтіңіз.
SimpleDHT орнатыңыз
6 -қадам: PubSubClient кітапханасы
Arduino IDE-де Sketch-> Кітапхананы қосу-> Кітапханаларды басқару бөліміне өтіңіз.
PubSubClient орнатыңыз
7 -қадам: TinyGSM кітапханасы
Arduino IDE-де Sketch-> Кітапхананы қосу-> Кітапханаларды басқару бөліміне өтіңіз.
TinyGSM орнатыңыз
8 -қадам: TFT_eSPI кітапханасы
Arduino IDE-де Sketch-> Кітапхананы қосу-> Кітапханаларды басқару бөліміне өтіңіз.
TFT_eSPI орнатыңыз
9 -қадам: TFT_eSPI кітапханасы
Lib қалтасындағы көрсету түйреуіштерін өзгертіңіз.
Бекіту User_Setup.h файлында
C: / Users / \ Documents / Arduino / library / TFT_eSPI
Бұл әдепкі мәндерді суреттегі келесі мәндерге өзгертіңіз.
10 -қадам: Убидоттар
Ubidots -қа тіркелгіңізбен кіріп, «Құрылғылар» түймесін басыңыз
Жоғарғы оң жақ бұрыштағы «+» түймесін басыңыз
Бос түймесін басыңыз
Құрылғы атауын енгізіңіз. «Құрылғы белгісіне» назар аударыңыз, себебі ол.ino -да қолданылатын «тақырыпта» қолданылады
Құрылғылар тізімінде сіз жасаған құрылғы пайда болады. Оны басыңыз.
Пайда болған экранда «Айнымалы қосу» түймесін басыңыз. Қалқымалы терезе пайда болады. «Шикі» түймесін басыңыз.
Мәтін жолағын нұқыңыз және жылжымайтын мүлік атауын енгізіңіз.
Бұл.ino json -да жіберетініміз дәл болуы керек. Мұны басқа мүлік үшін қайталаңыз.
Ubidots логотипін басу арқылы бақылау тақтасына оралыңыз.
Бақылау тақтасында «Жаңа виджет қосу» түймесін басыңыз.
Виджеттер тізімінде «Қос осьті» таңдаңыз.
11 -қадам:.ino ішіндегі деректерді өзгерту
12 -қадам: GPRS_ESP32_DHT.ino - Декларациялар мен айнымалылар
#TINY_GSM_MODEM_SIM800 анықтаңыз // модемді енгізіңіз #қосу #қосу #қосу #қосу #қосу // Токенді пайдалану Ubidots жоқ #TOKEN «BBFF-abcdefghijklmnzztpdjpgtpgtjpgjjjjjjh» (esp32_gprs é o nome do dispositivo no Ubidots) #ТАҚЫРЫПТЫ анықтаңыз «/v1.6/devices/esp32_gprs» // id u dispotivo que no pegamos no pain do Ubidots #DEVINE DEVICE_ID «5c01234567890abc12345QVT» //TT #T mqtt: //things.ubidots.com «// MQTT порталы #MQTT_PORT 1883 анықтаңыз // DHT22 анықтаңыз #DHT_PIN 27 анықтаңыз
13 -қадам: түйреу
// User_Setup.h және bibliotecaTFT_eSPI display = TFT_eSPI () плагиндерінің бірі; // Intervalo entre os envios e refresh da tela #define INTERVAL 10000 // Каналдың модемдік байланысы бар. Semper 1 HardwareSerial SerialGSM (1) қолданыңыз; TinyGsm модемі GSM (SerialGSM); TinyGsmClient gsmClient (модемGSM); // MQTT клиенті, url do сервері, порталы // GSM PubSubClient клиенті (MQTT_SERVER, MQTT_PORT, gsmClient); // Уақыт өте келе/жаңарту foit feito uint32_t lastTime = 0; қалқыма ылғалдылығы; // өзгермелі температура өзгермелі; // Қарапайым нұсқаулықтар: SimpleDHT22 dht; // Қандай да бір температура мен температура
14 -қадам: Орнату
void setup () {Serial.begin (115200); setupDisplay (); // GSM () дисплейінің конфигурациясы мен конфигурациясы; // GSM connectMQTTServer модемінің конфигурациясы (); // Conectamos ao mqtt server // Ескерту 2 дисплей немесе дисплейдің кешігуі (2000); display.fillScreen (TFT_BLUE); display.setCursor (0, 0); }
15 -қадам: SetupDisplay
void setupDisplay () {display.init (); display.setRotation (1); display.fillScreen (TFT_BLUE); // Limpa дисплейі немесе дисплейі.setTextColor (TFT_WHITE, TFT_BLUE); // Coloca o texto como branco com fundo azul display.setTextWrap (true, true); // Ativa quebra de linha display.setTextSize (1); display.setCursor (0, 0, 2); // Posicção x, y e fonte do texto display.println («Орнату дисплейі аяқталды»); }
16 -қадам: GSM орнату
void setupGSM () {display.println («GSM орнату …»); // SerialGSM.begin модемінің сериялық нұсқасы (9600, SERIAL_8N1, 4, 2, жалған); кешіктіру (3000); // Serial.println (modemGSM.getModemInfo ()) модемінің ақпараты; // Егер модемді іске қосыңыз (! ModemGSM.restart ()) {display.println («GSM модемін қайта қосу сәтсіз аяқталды»); кешіктіру (10000); ESP.restart (); қайтару; } // Ескертулерді қайтару if (! ModemGSM.waitForNetwork ()) {display.println («Желіге қосылу сәтсіз болды»); кешіктіру (10000); ESP.restart (); қайтару; } // Conecta à rede gprs (APN, usuário, senha) if (! ModemGSM.gprsConnect («», «», «»)) {display.println («GPRS қосылымы сәтсіз болды»); кешіктіру (10000); ESP.restart (); қайтару; } display.println («GSM табысын орнату»); }
17 -қадам: ConnectMQTTServer
void connectMQTTServer () {display.println («MQTT серверіне қосылуда …»); // Егер құрылғы анықталса, онда (client.connect (DEVICE_ID, TOKEN, «»)) {// Display.println («Қосылған») байланысы бар; } else {// display.print («қате =») бағдарламасына сілтеме жасаңыз; display.println (client.state ()); кешіктіру (10000); ESP.restart (); }}
18 -қадам: ілмек
void loop () {// Мәтінді оқуға рұқсат ету үшін оқуға рұқсат етіңіз (); // MQTT серверін жасаңыз, егер (! Client.connected ()) {// Mandamos conectar connectMQTTServer (); } // Уақыт өте келе жүктелмеген уақытша милиционерлер = millis (); // Егер сіз (қазір - lastTime> INTERVAL) ену уақытын белгілесеңіз {// PublicMos server mqtt publishMQTT (); // Mostramos os dados showDataOnDisplay () көрсетілмейді; // Atualizamos o tempo em que fei feito or a lúlto envio lastTime = now; }}
19 -қадам: ReadDHT
void readDHT () {float t, h; // Егер сіз (dht.read2 (DHT_PIN, & t, & h, NULL) == SimpleDHTErrSuccess) {температура = t; ылғалдылық = сағ; }}
20 -қадам: MQTT жариялау
жарамсыз жариялау MQTT () {// MQTT String сервері үшін ең маңызды мәселе msg = createJsonString (); Serial.print («Хабарды жариялау:»); Serial.println (msg); // Public status to tópico int status = client.publish (TOPIC, msg.c_str ()); Serial.println («Мәртебе:» + Жол (күй)); // 1 -ші мәртебе 0 -ге дейін}
21 -қадам: CreateJsonString
CreateJsonString () {String data = «{» жолы; if (! isnan (ылғалдылық) &&! isnan (температура)) {деректер+= «\» ылғалдылық / «:»; деректер+= Жол (ылғалдылық, 2); деректер+= «,»; деректер+= «\» температурасы / «:»; деректер+= Жол (температура, 2); } деректер+= «}»; деректерді қайтару; }
22 -қадам: ShowDataOnDisplay
жарамсыз showDataOnDisplay () {// Display.setCursor (0, 0, 2) курсорды қалпына келтіріңіз. display.println («Ылғалдылық:» + Жол (ылғалдылық, 2)); display.println («Температура:» + Жол (температура, 2)); }
23 -қадам: файлдар
Файлдарды жүктеңіз
МЕН ЖОҚ
Ұсынылған:
LTE CAT -M1 GSM IoT сенсорлар желісі T - 15 минут .: 5 қадам
LTE CAT -M1 GSM IoT сенсорлар желісі … T -15 минут.: 2018 жылдың 08 сәуірінде R & D Software Solutions srl [itbrainpower.net] көпшілікке itbrainpower.net қалқаны арқылы xyz -mIoT туралы хабарландыруды ашты - бірінші және ең жинақы IoT тақтасы, ол ARM0 микроконтроллының әмбебаптығын біріктіреді
Температура сенсорларының желісі: 6 қадам
Температура сенсорларының желісі: Температура мен ылғалдылық сіздің зертханада, ас үйде, өндіріс желісінде, кеңседе, өлтіруші роботтарда және тіпті сіздің үйдегі маңызды деректер болып табылады. Егер сізге бірнеше орындарды немесе бөлмелерді немесе кеңістікті бақылау қажет болса, сізге сенімді, ықшам, дәл және түсінікті нәрсе қажет
Ұялы/ұялы телефонды сыртқы батареямен немесе қуат көзімен қуаттандыру: 3 қадам
Ұялы телефонды/ұялы телефонды сыртқы батареямен немесе токпен қуаттандыру: кіріспе. Бұл идея телефонмен немесе планшетте ғана жұмыс істейді, егер батарея алынбалы болса. Полярлықты сақтау маңызды, әрине. Құрылғыңызды абайсызда зақымдамау үшін абай болыңыз. Егер сіз мұны жасай алатындығыңызға сенімді болмасаңыз
Сымды үй көмекшісінің желісі үшін Arduino: 5 қадам
Сымды үй көмекшісінің желісі үшін Arduino: Әр түрлі Sonoff, Tasmota және ESP8266 сияқты Wifi компоненттерін конфигурациялау және пайдалану өте оңай, бірақ көбінесе олар көрінгендей оңай болмайды. Сымсыз компоненттер аз сенімді
Жарық пен қауіпсіздікті бақылауға арналған сенсорлық станциялар желісі: 5 қадам (суреттермен)
Жарықтандыру мен қауіпсіздікті басқаруға арналған сенсорлық станциялар желісі: Бұл сенсорлық станциялар желісінің көмегімен негізгі/қосалқы режимде конфигурацияланған, сіз өз үйіңізде жарықтандыру мен қауіпсіздікті басқара аласыз. Бұл сенсорлық станциялар (осы жобадағы Node01, Node02) сізге қосылған негізгі станцияға (Node00) қосылған