Innholdsfortegnelse:

Et enkelt innendørs observatorium: 9 trinn (med bilder)
Et enkelt innendørs observatorium: 9 trinn (med bilder)

Video: Et enkelt innendørs observatorium: 9 trinn (med bilder)

Video: Et enkelt innendørs observatorium: 9 trinn (med bilder)
Video: På sporene af en gammel civilisation? 🗿 Hvad hvis vi har taget fejl på vores fortid? 2024, Juli
Anonim
Et enkelt innendørs observatorium
Et enkelt innendørs observatorium

Dette prosjektet vil vise deg hvordan du lager et enkelt observatorium med noen eksisterende og lett ervervede sensorer. Faktisk, jeg bygde dette for en av mine studenter. Studenten vil finne ut hvordan sollyset påvirker romtemperaturen og fuktigheten. De interesserte fysiske størrelsene i dette prosjektet er (1) lysintensitet, (2) fuktighet, (3) temperatur og (4) lufttrykk. Med denne informasjonen vil du kunne lage andre systemer eller enheter for å kontrollere et klimaanlegg, en luftfukter eller en varmeapparat for å lage et komfortabelt rommiljø.

Trinn 1: Forberede sensorer

Forbereder sensorer
Forbereder sensorer

Du kan bygge kretsen med følgende sensorer eller ganske enkelt kjøpe modulkortene til disse sensorene eller modulkortet.

1. Sensor for omgivende lys TEMT6000 (datablad PDF)

2. Trykk og temperatur BMP085 eller BMP180 (*de er gamle produkter, du må kanskje finne andre alternativer) (læringsdokument fra Adafruit)

3. Temperatur- og fuktighetssensor DHT11 (læringsdokument fra Adafruit)

4. UV-lyssensor GUVA-S12SD (datablad PDF)

For bruk av sensorer har jeg lagt ved noen referanselinker. Du kan finne noen nyttige opplæringsprogrammer og referanser på internett.

Trinn 2: Klargjøring av hovedprosessoren

Forbereder hovedprosessoren
Forbereder hovedprosessoren

Jeg har valgt Arduino Uno -kortet for å teste systemet og kodingen. Imidlertid fant jeg ut at atmega328P ikke har nok minne til å lagre og kjøre koden hvis flere sensorer legges til. Derfor anbefaler jeg at du kan bruke atmega2560 Arduino -kort når du trenger mer enn 4 sensorer.

Mikrokontroller (MCU):

· Atmega328P -brett for Arduino

· Eller Atmega2560 -brett for Arduino

Trinn 3: Klargjøring av systemet

Forbereder systemet
Forbereder systemet
Forbereder systemet
Forbereder systemet

Jeg vil gjerne måle noen fysiske egenskaper på utendørs og innendørs. Til slutt koblet jeg følgende sensorer til et Atmega2560 -kort.

Innemiljø:

1. Trykk og temperatur BMP180 x 1 stk

2. Temperatur- og fuktighetssensor DHT11 x 1 stk

Utemiljø:

1. Sensor for omgivelseslys TEMT6000 x 1 stk

2. Trykk og temperatur BMP085 x 1 stk

3. Temperatur- og fuktighetssensor DHT11 x 1 stk

4. UV-lyssensor GUVA-S12SD x 1 stk

Du kan finne ut at jeg brukte forskjellige sensorer for å måle trykket. Det er bare fordi jeg ikke hadde BMP180 -modulkort da jeg bygde kretsen. Jeg anbefaler at du bruker de samme sensorene hvis du trenger en nøyaktig måling og en rettferdig sammenligning.

Trinn 4: Forberede datalogging

I tillegg vil jeg at enheten skal lagre dataene uten å koble til en datamaskin. Jeg la til en dataloggingsmodul med en sanntidsklokke. Det følgende er elementene for datalogging og tilkobling av ledninger.

· SD kort

· CR1220 myntbatteri

· Dataloggingsmodul for Arduino (læringsdokument fra Adafruit)

Trinn 5: Forberede verktøyene

Følgende er noen verktøy eller enheter som vil være nødvendige for å bygge kretsen.

  • 30AWG Innpakningsverktøy
  • Loddejern
  • Loddetråd (uten ledning)
  • Brødbrett
  • 2,54 mm hoder
  • Jumper ledninger
  • Wrapping wires (30AWG)
  • Varmt lim
  • 3D -utskrift (hvis du trenger etui til enheten din)
  • Arduino IDE (Vi trenger dette for å programmere mikrokontrollerkortet)

Trinn 6: Tilbakestill DS1307 sanntidsklokke (RTC) på dataloggingsmodulen

Tilbakestill DS1307 sanntidsklokke (RTC) på dataloggingsmodulen
Tilbakestill DS1307 sanntidsklokke (RTC) på dataloggingsmodulen
Tilbakestill DS1307 sanntidsklokke (RTC) på dataloggingsmodulen
Tilbakestill DS1307 sanntidsklokke (RTC) på dataloggingsmodulen

Jeg vil bruke dataene til vitenskapelige eksperimenter. Derfor er korrekt målingstid viktig for dataanalyse. Hvis du bruker funksjonen forsinkelse () i programmeringen, vil det føre til målefeil ved tidsskift. Tvert imot, jeg vet ikke hvordan jeg skal gjøre en presis sanntidsmåling på Arduino -plattformen. For å unngå samplingstidsfeil eller for å minimere målefeilen, vil jeg gjerne ta hver måleprøve med en tidsrekord. Heldigvis har dataloggingsmodulen en sanntidsklokke (RTC). Vi kan bruke den til å sende ut tid for datasampling.

For å bruke RTC følger jeg instruksjonene (lenken) for å tilbakestille RTC. Jeg anbefaler å gjøre dette med Arduino Uno -kortet først. Det er fordi du må endre kretsen når Atmega2560 -kortet brukes (I2C -tilkoblingen er annerledes). Etter at du har angitt RTC, bør du ikke fjerne cr1220 -batteriet. I mellomtiden, vennligst sjekk batteriets tilstand før datalogging.

Trinn 7: Tilkobling

Forbindelse
Forbindelse
Forbindelse
Forbindelse
Forbindelse
Forbindelse

Jeg har skilt innendørs og utendørs måling. Dermed har jeg laget to overskrifter for tilkobling av to forskjellige grupper av sensorer. Jeg brukte den tomme plassen på dataloggingsmodulen for å montere overskriftene. For å fullføre kretsforbindelsen bruker jeg både lodding og innpakning. Innpakningsprosessen er ren og praktisk, mens loddefugen er sterk og sikret. Du kan velge en komfortabel metode for å bygge kretsen. Hvis du bruker Atmega2560 -kortet, må du sørge for at du har bygget en hoppeforbindelse for SDA- og SCL -pinner. Tilkoblingen til RTC på dataloggingsskjermen må kobles til på nytt.

For å koble sensorene loddet jeg overskriftene på sensormodulene, og deretter brukte jeg trådinnpakning for å koble alle sensorene til overskriftene. Når du bruker spennende sensormoduler, anbefalte jeg at du sjekker driftsspenningen nøye. Noen sensormoduler godtar både 5V og 3.3V innganger, men noen er begrenset til å bruke enten 5V eller 3.3V. Tabellen nedenfor viser brukte sensormoduler og driftsspenning.

Bord. Sensormodul og driftsspenning

Trinn 8: Programmering av MCU

Programmering av MCU
Programmering av MCU

Heldigvis kan jeg finne applikasjonseksemplene for alle sensorene. Hvis du er ny i å bruke dem, kan du laste dem ned på internett eller installere dem ved å bruke biblioteksjefen i Arduino IDE.

Jeg programmerte systemutgangen en streng for hver prøve. Strengen sendes ut og lagres på det monterte SD -kortet. Hvis du trenger å se dataene, må du slå av enheten og deretter demontere SD -kortet. Deretter kan du montere SD -kortet på en kortleser. Filen blir lagret som en csv -fil. Når du har lastet ned datafilen til datamaskinen, kan du se den med et tekstprogram eller et regnearkprogram.

(Du kan laste ned kildekoden i den vedlagte filen.)

Trinn 9: Test den og bruk den

Test den og bruk den!
Test den og bruk den!
Test den og bruk den!
Test den og bruk den!
Test den og bruk den!
Test den og bruk den!

Det er viktig at du forstår betydningen av dataene. Samplingsfrekvens er en av de viktige parameterene. Det nåværende målingstidsintervallet er 1 min. Du må kanskje endre det.

I tillegg vil du finne at temperaturmålingen til DHT11 ikke er nøyaktig. Hvis du trenger en mer presis verdi, kan du bare bruke temperaturavlesningen til BMP -trykksensorer.

Takk for at du leste dette!

Anbefalt: