Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-23 14:59
Šioje pamokoje mes išmatuosime skirtingus temperatūros ir drėgmės duomenis naudodami temperatūros ir drėgmės jutiklį. Taip pat sužinosite, kaip siųsti šiuos duomenis į „ThingSpeak“. Kad galėtumėte ją analizuoti iš bet kurios vietos skirtingoms programoms
1 veiksmas: reikalinga aparatinė ir programinė įranga
Techninė įranga:
- ESP-32: ESP32 palengvina „Arduino IDE“ir „Arduino Wire Language“naudojimą daiktų interneto programoms. Šis „ESp32 IoT“modulis sujungia „Wi-Fi“, „Bluetooth“ir „Bluetooth BLE“įvairioms programoms. Šis modulis yra visiškai aprūpintas 2 procesoriaus branduoliais, kuriuos galima valdyti ir maitinti atskirai, ir reguliuojamu laikrodžio dažniu nuo 80 MHz iki 240 MHz. Šis „ESP32 IoT WiFi BLE“modulis su integruotu USB yra pritaikytas visiems „ncd.io IoT“produktams. Stebėkite jutiklius ir valdymo reles, FET, PWM valdiklius, solenoidus, vožtuvus, variklius ir daug daugiau iš bet kurios pasaulio vietos naudodami tinklalapį ar tam skirtą serverį. Mes sukūrėme savo ESP32 versiją, kad tilptų į NCD IoT įrenginius, siūlant daugiau išplėtimo galimybių nei bet kuris kitas įrenginys pasaulyje! Integruotas USB prievadas leidžia lengvai programuoti ESP32. „ESP32 IoT WiFi BLE“modulis yra neįtikėtina platforma, skirta interneto programų kūrimui. Šį „ESP32 IoT WiFi BLE“modulį galima užprogramuoti naudojant „Arduino IDE“.
- „IoT“belaidis belaidis temperatūros ir drėgmės jutiklis: pramoninis didelio nuotolio belaidis temperatūros drėgmės jutiklis. Įvertinimas, kurio jutiklio skiriamoji geba yra ± 1,7%RH ± 0,5 ° C. Iki 500 000 transmisijų iš 2 AA baterijų. Matuoja nuo -40 ° C iki 125 ° C su baterijomis, kurios išgyvena šiuos įvertinimus. Aukštesnis 2 mylių LOS diapazonas ir 28 mylios su didelio stiprumo antenomis. Sąsaja su „Raspberry Pi“, „Microsoft Azure“, „Arduino“ir kt.
- Didelio nuotolio belaidis tinklo modemas su USB sąsaja
Naudota programinė įranga
- „Arduino IDE“
- „ThingSpeak“
Naudota biblioteka
- PubSubClient biblioteka
- Viela.h
„Arduino“klientas MQTT
Ši biblioteka suteikia klientą paprastam pranešimų/prenumeratos pranešimų siuntimui serveryje, palaikančiame MQTT
Norėdami gauti daugiau informacijos apie MQTT, apsilankykite mqtt.org.
parsisiųsti
Naujausią bibliotekos versiją galima atsisiųsti iš „GitHub“
Dokumentacija
Bibliotekoje pateikiami keli eskizų pavyzdžiai. „Arduino“programoje žr. Failas> Pavyzdžiai> PubSubClient. Visa API dokumentacija.
Suderinama aparatinė įranga
Biblioteka naudoja „Arduino Ethernet“kliento API sąveikai su pagrindine tinklo įranga. Tai reiškia, kad jis tiesiog veikia su vis daugiau plokščių ir skydų, įskaitant:
- „Arduino Ethernet“
- „Arduino Ethernet“skydas
- „Arduino YUN“- vietoj „EthernetClient“naudokite įtrauktą „YunClient“ir būtinai atlikite „Bridge.begin“)
- „Arduino WiFi Shield“- jei norite su šiuo skydu siųsti paketus, didesnius nei 90 baitų, įjunkite „PubSubClient.h“parinktį MQTT_MAX_TRANSFER_SIZE.
- „SparkFun WiFly Shield“- kai naudojama su šia biblioteka
- „Intel Galileo“/„Edison“
- ESP8266
- Biblioteka šiuo metu negali būti naudojama su aparatūra, pagrįsta ENC28J60 lustu, pvz., „Nanode“arba „Nuelectronics Ethernet Shield“. Tiems yra alternatyvi biblioteka.
Vielos biblioteka
„Wire“biblioteka leidžia bendrauti su „I2C“įrenginiais, dažnai dar vadinamais „2 laidais“arba „TWI“(dviejų laidų sąsaja), galite atsisiųsti iš „Wire.h“
Pagrindinis naudojimas
- Wire.begin () Pradėkite naudoti „Wire“pagrindiniame režime, kur inicijuosite ir valdysite duomenų perdavimą. Tai yra dažniausiai naudojamas sąveikaujant su dauguma I2C periferinių lustų.
- Wire.begin (adresas) Pradėkite naudoti „Wire“vergo režimu, kur atsakysite „adresu“, kai kiti I2C valdytojų lustai pradės ryšį. Perduoda
- Wire.beginTransmission (adresas) Pradėkite naują perdavimą į įrenginį „adresu“. Naudojamas pagrindinis režimas.
- Wire.write (duomenys) Siųsti duomenis. Pagrindiniame režime pirmiausia reikia iškviesti „startTransmission“.
- Wire.endTransmission () Pagrindiniu režimu perdavimas baigiamas ir visi buferiniai duomenys siunčiami.
Priėmimas
- Wire.requestFrom (adresas, skaičius) Skaitykite „count“baitus iš įrenginio adresu „address“. Naudojamas pagrindinis režimas.
- Wire.available () Grąžina baitų skaičių, pasiekiamą skambinant gauti.
- Wire.read () Gaukite 1 baitą.
2 veiksmas: įkelkite kodą į ESP32 naudodami „Arduino IDE“
- Prieš įkeliant kodą, galite peržiūrėti šio jutiklio veikimą naudodami nurodytą nuorodą.
- Atsisiųskite ir įtraukite „PubSubClient“biblioteką ir „Wire.h“biblioteką.
- Turite priskirti turimą tinklo API raktą, SSID („WiFi“pavadinimą) ir slaptažodį.
- Sudarykite ir įkelkite „Temp-ThinSpeak.ino“kodą.
- Norėdami patikrinti įrenginio ryšį ir siunčiamus duomenis, atidarykite nuoseklųjį monitorių. Jei atsakymo nematote, pabandykite atjungti ESP32 ir vėl prijungti. Įsitikinkite, kad serijinio monitoriaus duomenų perdavimo sparta yra tokia pati, kaip nurodyta jūsų kode 115200.
3 žingsnis: serijinio monitoriaus išvestis
4 žingsnis: „ThingSpeak“darbas
- Sukurkite paskyrą „ThnigSpeak“.
- Sukurkite naują kanalą, spustelėdami Kanalai.
- Spustelėkite Mano kanalai.
- Spustelėkite Naujas kanalas.
- Naujo kanalo viduje pavadinkite kanalą.
- Pavadinkite lauką kanalo viduje, laukas yra kintamasis, kuriame skelbiami duomenys.
- Dabar išsaugokite kanalą.
- Dabar API raktus galite rasti prietaisų skydelyje. Eikite į pagrindinio puslapio bakstelėjimą ir raskite savo „Write Api Key“, kurį reikia atnaujinti prieš įkeliant kodą į ESP32.
- Sukūrę kanalą, galėsite peržiūrėti savo temperatūrą ir drėgmės duomenis privačiame rodinyje naudodami kanalo viduje sukurtus laukus.
- Norėdami sudaryti grafiką tarp temperatūros ir drėgmės duomenų, galite naudoti MATLAB vizualizaciją.
- Norėdami tai padaryti, eikite į programą, spustelėkite MATLAB vizualizacija.
- Viduje jis pasirenka pasirinktinį, čia kaip pavyzdį pasirinkome grafiko temperatūrą ir vėjo greitį dviejose skirtingose ašyse 8. Dabar spustelėkite sukurti.
- Kuriant vizualizaciją MATLAB kodas bus automatiškai sugeneruotas, tačiau turėsite redaguoti lauko ID, perskaityti kanalo ID, galite patikrinti šį paveikslėlį.
- Tada išsaugokite ir paleiskite kodą.
- Pamatytumėte siužetą.
Rekomenduojamas:
„Bluetooth“valdomas „Messenger“skystųjų kristalų ekranas -- 16x2 skystųjų kristalų ekranas -- Hc05 -- Paprasta -- Belaidžio ryšio skelbimų lenta: 8 žingsniai
„Bluetooth“valdomas „Messenger“skystųjų kristalų ekranas || 16x2 skystųjų kristalų ekranas || Hc05 || Paprasta || Belaidžio ryšio skelbimų lenta: …………………………. Prenumeruokite mano „YouTube“kanalą, kad gautumėte daugiau vaizdo įrašų …… ………………………………… Skelbimų lenta naudojama žmonėms atnaujinti nauja informacija arba jei norite išsiųsti pranešimą kambaryje arba po
Šiltnamio automatizavimas naudojant „LoRa“! (1 dalis) -- Jutikliai (temperatūra, drėgmė, dirvožemio drėgmė): 5 žingsniai
Šiltnamio automatizavimas naudojant „LoRa“! (1 dalis) || Jutikliai (temperatūra, drėgmė, dirvožemio drėgmė): Šiame projekte aš jums parodysiu, kaip automatizavau šiltnamį. Tai reiškia, kad aš jums parodysiu, kaip aš pastatiau šiltnamį ir kaip prijungiau maitinimo ir automatikos elektroniką. Taip pat parodysiu, kaip užprogramuoti „Arduino“lentą, kurioje naudojama L
„Ikea Grono“belaidžio ryšio valdoma lempa: 7 žingsniai (su nuotraukomis)
„Ikea Grono“belaidžiu būdu valdoma lempa: šioje instrukcijoje parodysiu, kaip standartinę „Ikea Grono“lempą paversti „Wifi“valdoma LED lempa! Lempa turi daugiau nei 10 skirtingų šviesos rodymo režimų, įskaitant garso reaktyvųjį režimą
Kaip teisingai išmatuoti belaidžio ryšio modulių energijos suvartojimą mažos energijos suvartojimo laikais?: 6 žingsniai
Kaip teisingai išmatuoti belaidžio ryšio modulių energijos suvartojimą mažo energijos suvartojimo eroje?: Mažas energijos suvartojimas yra labai svarbi daiktų interneto sąvoka. Dauguma daiktų interneto mazgų turi būti maitinami baterijomis. Tik teisingai išmatuodami belaidžio modulio energijos suvartojimą galime tiksliai įvertinti, kiek akumuliatoriaus
Naudokite palydovinę anteną, kad pagerintumėte 3G belaidžio plačiajuosčio ryšio signalą: 4 žingsniai
Naudokite palydovinę anteną, kad pagerintumėte savo 3G belaidžio plačiajuosčio ryšio signalą: Ieškodamas greitesnės telefono ryšio alternatyvos (tai yra viskas, ką galite gauti, kur aš gyvenu Vakarų NY), radau belaidžio ryšio tiekėją, tiekiantį 3G belaidį modemą. nurodė 1,5 Mbps atsisiuntimo greitį. Dabar pagalvojau, kad tai puiku