Мазмұны:

ESP32 ұялы желісі бар IOT: 23 қадам
ESP32 ұялы желісі бар IOT: 23 қадам

Бейне: ESP32 ұялы желісі бар IOT: 23 қадам

Бейне: ESP32 ұялы желісі бар IOT: 23 қадам
Бейне: ESP32 Tutorial 4 - Data types Define Variable Int, bool, char, Serial Monitor-ESP32 IoT Learnig kit 2024, Қараша
Anonim
Image
Image
Демонстрация
Демонстрация

Бүгін біз GPRS модемі, дәлірек айтқанда, ESP32 және оны ұялы телефон желісінде қолдану туралы талқылайтын боламыз. Бұл өте жақсы жұмыс істейтін нәрсе. MQTT протоколының көмегімен біз Ubidots бақылау тақтасына деректерді жібереміз. Бұл жинақта SIM800L мен ұялы телефон чипінен басқа тізбектің кері байланысы үшін дисплейді қолданыңыз. Осы жобаның көмегімен біз температура мен ылғалдылық туралы ақпаратты GPRS және MQTT арқылы жібереміз және деректерді сызықтық диаграммада елестетеміз.

1 -қадам: демонстрация

2 -қадам: құрастыру

Ассамблея
Ассамблея

3 -қадам: Ассамблея - Кесте

Құрастыру - кесте
Құрастыру - кесте

4 -қадам: Убидоттар

Убидоттар
Убидоттар

5 -қадам: SimpleDHT кітапханасы

SimpleDHT кітапханасы
SimpleDHT кітапханасы

Arduino IDE-де Sketch-> Кітапхананы қосу-> Кітапханаларды басқару бөліміне өтіңіз.

SimpleDHT орнатыңыз

6 -қадам: PubSubClient кітапханасы

PubSubClient кітапханасы
PubSubClient кітапханасы

Arduino IDE-де Sketch-> Кітапхананы қосу-> Кітапханаларды басқару бөліміне өтіңіз.

PubSubClient орнатыңыз

7 -қадам: TinyGSM кітапханасы

TinyGSM кітапханасы
TinyGSM кітапханасы

Arduino IDE-де Sketch-> Кітапхананы қосу-> Кітапханаларды басқару бөліміне өтіңіз.

TinyGSM орнатыңыз

8 -қадам: TFT_eSPI кітапханасы

TFT_eSPI кітапханасы
TFT_eSPI кітапханасы

Arduino IDE-де Sketch-> Кітапхананы қосу-> Кітапханаларды басқару бөліміне өтіңіз.

TFT_eSPI орнатыңыз

9 -қадам: TFT_eSPI кітапханасы

TFT_eSPI кітапханасы
TFT_eSPI кітапханасы

Lib қалтасындағы көрсету түйреуіштерін өзгертіңіз.

Бекіту User_Setup.h файлында

C: / Users / \ Documents / Arduino / library / TFT_eSPI

Бұл әдепкі мәндерді суреттегі келесі мәндерге өзгертіңіз.

10 -қадам: Убидоттар

Убидоттар
Убидоттар
Убидоттар
Убидоттар
Убидоттар
Убидоттар

Ubidots -қа тіркелгіңізбен кіріп, «Құрылғылар» түймесін басыңыз

Жоғарғы оң жақ бұрыштағы «+» түймесін басыңыз

Бос түймесін басыңыз

Құрылғы атауын енгізіңіз. «Құрылғы белгісіне» назар аударыңыз, себебі ол.ino -да қолданылатын «тақырыпта» қолданылады

Құрылғылар тізімінде сіз жасаған құрылғы пайда болады. Оны басыңыз.

Пайда болған экранда «Айнымалы қосу» түймесін басыңыз. Қалқымалы терезе пайда болады. «Шикі» түймесін басыңыз.

Мәтін жолағын нұқыңыз және жылжымайтын мүлік атауын енгізіңіз.

Бұл.ino json -да жіберетініміз дәл болуы керек. Мұны басқа мүлік үшін қайталаңыз.

Ubidots логотипін басу арқылы бақылау тақтасына оралыңыз.

Бақылау тақтасында «Жаңа виджет қосу» түймесін басыңыз.

Виджеттер тізімінде «Қос осьті» таңдаңыз.

11 -қадам:.ino ішіндегі деректерді өзгерту

. Ino ішіндегі деректерді өзгерту
. Ino ішіндегі деректерді өзгерту
. Ino ішіндегі деректерді өзгерту
. Ino ішіндегі деректерді өзгерту

12 -қадам: GPRS_ESP32_DHT.ino - Декларациялар мен айнымалылар

GPRS_ESP32_DHT.ino - Декларациялар мен айнымалылар
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
CreateJsonString

CreateJsonString () {String data = «{» жолы; if (! isnan (ылғалдылық) &&! isnan (температура)) {деректер+= «\» ылғалдылық / «:»; деректер+= Жол (ылғалдылық, 2); деректер+= «,»; деректер+= «\» температурасы / «:»; деректер+= Жол (температура, 2); } деректер+= «}»; деректерді қайтару; }

22 -қадам: ShowDataOnDisplay

жарамсыз showDataOnDisplay () {// Display.setCursor (0, 0, 2) курсорды қалпына келтіріңіз. display.println («Ылғалдылық:» + Жол (ылғалдылық, 2)); display.println («Температура:» + Жол (температура, 2)); }

23 -қадам: файлдар

Файлдарды жүктеңіз

МЕН ЖОҚ

PDF

Ұсынылған: