Satura rādītājs:
- 1. darbība: M5Stack
- 2. darbība: M5Stack iespējamās lietojumprogrammas
- 3. darbība: M5Stack - tapas
- 4. solis: DHT bibliotēka
- 5. darbība: pārvaldiet Arduino IDE bibliotēku
- 6. darbība: avota kods
- 7. darbība: M5StackDHTGraph.ino
- 8. solis: M5StackDHTGraph.ino - iestatīšana
- 9. solis: M5StackDHTGraph.ino - cilpa
- 10. darbība: faili
Video: ESP32: M5 Kaudze ar DHT22: 10 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Parunāsim šodien par ļoti īpašu ESP32, kas ideāli piemērots lietu internetam, kas ir M5Stack. Tas satur ESP32 iekšpusē un pat papildina displeju, tastatūru, pastiprinātāju, skaļruni un akumulatoru. Tādējādi šī ierīce var darīt neskaitāmas lietas. Kad es saņēmu šo aparatūru, man jau bija programmatūra ESP32, un tā tika pārnesta tikai uz šajā projektā izmantoto displeju, kas ir atšķirīgs. Tomēr avota kods, ko izmantosim, ir tas pats, kas tika izmantots mūsu video TEMPERATŪRA UN MITRUMS AR OLED DISPLAY.
Šodienas ķēdē es īpaši vēlos uzsvērt, ka mums ir M5Stack ar pozitīviem un negatīviem savienojumiem, kas barojas ar DHT22 sensoru. Abus savieno GPIO. Dati tiek parādīti diagrammā.
Šajā rakstā iepazīstināsim ar M5Stack un apspriedīsim tā pielietojumu. Man jāuzsver, ka šai ierīcei ir ieeja mikro SD kartei, 1 W skaļrunis un akumulatora ligzda, kā arī mijiedarbības pogas, i2c savienotājs, C tipa USB, atklāti IO, divu collu TFT displejs, starp citām funkcijām. Tas ir parādīts attēlā iepriekš. Mēs varam teikt, ka šī ierīce ir gatava IoT, jo tai jau ir Bluetooth un ESP32 WiFi. Tas ietver arī magnētu, lai to piestiprinātu pie metāla virsmām.
Vai jums patika M5Stack? Noklikšķiniet:
1. darbība: M5Stack
Viens no M5Stack jauninājumiem ir tāds, ka, noņemot aizmuguri, jūs varat ievietot dažādus moduļus ar dažādām funkcijām, piemēram, GPS moduli, GSM, LoRa. Tas ir parādīts attēlā.
Tālāk ir vairāk moduļu piemēru, sākot no RS485, līdzstrāvas motora, veidotāja, kodola un beidzot ar pakāpju motora vadību.
Tas patiesībā ir ļoti ātrs veids, kā salikt prototipu. Vecajās dienās bija jāiegādājas vairākas tranzistoru mikroshēmas un jāveic neskaitāmas montāžas, kas prasīja daudz laika un ieguldījumu. Tikai pēc tam nāca produkta prototips. Toreiz parādījās Arduino un Raspberry, kas ir šķīvji.
Tagad mums beidzot ir M5Stack, kas ir šī lietošanai gatava slēgtā kaste. Tas atbrīvo mūs no nepieciešamības veikt citas neskaitāmas darbības.
Citi M5Stack modeļi ir parādīti attēlos. Mums ir ierīce ar burtciparu, ciparu un spēļu tastatūru. Tie ļauj strādāt tā, it kā tas būtu sava veida dators. Mums ir arī programmatūras darbības piemērs, ko papildus Basic var ieprogrammēt MicroPython, Arduino, ESP-IDF, NodeJS.
2. darbība: M5Stack iespējamās lietojumprogrammas
Starp M5Stack lietojumprogrammu piemēriem mums ir osciloskops, kā redzams attēlā. Mums ir arī sava veida kalkulators / griezējinstrumentu tabula.
Kā ar velosipēda spidometru?
Tas var būt arī attāls urbis, kas tiek drukāts 3D formātā un tiek kontrolēts attālināti ar vadības pulti.
Tas viss liecina, ka elektronikas vadība mūsdienās ir daudz pieejamāka, tāpat kā šo shēmu programmēšana ir kļuvusi vieglāka.
3. darbība: M5Stack - tapas
M5Stack aizmugure ir šajā attēlā, kas parāda, ka jauda ir 5 volti. Tālāk attēls atklāj, ka mums ir viss, kas pastāv ESP32, ar savienojamību.
4. solis: DHT bibliotēka
Izmantojiet SimpleDHT lib, kas ir tas pats, ko es izmantoju videoklipā: TEMPERATURE AND HIDIDITY WITH OLED DISPLAY.
5. darbība: pārvaldiet Arduino IDE bibliotēku
Sadaļā "Izvēlne: Skice -> Pievienot bibliotēku -> Pārvaldīt bibliotēkas" instalēsim divas bibliotēkas, kas parādītas zemāk esošajā attēlā. Atcerieties, ka pirms visa tā ir jāinstalē ESP32 Arduino kodols. Šis video parāda, kā to izdarīt it: KĀ UZSTĀDĪT ARDUINO IDE ESP32.
6. darbība: avota kods
Avota kods, kā jau minēts, ir tas pats, ko izmantoju videoklipā: TEMPERATŪRAS GRAFIKA AR OLED DISPLAY. Vienīgās izmaiņas, ko veicu šajā projektā, bija displeja izmērs.
7. darbība: M5StackDHTGraph.ino
Mēs iekļausim bibliotēkas M5Stack.h un SimpleDHT.h, un mēs definēsim displejā izmantotās krāsas, kā arī DHT datu tapu. Mēs arī izveidosim objektu saziņai ar sensoru, definēsim par rādījumiem atbildīgo mainīgo un norādīsim X ass vērtību.
// Libs do M5Stack e DHT #include #include // definição das cores que serão utilizadas #define BLACK 0x0000 #define RED 0xF800 #define CYAN 0x07FF #define YELLOW 0xFFE0 #define WHITE 0xFFFFf #define // construtor do objeto para comunicar com o sensor SimpleDHT22 dht; // variável responseavel por contar o número de leituras realizadas e indicador do valor no eixo X int leituraAtual = 1;
Mēs turpinām ar X un Y ass pozicionēšanas definīcijām, temperatūras un mitruma datu attēlošanas koordinātām, kā arī mainīgajiem, kas saglabās nolasītās vērtības. Mēs joprojām norādām uz mainīgo diagrammas drukāšanai displejā.
// definições do posicionamento dos eixos X e Y #define POS_X_GRAFICO 30 #define POS_Y_GRAFICO 3 #define ALTURA_GRAFICO 180 #define COMPRIMENTO_GRAFICO 270 // definição da koordinaada onde que armazenarão os valores lidos da umidade e temperatura int umidade = 0; int temperatura = 0; // variável que armazenará o valor da coordenada Y para desenharmos uma linha de examplelo // que varia os valores de 1 em 1 int linhaExemplo = 20; int fator = 1; // indicará se somaremos ou subtrairemos uma unidade na variável linhaExemplo
8. solis: M5StackDHTGraph.ino - iestatīšana
Iestatīšanas laikā mēs inicializējam M5Stack. Mēs definējam grafika zīmēšanas komandas, konfigurējam fontu, kā arī teksta krāsas un novietojam kursoru rakstīšanai.
void setup (void) {Serial.begin (115200); // Inicializa o M5Stack M5.begin (); // pinta a tela toda de preto M5. Lcd.fillScreen (BLACK); // os comandos a seguir irão desenhar as linhas dos eixos cartesianos na cor branca // drawFastVLine (x, y, width, color) linha vertical M5. Lcd.drawFastVLine (POS_X_GRAFICO, POS_Y_GRAFICO, ALTURA_GRAFICO, WHITE); // eixo Y // drawFastHLine (x, y, platums, krāsa) linha horizontal M5. Lcd.drawFastHLine (POS_X_GRAFICO, ALTURA_GRAFICO+1, COMPRIMENTO_GRAFICO, WHITE); // eixo X // configura o tamnaho do texto que escreveremos em tela M5. Lcd.setTextSize (3); // configura a cor branca para o texto M5. Lcd.setTextColor (WHITE); // pozicionēšana vai kursora escrita M5. Lcd.setCursor (POS_X_DADOS, POS_Y_DADOS); M5. Lcd.print ("T:"); // indicando a temperatura M5. Lcd.setCursor (POS_X_DADOS+105, POS_Y_DADOS); M5. Lcd.print ("U:"); // indicando a umidade}
9. solis: M5StackDHTGraph.ino - cilpa
Cilpas pirmajā daļā mēs lasām temperatūru un mitrumu, kartējam mainīgo vērtību izvietošanai diagrammā un uzzīmējam ekrānā punktu, kas attiecas uz šīm no sensora nolasītajām vērtībām.
void loop () {// Fazemos a leitura da temperatura e umiade float temp, umid; int statuss = dht.read2 (DHTPIN, & temp, & umid, NULL); ja (statuss == SimpleDHTErrSuccess) {temperatura = temp; umidade = umid; } // mapeando o valor das variáveis para colocar no gráfico // needário pois o display display 240px de altura e separamos apenas 180 para o gráfico // umidade pode ser lida de 0-100 int temperaturaMapeada = karte (temperatura, 0, 100, 0, ALTURA_GRAFICO); int umidadeMapeada = karte (umidade, 0, 100, 0, ALTURA_GRAFICO); // desenha na tela o ponto referente aos valores lidos do sensor M5. Lcd.drawPixel (POS_X_GRAFICO+leituraAtual, ALTURA_GRAFICO-temperaturaMapeada, RED); M5. Lcd.drawPixel (POS_X_GRAFICO+leituraAtual, ALTURA_GRAFICO-umidadeMapeada, CYAN); // desenha na tela o ponto referente a nossa linha de examplelo que fica variando M5. Lcd.drawPixel (POS_X_GRAFICO+leituraAtual, ALTURA_GRAFICO-linhaExemplo, YELLOW);
Pēc tam mēs definējam grafikas drukāšanas iespējas displejā.
// aqui controlamos nossa linha de examplelo, quando chega no valor máximo decmentamos o valor // até um valor mínimo determinado (no nosso caso 10), e a partir daí, inkrementa novamente if (linhaExemplo == 50) fator = -1; cits if (linhaExemplo == 10) fator = 1; // soma o valor de linhaExemplo linhaExemplo += fator; // pieaugums o contador de leituras realizadas leituraAtual ++; // se a leitura chegar em 270 (número máximo do eixo X) então limparemos a área do gráfico para voltarmos a desenhar. if (leituraAtual == 270) {// limpa a área toda do gráfico M5. Lcd.fillRect (POS_X_GRAFICO+1, POS_Y_GRAFICO-1, COMPRIMENTO_GRAFICO, ALTURA_GRAFICO-1, BLACK); leituraAtual = 1; // volta o contador de leitura para 1 (nova coordenada X)} // limpa a área onde colocamos o valor da temperatura e da umidade M5. Lcd.fillRect (POS_X_DADOS+50, POS_Y_DADOS, 60, 30, BLACK); M5. Lcd.fillRect (POS_X_DADOS+165, POS_Y_DADOS, 90, 30, BLACK);
// repozicionēšana vai kursora parādīšana temperatūras M5. Lcd.setCursor (POS_X_DADOS+50, POS_Y_DADOS); M5. Lcd.setTextColor (RED); M5. Lcd.print (temperatūra); M5. Lcd.print ((char) 247); // repozicionēšana vai kursora atkopšana un mitrināšana M5. Lcd.setCursor (POS_X_DADOS+165, POS_Y_DADOS); M5. Lcd.setTextColor (CYAN); M5. Lcd.print (umidade); M5. Lcd.print ("%"); kavēšanās (1000); }
10. darbība: faili
Vai jums patika M5Stack? Vai vēlaties tādu iegādāties? Dodieties uz vietni:
Lejupielādējiet failus:
ES NĒ
Ieteicams:
Kā lietot DHT22 mitruma un temperatūras sensoru ar Arduino: 6 soļi
Kā lietot DHT22 mitruma un temperatūras sensoru ar Arduino: Šajā apmācībā mēs iemācīsimies izmantot DHT22 mitruma un temperatūras sensoru ar Arduino un parādīt vērtības OLED displejā. Noskatieties video
Temperatūra un mitrums, izmantojot ESP32-DHT22-MQTT-MySQL-PHP: 7 soļi
Temperatūra un mitrums, izmantojot ESP32-DHT22-MQTT-MySQL-PHP: Mana draudzene gribēja siltumnīcu, tāpēc es viņai to uztaisīju. Bet es gribēju temperatūras un mitruma sensoru siltumnīcas iekšpusē. Tātad, es googlē meklēju piemērus un sāku eksperimentēt. Mans secinājums bija, ka visi manis atrastie piemēri nebija gluži
Darba sākšana ar ESP32 - ESP32 dēļu instalēšana Arduino IDE - ESP32 mirgojošs kods: 3 soļi
Darba sākšana ar ESP32 | ESP32 dēļu instalēšana Arduino IDE | ESP32 mirgošanas kods: šajā pamācībā mēs redzēsim, kā sākt strādāt ar esp32 un kā instalēt esp32 plates Arduino IDE, un mēs programēsim esp 32, lai palaistu mirgojošu kodu, izmantojot arduino ide
Izveidojiet Apple HomeKit temperatūras sensora (DHT22) ierīci, izmantojot RaspberryPI un DHT22: 11 soļi
Izveidojiet Apple HomeKit temperatūras sensora (DHT22) ierīci, izmantojot RaspberryPI un DHT22: Es meklēju lētu temperatūras / mitruma sensoru, ko varētu izmantot, lai uzraudzītu, kas notiek manā pārmeklēšanas telpā, jo atklāju, ka šopavasar tas bija ļoti slapjš , un tajā bija daudz mitruma. Tāpēc es meklēju sensoru par saprātīgu cenu, ko es varētu
ESP32 un OLED displejs: interneta pulkstenis - DHT22: 10 soļi (ar attēliem)
ESP32 un OLED displejs: interneta pulkstenis - DHT22: šis pamācība konkurē ar konkursu: "GIF izaicinājums 2017", ja jums tas patīk, lūdzu, dodiet savu balsi, noklikšķinot uz iepriekš redzamā reklāmkaroga. Liels paldies! ;-) Šī apmācība ir turpinājums ceļojumam, lai uzzinātu vairāk par šo lielisko IoT ierīci