Satura rādītājs:

AtmoScan: 7 soļi (ar attēliem)
AtmoScan: 7 soļi (ar attēliem)

Video: AtmoScan: 7 soļi (ar attēliem)

Video: AtmoScan: 7 soļi (ar attēliem)
Video: Focusrite Masterclass with Alan Parsons and Julian Colbeck 2024, Septembris
Anonim
Image
Image
Sensori
Sensori

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

JAUNUMI

Dodieties uz manu GitHub, lai meklētu:

- Dažas nelielas aparatūras izmaiņas uzlabo dizainu, tostarp iespēju izslēgt sevi no programmatūras, novēršot vienu no lielākajiem dizaina trūkumiem - kā rīkoties ar zemu akumulatora uzlādes līmeni.

- PCB v2 dizains tagad ir publicēts kopā ar rokasgrāmatu, lai viegli piemērotu izmaiņas V1.0 dēļiem.

- CAD faili pilnīgai norobežošanai

Jaunais korpuss izskatās kā attēlā iepriekš … labi, bez gumijas joslas

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

ATMOSCAN ir daudzu sensoru ierīce, kuras mērķis ir uzraudzīt iekštelpu gaisa kvalitāti. Lai gan ir publicēti daudzi projekti, kuriem ir līdzīgs mērķis, šī ir pilnīga sistēma kompaktā, atsevišķā iepakojumā, kas tos visus apkopo. Tam ir krāsains LCD displejs, tas ir informēts par laiku un atrašanās vietu, tas tiek kontrolēts ar žestiem, un tas tiek publicēts vietnē ThingSpeak (vai citos), izmantojot MQTT, taču tas var pienācīgi apstrādāt atvienotās darbības un atkārtotu savienojumu. Ar iebūvēto uzlādējamo akumulatoru tas ilgst veselu dienu, kad tas ir atvienots no strāvas.

Tas izmanto daudzuzdevumu sadarbības sistēmu un ļoti labi reaģē uz lietotāju ievadi, vienlaikus izlases sensorus, apstrādājot lietotāja saskarni un ievietojot MQTT. Patiesībā tas diezgan daudz izspiež no mazā ESP8266. Tas tiek darīts, integrējot vairākas atvērtā pirmkoda bibliotēkas un izmantojot interneta tīmekļa pakalpojumus.

Kredīti bibliotēkām tiek piešķirti vairākiem līdzautoriem, skatīt vēlāk.

Mūziku video var atrast ŠEIT

1. darbība: sensori

Atmoscan mēra vairākus mainīgos:

  • Temperatūra
  • Mitrums
  • Spiediens
  • CO2
  • CO
  • NO2
  • GOS (gaistoši organiskie savienojumi, gaisa kvalitātes indikators)
  • PM 01
  • PM25
  • PM10
  • Radiācija

Lai to izdarītu, tajā ir integrēti vairāki diskrēti sensori

  • BME280 (piemēram, saite)
  • PMS7003 (piemēram, saite)
  • MH-Z19 (piemēram, saite)
  • HDC1080 (piemēram, saite)
  • MiCS6814 (saite)
  • MP503 (saite)
  • LND-712 Geigera caurule (saite, es to atradu Eiropā šeit saite vai šeit saite) ar augstsprieguma moduli (saite)

Datu lapas ir ŠEIT.

2. solis: elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Atmoscan var viegli izveidot, izmantojot NodeMCU vai jebkuru citu ESP8266 plati un dažus viegli pieejamus komponentus, piemēram, līmeņa pārslēdzējus un sprieguma regulatorus, ja atsakāties no integrētā akumulatora lādētāja.

Kamēr es izveidoju prototipu ar atsevišķiem komponentiem, galīgajai versijai es izveidoju īpašu tāfeli, kas integrē visas funkcijas un nodrošina glītus savienotājus sensoriem, gaismas diodes statusam (zils = pievienots barošanas avots; sarkans = uzlāde).

Ērgļa PCB faili pieejami ŠEIT.

Konkrēti, tāfele integrē:

  • Uzlādes shēma, kuras pamatā ir MAX8903A (saite)
  • Vienas pogas ieslēgšanas/izslēgšanas loģika
  • ESP12E modulis
  • Programmēšanas loģika
  • Līmeņu pārslēdzējs
  • LCD pretgaismas draiveris
  • 3.3V paaugstināšanas/pazemināšanas sprieguma regulators, pamatojoties uz Pololu S7V8F3 (saite)
  • 5V paaugstināta sprieguma regulators, pamatojoties uz Pololu U1V10F5 (saite)
  • LiPo degvielas mērītājs, pamatojoties uz SparkFun TOL10617 (saite)

Displejs ir 2,8 collu TFT 320x240, pamatojoties uz ILI9341 mikroshēmu (saite).

Žestu sensors ir balstīts uz PAJ7620U2 mikroshēmu (saite), kas ir daudz labāka nekā lētā APDS9960, kas rada nepārtrauktus pārtraukumus un nevar darboties caur plexiglas.

Sensori ir diezgan izsalkuši, tāpēc, lai garantētu vismaz 24 stundu autonomiju, es izveidoju iepakojumu ar 3 x 5000 mAh LiPo 105575 baterijām (saite). Patiesībā varēja pietikt ar 2. Lādētājs MAX8903 cenšas uzlādēt iegūto 15 000 mAh iepakojumu.

PIEZĪMES - KĀ REDZĒTS BILDĒS:

  • Tiek parādītas savienotāju pozīcijas
  • SD kartes slots ir jāatvieno no displeja, ja vēlaties, lai tas ietilptu korpusā
  • Lai netraucētu ventilatoram, PCB ir jāizveido neliels iecirtums (iegriezumi ir modē pēc iPhone X). Labots PCB V2

Savienotāju saīsinājumi uz PCB ir šādi:

  • PRS: Barometriskā spiediena sensors (pamatojoties uz BME280) PIEZĪME: jāuzstāda tieši uz PCB
  • GOS: Grove - gaisa kvalitātes sensors v1.3 (pamatojoties uz MP503)
  • TMP: augstas precizitātes digitālais mitruma un temperatūras sensors (pamatojoties uz HDC1080)
  • PMS: PMS7003 Ciparu daļiņu koncentrācijas sensors
  • GĀZE: Grove - daudzkanālu gāzes sensors (pamatojoties uz MiCS6814)
  • GES: Grove - žestu sensors (pamatojoties uz PAJ7620U2)
  • RAD: Geigera caurule (izmantojot augstsprieguma Geigera zondes vadītāja barošanas moduli 400V / 500V ar TTL digitalizētu impulsa izeju)
  • CO2: MH-Z19 infrasarkanais CO2 gāzes sensors
  • U1V10F: 5V paaugstināta sprieguma regulators, kura pamatā ir Pololu
  • U1V10F5 S7V8V3: 3.3V paaugstināšanas/pazemināšanas sprieguma regulators, kura pamatā ir Pololu S7V8F3
  • TOL10617: Sparkfun LiPo degvielas mērītājs
  • LCD: ILI9341 displejs

3. darbība: iežogojums

Korpuss
Korpuss
Korpuss
Korpuss
Korpuss
Korpuss

Korpuss ir iegūts no plexiglas 10x10x10 cm kuba konteinera, ko nopirku ebay, un tas bija paredzēts pavisam citam lietojumam. Tam bija jaukas ventilācijas atveres, kas bija tieši tas, kas bija nepieciešams. Skaļums principā bija pietiekams, lai iepakotu visu komplektu, izņemot to, ka tas nebija viegli … daži agri mēģinājumi, kuru pamatā bija kartona maketi, bija neveiksmīgi, tāpēc es padevos un dažas stundas izšķērdēju ar 3D CAD, un man bija lāzera griezums. Iekšējā telpa ir sadalīta nodalījumos tā, lai temperatūras sensors būtu pēc iespējas tālāk no iekšējiem siltuma avotiem. Kamēr ārējais korpuss ir izgatavots no 3 mm materiāla, augšējais ir izgatavots no 2+1 mm loksnēm. Šis triks ļāva žestu sensoram pārklāt tikai ar 1 mm akrilu, un tas ir pietiekami, lai tas darbotos.

Dažas izmaiņas bija jāveic ar rokas instrumentiem oriģinālajā korpusā, piemēram, ventilatoru, slēdzi un USB caurumus. Rezultāts tomēr bija pieklājīgs!

CAD faili atrodas ŠEIT.

4. solis: mehāniskā montāža

Mehāniskā montāža
Mehāniskā montāža
Mehāniskā montāža
Mehāniskā montāža
Mehāniskā montāža
Mehāniskā montāža

Iepakojums ir ļoti blīvs, bet, pateicoties 3D cad dizainam, man bija daži pārsteigumi, to saliekot.

Gaisa cirkulāciju (no augšas uz leju) nodrošina neliels ventilators. Iegādājoties godīgu numuru vietnē Aliexpress / eBay, es sapratu, ka lētu ventilatoru troksnis ir nepanesams iekštelpu ierīcei. Es galu galā nopirku diezgan dārgu, lēnu griešanos Papst 255M (Link), un caur pāris diodēm es to baroju ar mazāk nekā 5 V. Rezultāts ir diezgan labs un pietiekami kluss, lai to nepamanītu (tas ir pat sievas apstiprināts, visgrūtākais sertifikāts).

5. solis: programmatūra

Programmatūra
Programmatūra
Programmatūra
Programmatūra
Programmatūra
Programmatūra
Programmatūra
Programmatūra

Programmatūras arhitektūra ir balstīta uz objektorientētu ietvaru, kas vada vairākus (sadarbības) procesus, kas apstrādā lietotāja saskarni, sensorus un MQTT. Tas ir atkarīgs no atrašanās vietas un laika, taču var tikt galā ar atvienošanu / atkārtotu savienojumu ar WiFI.

Sistēma ir atvērta un var pārvaldīt neierobežotu skaitu ekrānu, ja vien to kods un resursi ietilpst zibatmiņā. Lietojumprogrammu ietvars apstrādā žestus un nodod tos ekrāniem, lai vajadzības gadījumā tos apstrādātu vai atceltu. Sistēmas pārvaldītie žesti ir:

  • Velciet pa kreisi / pa labi - mainiet ekrānu
  • (Pirksts) Virpulis pulksteņrādītāja virzienā - pagrieziet ekrānu
  • (Pirksts) Virpulis pretēji pulksteņrādītāja virzienam - izsauciet iestatīšanas ekrānu
  • (Rokas) No tālienes līdz aizvēršanai - izslēdziet displeju

Ekrāni tiek mantoti no bāzes klases un tiek pārvaldīti, izmantojot šādu notikumu modeli:

  • aktivizēt - tiek aktivizēts vienreiz, kad tiek izveidots ekrāns
  • atjaunināt - periodiski tiek aicināts atjaunināt ekrānu
  • deaktivizēt - zvanīts vienu reizi, pirms ekrāns tiek noraidīts
  • onUserEvent - tiek izsaukts, kad tiek aktivizēts žestu sensors. Ļauj atbildēt un arī ignorēt noklusējuma notikumu apstrādi, piem. pārtraukt vilkšanu, lai mainītu ekrānu

Katrs ekrāns deklarē savas iespējas, sniedzot šādu informāciju:

  • getRefreshPeriod - cik bieži ekrāns ir jāatsvaidzina
  • getRefreshWithScreenOff - ja ekrāns vēlas tikt atsvaidzināts pat tad, ja ir izgaismots pretgaisma. piem. diagrammām
  • getScreenName - ekrāna nosaukums
  • isFullScreen - pilnībā kontrolējiet displeju vai ļaujiet augšējai joslai norādīt datumu/laiku/atrašanās vietu/akumulatora mērītāju/wifi mērierīci

Sistēma spēj momentāni izveidot un sadalīt ekrānus, izmantojot deklaratīvas klases rūpnīcu. Dinamiskā piešķiršana ietaupa RAM un padara ierīci viegli paplašināmu. Vispārējā pieteikšanās sistēma ir atkārtoti izmantojama arī citiem projektiem.

Ekrāni, kas pašlaik tiek ieviesti Atmoscan, ir šādi:

  • Sensoru vērtības
  • Geigera skaitītāja / semilogu diagramma
  • Sistēmas statuss
  • Kļūdu žurnāls
  • Meteoroloģiskā stacija
  • Lidmašīnas novērotājs
  • Uzstādīt
  • Zems akumulatora līmenis

Iestatīšanas ekrāni ļauj iestatīt Wifi akreditācijas datus, MQTT kanālus, Syslog serveri.

JAUNUMS versijā 2.0: visas tīmekļa pakalpojumu atslēgas tagad ir konfigurējamas, izmantojot konfigurācijas portālu. Vienīgā vērtība, kas joprojām ir kodēta, ir OTA parole (lielie ATMOSCAN).

1. PIEZĪME. Pirmā programmēšana jāveic, izmantojot USB sērijas kabeli, kas pievienots programmēšanas savienotājam. Tā kā seriālo portu aizņem sensors, šāda veida atkļūdošana un programmēšana pēc montāžas ir nepraktiska, jo būtu nepieciešams atvienot sensoru. Tāpēc programmatūra atbalsta SYSLOG atkļūdošanu un OTA atjauninājumus.

2. PIEZĪME. ATMOSCAN binārais fails ir lielāks par 700 KB, un ArduinoOTA programmai ir jābūt vismaz divas reizes lielākam par attēla izmēru, kas izslēdz iespēju "4M (3M SPIFFS)". Tomēr standarta opcija "4M (1M SPIFFS)" arī nav piemērota, jo SPIFFS nodalījums nebūtu pietiekams grafiskajiem resursiem, kas saistīti ar meteoroloģisko staciju, lidmašīnas novērotāju un konfigurācijas failu. Tāpēc, lai atrisinātu problēmu, ir izveidota pielāgota konfigurācija "4M (2M SPIFFS)". Skaidrojums šeit.

Dokumentācija un pilns avota kods ir pieejami šeit.

KREDĪTI IEKĻAUJ KODU UN BIBLIOTĒKAS NO

  • Adafruit
  • Arkao
  • Bblanšons
  • Bodmers
  • ClosedCube
  • Gmag11
  • Knolleary
  • Lucadentella
  • Redzēts
  • Squix78
  • Tzapu
  • Vednis97

INTEGRĒ WEB PAKALPOJUMUS NO

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

6. solis: padariet to labāku

Padariet to labāku!
Padariet to labāku!

Rezultāts nemaz nav slikts! Programmatūra izskatās labi un ir uzticama, lai gan to varētu paplašināt ar jaunām funkcijām un, iespējams, nedaudz iztīrīt, lai lietojumprogrammu ietvars būtu patiesi atkārtoti izmantojams citiem projektiem. Dažu sensoru kalibrēšana nav lieliska, taču būtu nepieciešama testa laboratorijas iekārta. Laiks ir dārgs, un man nav daudz, tāpēc progress bija lēns. Kad biju pabeidzis, kļuva pieejams pienācīgs atbalsts ESP32. Ja es to sāktu tagad, es to izmantotu un integrētu ārējos sensorus, izmantojot Bluetooth.

Kāds?

PIEZĪME: Man joprojām ir nedaudz PCB, tādēļ, ja kāds ir ieinteresēts, tie ir pieejami par nominālo / pasta cenu.

7. darbība: jautājumi un atbildes

Jautājumi un atbildes
Jautājumi un atbildes
Jautājumi un atbildes
Jautājumi un atbildes

Pirmkārt, PALDIES par jūsu ārkārtīgi pozitīvajiem komentāriem. Godīgi sakot, es negaidīju tik lielu interesi.

Es saņēmu vairākus jautājumus, izmantojot komentārus vai privātas ziņas, tāpēc es domāju savākt atbildes šeit. Ja nāk vēl, es pievienošu.

Atvilktnes aizmugurē es atradu 8 pieejamos PCB - un tie ir ceļā uz Beļģiju, Vāciju, Indiju, ASV, Kanādu, Lielbritāniju, Austrāliju. Oho, 3 kontinenti! Pārsteidzošs.

Kas jāievieto ATMOSCAN konfigurācijas lapā?

Atmoscan konfigurācijas lapā ir nepieciešami šādi parametri:

  • Tā WiFi tīkla SSID un parole, ar kuru vēlaties izveidot savienojumu
  • Jūsu izmantotais MQTT serveris. Piemēram, es izmantoju mqtt.thingspeak.com
  • Izmantotā savienojuma virkne MQTT tēmām. Piemēram, Thingspeak MQTT tēmas ir šādā formātā: kanāli/CHANNEL-ID/publicēt/WRITE-API (PIEMĒRS: kanāli/123456/publicēt/567890)
  • Sistēmas žurnāla serveris: tā žurnāla servera IP, kuru izmantojat reģistrēšanai
  • Google atslēga Maps Static API. Saņemiet atslēgu vietnē https://console.cloud.google.com/apis/dashboard. Izveidojiet projektu; Atmoscan izmantotā API ir https://maps.googleapis.com/maps/api/staticmap. Izveidojiet šīs API atslēgu tikko izveidotajā Google projektā, izmantojiet to šeit
  • Pazemes laika atslēga. Izveidojiet kontu vietnē www.wunderground.com, dodieties uz WEATHER API (saite mājas lapas apakšā, dodieties uz ATSLĒGU IESTATĪJUMI, ģenerējiet atslēgu, izmantojiet to šeit
  • Geonames konts. Izveidojiet kontu vietnē https://www.geonames.org/, ļaujiet tai izmantot bezmaksas tīmekļa pakalpojumus un ievietojiet lietotājvārdu šeit
  • TimeZoneDB atslēga. Izveidojiet kontu vietnē https://timezonedb.com/, izveidojiet atslēgu un ievietojiet to šeit

Kā konfigurēt Thingspeak?

Jums ir nepieciešami 3 Thingspeak kanāli. Laukus izmanto šādi:

CHANNEL 1 lauki

  1. TEMPERATŪRA
  2. Mitrums
  3. SPIEDIENS
  4. PM01
  5. PM2.5
  6. PM10
  7. MPT
  8. RADIĀCIJA

CHANNEL 2 lauki

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

CHANNEL 3 lauki (sistēmas kanāls)

  1. LAIKS MINŪTĒS
  2. BEZMAKSAS KAUPA BAITOS
  3. WIFI RSSI (SIGNĀLS DBM)
  4. AKUMULATora spriegums
  5. LINEAR SOC (BATERY STADE OF CHARGE % - lineārs aprēķins, proporcionāls spriegumam)
  6. NATIVE SOC (BATERY STARE OF CHARGE % - kā ziņots ar mērierīci. Kā nolasīts no mērinstrumenta. PIEZĪME: mērinstruments saka 0 %, sasniedzot 3.6v, bet baterijas var izlādēties nedaudz tālāk, piemēram, virs 3v. Apakšējā robeža, pie kura ATMOSCAN izslēdzas, ir #define globaldefinitions.h failā)
  7. SISTĒMAS TEMPERATŪRA (no bme280, uzstādīta tieši pie tāfeles)
  8. SISTĒMAS MITRUMS (no bme280, uzstādīts tieši pie tāfeles)

PCB ir ļoti kompakts. Kā pielodēt SMD ierīces, īpaši MAX8903A IC?

Pirmkārt, es iesaku jums pajautāt sev, vai vēlaties iekļūt SMD vai tas ir vienreizējs- ja tas ir pēdējais, varbūt palūdziet kādam to izdarīt jūsu vietā. Ja vēlaties pieņemt SMD izaicinājumu, nedaudz ieguldiet un iegādājieties atbilstošus instrumentus (lodmetālu, plūsmu, izopropilspirta mazu dzelzi, karstu pistoli, pinceti, lētu USB kameru, PCB turētāju). Mūsdienās šī ir lēta lieta. Pēc tam noskatieties YouTube videoklipu-to ir pusmiljons-un pavadiet kādu laiku ar veco PCB, kuru varat upurēt un atdalīt / iztīrīt / lodēt dažus komponentus. Jūs neticētu, cik tas ir pamācoši, lai uzzinātu, ko sagaidīt, uzlabot temperatūru utt. Runājot no pieredzes … Es sāku SMD mainīt displeja savienotāju iPod touch, un es nogalināju pirmo!

Patiešām, Atmoscan PCB ir kompakts un IC nav viegls. Atkal es neiesaku jums to darīt kā savu pirmo SMD lodēšanu. QFN nav draudzīga pakete, lai gan līdz šim esmu pielodējis numuru. Jūs nekad neesat pārliecināts, ka pareizi sapratāt…

Atmoscan es to vispirms lodēju, pēc tam apkārt esošās sastāvdaļas, lai es varētu pārbaudīt, vai plāksnes uzlādes daļa darbojas, un tad es pabeidzu visu pārējo. No pievienotajiem attēliem jums vajadzētu spēt secināt sastāvdaļu orientāciju. Es izmantoju publiskā domēna komponentu bibliotēkas, un sietspiedē orientācija nav ļoti acīmredzama.

Mans veids: vispirms es uzliku spilventiņiem lodētavu ar gludekli. Tad daudz plūsmas (specifisks SMD) un es ar pincetēm rūpīgi novietoju IC. Pēc tam visu uzsilda līdz aptuveni 200/220C (zem kušanas temperatūras), lai izvairītos no spriedzes nevienmērīgas sildīšanas dēļ. Tad es paaugstināju temperatūru līdz 290C vai tā tālāk un ap IC. Ja uz tuvējā paliktņa uzliksiet mazliet lodēt, jūs redzēsit, kad temperatūra ir kušanas temperatūrā, jo tā spīdēs.

Pēc tam es to iztīrīju ar izopropilspirtu un rūpīgi pārbaudīju ar lētu USB kameru. Tipiskas problēmas ir lodēšanas izlīdzināšana un daudzums, jo dažas tapas var nebūt savienotas. Dažos gadījumos man bija jāatgriežas pie tā ar nelielu lodāmuru, lai dažām tapām pievienotu vēl kādu lodmetālu, jo zem šī IC ir termiskais paliktnis, kas arī ir jāpielodē. Tas padara mazliet sarežģītu uzminēt lodēšanas daudzumu, un var gadīties, ka pārāk daudz lodēšanas zem tā var paaugstināt tā, lai tapas nepieskartos PCB.

To sakot, es nevēlos jūs nobiedēt. Es pabeidzu 3 dēļus un nekad neesmu nogalinājis šos IC … Kad man pat vajadzēja to noņemt, iztīrīt un restartēt no nulles, bet galu galā tas darbojās. Atkal, tas nav ļoti vienkārši, bet izpildāms.

Kur jūs iegādājāties komponentus?

Galvenokārt eBay un Aliexpress. Tomēr firmas ir oriģinālas (Seeed, Pololu, Sparkfun).

Tālāk ir norādītas dažas indikatīvas saites. Piezīme: paskatieties apkārt, iespējams, atradīsit pat lētākus piedāvājumus …

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

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

www.aliexpress.com/item/High-Accuality-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/92valuesX50pcs-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…

Atmoscan plate ietver programmēšanas shēmu, kas atbilst NodeMCU. Sērijas savienojums parasti tiek izmantots pirmajai programmēšanai. Pēc tam vēlamā iespēja ir OTA programmēšana, izmantojot wifi, jo to var izdarīt ar pilnībā samontētu ierīci. Neaizmirstiet, ka sērijveida portu parasti izmanto daļiņu sensors!

Lai ieprogrammētu plati ar sērijveida, USB seriālais adapteris (piemēram, FTDI232 vai līdzīgs) ir jāpievieno J7 savienotājam (blakus atiestatīšanas pogai), sekojot shēmā redzamajai kontaktligzdai. Programmu var augšupielādēt, ja nav pievienoti sensori, izņemot to, ka geigera sensora pārtraukšanas līnija ir jāpievieno GND, pretējā gadījumā tāfele netiks sāknēta (lai to izdarītu, pievienojiet 1. un 3. tapu RAD savienotājā). Vienkāršākais veids, kā pārbaudīt plāksni, neizmantojot galveno skici - tātad bez sensoru sarežģītības - ir augšupielādēt ŠO vienkāršo programmu, izmantojot seriālo kabeli. Tas izveido wifi piekļuves punktu, kas ļauj turpināt mirgot ar galveno programmu.

SVARĪGI! Neaizmirstiet izmantot 4M/2M SPIFFS konfigurāciju saskaņā ar instrukcijām, pretējā gadījumā galvenā programma nebūs piemērota. Dēlis ir jāinicializē, izmantojot sērijas programmēšanu ar šo konfigurāciju, pretējā gadījumā vēlāk var rasties problēmas ar OTA.

Diemžēl dažu sensoru inicializācija tiek bloķēta, ja sensori nav pieejami (atkarīgs no bibliotēkas nodrošinātāja). Viens piemērs ir vairāku gāzu sensoru bibliotēka. Lai pārliecinātos, ka Atmoscan pareizi sāk darboties ar pilnu programmaparatūru, varat atspējot saistīto procesu, skatiet saistīto jautājumu un atbilžu punktu. Vienkāršs veids, kā atspējot VISUS sensorus testēšanai, ir komentēt rindu #define ENABLE_SENSORS failā GlobalDefinitions.h.

Kad dēlis pirmo reizi palaiž galveno skici, tai jāatzīst, ka tā nav konfigurēta, un jāatver wifi tīklājs, ar kuru jūs varat izveidot savienojumu un izveidot to. Starp iestatījumiem ir sistēmas žurnāla serveris, kas ievērojami palīdz atkļūdošanai. Jūs varat arī palielināt reģistrēšanas līmeni, komentējot #define DEBUG_SYSLOG failā GlobalDefinitions.h. Lūdzu, ņemiet vērā, ka tajā pašā failā ir arī #define DEBUG_SERIAL, kas tika izmantots sākotnējās atkļūdošanas laikā. Ja to nekomentē, tas izvada _ dažus_ atlikušos mežizstrādes datus, bet minimāli. Uzdevumu vienums vienmēr bija padarīt reģistrēšanu vienveidīgu un atlasāmu, bet man nekad nebija laika to sakopt.

Vai esat mainījis izmantotās bibliotēkas, vai ir nepieciešama konfigurācija? (pretstatā lejupielādei un apkopošanai)

Labs jautājums, aizmirsu pieminēt šo punktu. Patiešām, ir nepieciešami daži modi / konfigurācijas:

  • Bibliotēka https://github.com/Seeed-Studio/Mutichannel_Gas_Sensor - sērijas atkļūdošanas paziņojumi. Nepieciešams komentēt, jo seriālais ports tiek izmantots sensoram!
  • Bibliotēka https://github.com/Bodmer/TFT_eSPI - nepieciešams konfigurācijas fails, kurā ir norādīts pin piešķiršana un SPI biežums
  • Bibliotēka https://github.com/lucadentella/ArduinoLib_MAX1704… - Skatoties komentārus un pieprasījumus, es pamanīju, ka ir kļūdu labojums, kas nekad nav apvienots

Cik atceros, tā tam vajadzētu būt. Paziņojiet man, ja rodas kādas problēmas.

PIEZĪME. Lūdzu, skatiet komentārus jaunākajā avota kodā - satur saites uz visām nepieciešamajām bibliotēkām un tiek pastāvīgi atjaunināts

Kāpēc daži sensori video/attēlos rāda sarkano un daži zaļo?

Krāsa norāda uz tendenci. Tas sākas baltā krāsā, un, ja iet uz augšu, ir sarkans, ja lejup, tas ir zaļš.

Kā jūs risināt sensoru novirzes laika gaitā? Cik labi ir šie sensori? Ko es varu redzēt ar šiem sensoriem?

Godīgi sakot, tas nav zinātnisks mērījumu komplekts. Lai kalibrētu, man ir nepieciešams aprīkojums, kas man nav pieejams. Tas tiešām ir mājdzīvnieku projekts. Es izmēģināju vairākus sensorus. Daļiņas, CO2, temperatūra, mitrums, spiediens, Geigers, manuprāt, ir diezgan labas. Attiecībā uz NO2 man ir iebildumi par kalibrēšanu un vispārējo dizainu, taču nav daudz pieejams. Kopumā tie ir galvenie sensori.

Tomēr kombinācija ir pietiekami laba, lai parādītu lietas, kuras jūs negaidītu.

Ar Atmoscan dzīvojamo istabu un virtuvi no istabas tālāk, tā nosaka milzīgas daļiņu virsotnes, kad, piem. cepamas lietas. Rīta satiksmē rodas NO2 pat aizvērtiem logiem.

Vai Geigera skaitītājs tiešām bija vajadzīgs? Vai tas parāda kaut ko noderīgu?

Par laimi, mums nav bijuši kodolenerģijas incidenti, un karš vēl nenāk … Tomēr atomelektrostacijas nav tik tālu, un valdība izplata bērniem joda tabletes, kuras incidentu gadījumā vajadzētu turēt atvilktnē … tāpēc man radās aizdomas. Līdz šim man jāsaka, ka rādījumi precīzi atbilst paredzamajam fona starojumam (0,12 uSv/h)

Kādas ir ierīces kopējās izmaksas?

Man mājās jau bija daudz sastāvdaļu, un iepriekš minētās saites sniedz jums priekšstatu. Godīgi sakot, iegādājoties gatavu NetAtmo vai līdzīgu, jūs ietaupāt naudu. Jūs nevarat pārspēt ķīniešu uzņēmumu, kas dara lietas mērogā! Tomēr, ja jums patīk gatavot, iespējams, kopā ar saviem bērniem, tas ir tā vērts. Labā daļa ir tāda, ka es jums jau esmu pārbaudījis (un izmetis) vairākus sensorus….

Kā ar PCB? Vai jūs varat man pārdot vienu?

Man sākotnēji bija 10 no tiem, ko izgatavoja dirtypcbs.com, un mani faili strādāja lieliski. Laba kvalitāte un pietiekami lēti, 25USD / 20Euro par 10 PCB. Es izmantoju divus, un es labprāt nosūtīšu atlikušos par pašizmaksu (2 eiro + sūtījums, atkarībā no atrašanās vietas un nosūtīšanas vēlmēm). Baidos, ka man būs jāizvēlas pirmās, kas man sūta privātu ziņu.

Vai varat izveidot komplektu vai kickstarter kampaņu?

Glaimojošs, bet, godīgi sakot, es nekad neesmu domājis, ka tas ir pietiekami novatorisks … un turklāt NAV LAIKA !!

Tomēr, ja kāds uzņemas ideju, būtu nepieciešama otra atkārtošana. Dizainā ir dažas asas malas, kuras būtu vērts labot, bet atkal man nekad nebija pietiekami daudz laika V2.

Aparatūrā: Vai es varu pievienot / noņemt sensoru, ekrānu utt., Lai paplašinātu iespējas / samazinātu enerģijas patēriņu?

Displejs ir savienots, neizmantojot MISO, tāpēc CPU nekad nelasa no displeja. Tāpēc jūs vienkārši nevarējāt savienot displeju un tas darbosies lieliski. Tomēr displejs ir ieslēgts tikai kādu laiku pēc pēdējā žesta noteikšanas, tāpēc tas īsti neietekmē enerģijas patēriņu.

Tā vietā sensori ir izsalkuši, un visa lieta viegli izmanto 400/500mA. Neaizmirstiet ventilatoru un arī to, ka daļiņu sensoram ir arī iebūvēts ventilators. ESP arī neiet miega režīmā, jo trūkst GPIO pons. Tomēr tas, iespējams, ietaupītu 20 mA …

Programmatūra ir modulāra, un jūs varat viegli pievienot/noņemt procesus un ekrānus, lai, ja vēlaties, varētu pievienot sensorus vai padarīt to ieslēgtu, noņemot dažus. Vienīgais ierobežojums ir GPIO tapu skaits. Tomēr sensorus var viegli pievienot, ja I2C, vai arī, lai pievienotu GPIO, varētu izmantot I2C paplašinātāju …

Lai atspējotu sensoru, piemēram, lai pārbaudītu daļēju uzbūvi, manuprāt, labākais veids būtu nesākt saistīto procesu. To var paveikt, komentējot saistīto enable () izsaukumu galvenajā.ino faila funkcijā void startProcesses (). Ja vien jūs nevēlaties strukturāli modificēt sistēmu, es nenoņemtu procesus vispār, jo ekrāns un MQTT procesi tos aptaujās. Tādā veidā viņiem vienkārši jāatgriež nulle. Lūdzu, ņemiet vērā, ka geigera dēļa pārtraukšanas ieeja tiks izvilkta, ja tā netiks izmantota, pretējā gadījumā tā netiks sāknēta.

Kādus uzlabojumus jūs būtu veicis, ja jums būtu laiks V2.0?

Ne kādā konkrētā secībā..

  • PCB varētu izvairīties no vara aiz ESP8266 antenas. Es to pilnīgi aizmirsu, un tas padara radiācijas diagrammu neizotropu
  • Lādētājs, manuprāt, ir pārāk liels tik lielam akumulatoram / akumulators ir pārāk liels lādētājam. Ir arī citi IC, un es mēģinātu citu.
  • Ir labāki akumulatora mērinstrumenti.
  • Es pievienotu ozona sensoru
  • Es izmantotu ESP32, lai iegūtu vairāk GPIO un Bluetooth sensoru no galvenās ierīces.
  • Ja man būtu vairāk GPIO vai nu ar ESP32, vai ar I2C paplašinātāju, es izmantotu vienu, lai kontrolētu ventilatoru, un otru, lai izslēgtu ierīci no programmatūras. Tagad, kad ir zems akumulatora līmenis, vienīgais, ko tā var darīt, lai parādītu ekrānu ar zemu akumulatora uzlādes līmeni. Tas patiesībā ir lielākais dizaina trūkums, jo akumulatora uzlādes līmenis netiek graciozi apstrādāts.

Par programmatūru

Tas aizņēma ilgāku laiku nekā aparatūra … Es domāju, ka tajā ir vairākas labas koncepcijas, kuras diemžēl nav pilnībā ieviestas. Konkrētāk, es uzskatu, ka tas ir jātīra, potenciāli jāpaplašina un no tā var viegli iegūt vispārēju sistēmu ESP8266 lietojumprogrammām. Nav laika. Vai kāds uzņem izaicinājumu?

Vai varat pievienot balss vadību?

Vajadzētu būt izpildāmam. Ir vairākas gatavas bibliotēkas, lai kontrolētu ESP8266 ar Alexa, un es neredzu, kāpēc integrācijai vajadzētu būt problēmai. Interesants jautājums ir tas, ko vēlaties ar to darīt, ņemot vērā funkcionalitāti. Man nepieder Amazon Echo, tāpēc es nekad nemēģināju.

Kā jūs veicāt lāzera griezumus?

Zīmējumi ir veidoti, izmantojot SketchUp. Programma ir jauka, taču tai nopietni trūkst eksportēšanas iespēju. Tomēr 30 dienu izmēģinājuma versija palīdz, jo tai ir papildu funkcionalitāte. Pēc tam es to importēju Inkscape galīgajai apstrādei.

Vai varat ieslēgt/izslēgt sensorus, lai taupītu enerģiju, izmantojot MOSFET?

Principā jauka ideja, taču lielākajai daļai šo sensoru ir jābūt visu laiku darbināmam, jo tiem ir iesildīšanās laiks. Turklāt… man beidzas GPIO ESP8266. Man pat bija jāizmanto GPIO10, kas oficiāli nav funkcionāls, bet labi darbojas ESP12E.

Kādas prasmes man būtu vajadzīgas?

Lai to izveidotu no nulles, jums ir nepieciešams zināms elektronikas dizaina fons. Patiešām, mūsdienās, izmantojot internetu, jums patiešām nav jālasa datu lapas rindā pa rindām kā manās pirmajās dienās … Ja izmantojat mana eksperimenta rezultātus, jums ir vajadzīgas dažas SMD lodēšanas prasmes, mehāniskās prasmes un pacietība.

Vai šis ir jūsu pirmais projekts?

Tas ir mans pirmais pamācāms, bet ne pirmais projekts. Agrāk es daudz ķēros, bet mūsdienās man tiešām nav daudz laika. Es augšāmcēlu savas sarūsējušās prasmes, cenšoties saviem bērniem iemācīt kaut ko noderīgu..! Es izveidoju vēl dažus projektus, kurus kādu dienu varētu publicēt.

Ieteicams: