INHOUDSOPGAWE:

DIY weerstasie met Nextion -skerm en Arduino: 11 stappe
DIY weerstasie met Nextion -skerm en Arduino: 11 stappe

Video: DIY weerstasie met Nextion -skerm en Arduino: 11 stappe

Video: DIY weerstasie met Nextion -skerm en Arduino: 11 stappe
Video: Weather station,❄️🌫️⛈️🌨️🌨️🌤️#arduino #nodemcu #electronics 2024, November
Anonim
Image
Image
Wat u benodig
Wat u benodig

In hierdie handleiding gebruik ons Nextion -skerm, rtc1307 -tydmodule, Arduino UNO en Visuino om die huidige tyd, temperatuur en humiditeit te vertoon.

Kyk na 'n demonstrasievideo.

Stap 1: wat u benodig

Wat u benodig
Wat u benodig
Wat u benodig
Wat u benodig
  • Arduino uno (of nano, mega almal kan gebruik word)
  • Nextion lcd 2.8 duim nx3224t028_011 (enige ander nextion lcd sal ook werk)
  • I2C RTC DS1307 24C32 intydse klokmodule vir Arduino
  • Springdrade
  • Broodbord
  • Visuino -program: Laai Visuino af
  • Nextion Editor -program: Laai hier af

Stap 2: Ontwikkel koppelvlak in Nextion Editor

Ontwikkel koppelvlak in Nextion Editor
Ontwikkel koppelvlak in Nextion Editor
Ontwikkel koppelvlak in Nextion Editor
Ontwikkel koppelvlak in Nextion Editor
Ontwikkel koppelvlak in Nextion Editor
Ontwikkel koppelvlak in Nextion Editor

Maak eers seker dat die SD -kaart in FAT32 geformateer is (gebruik sagteware soos kaartformateerder)

  • Begin die Nextion Editor -sagteware en klik op "Nuut" en stoor u projek in iets soos "Weer"
  • Dan sal die dialoog "Instellings" verskyn, kies die tipe skerm wat u het.
  • 'N Leë wit vel sal geskep word.
  • Sleep 3x prentjie uit die gereedskapskas aan die linkerkant.
  • Klik op die oortjie "Beeld" links onder, klik op die + -knoppie en laai die foto's. U kan 'n paar mooi ikone van die internet aflaai vir tyd, temperatuur en humiditeit (soos Iconarchive -webwerf)
  • Kies elke prentelement en dubbelklik in die venster "Kenmerk" regs onder op die prentjie-veld en kies die prentjie, doen dit vir elke prentelement (3x).

Klik in die spyskaart op "Tools> Font generator"

  • Skep die lettertipe wat gebruik sal word om tyd, temperatuur en humiditeit te vertoon en stel die naam soos "MyFont1"
  • Klik op "Genereer lettertipe" en stoor dit êrens wanneer u gevra word "Voeg die gegenereerde lettertipe by?" klik op Ja.
  • Sluit die dialoogkassie en die gegenereerde lettertipe verskyn op die onderkant van die blad "Lettertipes" met die ID 0
  • Plaas dit in die Gereedskapkas aan die linkerkant 3x "teks" waar dit die data sal wys
  • Vir elke tekselement wat regs onder in die "Kenmerke" -venster gestel is, kan u die lettertipe op 0 <die ID van die lettertipe wat u voorheen gegenereer het, gebruik om verskeie lettertipes te gebruik en ID vir elke tekselement in te stel
  • U kan die standaard tekswaarde onder 'txt' veld stel, byvoorbeeld 'Tyd', 'C', '%
  • U kan die kleur stel deur op die "pco" -veld te klik. Let daarop dat elke tekselement 'n sekere voorwerpnaam het, soos "t0" ens. Dit sal later in Visuino gebruik word
  • U kan die naam van elke voorwerp vind onder die venster 'attribute'> objname

As u al die elemente geplaas en geplaas het:

  • klik op die "Compile" knoppie
  • klik op die spyskaart "File"> "Open Build Folder", vind die lêer in ons geval "Weather.tft" en kopieer dit na die SD -kaart.

Stap 3: Die stroombaan

Die stroombaan
Die stroombaan
  • Koppel Arduino -pen [5v] aan broodbord Positiewe pen [Rooi]
  • Koppel Arduino -pen [GND] aan broodbord Negatiewe pen [Blou]
  • Koppel DHT11-sensorpen [-] aan Arduino-pen [GND]
  • Koppel DHT11-sensorpen [-] aan die positiewe pen van die broodbord [Rooi]
  • Koppel DHT11 -sensor seinpen [S] aan Arduino digitale pen [7]
  • Koppel Time DS1307 -modulepen [Vcc] aan die positiewe pen van die broodbord [Rooi]
  • Koppel Time DS1307 -modulepen [GND] aan die negatiewe pen van die bord [Blou]
  • Koppel Time DS1307 -modulepen [SDA] aan Arduino -pen [SDA]
  • Koppel Time DS1307 -modulepen [SCL] aan Arduino -pen [SCL]
  • Koppel Nextion Display pin [VCC] aan op broodbord positiewe pin [Red]
  • Koppel Nextion Display pin [GND] aan op broodbord negatiewe pin [Blue]
  • Koppel Nextion Display pin [RX] aan op Arduino pin [TX]
  • Koppel Nextion Display pin [TX] aan op Arduino pin [RX]

Stap 4: Begin Visuino en kies die tipe Arduino UNO -bord

Begin Visuino en kies die tipe Arduino UNO -bord
Begin Visuino en kies die tipe Arduino UNO -bord
Begin Visuino en kies die tipe Arduino UNO -bord
Begin Visuino en kies die tipe Arduino UNO -bord

Om die Arduino te begin programmeer, moet u die Arduino IDE van hier af laat installeer:

Hou in gedagte dat daar 'n paar kritieke foute in Arduino IDE 1.6.6 is. Maak seker dat u 1.6.7 of hoër installeer, anders werk hierdie instruksie nie! As u dit nog nie gedoen het nie, volg die stappe in hierdie instruksie om die Arduino IDE op te stel om Arduino UNO te programmeer! Die Visuino: https://www.visuino.eu moet ook geïnstalleer word. Begin Visuino soos aangedui op die eerste foto Klik op die "Tools" -knoppie op die Arduino -komponent (prent 1) in Visuino As die dialoog verskyn, kies "Arduino UNO" soos op prent 2

Stap 5: Voeg komponente by in Visuino

Voeg komponente by in Visuino
Voeg komponente by in Visuino
Voeg komponente by in Visuino
Voeg komponente by in Visuino
Voeg komponente by in Visuino
Voeg komponente by in Visuino
  1. Voeg die "Start" -komponent by
  2. Voeg die komponent "Real Time Clock (RTC) DS 1307" by
  3. Voeg die komponent "Klokgenerator" by
  4. Voeg die komponent "Humidity and Thermometer DHT11" by
  5. Voeg 2x "Analoog na teks" -komponent by
  6. Voeg die komponent "Decode (Split) datetime" by
  7. Voeg die komponent "Nextion Display" by

Stap 6: In Visuino -stelkomponente

In Visuino -stelkomponente
In Visuino -stelkomponente
In Visuino -stelkomponente
In Visuino -stelkomponente
In Visuino -stelkomponente
In Visuino -stelkomponente

Dubbelklik op die "RealTimeClock1" -komponent, die venster met elemente sal oopmaak en:

  • Sleep 'Stel dag' en stel die 'waarde' in die venster 'Eienskappe' na u huidige datum
  • Sleep 'Stel jaar' en stel onder die venster 'Eienskappe' die 'waarde' na u huidige jaar
  • Sleep "Stel maand" in en stel onder die venster "Eienskappe" die waarde in na u huidige maand
  • Sleep "Stel uur" en stel onder die venster "Eienskappe" die waarde na u huidige uur
  • Sleep 'Stel minuut' in en stel onder 'Eienskappe' die 'Waarde' na u huidige minute

Kies "FormattedText1" -komponent en stel onder die eienskappe venster "teks" in:%0:%1:%2

Dubbelklik op die komponent "FormattedText1", die venster met die elemente sal oopmaak en:

Sleep 3x "Tekselement" na links

Dubbelklik op die komponent "DisplayNextion1", die venster met die elemente sal oopmaak en:

Sleep 3x "Teks" -element na links en vir elke elementstel:

  • vir die eerste element, noem dit: Tyd
  • vir die tweede element, noem dit: Temperatuur
  • vir die derde element, noem dit: Humiditeit
  • Vir elke elementstel "Bladsyindeks": 0
  • vir die eerste elementstel "Elementnaam": t0 (dit is die naam wat sigbaar is in die Nextion -redakteur bo elke element, in my geval sy t0)
  • vir die tweede elementstel "Elementnaam": t1 (dit is die naam wat in die Nextion -redakteur bo elke element sigbaar is, in my geval sy t1)
  • vir die tweede elementstel "Elementnaam": t2 (dit is die naam wat sigbaar is in die Nextion -redakteur bo elke element in my geval sy t2)

Stap 7: In Visuino Connect -komponente

In Visuino Connect -komponente
In Visuino Connect -komponente
  • Koppel "Start1" -pen "Uit" aan "RealTimeClock1"> "Stel dag1" -pen "klok" in
  • Koppel "Start1" -pen "Uit" aan "RealTimeClock1"> "Stel uur1" -pen "klok" aan
  • Koppel "Start1" -pen "Uit" aan "RealTimeClock1"> "Stel jaar1" -pen "klok" in
  • Koppel "Start1" -pen "Uit" aan "RealTimeClock1"> "Stel maand1" -pen "klok" in
  • Koppel "Start1" -pen "Uit" aan "RealTimeClock1"> "Stel minuut1" -pen "klok" in
  • Koppel "RealTimeClock1" -komponentpen [Uit] aan "DecodeDateTime1" -pen [In]
  • Koppel die "RealTimeClock1" -komponentpen [Control] aan die Arduino -bord I2C -pen [In]
  • Koppel "ClockGenerator1" komponentpen [Uit] aan "HumidityThermometer1" komponentpen [Klok]
  • Koppel "DecodeDateTime1" -komponent om [Uur] aan "FormattedText1"> "Textelement1" -pen [In] vas te maak
  • Koppel "DecodeDateTime1" -komponent om [Uur] aan "FormattedText1"> "Textelement2" -pen [In] vas te maak
  • Koppel "DecodeDateTime1" -komponent om [Uur] vas te maak aan "FormattedText1"> "Textelement3" -pen [In]
  • Koppel "HumidityThermometer1" komponentpen [Temperatuur] aan "AnalogToText1" komponentpen [In]
  • Koppel die komponentpen "HumidityThermometer1" [Humidity] aan die komponentpen "AnalogToText2" [In]
  • Koppel die komponentpen [Sensor] van "HumidityThermometer1" aan die digitale pen van Arduino -bord [7]
  • Koppel "FormattedText1" komponentpen [Uit] aan "DisplayNextion1" komponentpen Tyd [In]
  • Koppel "AnalogToText1" komponentpen [Uit] aan "DisplayNextion1" komponentpen Temperatuur [In]
  • Koppel "AnalogToText2" komponentpen [Uit] aan "DisplayNextion1" komponentpen Humiditeit [In]

Koppel "DisplayNextion1" -pen [Uit] aan arduino -bord "Seriële [0]" -pen [In]

Stap 8: Kopieer Nextion -lêer na SD -kaart

Maak seker dat u die Nextion -lêer op die SD -kaart het

  • Skakel die Nextion -skerm uit
  • Plaas die SD -kaart in die Nextion -skerm
  • Skakel Nextion -skerm aan en u sal die vordering sien met die opdatering van die Nextion -skerm
  • Skakel die Nextion -skerm uit
  • Verwyder die SD -kaart uit die Nextion -skerm

Nou is die Nextion -skerm gereed.

Stap 9: Genereer, stel op en laai die Arduino -kode op

Genereer, stel op en laai die Arduino -kode op
Genereer, stel op en laai die Arduino -kode op
Genereer, stel op en laai die Arduino -kode op
Genereer, stel op en laai die Arduino -kode op

Druk in Visuino F9 of klik op die knoppie op prent 1 om die Arduino -kode te genereer, en maak die Arduino IDE oop In die Arduino IDE klik op die oplaai -knoppie om die kode saam te stel en op te laai (prent 2) Let op:

Maak seker dat u die kode na Arduino oplaai om die Arduino -pen [RX] en die Arduino -pen [TX] te ontkoppel Nadat die oplaai klaar is, koppel die Arduino -pen [RX] en Arduino -pen [TX] weer aan

Stap 10: Speel

As u die Arduino UNO -module aanskakel, sal die skerm die huidige temperatuur en humiditeitsvlak + tyd wat u in Visuino ingestel het, wys. Baie geluk! U het u Weerstasie -projek met Visuino voltooi.

Die Visuino -projek wat ek vir hierdie instruksies geskep het, is ook aangeheg. U kan dit in Visuino aflaai en oopmaak:

en

Nextion -lêer vir Nextion Editor (Weather. HMI) en saamgestelde Nextion -lêer (Weather.tft) wat u direk na u Nextion -skerm kan kopieer.

Stap 11: Hulpbronne

U kan ook hierdie wonderlike tutoriaal raadpleeg om te leer hoe u met Nextion Displays werk:

Aanbeveel: