Kazalo:
- 1. korak: Priprava senzorjev
- 2. korak: Priprava glavnega procesorja
- 3. korak: Priprava sistema
- 4. korak: Priprava beleženja podatkov
- 5. korak: Priprava orodij
- 6. korak: Ponovno nastavite uro DS1307 v realnem času (RTC) na modulu za beleženje podatkov
- 7. korak: Povezava
- 8. korak: Programiranje MCU
- 9. korak: Preizkusite in uporabite
Video: Preprost notranji observatorij: 9 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
Ta projekt vam bo pokazal, kako narediti preprost observatorij z nekaterimi obstoječimi in enostavno dostopnimi senzorji. Dejansko sem to zgradil za enega od svojih študentov. Učenec bi rad izvedel, kako sončna svetloba vpliva na sobno temperaturo in vlažnost. Zainteresirane fizikalne količine v tem projektu so (1) intenzivnost svetlobe, (2) vlažnost, (3) temperatura in (4) zračni tlak. S temi informacijami bi lahko naredili druge sisteme ali naprave za krmiljenje klimatske naprave, vlažilnika zraka ali grelnika za ustvarjanje udobnega sobnega okolja.
1. korak: Priprava senzorjev
Vezje lahko sestavite z naslednjimi senzorji ali preprosto kupite plošče modulov teh senzorjev ali ploščo modulov.
1. Senzor svetlobe okolice TEMT6000 (podatkovni list PDF)
2. Tlak in temperatura BMP085 ali BMP180 (*sta stara izdelka, morda boste morali poiskati druge alternative) (učni dokument Adafruit)
3. Senzor temperature in vlažnosti DHT11 (učni dokument Adafruit)
4. Senzor UV svetlobe GUVA-S12SD (podatkovni list PDF)
Za uporabo senzorjev sem priložil nekaj referenčnih povezav. Na internetu boste morda našli nekaj koristnih vaj in referenc.
2. korak: Priprava glavnega procesorja
Za preizkus sistema in kodiranja sem se odločil za ploščo Arduino Uno. Vendar sem ugotovil, da atmega328P nima dovolj pomnilnika za shranjevanje in izvajanje kode, če je dodanih več senzorjev. Zato priporočam, da lahko uporabite ploščo atmega2560 Arduino, ko potrebujete več kot 4 senzorje.
Mikro krmilnik (MCU):
· Plošča Atmega328P za Arduino
· Ali plošča Atmega2560 za Arduino
3. korak: Priprava sistema
Rad bi izmeril nekatere fizične lastnosti na prostem in v zaprtih prostorih. Nazadnje sem priključil naslednje senzorje na ploščo Atmega2560.
Notranje okolje:
1. Tlak in temperatura BMP180 x 1 kos
2. Senzor temperature in vlažnosti DHT11 x 1 kos
Zunanje okolje:
1. Senzor zunanje svetlobe TEMT6000 x 1 kos
2. Tlak in temperatura BMP085 x 1 kos
3. Senzor temperature in vlažnosti DHT11 x 1 kos
4. Senzor UV svetlobe GUVA-S12SD x 1 kos
Morda boste ugotovili, da sem za merjenje tlaka uporabil različne senzorje. To je samo zato, ker med gradnjo vezja nimam plošče z moduli BMP180. Priporočam, da uporabite iste senzorje, če želite natančno meritev in pošteno primerjavo.
4. korak: Priprava beleženja podatkov
Poleg tega želim, da naprava shrani podatke, ne da bi se povezala z računalnikom. Dodal sem modul za beleženje podatkov z uro v realnem času. Sledijo elementi za beleženje podatkov in povezovanje žic.
· SD kartice
· CR1220 kovanna baterija
· Modul za beleženje podatkov za Arduino (učni dokument Adafruit)
5. korak: Priprava orodij
Sledi nekaj orodij ali naprav, ki bi bila potrebna za izdelavo vezja.
- Orodje za zavijanje 30AWG
- Spajkalnik
- Spajkalna žica (brez svinca)
- Ogledna plošča
- Glave 2,54 mm
- Mostične žice
- Zavijalne žice (30AWG)
- Vroče lepilo
- 3D tiskanje (če za napravo potrebujete etui)
- Arduino IDE (to potrebujemo za programiranje mikro krmilne plošče)
6. korak: Ponovno nastavite uro DS1307 v realnem času (RTC) na modulu za beleženje podatkov
Podatke bi rad uporabil za znanstveni eksperiment. Zato je za analizo podatkov pomemben pravilen čas merjenja. Uporaba funkcije delay () v programiranju bi povzročila napako pri merjenju časa. Nasprotno, ne vem, kako natančno meriti v realnem času samo na platformi Arduino. Da bi se izognili napaki pri vzorčenju ali zmanjšali merilno napako, bi rad vzel vsak merilni vzorec s zapisom časa. Na srečo ima modul za beleženje podatkov uro realnega časa (RTC). Z njim lahko prikažemo čas vzorčenja podatkov.
Za uporabo RTC sledim navodilom (povezava) za ponastavitev RTC. Priporočam, da to storite najprej s ploščo Arduino Uno. To je zato, ker morate pri uporabi plošče Atmega2560 spremeniti vezje (povezava I2C je drugačna). Ko nastavite RTC, ne odstranite baterije cr1220. Medtem preverite stanje baterije pred beleženjem podatkov.
7. korak: Povezava
Ločil sem notranje in zunanje meritve. Tako sem naredil dve glavi za povezavo dveh različnih skupin senzorjev. Za namestitev glav sem uporabil prazen prostor na modulu za beleženje podatkov. Za dokončanje povezave vezja uporabljam spajkanje in zavijanje. Postopek zavijanja je čist in priročen, spajkalni spoj pa močan in varen. Izberete lahko udoben način za izgradnjo vezja. Če uporabljate ploščo Atmega2560, se prepričajte, da ste vzpostavili povezavo za preskok za zatiče SDA in SCL. Povezavo RTC na ščitniku za beleženje podatkov je treba znova povezati.
Za povezavo senzorjev sem spajkal glave na senzorskih modulih, nato pa sem uporabil ovijanje z žico, da povežem vse senzorje z glavo. Ko uporabljate izhodne senzorske module, sem priporočil, da natančno preverite delovno napetost. Nekateri senzorski moduli sprejemajo vhode 5V in 3.3V, nekateri pa omejujejo uporabo samo 5V ali 3.3V. Naslednja tabela prikazuje uporabljene senzorske module in delovno napetost.
Tabela. Senzorski modul in delovna napetost
8. korak: Programiranje MCU
Na srečo lahko najdem primere uporabe za vse senzorje. Če jih še niste uporabljali, jih lahko prenesete v internet ali pa jih namestite z upraviteljem knjižnice v Arduino IDE.
Za vsak vzorec sem programiral izhod sistema. Niz bo izpisan in shranjen na nameščeni kartici SD. Če si želite ogledati podatke, izklopite napravo in nato odklopite kartico SD. Nato lahko kartico SD namestite v bralnik kartic. Datoteka bo shranjena kot datoteka csv. Ko prenesete podatkovno datoteko v računalnik, si jo lahko ogledate v besedilnem programu ali programu za delovne liste.
(Izvorno kodo lahko prenesete v priloženi datoteki.)
9. korak: Preizkusite in uporabite
Pomembno je, da razumete pomen podatkov. Pogostost vzorčenja je eden pomembnih parametrov. Trenutni časovni interval merjenja je 1 min, morda ga boste morali spremeniti.
Poleg tega bi ugotovili, da merilo temperature DHT11 ni natančno. Če potrebujete natančnejšo vrednost, lahko uporabite temperaturni odčitek tlačnih senzorjev BMP.
Hvala, ker ste to prebrali!
Priporočena:
Pametni notranji nadzor rastlin - veste, kdaj vaša rastlina potrebuje zalivanje: 8 korakov (s slikami)
Pametni nadzornik rastlin v zaprtih prostorih - Vedite, kdaj potrebuje zalivanje vaše rastline: Pred nekaj meseci sem naredil palico za spremljanje vlage v tleh, ki se napaja iz baterij in jo lahko vtaknemo v zemljo v loncu vaše sobne rastline, da vam dam nekaj koristnih informacij o tleh nivo vlage in utripajoče LED -diode, ki vam povedo, kdaj naj
Samodejni notranji rastlinjak na osnovi Ikee Socker: 5 korakov
Samodejni notranji rastlinjak na osnovi Ikee Socker: Živjo, to je moj prvi pouk. S to skupnostjo sem se veliko naučil in mislim, da je čas, da vrnem svoje skromne ideje. Žal mi je za moj angleški jezik, je slab, vendar bom naredil vse, kar je v moji moči. Ideja je bila narediti rastlinjak deskop, ki mi bo omogočil gojenje semen in
Pametni notranji zeliščni vrt: 6 korakov (s slikami)
Pametni notranji zeliščni vrt: V tem navodilu vam bom pokazal, kako sem naredil svoj pametni notranji zeliščni vrt! Za ta projekt sem imel nekaj navdihov, prvič, da sem imel nekaj zanimanja za domače modele Aerogarden. Poleg tega sem imel še neuporabljen Arduino Mega z
Sončni observatorij: 11 korakov (s slikami)
Sončni observatorij: Kakšen je nagib Zemljine osi? Na kateri zemljepisni širini sem? Če želite hiter odgovor, se obrnite na Google ali aplikacijo GPS na pametnem telefonu. Če pa imate Raspberry Pi, modul kamere in kakšno leto za opazovanje, potem
Notranji/zunanji termometer USB (ali "Moja prva naprava USB"): 4 koraki (s slikami)
Notranji/zunanji termometer USB (ali "Moja prva naprava USB"): To je preprosta zasnova, ki prikazuje zunanje naprave USB na PIC 18F. Na spletu je veliko primerov 40 -polnih čipov 18F4550, ta zasnova prikazuje manjšo različico 28 -polnega 18F2550. PCB uporablja dele za površinsko montažo, vendar vsi