Sadržaj:

AtmoScan: 7 koraka (sa slikama)
AtmoScan: 7 koraka (sa slikama)

Video: AtmoScan: 7 koraka (sa slikama)

Video: AtmoScan: 7 koraka (sa slikama)
Video: Крутой Сериал! За Первого Встречного 12 серия! 2024, Rujan
Anonim
Image
Image
Senzori
Senzori

**********************************************************************************************

VIJESTI

Idite na moj GitHub za:

- Neke male hardverske promjene poboljšavaju dizajn, uključujući i mogućnost isključivanja softvera, otklanjajući jedan od najvećih nedostataka dizajna - kako se nositi s niskom baterijom.

- Sada je objavljen dizajn PCB v2 zajedno s vodičem za jednostavnu primjenu promjene na pločama V1.0.

- CAD datoteke za potpuno zatvaranje

Novo kućište izgleda kao na gornjoj slici … pa, bez gumice

****************************************************************************************

ATMOSCAN je multisenzorski uređaj usmjeren na praćenje kvalitete zraka u zatvorenom prostoru. Iako su objavljeni mnogi projekti slične namjene, ovaj je cjeloviti sustav u kompaktnom, samostalnom paketu koji ih sve sažima. Ima LCD zaslon u boji, svjestan je vremena i lokacije, kontrolira se pokretima i postavlja na ThingSpeak (ili druge) putem MQTT -a, ali može ispravno rukovati prekinutim operacijama i ponovnim povezivanjem. Sa ugrađenom punjivom baterijom izdrži cijeli dan kad je isključen iz napajanja.

Koristi višezadaćni suradnički okvir i vrlo je osjetljiv na korisnički unos tijekom uzorkovanja senzora, rukovanja korisničkim sučeljem, objavljivanja na MQTT -u. Zapravo istiskuje prilično malo iz sićušnog ESP8266. To čini integracijom brojnih knjižnica otvorenog koda i korištenjem internetskih web usluga.

Zasluge za knjižnice idu brojnim suradnicima, pogledajte kasnije.

Glazbu u videu možete pronaći OVDJE

Korak 1: Senzori

Atmoscan mjeri brojne varijable:

  • Temperatura
  • Vlažnost
  • Pritisak
  • CO2
  • CO
  • NO2
  • VOC (hlapljivi organski spojevi, pokazatelj kvalitete zraka)
  • PM 01
  • PM25
  • PM10
  • Radijacija

U tu svrhu integrira niz diskretnih senzora

  • BME280 (npr. Veza)
  • PMS7003 (npr. Veza)
  • MH-Z19 (npr. Veza)
  • HDC1080 (npr. Veza)
  • MiCS6814 (veza)
  • MP503 (veza)
  • LND-712 Geigerova cijev (veza, našao sam je u Europi ovdje Veza ili ovdje Veza) s visokonaponskim modulom (Veza)

Tehnički listovi nalaze se OVDJE.

Korak 2: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Atmoscan se može lako izgraditi s NodeMCU -om ili bilo kojom drugom ESP8266 pločom i nekim lako dostupnim komponentama, poput mjenjača razine i regulatora napona, ako odustanete od integriranog punjača baterija.

Dok sam radio prototip s odvojenim komponentama, za konačnu verziju dizajnirao sam posebnu ploču koja integrira sve funkcije i pruža uredne konektore za senzore, LED diode za status (plavo = napajanje spojeno; crveno = punjenje).

Eagle PCB datoteke dostupne su OVDJE.

Konkretno, ploča integrira:

  • Krug punjenja temeljen na MAX8903A (veza)
  • Logika za uključivanje/isključivanje jednim gumbom
  • ESP12E modul
  • Programska logika
  • Mjenjač razine
  • Upravljački program LCD pozadinskog osvjetljenja
  • Regulator napona za smanjenje napona/3.3V temeljen na Pololu S7V8F3 (veza)
  • Regulator napona od 5V na bazi Pololu U1V10F5 (veza)
  • LiPo mjerač goriva temeljen na SparkFun TOL10617 (veza)

Zaslon je 2.8 TFT 320x240 temeljen na ILI9341 čipu (veza).

Senzor gesta temelji se na čipu PAJ7620U2 (Link), znatno boljem od jeftinog APDS9960 koji generira kontinuirane prekide i ne može raditi kroz pleksiglas.

Senzori su prilično gladni energije pa sam za jamčenje autonomije od najmanje 24 sata napravio paket s 3 x 5000mAh LiPo 105575 baterijama (veza). Zapravo, 2 su mogle biti dovoljne. Punjač MAX8903 ne može napuniti nastalo pakiranje od 15 000 mAh.

NAPOMENE - KAO ŠTO SE VIDI NA SLIKAMA:

  • Prikazani su položaji konektora
  • Utor za SD karticu morate odspojiti s zaslona ako želite da stane u kućište
  • Morate napraviti mali zarez na PCB -u kako ne biste ometali ventilator (zarezi su u modi nakon iPhonea X). Ispravljeno u PCB -u V2

Kratice konektora na PCB -u su sljedeće:

  • PRS: Barometrijski osjetnik tlaka (na temelju BME280) NAPOMENA: montira se izravno na tiskanu ploču
  • VOC: Grove - Senzor kvalitete zraka v1.3 (na temelju MP503)
  • TMP: Digitalni senzor vlažnosti i temperature visoke točnosti (na temelju HDC1080)
  • PMS: PMS7003 Digitalni osjetnik koncentracije čestica
  • PLIN: Grove - Višekanalni senzor plina (na temelju MiCS6814)
  • GES: Grove - Senzor gesta, temeljen na PAJ7620U2
  • RAD: Geiger cijev (preko visokonaponskog modula napajanja upravljačke jedinice Geiger sonde 400V / 500V s TTL digitaliziranim pulsnim izlazom)
  • CO2: MH-Z19 infracrveni senzor za plin CO2
  • U1V10F: Regulator pojačanog napona od 5V temeljen na Pololu
  • U1V10F5 S7V8V3: Regulator napona s povećanjem/smanjenjem napona od 3,3 V temeljen na Pololu S7V8F3
  • TOL10617: Sparkfun LiPo mjerač goriva
  • LCD: zaslon ILI9341

Korak 3: Ograđivanje

Kućište
Kućište
Kućište
Kućište
Kućište
Kućište

Kućište je izvedeno iz kontejnera od kocke 10x10x10 cm od pleksiglasa koji sam kupio na ebayu i namijenjen je za potpuno drugačiju upotrebu. Imao je lijepe otvore za ventilaciju koji su upravo bili potrebni. Volumen je u načelu bio dovoljan za pakiranje cijelog seta, osim što nije bilo lako … neki su rani pokušaji koji su se temeljili na maketama od kartona propali pa sam odustao i izgubio nekoliko sati 3D CAD -om i laserski sam izrezao unutarnje potpore. Unutarnji prostor podijeljen je u odjeljke tako da je temperaturni osjetnik što dalje od unutarnjih izvora topline. Dok je vanjsko kućište izrađeno od materijala od 3 mm, gornji dio je izrađen od listova 2+1 mm. Ovaj trik omogućio je da senzor gesta bude prekriven samo 1 mm akrilom, a to je dovoljno da funkcionira.

Neke su izmjene morale biti učinjene ručnim alatima na izvornom kućištu, poput ventilatora, prekidača i USB otvora. Rezultat je ipak bio pristojan!

CAD datoteke nalaze se OVDJE.

Korak 4: Mehanički sklop

Mehanički sklop
Mehanički sklop
Mehanički sklop
Mehanički sklop
Mehanički sklop
Mehanički sklop

Paket je vrlo gust, ali zahvaljujući 3D dizajnu cad -a imao sam nekoliko iznenađenja pri sastavljanju.

Cirkulaciju zraka (odozgo prema dolje) osigurava mali ventilator. Nakon što sam kupio popriličan broj na Aliexpressu / eBayu, shvatio sam da je buka jeftinih ventilatora nepodnošljiva za unutarnji uređaj. Na kraju sam kupio prilično skup, sporo okrećući Papst 255M (Link) i napajao sam ga s manje od 5V preko nekoliko dioda. Rezultat je prilično dobar i dovoljno je tih da se ne primijeti (čak je i žena odobrila, najteža potvrda).

Korak 5: Softver

Softver
Softver
Softver
Softver
Softver
Softver
Softver
Softver

Softverska arhitektura temelji se na objektno orijentiranom okviru koji pokreće više (kooperativnih) procesa koji rukuju korisničkim sučeljem, senzorima i MQTT -om. Svjestan je lokacije i vremena, ali može podnijeti prekid / ponovno povezivanje na WiFI.

Okvir je otvoren i može upravljati neograničenim brojem zaslona, sve dok njihov kôd i resursi stanu u Flash memoriju. Okvir aplikacije obrađuje geste i prenosi ih na zaslone radi daljnjeg rukovanja ili otkazivanja ako je potrebno. Geste kojima upravlja okvir su:

  • Prijeđite prstom ulijevo / udesno - Promijenite zaslon
  • (Prst) Zakretanje u smjeru kazaljke na satu - Okrenite zaslon
  • (Prst) Zakretanje u smjeru suprotnom od kazaljke na satu - Pozovite zaslon za postavljanje
  • (Rukom) Od daleka do zatvaranja - Isključite zaslon

Zasloni nasljeđuju od osnovne klase i njima se upravlja putem sljedećeg modela događaja:

  • aktivirati - aktivira se jednom, prilikom stvaranja zaslona
  • update - povremeno se poziva za ažuriranje zaslona
  • deaktivirati - poziva se jednom, prije nego što se zaslon odbaci
  • onUserEvent - poziva se kada se aktivira senzor gesta. Omogućuje reagiranje i nadjačavanje zadanog upravljanja događajima, npr. prekinite prijeđite prstom za promjenu zaslona

Svaki zaslon izjavljuje svoje sposobnosti pružajući sljedeće podatke:

  • getRefreshPeriod - koliko često je potrebno osvježavanje zaslona
  • getRefreshWithScreenOff - ako se zaslon želi osvježiti čak i kad je pozadinsko osvjetljenje isključeno. npr. za grafikone
  • getScreenName - naziv ekrana
  • isFullScreen - preuzmite potpunu kontrolu nad zaslonom ili dopustite gornjoj traci s datumom/vremenom/lokacijom/mjeračem baterije/WiFi mjeračem

Okvir je sposoban instancirati i osloboditi zaslone putem tvornice deklarativnih klasa. Dinamička dodjela štedi RAM i čini uređaj lako proširivim. Opći okvir prijava također se može ponovno koristiti za druge projekte.

Zasloni koji se trenutno primjenjuju u Atmoscanu su:

  • Vrijednosti senzora
  • Geigerov metar / polulog grafikon
  • Status sustava
  • Dnevnik pogrešaka
  • Meteorološka stanica
  • Plane Spotter
  • Postaviti
  • Slaba baterija

Zasloni za postavljanje omogućuju postavljanje vjerodajnica za WiFi, MQTT kanala, poslužitelja Syslog.

NOVO u v2.0: svi ključevi web usluga sada se mogu konfigurirati putem konfiguracijskog portala. Jedina vrijednost koja je još uvijek teško kodirana je OTA lozinka (velika ATMOSCAN).

NAPOMENA 1: Prvo programiranje mora se obaviti USB-serijskim kabelom spojenim na konektor za programiranje. Budući da je serijski priključak zauzet senzorom, otklanjanje pogrešaka i programiranje na taj način nije praktično nakon montaže jer bi zahtijevalo odvajanje senzora. Stoga softver podržava SYSLOG otklanjanje pogrešaka i OTA ažuriranja.

Napomena 2: ATMOSCAN binarni format je veći od 700 KB, a ArduinoOTA zahtijeva da programski prostor bude najmanje dvostruko veći od veličine slike, što isključuje opciju "4M (3M SPIFFS)". Međutim, standardna opcija "4M (1M SPIFFS)" također je neprikladna jer SPIFFS particija ne bi bila dovoljna za grafičke resurse koji se odnose na meteorološku stanicu, zrakoplov i avion za konfiguriranje. Stoga je za rješavanje problema stvorena prilagođena konfiguracija "4M (2M SPIFFS)". Objašnjenje ovdje.

Dokumentacija i cijeli izvorni kod dostupni su ovdje.

KREDITI ZAKLJUČUJU KOD I BIBLIOTEKE

  • Adafruit
  • Arcao
  • Bblanchon
  • Bodmer
  • ClosedCube
  • Gmag11
  • Knolleary
  • Lucadentella
  • Vidio
  • Squix78
  • Tzapu
  • Čarobnjak97

INTEGRIRA WEB USLUGE OD

  • Adsbexchange.com
  • GeoNames.org
  • Google.com
  • Mylnikov.org
  • Timezonedb.com
  • Wunderground.com

Korak 6: Učinite to boljim

Učinite to boljim!
Učinite to boljim!

Rezultat uopće nije loš! Softver izgleda dobro i pouzdan je, dok bi se mogao proširiti novim značajkama i možda malo očistiti kako bi se aplikacijski okvir doista mogao ponovno koristiti za druge projekte. Kalibracija nekih senzora nije dobra, ali bi bila potrebna oprema za laboratorije. Vrijeme je dragocjeno i nemam mnogo pa je napredak bio spor. Kad sam završio, pristojna podrška za ESP32 postala je dostupna. Da ga sada pokrećem, koristio bih ga i integrirao vanjske senzore putem bluetootha.

Bilo tko?

NAPOMENA: Još uvijek imam pregršt PCB -a pa ako je netko zainteresiran, dostupni su po nominalnoj / poštanskoj cijeni.

Korak 7: Pitanja i odgovori

Pitanja i odgovori
Pitanja i odgovori
Pitanja i odgovori
Pitanja i odgovori

Prije svega, HVALA na izuzetno pozitivnim komentarima. Iskreno, nisam očekivao toliki interes.

Dobio sam niz pitanja bilo putem komentara ili privatnih poruka, pa sam razmišljao o tome da prikupljam odgovore ovdje. Ako dođe još, dodat ću.

Našao sam u stražnjoj ladici 8 dostupnih PCB -a - i oni su na putu za Belgiju, Njemačku, Indiju, SAD, Kanadu, UK, Australiju. Wow, 3 kontinenta! Zadivljujuće.

Što trebam staviti na stranicu za konfiguraciju ATMOSCAN -a?

Atmoscan konfiguracijska stranica zahtijeva sljedeće parametre:

  • SSID i lozinka WiFi mreže s kojom se želite povezati
  • MQTT poslužitelj koji koristite. Na primjer, koristim mqtt.thingspeak.com
  • Niz veze za korištene teme MQTT -a. Na primjer, teme Thingspeak MQTT su u formatu: kanali/CHANNEL-ID/objava/WRITE-API (PRIMJER: kanali/123456/objava/567890)
  • Syslog poslužitelj: IP poslužitelj syslog koji koristite za bilježenje
  • Google ključ za Maps Static API. Nabavite ključ s https://console.cloud.google.com/apis/dashboard. Izradite projekt; API koji Atmoscan koristi je https://maps.googleapis.com/maps/api/staticmap. Izradite ključ za ovaj API na google projektu koji ste upravo stvorili, upotrijebite ga ovdje
  • Weather Underground ključ. Napravite račun na www.wunderground.com, idite na WEATHER API (veza na dnu početne stranice, idite na KLJUČNE POSTAVKE, generirajte ključ, upotrijebite ga ovdje
  • Račun Geonames. Napravite račun na https://www.geonames.org/ omogućite mu korištenje besplatnih web usluga i unesite korisničko ime ovdje
  • Tipka TimeZoneDB. Napravite račun nahttps://timezonedb.com/, izradite ključ, stavite ga ovdje

Kako mogu konfigurirati Thingspeak?

Potrebna su vam 3 Thingspeak kanala. Polja se koriste na sljedeći način:

KANAL 1 polja

  1. TEMPERATURA
  2. VLAŽNOST
  3. PRITISAK
  4. PM01
  5. PM2,5
  6. PM10
  7. CPM
  8. RADIJACIJA

KANAL 2 polja

  1. CO
  2. CO2
  3. NO2
  4. HOS

KANAL 3 polja (sustavski kanal)

  1. TRAJANJE U MINUTAMA
  2. BESPLATNA HAPA U BITIMA
  3. WIFI RSSI (SIGNAL U DBM -u)
  4. NAPON BATERIJE
  5. LINEARNI SOC (STANJE PUNJENJA BATERIJE % - linearni izračun, proporcionalan naponu)
  6. NATIVE SOC (STANJE NAPUNJENOSTI BATERIJE % - prema podacima mjerača. Očitano s mjerača. NAPOMENA: mjerač kaže 0 % pri dosezanju 3,6 V, dok se baterije mogu malo isprazniti, recimo iznad 3 V. Donja granica, na kojem se ATMOSCAN sam isključuje, #define je u datoteci globaldefinitions.h)
  7. TEMPERATURA SUSTAVA (s bme280, montirana izravno na ploču)
  8. VLAŽNOST SUSTAVA (s bme280, montirano izravno na ploču)

PCB je vrlo kompaktan. Kako mogu lemiti SMD uređaje, osobito IC MAX8903A?

Prvo, predlažem da se zapitate želite li ući u SMD ili je to jednokratno. Ako je ovo drugo, možda zamolite nekoga da to učini umjesto vas. Ako želite prihvatiti SMD izazov, uložite malo i nabavite odgovarajuće alate (lemljenje, fluks, izopropilni alkohol, malo željezo, vrući pištolj, pinceta, jeftina USB kamera, držač za PCB). Danas su to jeftine stvari. Zatim pogledajte video na YouTubeu-ima ih pola milijuna-i provedite neko vrijeme sa starim PCB-om koji možete žrtvovati i odlemiti / očistiti / lemiti neke komponente. Ne biste vjerovali koliko je ovo poučno, naučiti što očekivati, postići odgovarajuću temperaturu itd. Govoreći iz iskustva … počeo sam SMD mijenjati konektor zaslona na iPod touch -u i ubio sam prvog!

Atmoscan PCB je doista kompaktan i taj IC nije lak. Opet, ne preporučujem da to radite kao svoje prvo SMD lemljenje. QFN nije prijateljski paket iako sam do sada lemio broj. Nikada niste sigurni da ste dobro shvatili …

Na Atmoscanu sam ga prvo zalemio, zatim okolne komponente kako bih mogao provjeriti radi li dio ploče za punjenje, a zatim sam dovršio sve ostalo. Iz priloženih slika trebali biste moći zaključiti orijentaciju komponenti. Koristio sam biblioteke komponenata javne domene i orijentacija nije baš vidljiva na sitotisku.

Moj način: prvo sam stavio malo lema na podloške s peglom. Zatim puno fluksa (specifično za SMD) i pažljivo sam pozicionirao IC pincetom. Zatim zagrijte cijelu stvar na oko 200/220C (ispod tališta) kako biste izbjegli napetosti zbog neravnomjernog zagrijavanja. Zatim sam povisio temperaturu na 290C ili tako dalje i oko IC -a. Stavite li malo lema na obližnji jastučić, vidjet ćete kad se temperatura tali, jer će zasjati.

Nakon toga sam ga očistio izopropilnim alkoholom i pažljivo pregledao jeftinom USB kamerom. Tipični problemi su poravnanje i količina lemljenja, jer neki pinovi možda nisu povezani. U nekim slučajevima morao sam se vratiti na njega s malim lemilicom kako bih dodao još malo lema nekim pinovima, jer ovaj IC ispod ima termalni jastučić koji također treba lemiti. Zbog toga je pomalo nezgodno pogoditi količinu lemljenja i moglo bi se dogoditi da previše lema ispod može to povećati tako da pinovi ne dodiruju PCB.

Rekavši to, ne želim vas uplašiti. Završio sam 3 ploče i nikad nisam ubio ove IC -ove … Jednom sam je čak morao ukloniti, očistiti i ponovno pokrenuti od nule, ali je na kraju uspjelo. Opet, nije super jednostavno, ali izvedivo.

Gdje ste kupili komponente?

Uglavnom na eBayu i Aliexpressu. Međutim, robne marke su izvorne (Seeed, Pololu, Sparkfun).

Slijede neke INDIKATIVNE veze. Napomena: pogledajte oko sebe, možda ćete pronaći još jeftinije ponude …

www.aliexpress.com/item/ESP8266-Remote-Ser…

www.aliexpress.com/item/PLANTOWER-Laser-PM…

www.aliexpress.com/item/High-Accuracy-BME2…

www.aliexpress.com/item/Free-shipping-HDC1…

www.aliexpress.com/item/J34-F85-Free-Shipp…

www.aliexpress.com/item/30pcs-A11-Tactile-…

www.aliexpress.com/item/10PCS-IRF7319TRPBF…

www.aliexpress.com/item/120PC-Lot-0805-SMD…

www.aliexpress.com/item/100pcs-sma-1N5819-…

www.aliexpress.com/item/Free-Shipping-100P…

www.aliexpress.com/item/Chip-Capacitor-080…

www.aliexpress.com/item/92valuesX50kom-460…

www.aliexpress.com/item/170valuesX50pcs-85…

www.aliexpress.com/item/Si2305-si2301-si23…

www.aliexpress.com/item/100pcs-lot-SI2303-…

www.aliexpress.com/item/20pcs-XH2-54-2-54m…

www.aliexpress.com/item/10pcs-SMD-Power-In…

Prvo programiranje Atmoscan ploča uključuje programsko kolo koje je u skladu s NodeMCU -om. Za prvo programiranje obično se koristi serijska veza. Nakon toga, OTA programiranje putem wifija je preferirana opcija, jer se to može učiniti s potpuno sastavljenom jedinicom. Ne zaboravite da serijski priključak obično koristi osjetnik čestica!

Za programiranje ploče sa serijskim priključkom, USB-serijski adapter (npr. FTDI232 ili sličan) mora biti spojen na konektor J7 (pored gumba za resetiranje) slijedeći isječak na shemi. Program se može učitati bez spojenih senzora, osim što liniju prekida gejgerovog senzora treba spojiti na GND, u protivnom se ploča neće pokrenuti (za to spojite pinove 1 i 3 u RAD konektor). Najjednostavniji način testiranja ploče bez korištenja glavne skice - dakle bez složenosti senzora - je učitavanje OVOG jednostavnog programa putem serijskog kabela. Ona stvara Wi -Fi pristupnu točku koja omogućuje daljnje bljeskanje s glavnim programom.

VAŽNO: Ne zaboravite koristiti konfiguraciju 4M/2M SPIFFS prema uputama, inače glavni program neće stati. Ploča se mora inicijalizirati serijskim programiranjem s tom konfiguracijom, inače biste kasnije mogli imati problema s OTA -om.

Nažalost, inicijalizacija nekih senzora blokira ako senzori nisu prisutni (ovisno o davatelju knjižnice). Jedan primjer je biblioteka senzora s više plinova. Kako biste bili sigurni da se Atmoscan ispravno pokreće s punim firmverom, mogli biste onemogućiti povezani proces, pogledajte odgovarajuću točku Pitanja i odgovori. Jednostavan način za onemogućavanje SVIH senzora za testiranje je komentiranje retka #define ENABLE_SENSORS u datoteci GlobalDefinitions.h.

Kada ploča prvi put pokrene glavnu skicu, trebala bi prepoznati da nije konfigurirana i trebala bi otvoriti WiFi pristupnu točku, na koju se možete povezati i postaviti. Među postavkama postoji poslužitelj syslog koji uvelike pomaže u otklanjanju pogrešaka. Također možete povećati razinu bilježenja dekommentiranjem #define DEBUG_SYSLOG u datoteci GlobalDefinitions.h. Imajte na umu da se u istoj datoteci nalazi i #define DEBUG_SERIAL koji je korišten tijekom početnog otklanjanja pogrešaka. Ako nije komentirano, dobiva _nekoliko_ zaostalih zapisnika, ali minimalno. ToDo stavka uvijek je trebala učiniti evidentiranje ujednačenim i odabirom, ali nikad nisam imao vremena to očistiti.

Jeste li promijenili knjižnice koje ste koristili, je li potrebna neka konfiguracija? (za razliku od preuzimanja i kompajliranja)

Dobro pitanje, zaboravio sam to spomenuti. Doista, potrebno je nekoliko modova / konfiguracija:

  • Knjižnica https://github.com/Seeed-Studio/Mutichannel_Gas_Sensor - naredbe za serijsko otklanjanje pogrešaka. Potrebno je komentirati, jer se serijski port koristi za senzor!
  • Biblioteka https://github.com/Bodmer/TFT_eSPI - zahtijeva konfiguracijsku datoteku u kojoj su navedeni dodjela pinova i frekvencija SPI -a
  • Knjižnica https://github.com/lucadentella/ArduinoLib_MAX1704… - Gledajući komentare i zahtjeve za povlačenjem primijetio sam da je ispravljena greška koja nikada nije spojena

Koliko se sjećam to bi trebalo biti to. Javite mi ako se pojave problemi.

NAPOMENA: Molimo pogledajte komentare u najnovijem izvornom kodu - sadrži veze do svih potrebnih knjižnica i ažurira se

Zašto neki senzori na videu/slici čitaju crveno, a neki zeleno?

Boja označava trend. Počinje bijelo, a ako je gore crveno, ako je dolje zeleno.

Kako se nosite s pomakom senzora tijekom vremena? Koliko su dobri ti senzori? Što mogu vidjeti s ovim senzorima?

Iskreno, ovo nije znanstveni pribor za mjerenje. Za kalibraciju bi mi trebala oprema koju nemam na raspolaganju. Ovo je doista projekt za kućne ljubimce. Probao sam nekoliko senzora. Čestice, CO2, temperatura, vlaga, tlak, Geiger su po meni prilično dobri. Na NO2 imam rezerve u pogledu kalibracije i cjelokupnog dizajna, ali nema puno dostupnih. Sve u svemu, oni su glavni senzori.

Međutim, kombinacija je dovoljno dobra da pokaže stvari koje ne biste očekivali.

S Atmoscanom u dnevnoj sobi i kuhinjom udaljenom od sobe, detektira ogromne vrhove čestica kada npr. prženje. Osjeća NO2 iz jutarnjeg prometa čak i pri zatvorenim prozorima.

Je li Geigerov brojač doista bio potreban? Pokazuje li nešto korisno?

Na sreću nismo imali nuklearne incidente, a rat još ne dolazi … Ipak, postoje nuklearne elektrane koje nisu tako daleko i vlada distribuira pilule joda za djecu koje će se držati u ladici u slučaju incidenata … pa sam postao sumnjičav. Do sada moram reći da su očitanja točno u skladu s očekivanim pozadinskim zračenjem (0,12 uSv/h)

Kolika je ukupna cijena uređaja?

Već sam imao mnoge komponente kod kuće, a gornje veze daju vam ideju. Iskreno, ako kupite gotov NetAtmo ili slično, uštedjet ćete novac. Ne možete pobijediti kinesku tvrtku koja radi stvari na veliko! Međutim, ako volite stvarati možda zajedno sa svojom djecom, isplati se. Dobar dio je što sam već testirao (i odbacio) brojne senzore za vas …

Što je s PCB -ovima? Možete li mi prodati jednu?

Prvotno sam ih dao 10 izraditi dirtypcbs.com i moje su datoteke radile sasvim u redu. Dobra kvaliteta i dovoljno jeftino, 25USD / 20Euro za 10 PCB -a. Koristio sam dvije i rado ću poslati preostale za gole troškove (2 eura + pošiljka, ovisno o lokaciji i željama dostave). Bojim se da ću morati odabrati prve koji će mi poslati privatnu poruku.

Možete li napraviti komplet ili kickstarter kampanju?

Laskano, ali iskreno nikad nisam pomislio da je dovoljno inovativan … a osim toga, NEMA VREMENA !!

Međutim, ako netko prihvati ideju, bila bi potrebna druga iteracija. U dizajnu postoje neki oštri rubovi koje bi vrijedilo ispraviti, ali opet nikad nisam imao dovoljno vremena za V2.

O hardveru: Mogu li dodati / ukloniti senzor, zaslon itd. Za proširenje mogućnosti / smanjenje potrošnje energije?

Zaslon je povezan bez korištenja MISO -a, pa CPU nikada ne čita s zaslona. Stoga jednostavno ne možete spojiti mrav na zaslonu, to bi radilo sasvim u redu. Rekavši to, zaslon je uključen samo neko vrijeme nakon što je zadnja gesta otkrivena, tako da zapravo ne utječe na potrošnju energije.

Senzori su umjesto toga gladni energije i cijela stvar lako koristi 400/500mA. Ne zaboravite ventilator i činjenicu da senzor čestica također ima ugrađeni ventilator. ESP također ne prelazi u stanje mirovanja zbog nedostatka GPIO mostova. Međutim, to bi možda uštedjelo 20 mA …

Softver je modularni i možete jednostavno dodavati/uklanjati procese i zaslone tako da možete dodati senzore ili osvijetliti napajanje uklanjanjem nekih, ako želite. Jedino ograničenje je broj GPIO pinova. Međutim, senzori se mogu lako dodati ako se I2C ili alternativno može koristiti I2C proširivač za dodavanje GPIO -a …

Za onemogućavanje senzora, na primjer za testiranje djelomične gradnje, po mom mišljenju, najbolji način bi bio ne pokrenuti povezani proces. To se može postići komentiranjem povezanog poziva enable () u funkciji void startProcesses () u glavnoj.ino datoteci. Osim ako ne želite strukturno izmijeniti sustav, ne bih potpuno uklonio procese jer će ih ekranski i MQTT procesi anketirati. Na taj način samo bi trebali vratiti nulu. Imajte na umu da će se ulaz za prekidanje za Geigerovu ploču povući prema dolje ako se ne koristi, inače se ploča neće pokrenuti.

Koja biste poboljšanja napravili da imate vremena za V2.0?

Ne nekim redom..

  • PCB bi mogao izbjeći bakar iza ESP8266 antene. Potpuno sam ga zaboravio i čini dijagram zračenja neizotropnim
  • Punjač je prema mom mišljenju premalen za tako veliku bateriju / baterija je prevelika za punjač. Postoje i drugi IC -ovi i ja bih probao drugi.
  • Ima boljih mjerača baterije.
  • Dodao bih senzor ozona
  • Koristio bih ESP32 za više GPIO -a i Bluetooth senzora izvan glavne jedinice.
  • Da imam više GPIO -a bilo s ESP32 ili s I2C ekspanderom, upotrijebio bih jedan za kontrolu ventilatora, a drugi za isključivanje jedinice iz softvera. Kad je baterija skoro prazna, jedino što može učiniti je prikazati zaslon s niskim nivoom baterije. To je zapravo najveći nedostatak dizajna, jer se situacija s niskim nivoom napunjenosti baterije ne ljupko rješava.

O softveru

Trebalo mi je duže od hardvera … Mislim da sadrži niz dobrih koncepata, nažalost nije u potpunosti implementirano. Konkretno, vjerujem da bi ga trebalo očistiti, potencijalno proširiti i iz njega bi se lako mogao izvesti opći okvir za aplikacije ESP8266. Nema vremena. Preuzima li tko izazov?

Možete li dodati glasovno upravljanje?

Trebalo bi biti izvedivo. Postoji niz gotovih knjižnica za upravljanje ESP8266 s Alexa i ne vidim zašto bi integracija trebala biti problem. Zanimljivo je pitanje što želite učiniti s tim, što se tiče funkcionalnosti. Ne posjedujem Amazon Echo pa nikad nisam pokušao.

Kako ste napravili laserske rezove?

Crteži se izrađuju pomoću programa SketchUp. Program je lijep, ali mu nedostaju izvozne mogućnosti. Međutim, probna verzija od 30 dana pomaže jer ima dodatne funkcije. Zatim sam ga uvezao u Inkscape za konačnu obradu.

Možete li uključiti/isključiti senzore radi uštede energije putem MOSFET -ova?

U principu, lijepa ideja, ali većinu ovih senzora potrebno je stalno napajati jer imaju vrijeme zagrijavanja. Osim toga … ponestalo mi je GPIO -ova u ESP8266. Čak sam morao koristiti GPIO10 koji službeno nije funkcionalan, ali radi sasvim dobro na ESP12E.

Koje vještine bi mi trebale?

Da biste ga izgradili od nule, potrebna vam je pozadina dizajna elektronike. Ne baš puno, u današnje vrijeme s internetom ne morate baš čitati podatkovne tablice red po red kao u mojim ranim danima … Ako koristite ishod mog eksperimentiranja, trebate neke vještine lemljenja SMD -a, mehaničke vještine i malo strpljenja.

Je li ovo vaš prvi projekt?

To mi je prvi instruktivni, ali ne i prvi projekt. U prošlosti sam puno petljao, ali u današnje vrijeme zaista nemam puno vremena. Oživio sam svoje zahrđale vještine dok pokušavam naučiti nešto korisno svoju djecu..! Napravio sam još nekoliko projekata koje bih jednog dana mogao objaviti.

Preporučeni: