Indholdsfortegnelse:
- Trin 1: Forberedelse af sensorer
- Trin 2: Forberedelse af hovedprocessoren
- Trin 3: Forberedelse af systemet
- Trin 4: Forberedelse af datalogning
- Trin 5: Forberedelse af værktøjerne
- Trin 6: Nulstil DS1307 Real Time Clock (RTC) på dataloggingsmodul
- Trin 7: Tilslutning
- Trin 8: Programmering af MCU
- Trin 9: Test det og brug det
Video: Et simpelt indendørs observatorium: 9 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Dette projekt viser dig, hvordan du laver et simpelt observatorium med nogle eksisterende og let erhvervede sensorer. Faktisk byggede jeg dette til en af mine elever. Eleven vil gerne finde ud af, hvordan sollyset påvirker rumtemperaturen og fugtigheden. De interesserede fysiske størrelser i dette projekt er (1) lysintensitet, (2) fugtighed, (3) temperatur og (4) lufttryk. Med disse oplysninger ville du være i stand til at lave andre systemer eller enheder til at styre et klimaanlæg, en luftfugter eller en varmelegeme til at skabe et behageligt rummiljø.
Trin 1: Forberedelse af sensorer
Du kan bygge kredsløbet med følgende sensorer eller simpelthen købe modulkortene på disse sensorer eller modulkort.
1. Sensor til omgivende lys TEMT6000 (datablad PDF)
2. Tryk og temperatur BMP085 eller BMP180 (*det er gamle produkter, du skal muligvis finde andre alternativer) (læringsdokument fra Adafruit)
3. Temperatur- og fugtighedssensor DHT11 (læringsdokument fra Adafruit)
4. UV-lyssensor GUVA-S12SD (datablad PDF)
Til brug af sensorer har jeg vedhæftet nogle referencelinks. Du finder muligvis nogle nyttige selvstudier og referencer på internettet.
Trin 2: Forberedelse af hovedprocessoren
Jeg har valgt Arduino Uno -kortet til at teste systemet og kodningen. Jeg fandt imidlertid ud af, at atmega328P ikke har hukommelse nok til at gemme og køre koden, hvis der tilføjes flere sensorer. Således anbefaler jeg, at du kan bruge atmega2560 Arduino board, når du har brug for mere end 4 sensorer.
Micro controller (MCU):
· Atmega328P -bord til Arduino
· Eller Atmega2560 bord til Arduino
Trin 3: Forberedelse af systemet
Jeg vil gerne måle nogle fysiske egenskaber ude og inde. Endelig sluttede jeg følgende sensorer til et Atmega2560 -kort.
Indendørs miljø:
1. Tryk og temperatur BMP180 x 1 stk
2. Temperatur- og fugtighedsføler DHT11 x 1 stk
Udendørs miljø:
1. Omgivende lyssensor TEMT6000 x 1 stk
2. Tryk og temperatur BMP085 x 1 stk
3. Temperatur- og fugtighedsføler DHT11 x 1 stk
4. UV-lyssensor GUVA-S12SD x 1 stk
Du vil måske opleve, at jeg brugte forskellige sensorer til at måle trykket. Det er bare fordi jeg ikke har BMP180 -modulkort, da jeg byggede kredsløbet. Jeg anbefaler, at du bruger de samme sensorer, hvis du skal have en præcis måling og en rimelig sammenligning.
Trin 4: Forberedelse af datalogning
Derudover vil jeg gerne have, at enheden gemmer dataene uden at oprette forbindelse til en computer. Jeg tilføjede et dataloggingsmodul med et ur i realtid. Det følgende er punkterne til datalogning og ledningsforbindelse.
· SD kort
· CR1220 møntbatteri
· Dataloggingsmodul til Arduino (læringsdokument fra Adafruit)
Trin 5: Forberedelse af værktøjerne
Følgende er nogle værktøjer eller enheder, der ville være nødvendige for at bygge kredsløbet.
- 30AWG Indpakningsværktøj
- Loddekolbe
- Loddetråd (uden ledning)
- Brødbræt
- 2,54 mm overskrifter
- Jumper ledninger
- Indpakningstråde (30AWG)
- Varm lim
- 3D -udskrivning (hvis du har brug for etui til din enhed)
- Arduino IDE (Vi har brug for dette for at programmere mikrokontrolkortet)
Trin 6: Nulstil DS1307 Real Time Clock (RTC) på dataloggingsmodul
Jeg vil gerne bruge dataene til videnskabeligt eksperiment. Således er en korrekt målingstid vigtig for dataanalyse. Brug af funktionen delay () i programmeringen ville medføre målefejl ved tidsforskydning. Tværtimod ved jeg ikke, hvordan jeg udfører en præcis realtidsmåling på Arduino -platformen. For at undgå prøveudtagningsfejl eller minimere målefejlen, vil jeg gerne tage hver måleprøve med en tidsrekord. Heldigvis har dataloggingsmodulet et real -time ur (RTC). Vi kan bruge det til at udsende tiden til datasampling.
For at bruge RTC følger jeg instruktionen (link) for at nulstille RTC. Jeg anbefaler først at gøre dette med Arduino Uno -kortet. Det er fordi du skal ændre kredsløbet, når Atmega2560 -kortet bruges (I2C -forbindelse er en anden). Når du har indstillet RTC, bør du ikke fjerne cr1220 -batteriet. Kontroller i mellemtiden batteriets tilstand før datalogningen.
Trin 7: Tilslutning
Jeg har adskilt indendørs og udendørs måling. Således har jeg lavet to headere til at forbinde to forskellige grupper af sensorer. Jeg brugte det tomme rum på dataloggingsmodulet til at montere overskrifterne. For at fuldføre kredsløbstilslutningen bruger jeg både lodning og indpakning. Indpakningsprocessen er ren og praktisk, mens loddesamlingen er stærk og sikret. Du kan vælge en behagelig metode til at bygge kredsløbet. Hvis du bruger Atmega2560 -kortet, skal du sørge for, at du har bygget en springforbindelse til SDA- og SCL -ben. Forbindelsen af RTC på datalogningskærmen skal tilsluttes igen.
For at forbinde sensorerne lodde jeg overskrifterne på sensormodulerne, og derefter brugte jeg trådindpakning til at forbinde alle sensorer med overskrifterne. Når du bruger spændende sensormoduler, anbefalede jeg, at du omhyggeligt kontrollerer driftsspændingen. Nogle sensormoduler accepterer både 5V og 3.3V indgange, men nogle er begrænset til kun at bruge enten 5V eller 3.3V. Følgende tabel viser de brugte sensormoduler og driftsspændingen.
Bord. Sensormodul og driftsspænding
Trin 8: Programmering af MCU
Heldigvis kan jeg finde applikationseksemplerne for alle sensorerne. Hvis du er ny til at bruge dem, kan du downloade dem på internettet, eller du kan installere dem ved hjælp af biblioteksadministratoren i Arduino IDE.
Jeg programmerede systemoutput en streng for hver prøve. Strengen udsendes og gemmes på det monterede SD -kort. Hvis du har brug for at se dataene, skal du slukke for enheden og derefter afmontere SD -kortet. Derefter kan du montere SD -kortet på en kortlæser. Filen gemmes som en csv -fil. Når du har downloadet datafilen til computeren, kan du se den med et tekstprogram eller et regnearksprogram.
(Du kan downloade kildekoden i den vedhæftede fil.)
Trin 9: Test det og brug det
Det er vigtigt, at du forstår betydningen af dataene. Prøveudtagningsfrekvens er en af de vigtige parametre. Det aktuelle målingsinterval er 1 min., Du skal muligvis ændre det.
Derudover vil du finde, at temperaturmålingen af DHT11 ikke er nøjagtig. Hvis du har brug for en mere præcis værdi, kan du bare bruge temperaturaflæsning af BMP -trykfølere.
Tak fordi du læste dette!
Anbefalede:
Indendørs luftkvalitetsmåler: 5 trin (med billeder)
Indendørs luftkvalitetsmåler: Enkelt projekt for at kontrollere luftkvaliteten i dit hus. Da vi bliver/arbejder hjemmefra meget på det seneste, kan det være en god idé at overvåge luftkvaliteten og minde dig selv om, hvornår det er tid til at åbne vinduet og få lidt frisk luft ind
Bærbart indendørs lys med 100W LED -chip: 26 trin (med billeder)
Bærbart indendørs lys med 100W LED -chip: I denne instruerbare / video vil jeg vise dig, hvordan jeg lavede bærbart indendørs lys med 100W LED -chip, der drives med 19V 90W strømforsyning fra en gammel bærbar. UPDATE 2 (FINAL): Temperatur omkring LED'en (37C stabil @85W efter 30 minutter i et 20C rum)
Smart indendørs planteovervågning - vide, hvornår dit anlæg skal vandes: 8 trin (med billeder)
Smart indendørs planteovervågning - ved, hvornår din plante skal vandes: For et par måneder siden lavede jeg en jordfugtighedsovervågningspind, der er batteridrevet og kan sidde fast i jorden i din indendørs plantes potte for at give dig nogle nyttige oplysninger om jorden fugtighedsniveau og flash -lysdioder for at fortælle dig, hvornår du skal vente
E.T. - UHF indendørs tv -antenne: 12 trin (med billeder)
E.T. - UHF indendørs tv -antenne: Hvis du ikke kan bruge den rigtige udendørs tv -antenne, sidder du sandsynligvis fast med "kaninører". De bruger lille, indbygget loop -antenne til at modtage UHF -udsendelser, mens teleskopstænger kun bruges til at modtage VHF -udsendelser. De fleste af de digitale terrestriske t
Simpelt Arduino-baseret ergometer display med differentiel feedback: 7 trin (med billeder)
Enkel Arduino-baseret ergometer display med differentiel feedback: Konditionstræning er kedelig, især når du træner indendørs. Flere eksisterende projekter forsøger at afhjælpe dette ved at lave fede ting som f.eks. At koble ergometeret til en spillekonsol eller endda simulere en rigtig cykeltur i VR. Spændende som det