Innholdsfortegnelse:
- Trinn 1: M5Stack
- Trinn 2: M5Stack Mulige applikasjoner
- Trinn 3: M5Stack - Pins
- Trinn 4: DHT -bibliotek
- Trinn 5: Arduino IDE Library Manage
- Trinn 6: Kildekode
- Trinn 7: M5StackDHTGraph.ino
- Trinn 8: M5StackDHTGraph.ino - Oppsett
- Trinn 9: M5StackDHTGraph.ino - Loop
- Trinn 10: Filer
Video: ESP32: M5Stack med DHT22: 10 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
La oss snakke i dag om en veldig spesiell ESP32, perfekt for tingenes internett, som er M5Stack. Den inneholder ESP32 på innsiden og til og med på en skjerm, tastatur, forsterker, høyttaler og batteri. Dermed kan denne enheten gjøre utallige ting. Da jeg mottok denne maskinvaren, hadde jeg allerede programvare for ESP32 og bare portet til skjermen som ble brukt i dette prosjektet, noe som er annerledes. Imidlertid er kildekoden vi vil bruke den samme som i vår video TEMPERATUR OG FUKTIGHET MED OLED DISPLAY.
I dagens krets vil jeg spesielt understreke at vi har M5Stack med positive og negative tilkoblinger, som mater seg selv med en DHT22 -sensor. Begge er forbundet med en GPIO. Dataene vises i diagrammet.
I denne artikkelen, la oss introdusere M5Stack og diskutere applikasjonene. Jeg må understreke at denne enheten har inngang for et micro SD-kort, en 1W høyttaler og en batteriuttak, og har også interaksjonsknapper, en i2c-kontakt, en USB type C, synlige IOer, en to-tommers TFT-skjerm, blant andre funksjoner. Det er vist på bildet ovenfor. Vi kan si at denne enheten er klar for IoT, siden den allerede kommer med Bluetooth og ESP32 WiFi. Den inneholder også en magnet for festing til metalloverflater.
Likte du M5Stack? Klikk:
Trinn 1: M5Stack
En innovasjon av M5Stack er at hvis du tar av ryggen, kan du passe inn i forskjellige moduler med forskjellige funksjoner, for eksempel GPS -modulen, GSM, LoRa. Dette er vist på bildet.
Jeg har flere eksempler på moduler nedenfor, alt fra RS485, DC Motor, Maker, Core, til trinnmotorstyring.
Dette er faktisk en veldig rask måte å sette sammen en prototype. I gamle dager var det nødvendig å kjøpe flere transistorbrikker og utføre mange samlinger, noe som krevde mye tid og investering. Først etter kom produktprototypen. Det var da Arduino og bringebær dukket opp, som er tallerkener.
Nå har vi endelig M5Stack, som er denne lukkede esken som er klar til bruk. Dette frigjør oss fra å måtte utføre andre utallige trinn.
Andre M5Stack -modeller er vist i bilder. Vi har en enhet med alfanumeriske, numeriske og spilltastaturer. Disse lar deg jobbe som om det er en slags datamaskin. Vi har også et eksempel på programvare som kjører, som kan programmeres i MicroPython, Arduino, ESP-IDF, NodeJS, i tillegg til Basic.
Trinn 2: M5Stack Mulige applikasjoner
Blant eksemplene på M5Stack -applikasjoner har vi oscilloskopet, som du kan se på bildet. Vi har også en slags kalkulator / skjæreverktøybord.
Hva med et sykkelturteller?
Det kan også være en ekstern drill, som skrives ut i 3D og overvåkes eksternt av en kontroll.
Alt dette viser at elektronikkstyring er mye rimeligere i disse dager, akkurat som programmeringen av disse kretsene har blitt enklere.
Trinn 3: M5Stack - Pins
Baksiden av M5Stack er på dette bildet, som viser at effekten er på 5 volt. Bildet avslører videre at vi har alt som finnes i ESP32 med tilkobling.
Trinn 4: DHT -bibliotek
Bruk SimpleDHT lib, som er den samme som jeg brukte i videoen: TEMPERATUR OG FUKTIGHET MED OLED DISPLAY.
Trinn 5: Arduino IDE Library Manage
I "Meny: Skisse -> Legg til bibliotek -> Administrer biblioteker", la oss installere de to bibliotekene som vises på bildet nedenfor. Husk at før alt dette må du installere Arduino -kjernen i ESP32. Denne videoen viser deg hvordan du gjør it: HVORDAN INSTALLERE ARDUINO IDE I ESP32.
Trinn 6: Kildekode
Kildekoden er som nevnt den samme som jeg brukte i videoen: TEMPERATURGRAF MED OLED DISPLAY. Den eneste endringen jeg gjorde i dette prosjektet var i forhold til størrelsen på skjermen.
Trinn 7: M5StackDHTGraph.ino
Vi vil inkludere bibliotekene M5Stack.h og SimpleDHT.h, og vi vil definere farger som brukes i displayet, samt DHT -datapinnen. Vi vil også konstruere et objekt for kommunikasjon med sensoren, definere variabelen som er ansvarlig for avlesningene, og angi verdien av X-aksen.
// 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 0xFFFF #define DHTPIN 5 // pino // construtor do objeto para comunicar com o sensor SimpleDHT22 dht; // variabel responsavel por contar o número de leituras realizadas e indicador do valor no eixo X int leituraAtual = 1;
Vi fortsetter med posisjoneringsdefinisjoner for X-aksen og Y-aksen, temperatur- og fuktighetsdata viser koordinater, samt variablene som vil lagre verdiene som er lest. Vi peker fortsatt på variabelen for å skrive ut diagrammet på displayet.
// definições gjøre posicionamento dos eixos X e Y # definerer POS_X_GRAFICO 30 #define POS_Y_GRAFICO 3 #define ALTURA_GRAFICO 180 #define COMPRIMENTO_GRAFICO 270 // definição da coordenada onde escreveremos os dados de temperatura e umidade #define POS_X_DADOS 30 #define POS_Y_DADOS 200 // variáveis que armazenarão os valores lidos da umidade e temperatura int umidade = 0; int temperatur = 0; // variável que armazenará o valor da coordenada Y para desenharmos uma linha de exemplo // 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
Trinn 8: M5StackDHTGraph.ino - Oppsett
I Setup initialiserer vi M5Stack. Vi definerer kommandoer for å tegne grafen, konfigurerer skriften samt tekstfarger og plasserer markøren for skriving.
void -oppsett (void) {Serial.begin (115200); // Inicializa o M5Stack M5.begin (); // pinta a tela toda de preto M5. Lcd.fillScreen (SVART); // 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; // eixo Y // drawFastHLine (x, y, bredde, farge) linha horisontal M5. Lcd.drawFastHLine (POS_X_GRAFICO, ALTURA_GRAFICO+1, COMPRIMENTO_GRAFICO, WHITE); // eixo X // konfigurasjon av tekst som kan sendes til M5. Lcd.setTextSize (3); // konfigura a cor branca para o texto M5. Lcd.setTextColor (WHITE); // posisiona o cursor para escrita M5. Lcd.setCursor (POS_X_DADOS, POS_Y_DADOS); M5. Lcd.print ("T:"); // angir temperatura M5. Lcd.setCursor (POS_X_DADOS+105, POS_Y_DADOS); M5. Lcd.print ("U:"); // indicando a umidade}
Trinn 9: M5StackDHTGraph.ino - Loop
I den første delen av sløyfen leser vi temperatur og fuktighet, kartlegger verdien av variablene for plassering på grafen og tegner punktet på skjermen som refererer til disse verdiene som er lest fra sensoren.
void loop () {// Fazemos a leitura da temperatura e umiade float temp, umid; int status = dht.read2 (DHTPIN, & temp, & umid, NULL); hvis (status == SimpleDHTErrSuccess) {temperatura = temp; umidade = umid; } // mapeando o valor das variáveis para colocar no gráfico // necessário pois o display tem 240px de altura e separamos apenas 180 para o gráfico // umidade pode ser lida de 0-100 int temperaturaMapeada = map (temperatura, 0, 100, 0, ALTURA_GRAFICO); int umidadeMapeada = map (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 exemplo que fica variando M5. Lcd.drawPixel (POS_X_GRAFICO+leituraAtual, ALTURA_GRAFICO-linhaExemplo, GUL);
Deretter definerer vi mulighetene for å skrive ut grafikken på skjermen.
// aqui controlamos nossa linha de exemplo, quando chega no valor máximo decrementamos o valor // até um valor mínimo determinado (no nosso caso 10), e a partir daí, incrementa novamente if (linhaExemplo == 50) fator = -1; ellers hvis (linhaExemplo == 10) fator = 1; // soma o valor de linhaExemplo linhaExemplo += fator; // incrementa 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. hvis (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, SVART); M5. Lcd.fillRect (POS_X_DADOS+165, POS_Y_DADOS, 90, 30, SVART);
// reposiciona o cursor for escrever a temperatura M5. Lcd.setCursor (POS_X_DADOS+50, POS_Y_DADOS); M5. Lcd.setTextColor (RØD); M5. Lcd.print (temperatura); M5. Lcd.print ((røyke) 247); // reposiciona o cursor for escrever a umidade M5. Lcd.setCursor (POS_X_DADOS+165, POS_Y_DADOS); M5. Lcd.setTextColor (CYAN); M5. Lcd.print (umidade); M5. Lcd.print ("%"); forsinkelse (1000); }
Trinn 10: Filer
Likte du M5Stack? Vil du kjøpe en? Gå til:
Last ned filene:
INO
Anbefalt:
Slik programmerer du ESP32 M5Stack StickC med Arduino IDE og Visuino: 12 trinn
Slik programmerer du ESP32 M5Stack StickC med Arduino IDE og Visuino: I denne opplæringen lærer vi hvordan du programmerer ESP32 M5Stack StickC med Arduino IDE og Visuino. Se en demonstrasjonsvideo
ESP32 -basert M5Stack M5stick C værmonitor med DHT11 - Overvåk temperaturfuktighet og varmeindeks på M5stick-C med DHT11: 6 trinn
ESP32 -basert M5Stack M5stick C værmonitor med DHT11 | Overvåk temperaturfuktighet og varmeindeks på M5stick-C Med DHT11: Hei folkens, i denne instruksjonen lærer vi hvordan du grensesnitt DHT11 temperatursensor med m5stick-C (et utviklingstavle av m5stack) og viser den på displayet til m5stick-C. Så i denne opplæringen vil vi lese temperatur, fuktighet og amp; varme jeg
Spille Flappy Bird -spill med M5stack Esp32 -basert M5stick C Development Board: 5 trinn
Spille Flappy Bird Game With M5stack Esp32 Based M5stick C Development Board: Hei folkens i dag skal vi lære hvordan du laster opp flappy bird-spillkoden til m5stick c development board levert av m5stack.For dette lille prosjektet trenger du følgende to ting: m5stick-c utviklingstavle: https://www.utsource.net/itm/p/8663561.h
Bygg en Apple HomeKit -temperatursensor (DHT22) -enhet ved hjelp av en RaspberryPI og en DHT22: 11 trinn
Bygg en Apple HomeKit -temperatursensor (DHT22) -enhet ved hjelp av en RaspberryPI og en DHT22: Jeg var på utkikk etter en lavkostetemperatur- / fuktighetssensor jeg kunne bruke til å overvåke hva som skjer i krypterommet mitt, da jeg fant ut at det i vår var veldig vått , og hadde mye fukt. Så jeg lette etter en rimelig sensor som jeg kunne
ESP32 og OLED -skjerm: Internett -klokke - DHT22: 10 trinn (med bilder)
ESP32 og OLED -skjerm: Internett -klokke - DHT22: This Instructable konkurrerer om konkurranse: " GIFs Challenge 2017 ", Hvis du liker det, vennligst gi din stemme ved å klikke på banneret ovenfor. Tusen takk!;-) Denne opplæringen er en fortsettelse av en reise for å lære mer om denne flotte IoT-enheten