Indholdsfortegnelse:

Offline vejrstation Arduino: 18 trin (med billeder)
Offline vejrstation Arduino: 18 trin (med billeder)

Video: Offline vejrstation Arduino: 18 trin (med billeder)

Video: Offline vejrstation Arduino: 18 trin (med billeder)
Video: Как настроить и подключить интеллектуальную метеостанцию ​​XC0438 к Wi-Fi 2024, Juli
Anonim
Offline vejrstation Arduino
Offline vejrstation Arduino
Offline vejrstation Arduino
Offline vejrstation Arduino
Offline vejrstation Arduino
Offline vejrstation Arduino
Offline vejrstation Arduino
Offline vejrstation Arduino

Resumé

Sidste gang, da jeg købte termometer, så jeg, at der næsten altid er forskel i værdierne. Min opgave var at følge temperaturen og fugtigheden inde i mit barns værelse. Der var også et problem med at læse værdierne fra 2-3 meters rækkevidde på de fleste termometre, og jeg var nødt til at stå op for at se temp-værdien, det problem, jeg har med de fleste termometre, var lyset. Et andet problem var, at jeg ikke kan se temperaturværdien, fordi den er uden baggrundsbelysning for at spare energi. Jeg vil ikke spare energi, jeg har bare brug for et par timers energilagring for at denne enhed kan fungere, hvis hovedlinjen slukker.

Så jeg kom med en idé:

- For at oprette termometer med tilladelse til at ændre temperaturværdien.

- Som kan være med baggrundsbelysning og farver.- At kombinere alle de ting, som almindelige termometre har: (RTC, batteri, min. Max t, osv.)- Og for at have yderligere funktioner som årstider og helligdage

Så jeg startede projektet inden 1 år. Softwaredelen tog mig flere måneder at fuldføre. Jeg har oprettet flere versioner af softwaren, og de sidste 2 uger har jeg gennemført projektet.

Oplysninger om enhedssoftware

Arduino -kode og biblioteker:

Kode uploades også på kode trin.

https://github.com/stlevkov/KT2_144

https://github.com/stlevkov/Arduino-Libraries

Enhedsfunktioner

  • Boot Page - viser dato og klokkeslæt for den sidste firmware -upload.
  • Startside - viser tid, dato, batteriikon, temperaturikon, temperaturværdi, fugtighedsværdi, Tmax, Tmin, årstider, helligdage, USB -indikator, når den er tilsluttet.
  • Menuside - med Temp, Ur, Batteri, Om, Tilbage menuer
  • Temp Page - gør det muligt at kalibrere DHT -sensoren
  • Urside - gør det muligt at redigere tid og dato
  • Batteriside - viser batteriinformation, % procent, mV spænding, opladningsstatus
  • Om side - viser information til forfatteren
  • Tilbage funktion for at forlade menuen
  • Gennemsigtige paneler
  • RTC lang levetid
  • Litiumbatteri - op til ~ 9 timer (450mAh)
  • Indikator for lavt batteri - viser ikonet med rødt ~ resterende 5 min.
  • Forskellige farver til - Lav, Medium, Høj temperatur
  • Helligdage og årstider beskeder
  • Programmerbar stikdåse - på bagsiden
  • Brugergrænseflade - ved hjælp af Rotary Encoder

Bagsiden med tavlen vil ikke være dækket, fordi jeg vil have af baby at se og røre ved tavlen, mens enheden ikke er tændt. Du kan oprette en slags dæksel til bagsiden af brættet.

Trin 1: Tegn enheden, tegn den første idé

Tegn enheden, tegn den første idé
Tegn enheden, tegn den første idé
Tegn enheden, tegn den første idé
Tegn enheden, tegn den første idé
Tegn enheden, tegn den første idé
Tegn enheden, tegn den første idé

Beslut, hvad du skal have - hvor mange sider, menuer, hvordan du ændrer menuerne og siderne.

Hvis du har andre ideer, kan du ændre det med arduino -koden.

Beslut, hvilken form du vil have, og hvad der let kan gøres. Jeg vælger først 3D -print, men beslutter mig derefter for at bruge simpelt materiale.

Ideen er at have gennemsigtige vægge på toppen og i bunden, også kan du oprette mere fin kasse.

Så de vigtigste dele af kassen er:

  1. Front - med Display og Rotary Encoder
  2. Højre - med RTC -modulet
  3. Til venstre - med DHT -modulet
  4. Bagside - med den modsatte side af brættet
  5. Top - Gennemsigtig med 3,7V batteri og tænd/sluk -kontakten
  6. Bund - Gennemsigtig

Trin 2: Vælg de rigtige komponenter

  1. TP4056 Micro USB Charger 5V 1A 18650 Lithium Battery Charging Board - Ebay
  2. 1,44 "128x128 SPI 65K TFT LCD -skærmmodul i fuld farve ST7735 - Ebay
  3. KY -040 Rotary Encoder Module for Arduino - Ebay
  4. DHT22 AM2302 Digital temperatur- og luftfugtighedssensor - Ebay
  5. Tiny RTC I2C Modules 24C32 Memory DS1307 Real Time Clock RTC Module Board - Ebay
  6. Pro Micro Controller Board ATmega328P 16MHz Arduino Pro Mini Module - Ebay
  7. 3,7V 450mAh Lipo genopladeligt batteri - Ebay
  8. 6 pins 2 positioner DPDT On/On Mini Slide Switch - Ebay

  9. CR2032 CR 2032 3V Button Cell Coin Battery - Ebay
  10. 10x22cm Lodningsprototype Kobber -printkort Enkeltside Universal - Ebay
  11. Male & Female 40pin 2.54mm Header Socket Single Row Strip - Ebay

Trin 3: Forbered ledningsdiagram

Forbered ledningsdiagram
Forbered ledningsdiagram

Diagrammet viser tilslutning af de lignende sensorer, mens displayet er næsten det samme.

For korrekt brug af pin, se Arduino -koden i kode -trinnet.

Download fritzing -filen for flere detaljer om pinout. Hold markørerne fra diagrammet for at se modulernes nøjagtige stifter.

Trin 4: Yderligere oplysninger før start - Strømforbrug

Yderligere oplysninger inden start - Strømforbrug
Yderligere oplysninger inden start - Strømforbrug

Projektet bruger 450mAh batteri, men du kan bruge større. Bare se på strømforbruget for at vælge og beregne det rigtige batteri til specifikke timers brug. Ved brug af 450mAh kan enheden køre ca. 9 timer.

I tomgang kører enheden med omkring 0,102A - Ingen energibesparelsesoptimering udføres her

Når der trykkes på knappen, påføres den høje strøm, og den er omkring 0,177A.

Trin 5: Tilslut skærmen

Tilslut skærmen
Tilslut skærmen
Tilslut skærmen
Tilslut skærmen

Displayet bruger SPI til tilslutning.

Der er adafruit -bibliotek til denne driver ST7735.

Trin 6: Tilslut RTC -modul

Tilslut RTC -modul
Tilslut RTC -modul

Opret PCB -ændring For at bruge CR2032 -batteri.

  • Fjern D1
  • Fjern R4
  • Fjern R5
  • Fjern R6
  • Kort R6

Flere oplysninger om denne ændring findes her.

Trin 7: Monter frontvæg med display, RTC, batteri, roterende encoder

Fastgør frontvæg med display, RTC, batteri, roterende encoder
Fastgør frontvæg med display, RTC, batteri, roterende encoder
Fastgør frontvæg med display, RTC, batteri, roterende encoder
Fastgør frontvæg med display, RTC, batteri, roterende encoder
Fastgør frontvæg med display, RTC, batteri, roterende encoder
Fastgør frontvæg med display, RTC, batteri, roterende encoder

Hvis du vil starte enheden op, skal du bare uploade koden fra kode -trinnet og følge de andre trin, mens du ændrer og vedhæfter de nye dele.

Trin 8: Forbered gennemsigtige vægge

Forbered gennemsigtige vægge
Forbered gennemsigtige vægge

Jeg bruger 3 mm plexi. Du kan bruge lignende gennemsigtigt materiale. Jeg bruger kun en til undersiden.

Trin 9: Opret højre væg

Opret højre væg
Opret højre væg
Opret højre væg
Opret højre væg

Opret den højre sidevæg. Brug CR2032 -størrelsen til hullet.

Trin 10: Opret venstre sidevæg

Opret venstre sidevæg
Opret venstre sidevæg
Opret venstre sidevæg
Opret venstre sidevæg
Opret venstre sidevæg
Opret venstre sidevæg

Lav den venstre sidevæg. Brug størrelsen på DHT -modulet til hullet.

Trin 11: Opret stikkontakten med universalbordet og skinnerne, tilslut RTC, encoder, display og display

Opret soklen med universalbordet og skinnerne, tilslut RTC, encoder, display og display
Opret soklen med universalbordet og skinnerne, tilslut RTC, encoder, display og display
Opret soklen med universalbordet og skinnerne, tilslut RTC, encoder, display og display
Opret soklen med universalbordet og skinnerne, tilslut RTC, encoder, display og display
Opret soklen med universalbordet og skinnerne, tilslut RTC, encoder, display og display
Opret soklen med universalbordet og skinnerne, tilslut RTC, encoder, display og display

Tilslut og lod alle stifterne efter tråddiagrammet. Du kan bruge Arduino UNO med tom skitse installeret for at programmere Arduino Mini. Nødvendige stifter:

  • VCC 5V
  • GND
  • RX
  • TX
  • NULSTIL

Glem ikke at trække stikket ud af batteriet 3,7V ved disse trin, hvis du uploader skitsen, inden du er færdig med delene.

Trin 12: Tænd den, før du fortsætter

Image
Image

På dette tidspunkt vil du kunne tænde enheden og bruge alle funktioner.

Brug video -preview til at se, hvad der var softwaren i version 1.1. Der er også github -link i opsummeringstrinnet for at se den seneste opdatering.

Tænd for enheden, før du fortsætter med de andre trin, før du lukker topdækslet, og sørg for, at den fungerer normalt.

Trin 13: Tilføj TP4056 og batteriet, lod lodskiftkontakten, Tilføj ladetråd til pin 5, lod den bageste programmerbare stikkontakt

Tilføj TP4056 og batteriet, loddet lysbåndsafbryder, tilføj opladningskablet til pin 5, lod det bageste programmerbare stik
Tilføj TP4056 og batteriet, loddet lysbåndsafbryder, tilføj opladningskablet til pin 5, lod det bageste programmerbare stik
Tilføj TP4056 og batteriet, loddet lysbåndsafbryder, tilføj opladningskablet til pin 5, lod det bageste programmerbare stik
Tilføj TP4056 og batteriet, loddet lysbåndsafbryder, tilføj opladningskablet til pin 5, lod det bageste programmerbare stik
Tilføj TP4056 og batteriet, Lodde diaskontakten, Tilføj opladningstråd til Pin 5, Lod den bageste programmerbare stikkontakt
Tilføj TP4056 og batteriet, Lodde diaskontakten, Tilføj opladningstråd til Pin 5, Lod den bageste programmerbare stikkontakt

Efter hver lodning, test systemet, kontroller, at delene fungerer fint, inden du fortsætter.

Trin 14: Opret topdækslet

Opret topdækslet
Opret topdækslet
Opret topdækslet
Opret topdækslet
Opret topdækslet
Opret topdækslet

Jeg bruger 0,5 mm plexi -ark fra powerbankboks.

Trin 15: Kode

Brug parametrene i init -sektionen til at definere dine præferencer.

Til ferien bruger jeg bulgarsk. Du kan redigere arrayet ved hjælp af helligdage i dit land.

Enheden viser 4 sæsoner, rediger dem i koden foretrækker din placering.

Hvis dine sensorer er forskellige, skal du følge stifternes definitioner og redigere dem i koden. Jeg har efterladt næsten alle linjens kommentarer for bedre forståelse af koden.

Testede platforme:

  • Arduino UNO
  • Arduino Pro Mini

Tag de biblioteker, du har brug for, fra lageret, brug dem, der er defineret i skitsen.

Trin 16: Test enheden før sidste berøring

Test enheden før sidste berøring
Test enheden før sidste berøring
Test enheden før sidste berøring
Test enheden før sidste berøring
Test enheden før sidste berøring
Test enheden før sidste berøring

Enheden er perfekt, min er kalibreret -4*C, jeg brugte mit Toshiba -klimaanlæg, 2 enkle murede termometre og to digitale termometre til at kalibrere det. Hvis din sensor måler forskellige værdier, kan du nu ændre den.

Trin 17: Grænsefladevisning

Grænsefladevisning
Grænsefladevisning
Grænsefladevisning
Grænsefladevisning
Grænsefladevisning
Grænsefladevisning

Glem ikke at redigere firmwareoplysningerne i init -afsnittet i koden for at vise dine legitimationsoplysninger eller lade dem være, som de er.

Anbefalede: