Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

BME280 Temperatur, Luftfeuchtigkeit und Druck auf dem Nextion-Display

Komponenten und Verbrauchsmaterialien

Arduino Nano R3
× 1
SparkFun Atmospheric Sensor Breakout - BME280
× 1
Itead Nextion NX8048T070 - Generisches 7,0"-HMI-TFT-LCD-Touch-Display
× 1
SparkFun USB-zu-Seriell-Breakout - FT232RL
× 1

Apps und Onlinedienste

Visuino - Grafische Entwicklungsumgebung für Arduino
Arduino-IDE

Über dieses Projekt

Es gibt viele Display Optionen zum Hinzufügen einer grafischen Benutzeroberfläche zu Arduino Bretter. Die meisten von ihnen benötigen jedoch viel Speicher und Verarbeitungszeit und sind nicht für Arduino geeignet Boards mit begrenztem Speicher und Rechenleistung wie Arduino UNO oder Arduino Nano . Wenn der Speicher begrenzt ist und eine erweiterte Benutzeroberfläche benötigt wird, verwenden die Smart Programmable Serial Nextion Displays sind eine beliebte Wahl. Die Itead bietet einen kostenlosen Graphical Nextion Editor zur Gestaltung der Benutzeroberfläche des Displays.

BME280 ist eine sehr genaue kombinierte Temperatur , Luftfeuchtigkeit , und Luftdruck Sensor. Es kann mit I2C verbunden werden oder SPI Schnittstelle,

Visuino hat volles Nextion Display Support, und ich habe ein Tutorial für die Nextion geplant eine Weile unterstützen. Ich wollte auch ein Tutorial für den BME280 machen Sensor. Schließlich habe ich beschlossen, sie zu kombinieren und ein einzelnes Tutorial zu erstellen, das Temperatur anzeigt , Luftfeuchtigkeit , und Luftdruck vom BME280 auf den 3 Kanälen eines Scope (Wellenform ) Komponente auf dem Nextion Display .

Schritt 1:Komponenten

  • Ein Arduino kompatibles Board (ich benutze Arduino Nano, weil ich eins habe, aber jedes andere ist gut)
  • Ein BME280-Sensormodul
  • Ein Smart Display mit serieller Schnittstelle von Nextion (Ich habe NX4024K032_11 verwendet aber jeder andere sollte auch funktionieren)
  • 4 weiblich-weiblich Überbrückungsdrähte
  • Zur Programmierung des Displays benötigen Sie außerdem 5V USB-zu-TTL-Seriell-Konvertermodul

Schritt 2:Verbinden Sie das Nextion-Display mit dem seriellen USB-Kommunikationsmodul

So programmieren Sie das Nextion Display mit dem Nextion Editor Sie müssen es mit einem USB-zu-TTL-Seriell-Konverter verbinden auf Ihren Computer:

  • Verbinden Sie den Nextion Wires Connector zum Display (Bild 1 )
  • Wenn Ihr USB-zu-Seriell-Modul konfigurierbar ist, stellen Sie sicher, dass es auf 5 V Strom eingestellt ist (Bild 2 ) (In meinem Fall musste ich es mit einem Stromauswahl-Jumper konfigurieren)
  • Schließen Sie das Massekabel an (Schwarzer Draht ) aus dem Nextion Display zum Erdungspin des USB-zu-TTL-Seriell-Konvertermoduls (Bild 2 )
  • Schließen Sie das Stromkabel (+5V) an (Roter Draht ) aus dem Nextion Display an den Power(VCC/+5V)-Pin des USB-zu-TTL-Seriell-Konvertermoduls (Bild 2 )
  • Schließen Sie das RX-Kabel an (Gelber Draht ) aus dem Nextion Display zum TX-Pin des USB-zu-TTL-Seriell-Konvertermoduls (Bild 2 )
  • Schließen Sie das TX-Kabel an (Blaues Kabel ) aus dem Nextion Display zum RX-Pin des USB-zu-TTL-Seriell-Konvertermoduls (Bild 2 )
  • Schließen Sie das USB-zu-TTL-Seriell-Konvertermodul an mit einem USB-Kabel an den Computer anschließen (Bild 3 )

Schritt 3:Starten Sie den Nextion Editor und wählen Sie den Anzeigetyp und die Ausrichtung aus

So programmieren Sie das Nextion Display , müssen Sie den Nextion Editor herunterladen und installieren .

  • Starten Sie den Nextion Editor (Bild 1 )
  • Aus dem Menü wählen Sie |DateiNeu | (Bild 1 )
  • Im "Speichern unter ", geben Sie den Namen der Projektdatei ein und wählen Sie einen Speicherort für das Projekt aus (Bild 2 )
  • Klicken Sie auf "Speichern "-Schaltfläche (Bild 2 )
  • In den "Einstellungen " wählen Sie den Anzeigetyp (In meinem Fall NX4024K032_11 ) (Bild 3 )
  • Klicken Sie auf "ANZEIGE " auf der linken Seite, um die Anzeigeeinstellungen anzuzeigen. (Bild 4 )
  • Wählen Sie Horizontal Ausrichtung für das Display (Bild 4 )
  • Klicken Sie auf "OK " Schaltfläche zum Schließen des Dialogs (Bild 4 )

Schritt 4:Im Nextion Editor:Waveform(Scope)-Komponente hinzufügen und konfigurieren

Wir müssen eine Scope-Komponente hinzufügen und sie so konfigurieren, dass sie 3 Kanäle für die Temperatur hat , Druck , und Luftfeuchtigkeit :

  • In der "Toolbox " Klicken Sie mit der linken Maustaste auf "Wellenform " Komponente (Bild 1 ), um es dem Designbereich hinzuzufügen (Bild 2 )
  • Größe der Komponente ändern, um die Anzeige auszufüllen (Bild 3 )
  • Im "Attribut " Toolbox, legen Sie den Wert von "ch " Attribut zu "3 " (Bild 3 )
  • Im "Attribut " Toolbox, legen Sie den Wert des "dir " Attribut zu "von rechts nach links " (Bild 4 )

Schritt 5:Im Nextion Editor:Laden Sie das Projekt auf das Nextion Display hoch

  • Klicken Sie auf "Hochladen "-Schaltfläche (Bild 1 )
  • In der "Auf Nextion-Gerät hochladen " klicken Sie auf "Los "-Schaltfläche (Bild 2 ), um den Upload zu starten (Bild 3 )
  • Wenn der Upload abgeschlossen ist (Bild 4 ), klicken Sie auf "Beenden ", um den Dialog zu schließen.

Schritt 6:Starten Sie Visuino und wählen Sie den Arduino Board-Typ aus

Seit dem Arduino Nano hat nur eine serielle Schnittstelle , und es wird benötigt, um den Arduino . zu programmieren , müssen Sie den Arduino Nano programmieren vor dem Nextion Display verbunden ist.

Um mit der Programmierung des Arduino zu beginnen, benötigen Sie die Arduino-IDE installiert von hier:http://www.arduino.cc/ .

Bitte beachten Sie, dass die Arduino IDE 1.6.6 einige kritische Fehler enthält.

Stellen Sie sicher, dass Sie 1.6.7 oder höher installieren, sonst funktioniert dieses Tutorial nicht!

Der Visuino :https://www.visuino.com muss ebenfalls installiert werden.

  • Starte Visuino wie im ersten Bild gezeigt
  • Klicken Sie auf "Tools "-Schaltfläche auf dem Arduino Komponente (Bild 1 ) in Visuino
  • Wenn das Dialogfeld angezeigt wird, wählen Sie Arduino Nano wie in Bild 2 gezeigt

Schritt 7:In Visuino:Fügen Sie die Nextion Display-Komponente und das Scope-Element hinzu

Um das Nextion Display zu steuern, müssen wir die Nextion Display-Komponente in Visuino hinzufügen und dann das Element hinzufügen, um den Scope zu steuern:

  • Geben Sie "Weiter . ein " im Filterfeld der Komponenten-Toolbox und wählen Sie dann "Nextion Display " Komponente (Bild 1 ) und legen Sie es im Designbereich ab
  • Klicken Sie auf "Tools "-Schaltfläche des DisplayNextion1 Komponente (Bild 2 )
  • In den "Elementen " Editor wählen Sie "Bereich(Wave) ”-Element und klicken Sie dann links auf die Schaltfläche "" (Bild 2 ), um Bereich hinzuzufügen Element (Bild 3 )

Schritt 8:In Visuino:Fügen Sie dem Scope-Element 3 Kanäle hinzu und schließen Sie das Nextion-Display an

Als nächstes müssen wir dem Scope Kanäle hinzufügen.

  • Klicken Sie im Objektinspektor auf "... " neben dem Wert von "Kanäle " Untereigenschaft von Scope1 Element (Bild 1 )
  • Wähle im Kanaleditor "Kanal . aus ”-Element auf der rechten Seite und klicken Sie dann 3 Mal auf der Schaltfläche "" links (Bild 2 ), um 3 Kanäle hinzuzufügen (Bild 3 )
  • Schließe die "Kanäle " und die Anzeige "Elemente " Dialoge
  • Verbinden Sie das "Out " Ausgangspin des DisplayNextion1 Komponente zum "In " Eingangspin des "Serial[ 0 ] " Kanal des Arduino Komponente (Bild 4 )

Schritt 9:In Visuino:3 Kartenbereichskomponenten hinzufügen und konfigurieren

Die Kanäle des Nextion Display Scope sind darauf ausgelegt, Werte zwischen 0.0 . anzuzeigen und 1.0 . Um Temperatur, Luftfeuchtigkeit und Druck anzuzeigen, müssen wir die Werte in 0,0 . umwandeln bis 1.0 Palette. Dafür können wir Map Range-Komponenten verwenden:

  • Geben Sie "Karte . ein " im Filterfeld der Komponenten-Toolbox und wählen Sie dann "Kartenbereich . aus " Komponente (Bild 1 ) und lass 3 davon fallen im Designbereich
  • Wählen Sie den MapRange1 aus Komponente (Bild 2 )
  • Erweitern Sie im Objektinspektor den "Eingabebereich " Eigenschaft (Bild 2 )
  • Setzen Sie im Objektinspektor den Wert von "Max " Untereigenschaft von "Eingabebereich " Eigenschaft zu "101000 " (Bild 2 ) (Möglicherweise müssen Sie einen anderen Wert einstellen, wenn der Luftdruck an Ihrem Standort sehr unterschiedlich ist)
  • Setzen Sie im Objektinspektor den Wert von "Min " Untereigenschaft von "Eingabebereich " Eigenschaft zu "99000 " (Bild 2 ) (Möglicherweise müssen Sie einen anderen Wert einstellen, wenn der Luftdruck an Ihrem Standort sehr unterschiedlich ist)
  • Wählen Sie MapRange2 . aus Komponente (Bild 3 )
  • Erweitern Sie im Objektinspektor den "Eingabebereich " Eigenschaft (Bild 3 )
  • Setzen Sie im Objektinspektor den Wert von "Max " Untereigenschaft von "Eingabebereich " Eigenschaft auf "100 " (Bild 3 )
  • Setzen Sie im Objektinspektor den Wert von "Min " Untereigenschaft von "Eingabebereich " Eigenschaft zu "-20 " (Bild 3 )
  • Wählen Sie den MapRange3 aus Komponente (Bild 4 )
  • Erweitern Sie im Objektinspektor den "Eingabebereich " Eigenschaft (Bild 4 )
  • Setzen Sie im Objektinspektor den Wert von "Max " Untereigenschaft von "Eingabebereich " Eigenschaft auf "100 " (Bild 4 )

Schritt 10:In Visuino:Verbinden Sie die Kartenbereichskomponenten mit den Nextion-Anzeigekanälen

  • Verbinden Sie das "Out " Ausgangspin des MapRange1 Komponente zum "In " Eingangspin des "Elements.Scope1.Channels.Channel1 " Element des DisplayNextion1 Komponente (Bild 1 )
  • Verbinden Sie das "Out " Ausgangspin des MapRange2 Komponente zum "In " Eingangspin von "Elements.Scope1.Channels.Channel2 " Element des DisplayNextion1 Komponente (Bild 2 )
  • Verbinden Sie das "Out " Ausgangspin des MapRange3 Komponente zum "In " Eingangspin des "Elements.Scope1.Channels.Channel3 " Element des DisplayNextion1 Komponente (Bild 3 )

Schritt 11:In Visuino:BME280-Komponente hinzufügen und verbinden

Wir müssen eine Komponente hinzufügen, um die Daten vom BME280-Modul zu lesen:

  • Geben Sie "280 . ein " im Filterfeld der Komponenten-Toolbox wählen Sie dann "Druck Temperatur Feuchtigkeit BME280 I2C " Komponente (Bild 1 ) und legen Sie es im Designbereich ab
  • Mein BME280-Modul hat I2C-Adresse von 118 (0 x 76 ). Wenn Ihre Module eine andere Adresse haben, müssen Sie den Wert der "Adresse " Eigenschaft (Bild 2 )
  • Verbinden Sie den "Druck (Pa) " Ausgangspin des PressureTemperatureHumidity1 Komponente zum "In " Pin des MapRange1 Komponente (Bild 2 )
  • Verbinden Sie die "Temperatur " Ausgangspin des PressureTemperatureHumidity1 Komponente zum "In " Pin des MapRange2 Komponente (Bild 3 )
  • Verbinden Sie die "Luftfeuchtigkeit(%) " Ausgangspin des PressureTemperatureHumidity1 Komponente zum "In " Pin des MapRange3 Komponente (Bild 4 )
  • Verbinden Sie das "Out " Ausgangspin des PressureTemperatureHumidity1 Komponente zum "In " Pin des I2C Kanal des Arduino Komponente (Bild 5 )

Schritt 12:In Visuino:Taktgenerator-Komponente hinzufügen, konfigurieren und verbinden

Wir können das Projekt so verwenden, wie es ist, es aktualisiert jedoch den Scope die ganze Zeit sehr schnell. Besser ist es, wenn der Scope wie im Beispiel 10 mal pro Sekunde aktualisiert wird. Dazu fügen wir eine Uhrkomponente hinzu, um den Messwert vom Sensor und die Aktualisierung des Oszilloskops zu takten.

  • Geben Sie "Uhr . ein " im Filterfeld der Komponenten-Toolbox und wählen Sie dann "Clock Generator " Komponente (Bild 1 ) und legen Sie es im Designbereich ab
  • Legen Sie im Objektinspektor den Wert der "Häufigkeit " Eigenschaft des ClockGenerator1 bis "10 " (Bild 2 )
  • Verbinden Sie das "Out " Ausgangspin des ClockGenerator1 Komponente zur "Uhr " Eingangspin des PressureTemperatureHumidity1 Komponente (Bild 3 )

Schritt 13:Arduino-Code generieren, kompilieren und hochladen

  • In Visuino , Drücken Sie F9 oder klicken Sie auf die Schaltfläche in Bild 1 um den Arduino-Code zu generieren und die Arduino-IDE zu öffnen
  • In der Arduino-IDE , klicken Sie auf Hochladen Schaltfläche, um den Code zu kompilieren und hochzuladen (Bild 2 )

Schritt 14:Verbinden Sie den BME280 Temperatur-, Feuchtigkeits- und Drucksensor mit Arduino

  • Verbinden Sie 3V3-VCC-Strom (Roter Draht ), Boden (Schwarzer Draht ),SDA (Grünes Kabel ) und SCL (Gelber Draht ), zum BME280-Modul (Bild 1 )
  • Schließen Sie das andere Ende des Erdungskabels an (Schwarzer Draht ) zum Boden Pin des Arduino Nano Tafel (Bild 2 )
  • Schließen Sie das andere Ende des 3V3-VCC-Stromkabels an (Roter Draht ) zum 3V3 Power-Pin des Arduino Nano Tafel (Bild 2 )
  • Schließen Sie das andere Ende des SDA-Kabels an (Grünes Kabel ) an SDA/Analog-Pin 4 des Arduino Nano Tafel (Bild 2 )
  • Schließen Sie das andere Ende des SCL-Kabels an (Gelber Draht ) an SCL/Analog-Pin 5 des Arduino Nano Tafel (Bild 2 )
  • Bild 3 zeigt, wo der Boden ist , 3V3 Stromversorgung, SDA/Analog-Pin 4 , und SCL/analoger Pin 5 , Pins des Arduino Nano

Schritt 15:Verbinden Sie das Nextion Display mit dem Arduino

  • Trennen Sie das Nextion Display Kabel vom USB-zu-TTL-Seriell-Konvertermodul
  • Erde verbinden
  • Trennen Sie das Nextion Display Kabel vom USB-zu-TTL-Seriell-Konvertermodul
  • Schließen Sie das Massekabel an (Schwarzer Draht ) aus dem Nextion Display zum Erdungspin des Arduino Nano (Bild 2 )
  • Schließen Sie das TX-Kabel an (Blaues Kabel ) aus dem Nextion Display zum RX(D0)-Pin des Arduino Nano (Bild 2 )
  • Schließen Sie das RX-Kabel an (Gelber Draht ) aus dem Nextion Display zum TX(D1)-Pin des Arduino Nano (Bild 2 )
  • Bild 4 zeigt, wo der Boden ist , 5V Stromversorgung, RX/Digitaler Pin 0 , und TX/Digital Pin 1 , Pins des Arduino Nano
  • Schließen Sie das +5-V-Stromkabel an (Roter Draht ) aus dem Nextion Display an den 5-V-Stromanschluss des Arduino Nano (Bild 3 )
  • Bild 4 wird in Rot angezeigt wo ist der Boden , 5V Stromversorgung, RX/Digitaler Pin 0 , und TX/Digital Pin 1 , Pins des Arduino Nano (In Blau werden die im vorherigen Schritt verbundenen Pins angezeigt)

Schritt 16:Und spielen...

Herzlichen Glückwunsch! Sie haben das Projekt abgeschlossen.

Bild 1 zeigt das verbundene und eingeschaltete Projekt an. Wie Sie auf dem Bild und im Video sehen können der Bereich auf dem Nextion-Display zeichnet den Druck , die Temperatur , und die Luftfeuchtigkeit vom BME280-Modul .

Auf Bild 2 Sie können das komplette Visuino sehen Diagramm.

Anbei das Visuino Projekt, das ich für dieses Tutorial erstellt habe. Sie können es herunterladen und in Visuino öffnen :https://www.visuino.com

In derselben ZIP-Datei befindet sich auch der Nextion Editor Projekt für das Nextion Display .

FJE6Y04IWE4O3H6.zip


Herstellungsprozess

  1. Einfache Temperatur und Luftfeuchtigkeit auf Raspberry Pi
  2. Labor ‚Wetterstation‘
  3. Temperatur- und Feuchtigkeitsdatenlogger
  4. Arduino-Temp. Monitor und Echtzeituhr mit 3.2 Display
  5. Mit Nextion Display spielen
  6. DIY Voltmeter mit Arduino und einem Nokia 5110 Display
  7. Sonar mit Arduino und Anzeige bei der Verarbeitung von IDE
  8. So liest man Temperatur und Luftfeuchtigkeit auf Blynk mit DHT11
  9. Erstellen Sie die Fridgeye-App mit einem Nextion-Display
  10. GPS-Standortanzeige mit GPS- und TFT-Display-Schilden