Tartalomjegyzék:

AtmoScan: 7 lépés (képekkel)
AtmoScan: 7 lépés (képekkel)

Videó: AtmoScan: 7 lépés (képekkel)

Videó: AtmoScan: 7 lépés (képekkel)
Videó: Таблица умножения больше не нужна / Умножение любых чисел без калькулятора @arinablog 2024, November
Anonim
Image
Image
Érzékelők
Érzékelők

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

HÍREK

Keresse fel a GitHub -ot:

- Néhány apró hardvermódosítás javítja a tervezést, beleértve a szoftverek kikapcsolásának képességét, kiküszöbölve a tervezés egyik legnagyobb hátrányát - az alacsony akkumulátor -kezelést.

- Most megjelent egy PCB v2 terv egy útmutatóval együtt, hogy a változtatást könnyedén alkalmazni lehessen a V1.0 táblákon.

- CAD fájlok a teljes burkolathoz

Az új ház úgy néz ki, mint a fenti képen … nos, gumiszalag nélkül

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

Az ATMOSCAN egy multiszenzoros eszköz, amelynek célja a beltéri levegő minőségének megfigyelése. Bár sok hasonló célú projektet publikáltak, ez egy komplett rendszer egy kompakt, önálló csomagban, amely ezeket összefoglalja. Színes LCD kijelzővel rendelkezik, idő- és helytudatos, gesztusvezérelt, és közzéteszi a ThingSpeak -en (vagy másokon) az MQTT -n keresztül, de megfelelően tudja kezelni a leválasztott műveleteket és az újracsatlakozást. Beépített újratölthető akkumulátorával az áramellátásról való leválasztás után egy teljes napot bír.

Többfeladatos együttműködési keretrendszert használ, és nagyon érzékeny a felhasználói beviteli folyamatokra, miközben mintavételez érzékelőket, kezeli a felhasználói felületet, és közzéteszi az MQTT -ben. Valójában eléggé kinyomja az apró ESP8266 -ot. Ezt számos nyílt forráskódú könyvtár integrálásával és az internetes webszolgáltatások kihasználásával teszi.

A könyvtárakat számos közreműködő kapja, lásd később.

A zenét videóban ITT találjátok

1. lépés: Érzékelők

Az Atmoscan számos változót mér:

  • Hőfok
  • páratartalom
  • Nyomás
  • CO2
  • CO
  • NO2
  • VOC (illékony szerves vegyületek, levegőminőségi mutató)
  • PM 01
  • PM25
  • PM10
  • Sugárzás

Ehhez számos diszkrét érzékelőt integrál

  • BME280 (pl. Link)
  • PMS7003 (pl. Link)
  • MH-Z19 (pl. Link)
  • HDC1080 (pl. Link)
  • MiCS6814 (link)
  • MP503 (link)
  • LND-712 Geiger cső (link, Európában itt találtam link vagy itt link) nagyfeszültségű modullal (link)

Az adatlapok ITT találhatók.

2. lépés: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Az Atmoscan könnyen felépíthető NodeMCU -val vagy bármely más ESP8266 kártyával, valamint néhány könnyen hozzáférhető komponenssel, például szintváltókkal és feszültségszabályozókkal, ha feladja az integrált akkumulátortöltőt.

Miközben prototípust készítettem külön alkatrészekkel, a végső változathoz egy speciális táblát terveztem, amely integrálja az összes funkciót és tiszta csatlakozókat biztosít az érzékelőkhöz, LED -eket az állapothoz (kék = tápegység csatlakoztatva; piros = töltés).

Eagle PCB fájlok ITT érhetők el.

Konkrétan a tábla integrálja:

  • Töltési áramkör MAX8903A alapján (link)
  • Egygombos ki/be logika
  • ESP12E modul
  • Programozási logika
  • Szintváltó
  • LCD háttérvilágítás meghajtó
  • 3,3 V-os fel/le-lefeszültség-szabályozó a Pololu S7V8F3 alapján (link)
  • 5V fokozható feszültségszabályozó a Pololu U1V10F5 alapján (link)
  • LiPo üzemanyag -mérő SparkFun TOL10617 alapján (link)

A kijelző egy 2,8 hüvelykes, 320x240 méretű TFT, amely egy ILI9341 chipen (Link) alapul.

A gesztusérzékelő a PAJ7620U2 chipen (Link) alapul, sokkal jobb, mint az olcsó APDS9960, amely folyamatos megszakításokat generál, és nem tud plexiüvegen keresztül dolgozni.

Az érzékelők meglehetősen energiaéhesek, így a legalább 24 órás önállóság érdekében 3 x 5000 mAh LiPo 105575 akkumulátorral (Link) készítettem egy csomagot. Valójában 2 is elég lehetett. A MAX8903 töltő küzd a feltöltött 15 000 mAh -s csomag feltöltésével.

MEGJEGYZÉSEK - Ahogyan a képeken látható:

  • A csatlakozók helyzete látható
  • Az SD -kártya foglalatát ki kell oldani a kijelzőről, ha azt szeretné, hogy illeszkedjen a házba
  • Egy kis bevágást kell készítenie a NYÁK -ban, hogy ne zavarja a ventilátort (a bevágások divatosak az iPhone X után). Javítva a PCB V2 -ben

A csatlakozók rövidítése a NYÁK -on a következő:

  • PRS: Barometrikus nyomásérzékelő (BME280 alapján) MEGJEGYZÉS: közvetlenül a NYÁK -ra szerelhető
  • VOC: Grove - Levegőminőség -érzékelő v1.3 (MP503 alapján)
  • TMP: Nagy pontosságú digitális páratartalom- és hőmérséklet -érzékelő (HDC1080 alapján)
  • PMS: PMS7003 Digitális részecske -koncentráció -érzékelő
  • GAS: Grove - többcsatornás gázérzékelő (MiCS6814 alapján)
  • GES: Grove - gesztusérzékelő (a PAJ7620U2 alapján)
  • RAD: Geiger cső (nagyfeszültségű Geiger szonda meghajtó tápegység modul 400V / 500V TTL digitalizált impulzus kimenettel)
  • CO2: MH-Z19 infravörös CO2 gázérzékelő
  • U1V10F: 5V fokozatos feszültségszabályozó, Pololu alapú
  • U1V10F5 S7V8V3: 3,3 V-os lépcsőzetes/lefelé irányuló feszültségszabályozó a Pololu S7V8F3 alapján
  • TOL10617: Sparkfun LiPo üzemanyag -mérő
  • LCD: ILI9341 kijelző

3. lépés: Melléklet

Burkolat
Burkolat
Burkolat
Burkolat
Burkolat
Burkolat

A ház egy plexi 10x10x10 cm -es kocka tartályból származik, amelyet az ebay -en vásároltam, és teljesen más felhasználásra szánták. Szép szellőzőnyílásokkal rendelkezett, amelyekre pontosan szükség volt. A hangerő elvileg elegendő volt ahhoz, hogy bepakolja az egész készletet, kivéve, hogy nem volt könnyű … néhány korai, kartonból készült maketten alapuló próbálkozás szerencsétlenül kudarcot vallott, ezért feladtam, és néhány órát elvesztegettem egy 3D CAD -el, és megkaptam a belső tartóelemeket lézervágással. A belső tér rekeszekre van osztva, hogy a hőmérséklet -érzékelő a lehető legtávolabb legyen a belső hőforrásoktól. Míg a külső burkolat 3 mm -es anyagból készül, a felső rész 2+1 mm -es lemezekből készül. Ez a trükk lehetővé tette, hogy a gesztusérzékelőt csak 1 mm -es akril borítsa, és ez elegendő a működéséhez.

Néhány módosítást az eredeti házon lévő kéziszerszámokkal, például ventilátorral, kapcsolóval és USB -nyílásokkal kellett elvégezni. Az eredmény ennek ellenére tisztességes volt!

A CAD fájlok ITT találhatók.

4. lépés: Mechanikus összeszerelés

Mechanikus összeszerelés
Mechanikus összeszerelés
Mechanikus összeszerelés
Mechanikus összeszerelés
Mechanikus összeszerelés
Mechanikus összeszerelés

A csomag nagyon sűrű, de a 3D cad kialakításnak köszönhetően kevés meglepetést okozott az összeszerelés.

A légáramlást (felülről lefelé) egy kis ventilátor biztosítja. Miután vásároltam szép számot az Aliexpress / eBay -en, rájöttem, hogy az olcsó ventilátorok zaja elviselhetetlen egy beltéri eszköz számára. Végül egy meglehetősen drága, lassan forgó Papst 255M -et (Link) vettem, és 5 diódával kevesebb dióda segítségével tápláltam. Az eredmény meglehetősen jó, és elég csendes ahhoz, hogy észre ne vegyék (még a feleség által jóváhagyott, a legnehezebb minősítés).

5. lépés: Szoftver

Szoftver
Szoftver
Szoftver
Szoftver
Szoftver
Szoftver
Szoftver
Szoftver

A szoftver architektúra egy objektum -orientált keretrendszeren alapul, amely több (együttműködő) folyamatot futtat, amelyek kezelik a felhasználói felületet, az érzékelőket és az MQTT -t. Ez hely- és időtudatos, de képes megbontani a WiFI-t.

A keretrendszer nyitott, és tetszőleges számú képernyőt képes kezelni, amennyiben azok kódja és erőforrásai elférnek a Flash memóriában. Az alkalmazás keretrendszere kezeli a gesztusokat, és továbbítja azokat a képernyőknek, további kezelés vagy szükség esetén törlés céljából. A keretrendszer által kezelt gesztusok a következők:

  • Csúsztassa balra / jobbra - A képernyő módosítása
  • (Ujj) Forgassa az óramutató járásával megegyező irányba - Fordítsa el a képernyőt
  • (Ujj) Az óramutató járásával ellentétes forgás - Beállítás képernyő megjelenítése
  • (Kéz) Messziről közelre - Kapcsolja ki a kijelzőt

A képernyők egy alaposztálytól öröklődnek, és a következő eseménymodellel kezelhetők:

  • aktiválás - egyszer lő, képernyő létrehozásakor
  • frissítés - rendszeresen hívják a képernyő frissítéséhez
  • deaktiválás - egyszer hívják, mielőtt a képernyő elhagyásra kerül
  • onUserEvent - hívja, amikor a gesztusérzékelő aktiválódik. Lehetővé teszi, hogy válaszoljon, és felülbírálja az alapértelmezett eseménykezelést is, pl. a képernyő megváltoztatásához törölje az ujját

Minden képernyő a következő információk megadásával nyilatkozik képességeiről:

  • getRefreshPeriod - milyen gyakran kell frissíteni a képernyőt
  • getRefreshWithScreenOff - ha a képernyő akkor is fel akar frissülni, ha a háttérvilágítás ki van kapcsolva. például. grafikonokhoz
  • getScreenName - a képernyő neve
  • isFullScreen - teljes mértékben irányítsa a kijelzőt, vagy engedélyezze a felső sávot dátum/idő/hely/akkumulátor töltöttség/wifi mérő

A keretrendszer képes deklarálni és elosztani a képernyőket egy deklaratív osztályú gyáron keresztül. A dinamikus elosztás RAM -ot takarít meg, és könnyen bővíthetővé teszi az eszközt. A teljes pályázati keret más projektekhez is felhasználható.

Az Atmoscan -ban jelenleg megvalósított képernyők a következők:

  • Az érzékelők értékei
  • Geiger mérő / szemilog diagram
  • Rendszer állapot
  • Hiba napló
  • Meteorológiai állomás
  • Repülőgép -figyelő
  • Beállít
  • Alacsony akkumulátor

A beállítási képernyők lehetővé teszik a Wifi hitelesítő adatok, az MQTT csatornák és a Syslog szerver beállítását.

ÚJ a 2.0 -s verzióban: mostantól minden webszolgáltatási kulcs konfigurálható a konfigurációs portálon keresztül. Az egyetlen érték, amely még mindig kódolva van, az OTA jelszó (nagybetűs ATMOSCAN).

MEGJEGYZÉS 1: Az első programozást a programozási csatlakozóhoz csatlakoztatott USB-soros kábellel kell elvégezni. Mivel a soros portot egy érzékelő foglalja el, az ilyen típusú hibakeresés és programozás nem praktikus az összeszerelés után, mivel megköveteli az érzékelő leválasztását. Ezért a szoftver támogatja a SYSLOG hibakeresést és az OTA frissítéseket.

2. MEGJEGYZÉS: Az ATMOSCAN bináris mérete meghaladja a 700 KB -ot, és az ArduinoOTA megköveteli, hogy a programterület legalább kétszerese legyen a képméretnek, ami kizárja a "4M (3M SPIFFS)" opciót. A szabványos "4M (1M SPIFFS)" opció azonban szintén alkalmatlan, mivel az SPIFFS partíció nem lenne elegendő az időjárás -állomással, a repülőgép -megfigyelővel és a konfiguráló fájlhoz kapcsolódó grafikus erőforrásokhoz. Ezért a probléma megoldásához létrehozták a "4M (2M SPIFFS)" egyéni konfigurációt. Magyarázat itt.

A dokumentáció és a teljes forráskód itt érhető el.

A HITELEK KÓDOT ÉS KÖNYVTÁRT TARTALMAZZAK

  • Adafruit
  • Arcao
  • Bblanchon
  • Bodmer
  • ClosedCube
  • Gmag11
  • Knolleary
  • Lucadentella
  • Láttam
  • Squix78
  • Tzapu
  • Varázsló97

INTEGRÁLJA A WEB SZOLGÁLTATÁSOKAT

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

6. lépés: Tegye jobbá

Jobbá tenni!
Jobbá tenni!

Az eredmény egyáltalán nem rossz! A szoftver jól néz ki és megbízható, miközben új funkciókkal bővíthető, és talán egy kicsit tisztítható is, hogy az alkalmazási keret valóban újra felhasználható legyen más projektekhez. Néhány érzékelő kalibrálása nem nagyszerű, de tesztlabori berendezésekre lenne szükség. Az idő drága, és nincs sok, így a haladás lassú volt. Mire befejeztem, elérhetővé vált az ESP32 megfelelő támogatása. Ha most kezdeném, használnám, és Bluetooth -on keresztül integrálnám a külső érzékelőket.

Bárki?

MEGJEGYZÉS: Még mindig van egy maroknyi PCB -m, így ha valakit érdekel, névleges / postai áron kapható.

7. lépés: Kérdések és válaszok

Kérdések és válaszok
Kérdések és válaszok
Kérdések és válaszok
Kérdések és válaszok

Először is KÖSZÖNÖM a túlzottan pozitív hozzászólásokat. Őszintén szólva nem számítottam ekkora érdeklődésre.

Számos kérdés érkezett hozzászólásban vagy privát üzenetben, ezért gondoltam, hogy ide gyűjtem a válaszokat. Ha jönni fog még, teszem hozzá.

Egy fiók hátsó részében találtam meg a rendelkezésre álló 8 PCB -t - és úton vannak Belgium, Németország, India, USA, Kanada, Egyesült Királyság, Ausztrália felé. Hű, 3 kontinens! Elképesztő.

Mit tegyek az ATMOSCAN konfigurációs oldalára?

Az Atmoscan konfigurációs oldal a következő paramétereket igényli:

  • Annak a WiFi -hálózatnak az SSID -je és jelszava, amelyhez csatlakozni szeretne
  • Az Ön által használt MQTT szerver. Például az mqtt.thingspeak.com webhelyet használom
  • Kapcsolati karakterlánc az MQTT témákhoz. Például a Thingspeak MQTT témái a következő formátumban vannak: csatornák/CHANNEL-ID/közzététel/WRITE-API (PÉLDA: csatornák/123456/közzététel/567890)
  • Syslog szerver: a naplózáshoz használt syslog szerver IP címe
  • Google -kulcs a Térkép Statikus API -hoz. Szerezzen kulcsot a https://console.cloud.google.com/apis/dashboard oldalon. Hozzon létre egy projektet; Az Atmoscan által használt API a https://maps.googleapis.com/maps/api/staticmap. Hozzon létre kulcsot ehhez az API -hoz az imént létrehozott Google -projektben, használja itt
  • Időjárás földalatti kulcs. Hozzon létre egy fiókot a www.wunderground.com webhelyen, nyissa meg a WEATHER API -t (link a kezdőlap alján, lépjen a GOMBBEÁLLÍTÁSOK menüpontba, hozzon létre egy kulcsot, használja itt
  • Geonames fiók. Hozzon létre egy fiókot a https://www.geonames.org/ webhelyen, hogy engedélyezze az ingyenes webes szolgáltatások használatát, és tegye ide a felhasználónevet
  • TimeZoneDB kulcs. Hozzon létre egy fiókot a https://timezonedb.com/ címen, hozzon létre egy kulcsot, tegye ide

Hogyan konfigurálhatom a Thingspeak -et?

Három Thingspeak csatornára van szüksége. A mezőket a következőképpen kell használni:

CHANNEL 1 mezők

  1. HŐFOK
  2. PÁRATARTALOM
  3. NYOMÁS
  4. PM01
  5. PM2.5
  6. PM10
  7. CPM
  8. SUGÁRZÁS

CHANNEL 2 mezők

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

CHANNEL 3 mezők (rendszer csatorna)

  1. MINDEN PERCBEN
  2. INGYENES halom BYTES -ben
  3. WIFI RSSI (JEL DBMBBBEN)
  4. AKKUMULÁTOR FESZÜLTSÉGE
  5. LINEAR SOC (AKKUMULÁTOR ÁLLAPOT % - lineáris számítás, arányos a feszültséggel)
  6. NATIVE SOC (AKKUMULÁTOR TÖLTÉSI ÁLLAPOT % - a mérőműszer jelentése szerint. A mérőműszerből olvasva. MEGJEGYZÉS: a mérőóra 0 % -ot mond, amikor eléri a 3,6 V -ot, miközben az elemek egy kicsit tovább lemeríthetők, mondjuk 3 V felett. Az alsó határ, amelynél az ATMOSCAN kikapcsol, #define a globaldefinitions.h fájlban)
  7. RENDSZERHŐMÉRSÉKLET (a bme280 -tól, közvetlenül a panelre szerelve)
  8. RENDSZER -NEDVESSÉG (a bme280 -ból, közvetlenül a táblára szerelve)

A NYÁK nagyon kompakt. Hogyan forraszthatom az SMD eszközöket, különösen a MAX8903A IC -t?

Először is azt javaslom, tegye fel magának a kérdést, hogy szeretne-e belépni az SMD-be, vagy egyszeri alkalomról van szó- Ha ez utóbbi, akkor esetleg kérjen meg valakit, hogy tegye meg helyetted. Ha vállalni szeretné az SMD kihívást, fektessen be egy kicsit, és szerezze be a megfelelő eszközöket (forrasztó, fluxus, izopropil -alkoholos kisvas, forró pisztoly, csipesz, olcsó USB -kamera, NYÁK -tartó). Manapság ez olcsó cucc. Ezután nézzen meg egy YouTube-videót-van félmillió-, és töltsön egy kis időt egy régi PCB-vel, amelyet feláldozhat, és egyes alkatrészeket forraszthat / tisztíthat / forraszthat. El sem hinné, milyen tanulságos ez, hogy megtanulja, mire számíthat, és megfelelő hőmérsékletet állíthat be. Tapasztalatból… Elkezdtem az SMD -t kicserélni a kijelző csatlakozóját egy iPod touchban, és megöltem az elsőt!

Az Atmoscan PCB valóban kompakt, és ez az IC nem egyszerű. Ismét nem javaslom, hogy ezt tegye első SMD forrasztásként. A QFN nem barátságos csomag, annak ellenére, hogy mostanra forrasztottam egy számot. Soha nem biztos, hogy jól döntött…

Az Atmoscan -on először forrasztottam, majd a környező alkatrészeket, hogy tesztelhessem, hogy a kártya töltő része működik -e, majd a többit elvégeztem. A mellékelt képekből következtetni kell az alkatrészek tájolására. Nyilvános komponenskönyvtárakat használtam, és a tájolás nem nagyon látható a selyemképernyőn.

Az én módom: Először forrasztást tettem a párnákra a vasalóval. Ezután sok fluxus (SMD -specifikus), és csipesszel óvatosan elhelyeztem az IC -t. Ezután melegítse fel az egészet 200/220C körül (olvadáspont alatt), hogy elkerülje az egyenetlen fűtés miatti feszültségeket. Ezután megemeltem a hőmérsékletet 290 ° C -ra vagy úgy, és az IC környékén. Ha egy kis forrasztást tesz a közeli párnára, látni fogja, amikor a hőmérséklet olvadásponton van, és ragyogni fog.

Ezután izopropil -alkohollal megtisztítottam, és gondosan megvizsgáltam egy olcsó USB -kamerával. Tipikus problémák a beállítás és a forrasztási mennyiség, mivel előfordulhat, hogy egyes csapok nincsenek csatlakoztatva. Bizonyos esetekben vissza kellett térnem hozzá egy kis forrasztópáka segítségével, hogy néhány tűhöz forrasztást adjunk, mivel ezen az IC -n van egy hőpárna, amelyet forrasztani kell. Ez kissé bonyolultá teszi a forrasztás mennyiségének kitalálását, és előfordulhat, hogy az alatta lévő túl sok forrasztás megemelheti azt, hogy a csapok ne érjenek a NYÁK -hoz.

Ezt követően nem akarlak megijeszteni. Befejeztem 3 táblát, és soha nem öltem meg ezeket az IC -ket… Egyszer még el is kellett távolítanom, tisztítanom és újrakezdenem a semmiből, de végül sikerült. Ismétlem, nem túl könnyű, de megvalósítható.

Hol vetted az alkatrészeket?

Leginkább az eBay -en és az Aliexpressen. A márkásak azonban eredetiek (Seeed, Pololu, Sparkfun).

Néhány INDICATIVE link következik. Megjegyzés: nézzen körül, lehet, hogy még olcsóbb ajánlatokat is talál…

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…

Az Atmoscan kártya tartalmaz egy programozási áramkört, amely összhangban van a NodeMCU -val. Az első programozáshoz rendszerint soros kapcsolatot használnak. Ezt követően az OTA programozás wifin keresztül az előnyben részesített lehetőség, mivel ez teljesen összeszerelt egységgel is elvégezhető. Ne felejtse el, hogy a soros portot általában a részecskeérzékelő használja!

A kártya soros programozásához egy USB-soros adaptert (pl. FTDI232 vagy hasonló) kell csatlakoztatni a J7 csatlakozóhoz (a reset gomb mellett), az ábrán látható pinout után. A program feltölthető anélkül, hogy csatlakoztatná az érzékelőket, azzal a különbséggel, hogy a geiger érzékelő megszakító vonalát a GND -hez kell csatlakoztatni, különben a kártya nem indul el (ehhez csatlakoztassa az 1. és 3. érintkezőt a RAD csatlakozóba). A legegyszerűbb módja annak, hogy a táblát a fővázlat használata nélkül - tehát az érzékelők összetettsége nélkül - teszteljük, ha EZT az egyszerű programot soros kábelen keresztül töltjük fel. Létrehoz egy wifi hozzáférési pontot, amely lehetővé teszi a fő program további villogását.

FONTOS: Ne felejtse el a 4M/2M SPIFFS konfigurációt az utasításoknak megfelelően használni, különben a főprogram nem fér el. A kártyát soros programozással kell inicializálni ezzel a konfigurációval, különben később problémák merülhetnek fel az OTA -val.

Sajnos néhány érzékelő inicializálása blokkolódik, ha nincsenek érzékelők (a könyvtár szolgáltatójától függően). Az egyik példa a többgázos szenzortár. Annak érdekében, hogy az Atmoscan megfelelően induljon a teljes firmware -rel, letilthatja a kapcsolódó folyamatot, lásd a kapcsolódó kérdés -válasz pontot. Az ÖSSZES érzékelő tesztelésének letiltásának egyszerű módja, ha megjegyzést fűz a #define ENABLE_SENSORS sorhoz a GlobalDefinitions.h fájlban.

Amikor a tábla először indítja el a fővázlatot, fel kell ismernie, hogy nincs konfigurálva, és meg kell nyitnia egy wifi hotspotot, amelyhez csatlakozhat és beállíthatja. A beállítások között van egy syslog szerver, amely nagyban segít a hibakeresésben. A naplózási szintet a GlobalDefinitions.h fájl #define DEBUG_SYSLOG megjegyzésének megszüntetésével is növelheti. Kérjük, vegye figyelembe, hogy ugyanabban a fájlban van egy #define DEBUG_SERIAL is, amelyet a kezdeti hibakeresés során használtak. Ha megjegyzés nélküli, akkor _néhány_ maradék naplózást eredményez, de minimális. A teendő mindig az volt, hogy a naplózás egységes és választható legyen, de soha nem volt időm megtisztítani.

Módosította a használt könyvtárakat, szükség van -e konfigurációra? (a letöltéssel és fordítással szemben)

Jó kérdés, ezt elfelejtettem megemlíteni. Valójában szükség van néhány modra / konfigurációra:

  • Könyvtár https://github.com/Seeed-Studio/Mutichannel_Gas_Sensor - soros hibakeresési utasítások. Meg kell jegyezni, mivel a soros portot érzékelőhöz használják!
  • Könyvtár https://github.com/Bodmer/TFT_eSPI - olyan konfigurációs fájl szükséges, ahol a pin hozzárendelés és az SPI gyakorisága van megadva
  • Könyvtár https://github.com/lucadentella/ArduinoLib_MAX1704… - A megjegyzéseket és a lekérési kérelmeket megnézve észrevettem, hogy van egy hibajavítás, amelyet soha nem egyesítettek

Ha jól emlékszem, ennek így kell lennie. Tudassa velem, ha bármilyen probléma merül fel.

MEGJEGYZÉS: Kérjük, olvassa el a megjegyzéseket a legújabb forráskódban - minden szükséges könyvtárra mutató linkeket tartalmaz, és folyamatosan frissítve van

Miért olvasnak egyes érzékelők pirosat és néhány zöldet a videón/képeken?

A szín a trendet jelzi. Fehéren kezdődik, és ha felfelé piros, akkor lefelé zöld.

Hogyan kezeli az érzékelők eltolódását az idő múlásával? Mennyire jók ezek az érzékelők? Mit látok ezekkel az érzékelőkkel?

Őszintén szólva ez nem tudományos mérőeszköz. A kalibráláshoz olyan berendezésekre lenne szükségem, amelyek nem állnak rendelkezésre. Ez tényleg egy kisállat projekt. Több érzékelőt is kipróbáltam. A részecske, a CO2, a hőmérséklet, a páratartalom, a nyomás, a Geiger szerintem jó. Az NO2 -vel kapcsolatban vannak fenntartásaim a kalibrálással és az általános tervezéssel kapcsolatban, de nem sok rendelkezésre áll. Összességében ezek a mainstream érzékelők.

A kombináció azonban elég jó ahhoz, hogy olyan dolgokat mutasson, amire nem számítana.

Az Atmoscan a nappaliban és a konyhában egy szobával arrébb hatalmas részecskecsúcsokat észlel, amikor pl. sütő cucc. Még a csukott ablakok mellett is érzi a reggeli forgalomból származó NO2 -t.

Valóban szükség volt egy Geiger számlálóra? Valami hasznosat mutat?

Szerencsére nem voltak nukleáris incidensek, és a háború még nem következik be … Ennek ellenére vannak olyan atomerőművek, amelyek nem olyan messze vannak, és a kormány jódtablettákat oszt a gyerekeknek, hogy esetenként a fiókban tartsák őket … így gyanús lettem. Eddig azt kell mondanom, hogy a leolvasott értékek pontosan összhangban vannak a várható háttérsugárzással (0,12 uSv/h)

Mennyi a készülék összköltsége?

Már sok alkatrészem volt otthon, és a fenti linkek ötletet adnak. Őszintén szólva, ha kész NetAtmo-t vagy hasonlót vásárol, pénzt takarít meg. Nem lehet legyőzni egy kínai vállalatot, aki nagyszabású dolgokat tesz! Ha azonban szívesen készítene együtt a gyerekeivel, akkor érdemes. A jó rész az, hogy már teszteltem (és eldobtam) számos érzékelőt az Ön számára….

Mi a helyzet a PCB -kkel? Tud eladni nekem egyet?

Eredetileg 10 -et a dirtypcbs.com készített, és a fájljaim remekül működtek. Jó minőségű és elég olcsó, 25USD / 20Euro 10 NYÁK -hoz. Kettőt használtam, és szívesen elküldöm a fennmaradóakat a csekély költségért (2 euro + szállítmány, helytől és szállítási preferenciáktól függően). Attól tartok, ki kell választanom az elsőket, akik privát üzenetet küldenek.

Készíthet egy készletet vagy egy kickstarter kampányt?

Hízelgő, de őszintén szólva soha nem gondoltam, hogy ez elég innovatív… és ráadásul NINCS IDŐ !!

Ha azonban valaki felveti az ötletet, szükség van egy második iterációra. Vannak éles élek a tervezésben, amelyeket érdemes lenne kijavítani, de megint soha nem volt elég időm a V2 -re.

Hardveren: Hozzáadhatok / eltávolíthatok egy érzékelőt, a képernyőt stb. A lehetőségek bővítése / az energiafogyasztás csökkentése érdekében?

A kijelző MISO használata nélkül van csatlakoztatva, így a CPU soha nem olvas ki a kijelzőről. Ezért egyszerűen nem lehet csatlakoztatni a kijelző hangyát, akkor jól fog működni. Ennek ellenére a kijelző csak egy ideig van bekapcsolva az utolsó gesztus észlelése után, így nem igazán befolyásolja az energiafogyasztást.

Az érzékelők ehelyett éhesek, és az egész egyszerűen 400/500mA -t használ. Ne felejtse el a ventilátort és azt sem, hogy a részecske-érzékelő beépített ventilátorral is rendelkezik. Az ESP szintén nem megy alvó üzemmódba a GPIO pontok hiánya miatt. Ez azonban talán 20 mA -t spórolhatott volna meg…

A szoftver moduláris, és könnyedén hozzáadhat/eltávolíthat folyamatokat és képernyőket, így tetszés szerint hozzáadhat érzékelőket, vagy megvilágíthatja az áramellátást. Az egyetlen korlátozás a GPIO csapok száma. Az érzékelők azonban könnyen hozzáadhatók, ha I2C, vagy alternatívaként egy I2C bővítő használható GPIO -k hozzáadására …

Egy érzékelő letiltásához, például egy részleges felépítés teszteléséhez a legjobb módszer szerintem az lenne, ha nem indítanánk el a kapcsolódó folyamatot. Ezt úgy teheti meg, hogy megjegyzi a kapcsolódó enable () hívást a void startProcesses () függvényben a fő.ino fájlban. Hacsak nem szeretné strukturálisan módosítani a rendszert, nem távolítanám el teljesen a folyamatokat, mivel a képernyő és az MQTT folyamatok lekérdezik őket. Ily módon csak a nullát kell visszaadniuk. Kérjük, vegye figyelembe, hogy a geiger tábla megszakító bemenetét le kell húzni, ha nem használják, különben a tábla nem indul el.

Milyen fejlesztéseket hajtott volna végre, ha lenne ideje egy V2.0 -ra?

Nem külön sorrendben..

  • A NYÁK elkerülheti a rézt az ESP8266 antenna mögött. Teljesen elfelejtettem, és a sugárzási diagram nem izotróp lesz
  • A töltő szerintem alulméretezett egy ilyen nagy akkumulátorhoz / az akkumulátor túl nagy a töltőhöz. Vannak más IC -k is, és megpróbálnék másikat.
  • Vannak jobb akkumulátorok.
  • Hozzá tennék egy ózonérzékelőt
  • ESP32 -t használnék több GPIO -hoz és Bluetooth -érzékelőhöz a főegységen kívül.
  • Ha több GPIO -m lenne az ESP32 -el vagy az I2C bővítővel, akkor az egyiket a ventilátor vezérlésére használnám, a másikat pedig a készülék szoftveres kikapcsolására. Most, amikor lemerült az akkumulátor, az egyetlen dolog, amit tehet, hogy megjelenítse az alacsony akkumulátor -képernyőt. Valójában ez a tervezés legnagyobb hátránya, mivel az alacsony akkumulátor -helyzetet nem kezelik kecsesen.

Szoftverről

Több időt vett igénybe, mint a hardver… Azt hiszem, számos jó koncepciót tartalmaz, sajnos nincs teljesen megvalósítva. Konkrétan úgy vélem, hogy meg kell tisztítani, esetleg bővíteni kell, és az ESP8266 alkalmazások általános keretét könnyen le lehet belőle származtatni. Nincs idő. Valaki vállalja a kihívást?

Hozzáadhat hangvezérlést?

Megvalósíthatónak kell lennie. Számos kész könyvtár áll rendelkezésre az ESP8266 vezérléséhez Alexával, és nem értem, miért okozhat problémát az integráció. Az érdekes kérdés az, hogy mit szeretne vele kezdeni, funkcionalitás szempontjából. Nincs Amazon Echo tulajdonom, így soha nem próbáltam.

Hogyan csináltad a lézervágásokat?

A rajzok a SketchUp segítségével készülnek. A program szép, de komolyan hiányzik az exportálási képesség. A 30 napos próbaverzió azonban segít, mivel további funkciókkal rendelkezik. Ezt követően importáltam az Inkscape -be végső feldolgozás céljából.

Be-/kikapcsolhatja az érzékelőket az energiatakarékosság érdekében a MOSFET -eken keresztül?

Elvileg szép ötlet, de ezeknek az érzékelőknek a legtöbbjét folyamatosan kell táplálni, mivel van bemelegedési idejük. Ezen kívül… elfogytak a GPIO -k az ESP8266 -ban. Még a GPIO10 -et is használnom kellett, amely hivatalosan nem működik, de az ESP12E -n jól működik.

Milyen készségekre lenne szükségem?

A nulláról való felépítéséhez szüksége lesz némi elektronikai tervezési háttérre. Igazából nem sok, manapság az interneten nem igazán kell soronként olvasni az adatlapokat, mint az első időkben … Ha a kísérletezés eredményét használod, akkor némi SMD forrasztási készségre, mechanikai készségekre és némi türelemre van szükséged.

Ez az első projekted?

Ez az első tanítható, de nem az első projektem. Régebben sokat bütyköltem, de manapság tényleg nincs sok időm. Feltámasztottam rozsdás készségeimet, miközben valami hasznosat próbálok tanítani a gyerekeimnek..! Készítettem még néhány projektet, amelyeket egyszer talán közzéteszek.

Ajánlott: