Inhaltsverzeichnis:
- Schritt 1: M5Stack
- Schritt 2: M5Stack Mögliche Anwendungen
- Schritt 3: M5Stack - Pins
- Schritt 4: DHT-Bibliothek
- Schritt 5: Arduino IDE-Bibliothek verwalten
- Schritt 6: Quellcode
- Schritt 7: M5StackDHTGraph.ino
- Schritt 8: M5StackDHTGraph.ino - Setup
- Schritt 9: M5StackDHTGraph.ino - Schleife
- Schritt 10: Dateien
Video: ESP32: M5Stack mit DHT22 - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Lassen Sie uns heute über einen ganz besonderen ESP32 sprechen, der perfekt für das Internet der Dinge geeignet ist, nämlich M5Stack. Es enthält den ESP32 im Inneren und fügt sogar ein Display, eine Tastatur, einen Verstärker, einen Lautsprecher und eine Batterie hinzu. Somit kann dieses Gerät unzählige Dinge tun. Als ich diese Hardware erhielt, hatte ich bereits Software für ESP32 und wurde nur auf das in diesem Projekt verwendete Display portiert, was anders ist. Der Quellcode, den wir verwenden werden, ist jedoch derselbe, der in unserem Video TEMPERATURE AND HUMIDITY WITH OLED DISPLAY verwendet wird.
In der heutigen Schaltung möchte ich besonders hervorheben, dass wir den M5Stack mit positiven und negativen Anschlüssen haben, der sich mit einem DHT22-Sensor speist. Beide sind über ein GPIO verbunden. Die Daten werden im Diagramm angezeigt.
In diesem Artikel stellen wir M5Stack vor und diskutieren seine Anwendungen. Hervorzuheben ist, dass dieses Gerät über einen Eingang für eine Micro-SD-Karte, einen 1-W-Lautsprecher und eine Batteriebuchse verfügt sowie über Interaktionstasten, einen i2c-Anschluss, einen USB-Typ-C-Anschluss, freiliegende IOs, ein zwei Zoll großes TFT-Display, unter anderen Funktionen. Es ist im Bild oben gezeigt. Wir können sagen, dass dieses Gerät bereit für IoT ist, da es bereits mit Bluetooth und ESP32 WiFi ausgestattet ist. Es enthält auch einen Magneten zum Anbringen an Metalloberflächen.
Hat dir M5Stack gefallen? Klicken Sie auf:
Schritt 1: M5Stack
Eine Neuerung des M5Stack ist, dass man, wenn man die Rückseite abnimmt, verschiedene Module mit unterschiedlichen Funktionen, wie unter anderem GPS-Modul, GSM, LoRa, unterbringen kann. Dies wird im Bild gezeigt.
Ich habe unten weitere Beispiele für Module, die von RS485, DC-Motor, Maker, Core bis hin zur Schrittmotorsteuerung reichen.
Dies ist eigentlich eine sehr schnelle Möglichkeit, einen Prototyp zusammenzustellen. Früher war es notwendig, mehrere Transistorchips zu kaufen und zahlreiche Baugruppen durchzuführen, was viel Zeit und Investitionen erforderte. Erst danach kam das Produkt-Prototyping. Damals erschienen Arduino und Raspberry, die Platten sind.
Jetzt haben wir endlich den M5Stack, diese gebrauchsfertige geschlossene Box. Dies befreit uns von unzähligen weiteren Schritten.
Andere M5Stack-Modelle werden in Bildern gezeigt. Wir haben ein Gerät mit alphanumerischen, numerischen und Spieltastaturen. Diese ermöglichen es Ihnen, wie eine Art Computer zu arbeiten. Wir haben auch ein Beispiel für laufende Software, die zusätzlich zu Basic in MicroPython, Arduino, ESP-IDF, NodeJS programmiert werden kann.
Schritt 2: M5Stack Mögliche Anwendungen
Unter den Beispielen für M5Stack-Anwendungen haben wir das Oszilloskop, wie Sie im Bild sehen können. Wir haben auch eine Art Taschenrechner / Schneidwerkzeugtabelle.
Wie wäre es mit einem Fahrradtacho?
Es kann sich auch um eine Remote-Bohrmaschine handeln, die in 3D gedruckt und von einer Steuerung fernüberwacht wird.
All dies zeigt, dass die elektronische Steuerung heutzutage viel günstiger ist, ebenso wie die Programmierung dieser Schaltungen einfacher geworden ist.
Schritt 3: M5Stack - Pins
Die Rückseite des M5Stack befindet sich in diesem Bild, was zeigt, dass die Spannung bei 5 Volt liegt. Das Bild zeigt weiter, dass wir alles haben, was in ESP32 mit Konnektivität existiert.
Schritt 4: DHT-Bibliothek
Verwenden Sie die SimpleDHT-Bibliothek, die dieselbe ist, die ich im Video verwendet habe: TEMPERATUR UND FEUCHTIGKEIT MIT OLED-DISPLAY.
Schritt 5: Arduino IDE-Bibliothek verwalten
Im "Menü: Sketch -> Add Library -> Manage Libraries" installieren wir die beiden im Bild unten gezeigten Bibliotheken. Denken Sie daran, dass Sie zuvor den Arduino-Kern von ESP32 installieren müssen. Dieses Video zeigt Ihnen, wie es geht it: SO INSTALLIEREN SIE ARDUINO IDE IN ESP32.
Schritt 6: Quellcode
Der Quellcode ist, wie erwähnt, derselbe, den ich im Video verwendet habe: TEMPERATURE GRAPH WITH OLED DISPLAY. Die einzige Änderung, die ich an diesem Projekt vorgenommen habe, war die Größe des Displays.
Schritt 7: M5StackDHTGraph.ino
Wir werden die Bibliotheken M5Stack.h und SimpleDHT.h einbeziehen und die im Display verwendeten Farben sowie den DHT-Daten-Pin definieren. Wir werden auch ein Objekt für die Kommunikation mit dem Sensor konstruieren, die für die Messwerte verantwortliche Variable definieren und den Wert der X-Achse angeben.
//Libs do M5Stack und DHT#include #include // definiere die Kerne, die verwendet werden müssen #define BLACK 0x0000 #define RED 0xF800 #define CYAN 0x07FF #define YELLOW 0xFFE0 #define WHITE 0xFFFF #define DHTPIN do //pino de dados // Konstruktor tun Objekt für comunicar com o Sensor SimpleDHT22 dht; //variável responsavel por contar o número de leituras realizadas e indicador do valor no eixo X int leituraAtual = 1;
Wir fahren mit den Positionierungsdefinitionen der X- und Y-Achse, den Anzeigekoordinaten der Temperatur- und Feuchtigkeitsdaten sowie den Variablen fort, die die gelesenen Werte speichern. Wir zeigen noch auf die Variable zum Drucken des Diagramms auf dem Display.
//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 coordenada ondeDOS escreveremos os dados de temperatura que armazenarão os valores lidos da umidade e temperature 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
Schritt 8: M5StackDHTGraph.ino - Setup
Im Setup initialisieren wir den M5Stack. Wir definieren Befehle zum Zeichnen des Graphen, konfigurieren die Schriftart sowie Textfarben und positionieren den Cursor zum Schreiben.
Void setup (void) { Serial.begin (115200); // Initialisierung von M5Stack M5.begin(); // Pinta a tela toda de preto M5. Lcd.fillScreen (SCHWARZ); // kommandos und seguir irão desenhar as linhas dos eixos cartesianos na cor branca //drawFastVLine(x, y, width, color) linha vertikal M5. Lcd.drawFastVLine(POS_X_GRAFICO, POS_Y_GRAFICO, ALTURA_GRAFICO, WHITE); //eixo Y //drawFastHLine(x, y, Breite, Farbe) linha horizontal M5. Lcd.drawFastHLine(POS_X_GRAFICO, ALTURA_GRAFICO+1, COMPRIMENTO_GRAFICO, WHITE); //eixo X //konfiguriere oder tamnaho mache einen Text, der auf M5. Lcd.setTextSize(3); //Konfiguriere eine Corbranca für den Text M5. Lcd.setTextColor(WHITE); //Position des Cursors für die Schrift M5. Lcd.setCursor(POS_X_DADOS, POS_Y_DADOS); M5. Lcd.print("T:"); //Anzeige einer Temperatur M5. Lcd.setCursor(POS_X_DADOS+105, POS_Y_DADOS); M5. Lcd.print(" U: "); //indicando a umidade}
Schritt 9: M5StackDHTGraph.ino - Schleife
Im ersten Teil der Schleife lesen wir die Temperatur und Luftfeuchtigkeit ab, bilden den Wert der Variablen für die Platzierung in der Grafik ab und zeichnen den Punkt auf dem Bildschirm, der sich auf diese vom Sensor gelesenen Werte bezieht.
Void loop () {//Fazemos a leitura da temperature e umiade float temp, umid; int status = dht.read2(DHTPIN, &temp, &umid, NULL); if (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 oder 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 oder ponto referente a nossa linha de exemplo que fica variando M5. Lcd.drawPixel(POS_X_GRAFICO+leituraAtual, ALTURA_GRAFICO-linhaExemplo, YELLOW);
Anschließend definieren wir Möglichkeiten zum Drucken der Grafik auf dem Display.
//aqui controlamos nossa linha de exemplo, quando chega no valor máximo decrementamos o valor //até um valor minimo determinado (no nosso caso 10), e a partir daí, inkrementa novamente if(linhaExemplo == 50) fator = -1; else if(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. 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 coocamos o valor de 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, SCHWARZ);
// Cursor auf Temperatur speichern M5. Lcd.setCursor(POS_X_DADOS+50, POS_Y_DADOS); M5. Lcd.setTextColor(RED); M5. Lcd.print (Temperatur); M5. Lcd.print((Zeichen)247); // Position des Cursors für die Umidade M5. Lcd.setCursor(POS_X_DADOS+165, POS_Y_DADOS); M5. Lcd.setTextColor(CYAN); M5. Lcd.print (umidade); M5. Lcd.print("%"); Verzögerung (1000); }
Schritt 10: Dateien
Hat dir M5Stack gefallen? Möchten Sie einen kaufen? Gehe zu:
Laden Sie die Dateien herunter:
INO
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Bewegungsaktivierte Cosplay Wings mit Circuit Playground Express - Teil 1: 7 Schritte (mit Bildern)
Bewegungsaktivierte Cosplay-Flügel mit Circuit Playground Express - Teil 1: Dies ist Teil 1 eines zweiteiligen Projekts, in dem ich Ihnen meinen Prozess zur Herstellung eines Paars automatisierter Feenflügel zeige. Der erste Teil des Projekts ist der Mechanik der Flügel, und der zweite Teil macht es tragbar und fügt die Flügel hinzu
M5STACK So zeigen Sie Temperatur, Feuchtigkeit und Druck auf dem M5StickC ESP32 mit Visuino an - Einfach zu tun: 6 Schritte
M5STACK So zeigen Sie Temperatur, Luftfeuchtigkeit und Druck auf dem M5StickC ESP32 mit Visuino an - Einfach zu machen: In diesem Tutorial lernen wir, wie Sie den ESP32 M5Stack StickC mit Arduino IDE und Visuino programmieren, um Temperatur, Luftfeuchtigkeit und Druck mit dem ENV-Sensor (DHT12, BMP280, BMM150)
Raspberry Pi mit Node.js mit der Cloud verbinden – wikiHow
So verbinden Sie Raspberry Pi mit Node.js mit der Cloud: Dieses Tutorial ist nützlich für alle, die einen Raspberry Pi mit Node.js mit der Cloud, insbesondere mit der AskSensors IoT-Plattform, verbinden möchten. Sie haben keinen Raspberry Pi? Wenn Sie derzeit keinen Raspberry Pi besitzen, empfehle ich Ihnen, sich einen Raspberry Pi zuzulegen
DIY Circuit Activity Board mit Büroklammern - HERSTELLER - STEM: 3 Schritte (mit Bildern)
DIY Circuit Activity Board mit Büroklammern | HERSTELLER | STEM: Mit diesem Projekt können Sie den Weg des elektrischen Stroms ändern, um durch verschiedene Sensoren zu laufen. Mit diesem Design können Sie zwischen dem Aufleuchten einer blauen LED oder dem Aktivieren eines Summers wechseln. Sie haben auch die Wahl, einen lichtabhängigen Widerstand mit