Innehållsförteckning:

Offline väderstation Arduino: 18 steg (med bilder)
Offline väderstation Arduino: 18 steg (med bilder)

Video: Offline väderstation Arduino: 18 steg (med bilder)

Video: Offline väderstation Arduino: 18 steg (med bilder)
Video: Weather Station Receiver V4.0 2024, November
Anonim
Offline väderstation Arduino
Offline väderstation Arduino
Offline väderstation Arduino
Offline väderstation Arduino
Offline väderstation Arduino
Offline väderstation Arduino
Offline väderstation Arduino
Offline väderstation Arduino

Sammanfattning

Senast flera gånger när jag köpte termometer såg jag att det nästan alltid är skillnader i värdena. Min uppgift var att följa temperaturen och luftfuktigheten i mitt barns rum. Det var också problem med att läsa värdena från 2-3 meters räckvidd på de flesta termometrar och jag behövde stå upp för att se temp-värdet, problemet som jag har med de flesta termometrarna var ljuset. Ett annat problem var att jag inte kan se temperaturvärdet eftersom det är utan bakgrundsbelysning för att spara energi. Jag vill inte spara energi, jag behöver bara ett par timmars energilagring för att den här enheten ska fungera om huvudledningen stängs av.

Så jag fick en idé:

- För att skapa termometer med möjlighet att ändra temperaturvärdet.

- Vilket kan vara med bakgrundsbelysning och färger.- För att kombinera alla saker som vanliga termometrar har: (RTC, batteri, Min Max t, etc)- Och för att ha ytterligare funktioner som årstider och helgdagar

Så jag startade projektet före 1 år. Programvaran tog mig flera månader att slutföra. Jag har skapat flera versioner av programvaran, och de senaste två veckorna har jag slutfört projektet.

Information om enhetens programvara

Arduino -kod och bibliotek:

Koden laddas också upp på kodsteg.

https://github.com/stlevkov/KT2_144

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

Enhetsfunktioner

  • Startsida - visar datum och tid för den senaste firmwareuppladdningen.
  • Hemsida - visar tid, datum, batteriikon, temperaturikon, temperaturvärde, luftfuktighetsvärde, Tmax, Tmin, årstider, helgdagar, USB -indikator när den är ansluten.
  • Menysida - med Temp, Klocka, Batteri, Om, Tillbaka menyer
  • Temp Page - gör det möjligt att kalibrera DHT -sensorn
  • Klocksida - gör det möjligt att redigera tid och datum
  • Batterisida - visar batteriinformation, % procent, mV spänning, laddningsstatus
  • Om sidan - visar information för författaren
  • Tillbaka -funktion för att lämna menyn
  • Genomskinliga paneler
  • RTC lång livslängd
  • Litiumbatteri - upp till ~ 9 timmar (450mAh)
  • Indikator för lågt batteri - visar ikonen i rött ~ återstående 5 min.
  • Olika färger för - Låg, Medium, Hög temperatur
  • Helgdagar och årstider meddelanden
  • Programmerbart uttag - på baksidan
  • Användargränssnitt - med Rotary Encoder

Baksidan med brädet kommer inte att täckas, för jag vill att barnet ska se och röra vid brädet medan enheten inte är påslagen. Du kan skapa ett slags lock för brädans baksida.

Steg 1: Skissa enheten, rita den första idén

Skissa enheten, rita den första idén
Skissa enheten, rita den första idén
Skissa enheten, rita den första idén
Skissa enheten, rita den första idén
Skissa enheten, rita den första idén
Skissa enheten, rita den första idén

Bestäm vad du ska ha - hur många sidor, menyer, hur du ändrar menyerna och sidorna.

Om du har andra idéer kan du ändra det med arduino -koden.

Bestäm vilken form du vill ha och vad som kan göras enkelt. Jag väljer först 3D -utskrift, men efter det bestämmer jag mig för att använda enkelt material.

Tanken är att ha transparenta väggar på toppen och på undersidan, också kan du skapa mer fin låda.

Så lådans huvuddelar är:

  1. Framsida - med display och roterande kodare
  2. Höger - med RTC -modulen
  3. Vänster - med DHT -modulen
  4. Baksida - med den motsatta sidan av brädet
  5. Topp - Genomskinlig med 3,7V batteri och ON/OFF skjutreglage
  6. Botten - Genomskinlig

Steg 2: Välj rätt komponenter

  1. TP4056 Micro USB -laddare 5V 1A 18650 litiumbatteriladdningskort - Ebay
  2. 1,44 "128x128 SPI 65K TFT LCD -skärmsmodul ST7735 - Ebay
  3. KY -040 Rotary Encoder Module för Arduino - Ebay
  4. DHT22 AM2302 Digital temperatur- och luftfuktighetssensor - 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 uppladdningsbart batteri - Ebay
  8. 6 pins 2 positioner DPDT On/On Mini Slide Switch - Ebay

  9. CR2032 CR 2032 3V knappcellsmyntbatteri - Ebay
  10. 10x22cm Lödningsprototyp Kopparkortskiva Enkel sida Universal - Ebay
  11. Male & Female 40pin 2.54mm Header Socket Single Row Strip - Ebay

Steg 3: Förbered kopplingsschema

Förbered kopplingsschema
Förbered kopplingsschema

Diagrammet visar anslutning av liknande sensorer, medan skärmen är nästan densamma.

För korrekt användning av stift, se Arduino -koden i kodsteget.

Ladda ner fritzing -filen för mer information om pinout. Håll muspekarna från diagrammet för att se de exakta stiften på modulerna.

Steg 4: Ytterligare information före start - Strömförbrukning

Ytterligare information före start - Strömförbrukning
Ytterligare information före start - Strömförbrukning

Projektet använder 450mAh batteri, men du kan använda större. Titta bara på strömförbrukningen för att välja och beräkna rätt batteri för specifika timmar. Vid användning av 450mAh kan enheten köra ca. 9 timmar.

I viloläge kör enheten med cirka 0,102A - Ingen energibesparingsoptimering görs här

När du trycker på knappen appliceras den höga strömmen och den ligger runt 0,177A.

Steg 5: Anslut skärmen

Anslut skärmen
Anslut skärmen
Anslut skärmen
Anslut skärmen

Displayen använder SPI för anslutning.

Det finns adafruit -bibliotek för den här föraren ST7735.

Steg 6: Anslut RTC -modulen

Anslut RTC -modul
Anslut RTC -modul

Skapa PCB -modifiering För att använda CR2032 -batteri.

  • Ta bort D1
  • Ta bort R4
  • Ta bort R5
  • Ta bort R6
  • Kort R6

Mer information om denna ändring finns här.

Steg 7: Fäst frontväggen med displayen, RTC, batteri, roterande kodare

Fäst frontväggen med displayen, RTC, batteri, roterande kodare
Fäst frontväggen med displayen, RTC, batteri, roterande kodare
Fäst frontväggen med displayen, RTC, batteri, roterande kodare
Fäst frontväggen med displayen, RTC, batteri, roterande kodare
Fäst frontväggen med displayen, RTC, batteri, roterande kodare
Fäst frontväggen med displayen, RTC, batteri, roterande kodare

Om du vill starta upp enheten laddar du bara upp koden från kodsteget och följer de andra stegen medan du ändrar och bifogar de nya delarna.

Steg 8: Förbered transparenta väggar

Förbered transparenta väggar
Förbered transparenta väggar

Jag använder 3 mm plexi. Du kan använda liknande transparent material. Jag använder bara en för undersidan.

Steg 9: Skapa höger vägg

Skapa höger vägg
Skapa höger vägg
Skapa höger vägg
Skapa höger vägg

Skapa höger sidovägg. Använd CR2032 -storleken för hålet.

Steg 10: Skapa vänster sidovägg

Skapa vänster sidovägg
Skapa vänster sidovägg
Skapa vänster sidovägg
Skapa vänster sidovägg
Skapa vänster sidovägg
Skapa vänster sidovägg

Skapa vänster sidovägg. Använd storleken på DHT -modulen för hålet.

Steg 11: Skapa uttaget med Universal Board och Rails, Anslut RTC, Encoder, Display och Display

Skapa uttaget med Universal Board och Rails, Connect RTC, Encoder, Display and Display
Skapa uttaget med Universal Board och Rails, Connect RTC, Encoder, Display and Display
Skapa uttaget med universalbordet och skenorna, anslut RTC, kodare, display och display
Skapa uttaget med universalbordet och skenorna, anslut RTC, kodare, display och display
Skapa uttaget med Universal Board och Rails, Connect RTC, Encoder, Display and Display
Skapa uttaget med Universal Board och Rails, Connect RTC, Encoder, Display and Display

Anslut och löd alla stiften enligt tråddiagrammet. Du kan använda Arduino UNO med tom skiss installerad för att programmera Arduino Mini. Nålar som behövs:

  • VCC 5V
  • GND
  • RX
  • TX
  • ÅTERSTÄLLA

Glöm inte att koppla ur batteriet 3,7V vid dessa steg om du laddar upp skissen innan du slutar med delarna.

Steg 12: Slå på den innan du fortsätter

Image
Image

Vid denna tidpunkt kommer du att kunna slå på enheten och använda alla funktioner.

Använd videoförhandsgranskningen för att se vad som var programvaran på version 1.1. Det finns också github -länk i sammanfattningssteget för att se den senaste uppdateringen.

Slå på enheten innan du fortsätter med de andra stegen innan du stänger topplocket, se till att den fungerar normalt.

Steg 13: Lägg till TP4056 och batteriet, löd skjutkontakten, lägg till laddtråd till stift 5, löd det bakre programmerbara uttaget

Lägg till TP4056 och batteriet, löd skjutkontakten, lägg till laddningstråd till stift 5, löd det bakre programmerbara uttaget
Lägg till TP4056 och batteriet, löd skjutkontakten, lägg till laddningstråd till stift 5, löd det bakre programmerbara uttaget
Lägg till TP4056 och batteriet, löd skjutkontakten, lägg till laddningstråd till stift 5, löd det bakre programmerbara uttaget
Lägg till TP4056 och batteriet, löd skjutkontakten, lägg till laddningstråd till stift 5, löd det bakre programmerbara uttaget
Lägg till TP4056 och batteriet, löd skjutkontakten, lägg till laddningstråd till stift 5, löd det bakre programmerbara uttaget
Lägg till TP4056 och batteriet, löd skjutkontakten, lägg till laddningstråd till stift 5, löd det bakre programmerbara uttaget

Efter varje lödning, testa systemet, se till att delarna fungerar bra innan du fortsätter.

Steg 14: Skapa det övre omslaget

Skapa det övre omslaget
Skapa det övre omslaget
Skapa det övre omslaget
Skapa det övre omslaget
Skapa det övre omslaget
Skapa det övre omslaget

Jag använder 0,5 mm plexi -ark från powerbank -lådan.

Steg 15: Kod

Använd parametrarna i init -sektionen för att definiera dina preferenser.

För semestern använder jag bulgariska. Du kan redigera matrisen med helgdagarna i ditt land.

Enheten visar 4 säsonger, redigera dem i koden föredrar din plats.

Om dina sensorer är olika, följ stiftdefinitionerna och redigera dem i koden. Jag har lämnat nästan alla rader kommentarer för bättre förståelse av koden.

Testade plattformar:

  • Arduino UNO
  • Arduino Pro Mini

Ta de bibliotek du behöver från förvaret, använd de som definieras i skissen.

Steg 16: Testa enheten innan sista handen

Testa enheten innan sista handen
Testa enheten innan sista handen
Testa enheten innan sista handen
Testa enheten innan sista handen
Testa enheten innan sista handen
Testa enheten innan sista handen

Enheten är perfekt, min är kalibrerad -4*C, jag använde min Toshiba luftkonditionering, 2 enkla väggiga termometrar och två digitala termometrar för att kalibrera den. Om din sensor mäter olika värden kan du nu ändra den.

Steg 17: Granskning av gränssnitt

Granskning av gränssnitt
Granskning av gränssnitt
Granskning av gränssnitt
Granskning av gränssnitt
Granskning av gränssnitt
Granskning av gränssnitt

Glöm inte att redigera firmware -informationen i init -avsnittet i koden för att visa dina uppgifter eller lämna den som den är.

Rekommenderad: