Sadržaj:

Zapisnik podataka otvorenog koda (OPENSDL): 5 koraka (sa slikama)
Zapisnik podataka otvorenog koda (OPENSDL): 5 koraka (sa slikama)

Video: Zapisnik podataka otvorenog koda (OPENSDL): 5 koraka (sa slikama)

Video: Zapisnik podataka otvorenog koda (OPENSDL): 5 koraka (sa slikama)
Video: How to Do SDXL Training For FREE with Kohya LoRA - Kaggle - NO GPU Required - Pwns Google Colab 2024, Srpanj
Anonim
Zapisnik podataka otvorenog koda (OPENSDL)
Zapisnik podataka otvorenog koda (OPENSDL)
Zapisnik podataka otvorenog koda (OPENSDL)
Zapisnik podataka otvorenog koda (OPENSDL)
Zapisnik podataka otvorenog koda (OPENSDL)
Zapisnik podataka otvorenog koda (OPENSDL)

Cilj ovog projekta je projektiranje, izgradnja i ispitivanje jeftinog mjernog sustava za studije vrednovanja performansi zgrade koji uključuje najmanje temperaturu, relativnu vlažnost, osvijetljenost i koji se može proširiti na dodatne senzore te razviti prototip ovih uređaja.

To rezultira prilagođenim i pristupačnim sustavom koji omogućuje dionicima provođenje mjerenja potrebnih za procjenu izvedbe zgrade na učinkovit i pristupačan način bilježenjem više parametara okoliša odjednom. Razvijeni Open Source Data Logger (OPENSDL) uspoređen je s HOBO U12-012 data loggerom. Ovaj komercijalno dostupan analogni sustav može mjeriti 3 parametra, naime- temperaturu, RH i osvjetljenje, te jedan vanjski kanal za druge tipove senzora. Za mjerenje bilo kojeg drugog parametra bit će potreban drugačiji senzorski uređaj. Karakteristike parametara koje treba mjeriti ograničeni su na vlasnički hardver i softver, što ograničava sustav na mjerenje određenih parametara sa specifičnom točnošću. HOBO U12-012 košta oko 13 000 ₹ (185 USD), dok OPENSDL košta 4 605 ₹ (66 USD), što je gotovo jedna trećina komercijalnog pandana.

Zapisnik podataka otvorenog koda za praćenje temperature, relativne vlažnosti i razine svjetlosti (osvijetljenosti) uz pomoć Arduino Uno Ovo je DIY za razvoj OPENSDL zapisnika podataka.

Potrebno vrijeme: 2-3 sata za lemljenje, 5 sati za pakiranje (4 sata - 3D ispis i 1 sat za lasersko rezanje) Potrebne vještine: Lemljenje, malo ili nimalo znanja u programiranju i elektronici

Potrebni dijelovi:

  1. Arduino Uno s kabelom
  2. Štitnik zapisivača podataka
  3. CR1220 dugmasta baterija
  4. BME280 ploča za probijanje osjetnika pritiska temperature
  5. TSL2561 ploča za probijanje senzora svjetla
  6. ESP01-8266 Wi-Fi modul
  7. RJ-9 muški i ženski konektor
  8. Zaglavlja za slaganje štitova za Arduino
  9. SD memorijska kartica (bilo kojeg kapaciteta)
  10. Vektorska ploča (26 x 18 rupa)
  11. 8 AA baterija Držač baterija

Potrebni alati:

  • Lemilica (35W)
  • Lemljena žica
  • Rezač žice
  • Alat za krimpovanje
  • Multimetar

Potreban softver: Arduino IDE (1.0.5 ili noviji)

Korištene Arduino knjižnice:

  • Žičana biblioteka
  • Knjižnica SparkFun TSL2561
  • Višesenzorska biblioteka Cactus BME280
  • Biblioteka SD kartica
  • SPI knjižnica
  • RTC knjižnica

Napomena: BME280 osjetnik je vrlo precizan Bosch senzor temperature, relativne vlažnosti i tlaka. Slično, DS1307 je točan sat u stvarnom vremenu tvrtke Maxim, a TSL2561 je točan svjetlosni senzor. Postoje jeftinije i manje točne alternative za ove proizvode, ali ovaj je vodič bio namijenjen ljudima koji su bili zainteresirani za prikupljanje podataka za procjenu izvedbe zgrade i aplikacije za nadzor zgrada koje zahtijevaju visoku preciznost i točnost. To znači da su sve posebne postavke hardvera i softvera (knjižnice, programski kod) strogo namijenjene samo navedenim proizvodima.

Korak 1: Montaža

Skupština
Skupština
Skupština
Skupština
Skupština
Skupština
Skupština
Skupština

Štitnik zapisivača podataka može se lako postaviti na vrh Arduino Uno ploče. Ovaj štit pruža mogućnosti bilježenja podataka (čuvanje vremena i pohrana podataka). Štit je morao biti složen. CR1220 dugmasta baterija morala je biti umetnuta u okrugli otvor koji je osigurao rad sata čak i kad je Arduino isključen. SD memorijska kartica mora biti umetnuta u predviđeni utor za karticu. Jedinstveni prilagođeni štit razvijen je upotrebom ženskih pinova konektora RJ-9 i zaglavlja za slaganje Arduino štita. Odgovarajuća zaglavlja lemljena su na odgovarajućim mjestima tako da štit savršeno pristaje na Arduino ploču. Arduino ima 18 igala s jedne strane i 14 iglica s druge strane. Zaglavlja s istim brojem pinova korištena su na istom razmaku (razmaknuti 18 pinova) kao i na Arduinu. Preostali dodatni prostor uz zaglavlja iskorišten je za postavljanje konektora RJ-9.

Zaglavlja su bila najbolji način korištenja potrebnih iglica, a istovremeno su ih učinili dostupnima za uporabu drugim komponentama. Korišteni senzori slijede I2C komunikacijski protokol, koji zahtijeva 4 pina od Arduina, i to: SDA (dostupan i kao A4), SCL (dostupan i kao A5), 3,3 V i GND. Četiri žice koje izlaze iz RJ-9 konektora lemljene su u ova četiri zaglavlja. Broj potrebnih konektora RJ-9 ovisi o broju senzora. U ovom su projektu korištena 3 konektora RJ-9 (dva za BME280 i jedan za TSL2561). Četiri žice koje izlaze iz konektora RJ-9 bile su kodirane u boji, a svaka žica u boji označena je kao poseban pin za sve priključke RJ-9. Mora se napomenuti da se kod boja može razlikovati za različite komade RJ-9. U tom slučaju potrebno je zabilježiti mjesto žice na priključku. Konektor RJ-9, nakon lemljenja, učinio je da se zalijepi na vektorsku ploču pomoću Feviqwika, tako da se fiksira na površinu. Ove se veze mogu provjeriti pomoću načina kontinuiteta na multimetru. U kontinuiranom načinu rada multimetar bi trebao pokazati nulti otpor. Spojite jednu od sondi multimetra na lemljeni pin, a drugu sondu na pin unutar RJ-9 konektora. Multimetar bi trebao emitirati ton, što znači da su spojevi za lemljenje ispravni, a veze pravilno izvedene. Ako se ton ne emitira, provjerite lemne spojeve. Slično, zalemite konektor RJ-9 istim žicama koje se spajaju na iste rupe na pločama za probijanje senzora, tj. A4, A5, 3,3 V i GND. Senzor BME280 podržava dvije I2C adrese, što znači da se dva senzora BME280 mogu spojiti na isti kontroler odjednom. Pritom se adresa jednog od senzora mora promijeniti premošćivanjem lemilica na senzoru. Čip za bežično povezivanje ESP-01 zahtijevao je sljedeće veze s Arduinom.

ESP-01 --------- Arduino Uno

10 -------------------- TX

11 -------------------- RX

Vcc ---------------- CH_PD

Vcc ------------------- Vcc

GND ----------------- GND

Napomena:- Više LED dioda na Arduino Uno je uklonjeno radi poboljšanja trajanja baterije. LED diode pokazivača napajanja, RX i TX LED diode uklonjene su zagrijavanjem lemnih spojeva i guranjem LED -a pincetom.

Korak 2: Postavljanje IDE -a i knjižnica

Prije bilo kakvog programiranja potrebno je preuzeti Arduino IDE (Integrirano razvojno okruženje). Programiranje je obavljeno na ovoj platformi. Za interakciju s različitim komponentama OPENSDL -a bile su potrebne različite knjižnice. Za navedene komponente korištene su sljedeće knjižnice.

Komponenta ------------------------------------------------- --------------Knjižnica

BME280 osjetnik temperature i RH --------------------------------- Cactus_io_BME280_I2C.h

Svijetli senzor------------------------------------------------ ---------------- SparkFun TSL2561.h

Sat u stvarnom vremenu ----------------------------------------------- ------------- RTClib.h

Utičnica za SD karticu ----------------------------------------------- ------------- SD.h

I2C veza ------------------------------------------------ ------------- Žica.h

Odvojena knjižnica za komunikaciju s ESP01 nije potrebna jer kôd postavljen u Arduino ima AT naredbe, koje se šalju serijskom monitoru, odakle ESP-01 preuzima upute. Dakle, u osnovi, AT naredbe kojima ESP01 radi, ispisuju se u Serijski monitor, koje ESP-01 uzima kao ulaznu naredbu. Za instaliranje ovih knjižnica, nakon što ih preuzmete, otvorite Arduino IDE, idite na Sketch -> Include Library -> Add. Zip library i odaberite preuzete knjižnice.

Korak 3: Programiranje sustava

Programiranje sustava
Programiranje sustava

Prije programiranja OPENSDL -a, povežite Arduino s prijenosnim računalom. Nakon povezivanja idite na Tools -> Port i odaberite COM port na koji je spojen OPENSDL. Također provjerite je li u odjeljku Alati -> Ploče odabran Arduino Uno.

OPENSDL je razvijen za rad u 2 načina rada. U prvom načinu rada pohranjuje podatke na SD karticu na štitnik zapisivača podataka. U drugom načinu rada šalje podatke putem interneta na web stranicu pomoću Wi-Fi čipa ESP-01. Program za oba načina je različit. Ovi se redovi koda mogu izravno kopirati i zalijepiti u Arduino IDE uređivač te izravno koristiti. Nakon unosa koda, moramo napraviti nekoliko prilagodbi prema našim potrebama:

  1. Ručno promijenite vrijednost kašnjenja (1000) na kraju koda da biste promijenili interval bilježenja. Vrijednost 1000 predstavlja interval u milisekundama.
  2. Uredite redak koda koji kaže mySensorData = SD.open ("Logged01.csv", FILE_WRITE); i zamijenite Logged01 imenom datoteke željenog naziva datoteke. Proširenje datoteke također se može promijeniti promjenom ekstenzije.csv odmah nakon naziva datoteke.
  3. Jednadžba kalibracije postignuta pronalaženjem korelacije između glavnog/referentnog senzora i BME280 razlikovat će se sa svakim senzorom. Zamijenite ovaj redak koda jednadžbom za kalibriranje senzora: Serial.print ((1.0533*t2) -2.2374)-za senzor sa zadanom adresom (0x77), gdje je t2 vrijednost očitana s osjetnika temperature.

Za programiranje drugog dostupnog načina rada OPENSDL -a, koji je bežični sustav, predviđen je poseban program. ESP-01 mora biti spojen na OPENSDL prema spojevima kako je objašnjeno u koraku 2. Nakon dovršetka povezivanja, povežite Arduino s prijenosnim računalom i prenesite praznu skicu u Arduino. Stavite ESP-01 u način ažuriranja i ažurirajte firmver na najnovije dostupno ažuriranje. Nakon ažuriranja, svakako povežite pin za resetiranje Arduina s pinom od 3,3 V, koji zaobilazi Arduino bootloader

Korak 4: Izrada

Izrada
Izrada
Izrada
Izrada
Izrada
Izrada

Kućište za OPENSDL stvoreno je radi zaštite i poboljšanja estetike. Kućišta su razvijena 3D ispisom pomoću PLA materijala, a kućište za mikrokontroler razvijeno je laserskim rezanjem MDF lima i lijepljenjem komada. 3D ispisani modeli razvijeni su pomoću programa SketchUp, a 2D dxf crteži za lasersko rezanje izrađeni su pomoću AutoCAD -a.

Za 3D ispis, STL datoteke proizvedene pomoću programa SketchUp otvorene su i provjerene u softveru Ultimaker Cura 3.2.1. Provjerite koristi li se PLA materijal, a mlaznica pisača je za ispis od 0,4 mm. Ploča za izradu 3D pisača može zahtijevati ljepilo za lijepljenje 3D ispisanog predmeta. No, kad je ispis dovršen, ljepilo stvara snažnu adheziju između ispisanog predmeta i građevne ploče.

Korak 5: Kodirajte

Kôd (.ino datoteke) je napravljen za rad u Arduino IDE softveru. Ovdje je veza na moju stranicu Github za kôd i ostale pojedinosti.

github.com/arihant93/OPENSDL

Ne ustručavajte se postavljati pitanja o projektu.

Hvala.

Preporučeni: