Obsah:

AirPi - snímač kvality vzduchu: 8 krokov
AirPi - snímač kvality vzduchu: 8 krokov

Video: AirPi - snímač kvality vzduchu: 8 krokov

Video: AirPi - snímač kvality vzduchu: 8 krokov
Video: Building The World's First MANUAL Dodge Demon! | PT 8 2024, November
Anonim
AirPi - snímač kvality vzduchu
AirPi - snímač kvality vzduchu

Zamysleli ste sa niekedy nad tým, prečo vás bolí hlava? A ak je to kvôli zlej kvalite ovzdušia? Pomocou tohto zariadenia môžete skontrolovať, či je to tak. Toto zariadenie meria hodnotu CO2, hodnotu TVOC, teplotu a vlhkosť. Kvalitu vzduchu môžete naživo vidieť na LCD displeji a v prípade nebezpečenstva môžete jasne vidieť. Týmto spôsobom môžete včas otvoriť okná.

Ak zadáte adresu IP - zobrazí sa pri spustení zariadenia v prehliadači - webová stránka sa otvorí. Môžete vidieť veľa informácií o vnútornom prostredí spolu s grafmi posledných minút / hodín. Na prístrojovej doske je tiež živá indikácia a niekoľko informácií a tipov.

Tento projekt vytvoril študent Howest Kortrijk, NMCT (nové mediálne a komunikačné technológie).

Krok 1: Materiály

Materiály
Materiály

To je všetko, čo som kúpil pri vytváraní tohto projektu. Jedná sa o relatívne lacný projekt v závislosti od nákladov na 3D tlač. Ak to dokážete vytlačiť v škole, môže to byť veľmi lacné. V opačnom prípade to závisí od toho, kde to tlačíte, a od materiálu, v ktorom to tlačíte. Všimnete si, že som toho kúpil veľa, jednoducho preto, že je ťažké nájsť jednotlivé odpory alebo diódy, a preto je tento výrobok ešte lacnejší. Ak máte čas, väčšinu položiek si môžete objednať na aliexpress.com, dodanie môže chvíľu trvať, ale týmto spôsobom môžete obmedziť svoje výdavky.

Bez tlače sú peniaze, ktoré som vynaložil na tento projekt, 81,80 €.

Toto sú potrebné materiály:

Obvod:

  • Raspberry Pi 3
  • SD karta 8 GB (minimum)
  • Senzor kvality vzduchu CCS811
  • Snímač teploty a vlhkosti DHT22
  • Potenciometer (kontrastný LCD)
  • LCD 16x2
  • Prepojovacie vodiče medzi ženami a ženami
  • Zelená a červená LED dióda
  • Rezistory (2x470 ohm a 1 4700 ohm)

Prípad:

  • 3D tlač
  • Skrutky
  • 2 -zložkové lepidlo (alebo iné horúce lepidlo)
  • nástroj na rezanie závitov

PCB používate iba vy:

  • Spájkovačka
  • Flux (uľahčuje)
  • Cín
  • Experimentujte s doskou 2x4 cm

Krok 2: Pripojenia

Pripojenia
Pripojenia

Pripojte vodiče podľa vyššie uvedeného postupu. V súbore mrznutia môžete vidieť elektrický obvod. Nie je to veľmi komplikovaný obvod, ale ak ho chcete urobiť tak malý, ako je to len možné, určite si chcete zaobstarať experimentálnu dosku plošných spojov. Zapojenie by bolo rovnaké, ibaže GND a Vin budú pripojené k doske plošných spojov. Senzory budú prepojené samičími prepojovacími vodičmi alebo samcami s spájkovaním. Nezabudnite spájkovať odpor na snímači DHT22.

Odporúčam tiež použiť krátke káble, stačí 10 cm. V opačnom prípade by bola krabica ešte viac naplnená káblom. Nepotrebujete veľmi dlhé, pretože veľkosť výtlačku je čo najmenšia.

Krok 3: 3D tlač

3D tlač
3D tlač
3D tlač
3D tlač

Prvá myšlienka, ktorá sa mi vybavila v hlave, keď som premýšľal o prípade, bola 3D tlač. Pretože môj otec vytlačil niekoľko ďalších položiek a sám ich navrhol. Spolu sme vytvorili tento dizajn a mysleli sme na všetky aspekty. Malo by byť dostatočne vychladené, všetko je možné priskrutkovať na svoje miesto, a ak nie, je možné ho zasunúť na miesto.

Dokonca sme nakreslili každý komponent, aby sme skontrolovali, či všetko zapadá. Súbor je k dispozícii pre každého a radi by sme počuli spätnú väzbu. S výsledkom sme boli veľmi spokojní.

Krok 4: Kód

Kód pre tento projekt nájdete na Github. Ak ste použili iné piny (napríklad iný GPIO-pin pre LED diódy, budete musieť tieto premenné upraviť. Budú spustené dva skripty pythonu, web.py pre web a sensor.py na čítanie senzorov a aktualizáciu budeme importovať LCD triedy z lcd.py.

S nakonfigurovaným malinovým pi môžete začať. Najprv musíte aktualizovať a aktualizovať všetky balíky:

sudo apt-get update && sudo apt-get upgrade

Potom budete musieť nainštalovať nasledujúce balíky:

sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3

Teraz vytvorte virtuálne prostredie:

me@my -rpi: ~ $ python3 -m pip install --upgrade pip setuptools wheel virtualenv

me@my-rpi: ~ $ mkdir project1 && cd project1 me@my-rpi: ~/project1 $ python3 -m venv --system-site-packages env me@my-rpi: ~/project1 $ source env/bin/ aktivujte (env) me@my-rpi: ~/project1 $ python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib

Keď je to hotové, môžete kód z môjho GitHubu klonovať do vášho virtuálneho prostredia. To je možné vykonať niekoľkými spôsobmi.

V adresári conf nájdete štyri súbory, ktoré budete musieť v prípade potreby upraviť. V každom súbore budete určite musieť zmeniť používateľa a domovský adresár. UWSGI ini by malo byť v poriadku, pokiaľ ste nezmenili môj kód, v prípade potreby zmeňte používateľa a virtualenv.

Pretože senzor CCS811 bol zámerne použitý pre arduino, nemôže komunikovať po zbernici i2c rýchlosťou malinového pi. V konfiguračnom súbore budete musieť znížiť rýchlosť na prenosovú rýchlosť 10 000 (používal som 9600).

Budete tiež musieť získať knižnicu senzora adafruit. Tu by som to mohol vysvetliť, ale existuje perfektný sprievodca adafruit, ktorý to všetko veľmi dobre vysvetľuje.

Pretože chceme, aby sa skripty pythonu automaticky spúšťali po pripojení maliny, budete musieť použiť tieto služby. Mali by ste byť v poriadku, ak si necháte môj kód. Všetko, čo musíte urobiť, aby boli spustené, je povoliť ich. Kým to urobíte, je tu ešte posledná vec.

Pretože používame webový server nginx, budeme musieť deaktivovať predvolené nastavenie a nahradiť ho vlastnou konfiguráciou. Na tento účel je potrebné vykonať tieto kroky:

  • skopírujte conf/nginx na *dostupné stránky *
  • Odstráňte odkaz na predvolenú konfiguráciu
  • Pridajte odkaz na novú konfiguráciu
  • Uložte zmeny reštartovaním nginx

ja@my-rpi: ~/project1 $ sudo cp conf/project1-*. service/etc/systemd/system/

me@my-rpi: ~/project1 $ sudo systemctl daemon-reload me@my-rpi: ~/project1 $ sudo systemctl start project1-* me@my-rpi: ~/project1 $ sudo systemctl status project1-*

Nginx a mysql by mali byť spustené vždy. Začínajú spolu s malinovým pi. Webový skript a skript senzora zatiaľ nie sú k dispozícii.

Na to musíte stále povoliť tieto dve služby pomocou týchto príkazov:

sudo systemctl povoliť project1-flask.service

sudo systemctl povoliť project1-sensor.service

Krok 5: Databáza

Databáza
Databáza

Moja databáza sa skladá z troch tabuliek. Užívateľ nemá žiadny vzťah s inými tabuľkami. Toto sa používa iba na prihlásenie a udelenie prístupu na webovú stránku. Keď je zariadenie zapnuté, hodnoty CO2 a TVOC sa zapíšu do databázy každých 50 sekúnd. Teplota a vlhkosť každých 5 minút. Tak získame jasný prehľad o minulosti.

Súbor SQL nájdete tu, ale na získanie databázy na malinovom pi by ste mali postupovať podľa týchto krokov:

Po inštalácii balíkov v predchádzajúcom kroku by mal byť ihneď spustený program mariadb/mysql. Môžete to skontrolovať pomocou tohto riadku:

ja@my-rpi: ~ $ sudo systemctl status mysql

Na vytvorenie databázy a používateľov môžete jednoducho spustiť skripty sql v kóde z GitHub. Ak ste to urobili správne, mali by ste vidieť svoje tabuľky pomocou tohto príkazu:

ja@my-rpi: ~ $ echo 'show tables;' | mysql project1 -t -u project1 -admin -p

Teraz sme všetci pripravení, môžete to otestovať bez obalu a uistiť sa, že všetko funguje. Pokiaľ nie ste pripojení k sieti Wi -Fi, budete ju musieť pripojiť ethernetovým káblom a spustiť ručne.

Krok 6: Pripojte sa k sieti Wi-Fi

Otvorte konfiguračný súbor wpa-proscant v nano (na tom nezáleží, stačí sa uistiť, že môžete pracovať s textovým editorom).

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Prejdite do spodnej časti súboru a zadajte nasledujúce (nahraďte ssid-name a heslo-name vašim):

sieť = {

ssid = "ssid-name" psk = "heslo-meno"}

Na vytvorenie šifrovaného hesla môžete použiť wpa_passphrase a jednoducho ho skopírovať do súboru wpa_supplicant.conf psk, aby boli veci bezpečnejšie.

wpa_passphrase "ssid-name" "heslo-meno"

Ak chcete, aby sa k tejto sieti Wi-Fi pripájalo automaticky a v konfiguračnom súbore sú ďalšie, uistite sa, že zmeníte prioritu na vyššiu úroveň pridaním tohto riadka do siete v konfiguračnom súbore:

priorita = 2

Nezabudnite prekonfigurovať rozhranie pomocou:

wpa_cli -i wlan0 prekonfigurovať

Teraz ste všetci pripravení a pripojení k sieti Wi -Fi.

Krok 7: Spojte všetko dohromady

Dať všetko dohromady
Dať všetko dohromady
Dať všetko dohromady
Dať všetko dohromady
Dať všetko dohromady
Dať všetko dohromady

Pretože je všetko zapojené a spájkované, môžeme sa dostať k prípadu. Toto bolo navrhnuté tak, aby ste mohli puzdro otvoriť bez uvoľnených káblov. To znamená, že všetko je pripevnené k spodnej časti. Prvá vec, ktorú musíte urobiť, je malá úprava maliny. Má diery v každom rohu, ale nie sú také veľké, ako by mali byť. Priemer by mal stačiť na to, aby sa doň zmestila 3 mm skrutka. Otvory sme museli vyleštiť, aby sa trochu rozšírili.

Druhá vec, ktorú musíte urobiť, je narezať závit skrutky do každého otvoru. Môže to znieť tvrdo, ale dá sa to ľahko vykonať pomocou správnych nástrojov. Odporúčam to urobiť v miestnom železiarstve, stačí požiadať o nástroj na rezanie závitov. Keďže môj otec je zlatník, mal pri práci na to nástroje. Môžem nahrať nový súbor stl, aby sa neskôr vytlačil, ale na to by bola potrebná veľmi presná tlačiareň.

Tretím krokom je priskrutkovanie pí na spodnú časť. Budete potrebovať 4 skrutky dlhé 7 mm s priemerom 3 mm. Potom môžete dosku PCD zasunúť na určené miesto v hornej časti spodnej časti. Senzor CCS811 je možné zasunúť na určené miesto na ľavej strane a DHT11 pripevniť k pravej doske. Oba sú izolované a dostatočne vetrané, ale potom sme si všimli, že vo vnútri je stále horúco. Viac o tom neskôr.

Potom musíte k ich trubici pripojiť LED diódy. Urobili sme to pomocou dvojzložkového lepidla, ale môžete to urobiť, ako sa vám páči. Uistite sa, že sa tam držia.

Teraz môžete pripojiť LCD displej, budete potrebovať skrutky s rovnakým priemerom ako predchádzajúce, ale o niečo dlhšie. Moje mali 1 cm. Ak sú štyri skrutky zaskrutkované, zostáva už len urobiť jednu vec. Pripojte hornú časť. Potrebujete iba štyri skrutky s rovnakým priemerom, ktoré majú 2 cm. Teraz by malo byť všetko na svojom mieste a môžete to spustiť.

Krok 8: Spustite ho

Proces spustenia tohto projektu je veľmi jednoduchý:

  1. Pripojte napájací kábel k ľavej strane puzdra. Nie je to veľmi vidieť, ale vidíte cez vetracie otvory. Ak ste to dostali raz, nebude to problém znova.
  2. Dajte tomu nejaký čas na spustenie.
  3. Na desať sekúnd sa na displeji zobrazí IP adresa. Jediná vec, ktorú musíte urobiť, je uistiť sa, že ste pripojení k rovnakej sieti, a do panela s adresou prehliadača zadajte IP adresu.
  4. Teraz ste na webe. Ešte nemáte účet, tak si ho vytvorte.
  5. Ak ste zaregistrovaní, prihláste sa.
  6. Hotový! Všetky údaje môžete vidieť na webovej stránke a LCD displej zobrazuje aktuálnu kvalitu vzduchu.

Pretože teplo stúpa, umiestnili sme senzory v spodnej časti puzdra. Teplota by tak nemala veľký vplyv na registrované hodnoty. Aby ste dosiahli optimálne merania, postavte zariadenie alebo ho môžete jednoducho zavesiť na stenu.

Odporúča: