Sadržaj:
- Korak 1: Veliki plan
- Korak 2: Popis za kupovinu
- Korak 3: Postavite svoj Raspberry Pi
- Korak 4: Postavljanje OpenCV -a
- Korak 5: Postavite TensorFlow
- Korak 6: Otkrivanje pokreta pomoću OpenCV -a
- Korak 7: Otkrijte objekte pomoću programa TensorFlow
- Korak 8: Postavite web poslužitelj na Raspberry Pi
- Korak 9: Obavijesti za mobilne uređaje iz Raspberry Pi -a pomoću IFTTT -a
- Korak 10: Dodajte relejni HAT u Raspberry Pi i spojite ga na elektromagnetni ventil
- Korak 11: Priključite osjetnik razine vode
- Korak 12: Napišite kôd kako biste sve povezali
Video: Pool Pi Guy - Alarmni sustav s AI -om i nadzor bazena pomoću Raspberry Pi: 12 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Imati bazen kod kuće je zabavno, ali dolazi s velikom odgovornošću. Moja najveća briga je nadzirati je li netko u blizini bazena bez nadzora (osobito mlađa djeca). Najveća me smetnja brine to što vodovod bazena nikada ne ide ispod ulaza u crpku, što bi crpku osušilo i uništilo, što bi koštalo $$$ u popravcima.
Nedavno sam shvatio kako koristiti Raspberry Pi s OpenCV -om i TensorFlow -om, zajedno sa senzorom razine vode i elektromagnetnim ventilom za rješavanje oba problema - i zabavite se pri tome!
Pokazalo se da je i odličan alarmni sustav - pokretom aktiviran, AI kontroliran, beskonačno prilagodljiv.
Uronimo.
Korak 1: Veliki plan
U ovom uputstvu pokazat ćemo kako:
- Postavite Raspberry Pi s OpenCV -om i TensorFlow -om
- Spojite web kameru putem dugog USB kabela
- Napišite OpenCV algoritam za otkrivanje pokreta
- Za otkrivanje objekata koristite TensorFlow
- Postavite web poslužitelj na Raspberry Pi za prikaz zanimljivih slika
- Integrirajte se s IFTTT -om za pokretanje mobilnih upozorenja u slučaju otkrivanja osobe
- Priključite relejni HAT na Raspberry Pi i spojite ga na elektromagnetni ventil koji bi dodao vodu u bazen
- Priključite senzor razine vode na Raspberry Pi i povežite se s njim pomoću Pi -jevog GPIO -a
- Napišite neki kod kako biste sve zalijepili
Korak 2: Popis za kupovinu
Sve su komponente lako dostupne s Amazona. Slobodno eksperimentirajte i zamijenite komponente - to je pola zabave!
- Malina Pi
- Napajanje Raspberry Pi (ne štedite ovdje)
- Memorijska kartica (veća je bolja)
- Kućište (ovo je dovoljno veliko da primi i Pi i HAT)
- USB web kamera (svaka web kamera će poslužiti, ali želite onu koja dobiva dobre slike i dobro uravnotežuje osvjetljenje)
- USB produžni kabel (ako je potrebno - izmjerite udaljenost između Pi i mjesta gdje biste postavili kameru)
- Relejna ploča HAT (ova ima 3 releja, a treba nam samo jedan, no uskoro ćete pronaći primjenu za ostale!)
- Solenoid
- Solenoidni priključak 1 i fiting 2 (to stvarno ovisi o tome na što pristajete solenoidu, ali meni je to uspjelo)
- Solenoidno napajanje (bilo koji 24V AC bi odgovarao)
- Kabel (opet, gotovo bilo koji dvožilni kabel bi odgovarao - struja je minimalna)
- Plutajući prekidač razine vode (ovo je samo primjer, provjerite što se lako može spojiti na vaš bazen)
- Neke kratkospojne žice i žičani priključci
Korak 3: Postavite svoj Raspberry Pi
Raspberry Pi je odlično malo računalo. Košta samo 35 USD, radi dosljedno i ima puno kompatibilnog softvera i hardvera. Postavljanje je prilično jednostavno:
- Formatirajte SD karticu. To zahtijeva posebnu njegu - Raspberry Pi se može pokrenuti samo s SD kartice oblikovane u FAT. Slijedite ove upute.
- Spojite Raspberry Pi na USB tipkovnicu i miša, plus HDMI zaslon i slijedite upute u vodiču Raspberry Pi NOOBS. Pobrinite se da postavite WiFi i omogućite SSH pristup. Ne zaboravite postaviti lozinku za zadani pi račun.
- Prilikom postavljanja kućne mreže statički IP za Raspberry Pi - uvelike bi olakšao SSH pristup.
- Provjerite imate li instaliran ssh klijent na radnoj površini/prijenosnom računalu. Za računalo bih preporučio Putty koji možete instalirati odavde.
- Odvojite USB i HDMI od Raspberry Pi -a, ponovno ga pokrenite i ubacite ssh u njega - ako je sve radilo, trebali biste vidjeti ovako nešto:
Linux raspberrypi 4.14.98-v7+ #1200 SMP Tue Feb 12 20:27:48 GMT 2019 armv7l
Programi uključeni u Debian GNU/Linux sustav besplatni su softver; točni uvjeti distribucije za svaki program opisani su u pojedinačnim datotekama u/usr/share/doc/*/copyright. Debian GNU/Linux dolazi s APSOLUTNO BEZ JAMSTVA, u mjeri dopuštenoj važećim zakonom. Zadnja prijava: pon, 13. svibnja 10:41:40 2019 sa 104.36.248.13 pi@raspberrypi: ~ $
Korak 4: Postavljanje OpenCV -a
OpenCV je nevjerojatna zbirka manipulacija slikama za računalni vid. Omogućit će nam čitanje slika s web kamere, manipuliranje njima kako bismo pronašli područja kretanja, spremili ih i još mnogo toga. Postavljanje na Raspberry Pi nije teško, ali zahtijeva određenu njegu.
Počnite instaliranjem virtaulenvwrapper: koristit ćemo python za sve naše programiranje, a virtualenv će nam pomoći da odvojimo ovisnosti za OpenCV i TensorFlow vs. Flask ili GPIO:
pi@raspberrypi: ~ $ sudo pip install virtualenvwrapper
Sada možete pokrenuti "mkvirtualenv" za stvaranje novog okruženja, "workon" za rad na njemu i još mnogo toga.
Dakle, stvorimo okruženje za našu manipulaciju slikom, s pythonom 3 kao zadanim tumačem (2019. je, nema razloga držati se starijeg pythona 2):
pi@raspberrypi: ~ $ mkvirtualenv cv -p python3
… (Cv) pi@raspberrypi: ~
Sada smo spremni za instalaciju OpenCV -a. Uglavnom ćemo slijediti izvrstan vodič u Learn OpenCV -u. Konkretno slijedite njihove korake 1 i 2:
sudo apt -y updatesudo apt -y nadogradnja ## Ovisnosti o instaliranju sudo apt-get -y install build-essential checkinstall cmake pkg-config yasm sudo apt-get -y install git gfortran sudo apt-get -y install libjpeg8-dev libjasper- dev libpng12-dev sudo apt-get -y install libtiff5-dev sudo apt-get -y install libtiff-dev sudo apt-get -y install libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev sudo apt-get- y instalirati libxine2-dev libv4l-dev cd/usr/include/linux sudo ln -s -f../libv4l1-videodev.h videodev.h sudo apt-get -y instalirati libgstreamer0.10-dev libgstreamer-plugins-base0. 10-dev sudo apt-get -y install libgtk2.0-dev libtbb-dev qt5-default sudo apt-get -y install libatlas-base-dev sudo apt-get -y install libmp3lame-dev libtheora-dev sudo apt-get -y install libvorbis-dev libxvidcore-dev libx264-dev sudo apt-get -y install libopencore-amrnb-dev libopencore-amrwb-dev sudo apt-get -y install libavresample-dev sudo apt-get -y install x264 v4l-utils sudo apt -get -y install libprotobuf -dev protobuf-compiler sudo apt-get -y install libgoogle-glog-dev libgflags-dev sudo apt-get -y install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen sudo apt-get install libqtgui4 sudo apt-get install libqt4 test
Sada možemo samo instalirati OpenCV s python vezama unutar cv virtualenv (još ste u njemu, zar ne?) Koristeći
pip install opencv-contrib-python
I to je to! Na našem Raspberry Pi -u imamo instaliran OpenCV, spreman za snimanje fotografija i videozapisa, rukovanje njima i kul.
Provjerite to otvaranjem python tumača i uvozom opencv -a i provjerite da nema grešaka:
(cv) pi@raspberrypi: ~ $ python
Python 3.5.3 (zadano, 27. rujna 2018, 17:25:39) [GCC 6.3.0 20170516] na linuxu Za više informacija upišite "help", "copyright", "credits" ili "license". >>> uvoz cv2 >>>
Korak 5: Postavite TensorFlow
TensorFlow je okvir za strojno učenje / AI koji je razvio i održava Google. Ima opsežnu podršku za modele dubokog učenja za razne zadatke, uključujući otkrivanje objekata na slikama, a sada je prilično jednostavan za instalaciju na Raspberry Pi. Performanse njegovih lakih modela na malenom Pi -u su oko 1 kadra u sekundi, što je savršeno primjereno za primjenu poput naše.
U osnovi ćemo slijediti izvrstan vodič Edje Electronics, s izmjenama koje su omogućile novije distribucije TensorFlow:
pi@raspberrypi: ~ $ workon cv
(cv) pi@raspberrypi: ~ $ pip install tensorflow (cv) pi@raspberrypi: ~ $ sudo apt-get install libxml2-dev libxslt-dev (cv) pi@raspberrypi: ~ $ pip install jastuk lxml jupyter matplotlib cython (cv) pi@raspberrypi: ~ $ sudo apt-get install python-tk
Sada moramo sastaviti Googleov protobuf. Samo slijedite upute u koraku 4 istog izvrsnog vodiča
Konačno, klonirajte i postavite definicije modela TensorFlow -a - slijedite korak 5 u vodiču Edje Electronics
Slijedite njihov primjer i u koraku 6, to je izvrstan uvod u otkrivanje objekata na Raspberry Pi.
Korak 6: Otkrivanje pokreta pomoću OpenCV -a
Počnimo s testiranjem da li OpenCV može imati sučelje s našom web kamerom: ssh u Raspberry Pi, prijeđite na cv virtualenv (workon cv), otvorite python interpreter (samo upišite python) i unesite sljedeće naredbe python:
uvoz cv2
cap = cv2. VideoCapture (0) cap.set (cv2. CAP_PROP_FRAME_WIDTH, 1920) cap.set (cv2. CAP_PROP_FRAME_HEIGHT, 1080) ret, frame = cap.read () print ('Pročitaj veličinu okvira: {} x {}'.format (frame.shape [1], frame.shape [0])
Uz malo sreće vidjet ćete da je OpenCV uspio pročitati HD okvir s kamere.
Možete koristiti cv2.imwrite (put, okvir) za pisanje tog okvira na disk i sftp ga natrag da biste pogledali.
Strategija otkrivanja pokreta prilično je ravna:
- Radite na okvirima niže rezolucije - ovdje nema potrebe za radom na full HD -u
- Nadalje, zamaglite slike kako biste osigurali što je moguće manje šuma.
- Zadržite tekući prosjek zadnjih N sličica. Za ovu aplikaciju, gdje je frame rate oko 1 FPS (samo zato što TensorFlow -u treba neko vrijeme po kadru), otkrio sam da N = 60 daje dobre rezultate. A budući da pažljiva implementacija ne zahtijeva više CPU -a s više okvira, to je u redu (potrebno je više memorije - ali to je zanemarivo kada radimo s okvirima niže rezolucije)
- Oduzmite trenutnu sliku od tekućeg prosjeka (samo budite oprezni s upisivanjem - morate dopustiti pozitivne i negativne vrijednosti [-255.. 255], pa okvir treba pretvoriti u int)
- Oduzimanje možete izvršiti na konverziji okvira u sivoj ljestvici (i prosjeku) ili to učiniti zasebno za svaki od RGB kanala, a zatim kombinirati rezultate (što je strategija koju sam odabrao, čineći je osjetljivom na promjene boje)
- Upotrijebite prag na delti i uklonite buku erozijom i dilatacijom
- Na kraju potražite konture područja s deltom - ta područja su mjesto gdje se dogodilo kretanje i trenutna slika se razlikuje od prosjeka prethodnih slika. Ako je potrebno, možemo dalje pronaći granične okvire za ove konture.
Inkapsulirao sam kod za to u klasu python DeltaFinder koju možete pronaći u mom githubu ovdje
Korak 7: Otkrijte objekte pomoću programa TensorFlow
Ako ste slijedili postupak instalacije TensorFlow -a, već ste provjerili imate li TensorFlow instaliran i radi.
U svrhu otkrivanja ljudi na općenitoj sceni na otvorenom, modeli koji su unaprijed obučeni na COCO skupu podataka rade prilično dobro - što je upravo model koji smo preuzeli na kraju instalacije TensorFlow. Samo ga trebamo upotrijebiti za zaključivanje!
Opet sam inkapsulirao učitavanje modela i zaključivanje u klasu python TFClassify kako bih olakšao stvari, što možete pronaći ovdje.
Korak 8: Postavite web poslužitelj na Raspberry Pi
Najlakši način za pristup rezultatima otkrivanja objekata je web preglednik, pa postavimo web poslužitelj na Raspberry Pi. Zatim ga možemo postaviti za posluživanje slika iz određenog direktorija.
Postoji više opcija za okvir web poslužitelja. Ja sam odabrao Flask. Izuzetno se konfigurira i lako se proširuje s Pythonom. Budući da nam je "ljestvica" trivijalna, bilo je više nego dovoljno.
Predlažem da ga instalirate u novi virtualenv, pa:
pi@raspberrypi: ~ $ mkvirtualenv webserv
(webserv) pi@raspberrypi: ~ $ pip install Flask
Imajte na umu da će s normalnim mrežnim postavljanjem biti dostupan samo ako je vaš preglednik na istom bežičnom LAN -u kao i vaš Raspberry Pi. Mogli biste stvoriti mapiranje portova / NAT konfiguraciju na internetskom usmjerivaču kako biste omogućili vanjski pristup - ali ja to ne preporučujem. Kôd koji sam napisao ne pokušava pružiti sigurnost koja bi vam trebala kada dopuštate opći pristup Internetu vašem Raspberry Pi.
Testirajte svoju instalaciju slijedeći vodič za brzi početak Flask
Korak 9: Obavijesti za mobilne uređaje iz Raspberry Pi -a pomoću IFTTT -a
Stvarno želim primati obavijesti na mobitelu kada se dogode događaji. U ovom slučaju, kada se osoba otkrije i kada razina vode padne. Najjednostavniji način na koji sam to učinio, bez potrebe za pisanjem prilagođene mobilne aplikacije, je korištenje IFTTT -a. IFTTT označava "If This Then That" i omogućuje mnogim vrstama događaja da pokrenu mnoge vrste radnji. U našem slučaju, zanima nas okidač IFTTT Maker Webhook. To nam omogućuje pokretanje IFTTT radnje upućivanjem HTTP POST zahtjeva IFTTT poslužitelju s posebnim ključem dodijeljenim našem računu, zajedno s podacima koji određuju što se dogodilo. Radnja koju poduzimamo može biti jednostavna kao stvaranje obavijesti na našem mobilnom uređaju pomoću mobilne aplikacije IFTTT, ili bilo što složenije od toga.
Evo kako to učiniti:
- Napravite IFTTT račun na ifttt.com
- Dok ste prijavljeni, idite na stranicu postavki usluge Webhook i unesite URL u svoj preglednik (nešto poput https://maker.ifttt.com/use/. Ta će vam web stranica pokazati vaš ključ i URL koji možete koristiti za pokretanje radnji.
-
Izradite IFTTT applet koji će generirati mobilnu obavijest kada se pokrene Webhook s detaljima događaja:
- Pritisnite "Moji apleti", a zatim "Novi applet".
- Pritisnite "+ovo" i odaberite "webhooks". Kliknite "Primite web zahtjev" za nastavak pojedinosti
- Dajte svom događaju naziv, npr. "PoolEvent" i kliknite "Izradi okidač"
- Pritisnite "+to" i odaberite "obavijesti". Zatim odaberite "Pošalji bogatu obavijest iz aplikacije IFTTT"
- Za "naslov" odaberite nešto poput "PoolPi"
- Za "poruku" upišite "Otkriveno Pool Pi:" i kliknite "dodaj sastojak".. "Vrijednost1".
- Vratite se na URL koji ste kopirali u 2. koraku. Prikazat će URL koji ćete koristiti za dozivanje novostvorene aplikacije. Kopirajte taj URL, zamijenivši rezervirano mjesto {event} imenom događaja (u našem primjeru PoolEvent)
- Preuzmite, instalirajte i prijavite se u aplikaciju IFTTT za svoj mobilni uređaj
- Pokrenite ovu python skriptu na svom Raspberry Pi -u da vidite da li radi (imajte na umu da bi moglo proći nekoliko sekundi ili minuta da se aktivira na vašem mobilnom uređaju):
zahtjevi za uvoz
requests.post ('https://maker.ifttt.com/trigger/PoolEvent/with/key/', json = {"value1": "Pozdrav obavijesti"})
Korak 10: Dodajte relejni HAT u Raspberry Pi i spojite ga na elektromagnetni ventil
Prije nego nastavite s ovim korakom ISKLJUČITE svoj Raspberry Pi: ssh na njega i upišite "sudo shutdown now", a zatim ga isključite iz napajanja
Naš cilj je uključiti i isključiti napajanje elektromagnetnim ventilom - ventilom koji može otvoriti ili zatvoriti dovod vode na temelju 24 V izmjenične struje koju dobiva iz napajanja. Releji su električne komponente koje mogu otvoriti ili zatvoriti krug na temelju digitalnog signala koji naša Raspberry Pi može pružiti. Ono što mi ovdje radimo je spajanje releja na ove digitalne signalne pinove Raspberry Pi -a i njegovo zatvaranje kruga između 24V AC napajanja i elektromagnetskog ventila.
Igle na Raspberry Pi -u koje mogu djelovati kao digitalni ulaz ili izlaz nazivaju se GPIO - ulaz/izlaz opće namjene i red su od 40 pinova sa strane Pi -a. Kad je Pi isključen i čvrsto umetnite relej HAT u njega. ŠEŠIR koji sam odabrao ima 3 releja u sebi, a mi ćemo koristiti samo jedan od njih. Zamislite sve što možete učiniti s ostale dvije:)
Sada ponovno uključite Raspberry Pi. Crvena LED "napajanje" na releju HAT trebala bi se uključiti, što znači da dobiva napajanje iz Pi -a kroz GPIO. Testirajmo možemo li to kontrolirati: ponovno ssh u Pi, unesite python i upišite:
uvoziti gpiozero
dev = gpiozero. DigitalOutputDevice (26, initial_value = True) dev.off ()
Trebali biste čuti zvučni "klik", koji označava da je relej uključen, i vidjeti upaljenu LED diodu koja pokazuje da je prvi relej u spojenom položaju. Sada možete tipkati
dev.on ()
Što bi relej prebacilo u položaj "isključeno" (čudno, znam …) i izašlo () iz pythona.
Sada pomoću kratkospojnih kabela i dužeg kabela spojite relej između 24V napajanja i elektromagnetnog ventila. Pogledajte dijagram. Konačno, spojite elektromagnetni ventil na slavinu pomoću adaptera i pripremite se za testiranje svega ponavljanjem gornjih naredbi - one bi trebale uključivati i isključivati vodu.
Priključite crijevo na elektromagnetni ventil, a drugi kraj stavite duboko u bazen. Sada imate računalno upravljani sustav nadopunjavanja bazena i vrijeme je da spojite senzor kako biste mu rekli kada treba raditi.
Korak 11: Priključite osjetnik razine vode
Senzor razine vode jednostavno je plovak koji povezuje električni krug kada je plovak spušten, a prekida ga kada pluta. Ako ga umetnete u bazen na pravoj visini, plovak će se podići kada je razina vode odgovarajuća, ali će se smanjiti ako nema dovoljno vode.
Da bi Raspberry Pi znao status senzora razine vode, potreban nam je Pi da bi osjetio otvoreni ili zatvoreni krug. Srećom, to je vrlo jednostavno: isti GPIO konektori koje koristimo kao digitalni izlaz za upravljanje relejima mogu djelovati kao ulazi (dakle I u GPIO -u). Konkretno, ako jednu žicu senzora spojimo na +3,3 V na GPIO konektoru, a drugu žicu senzora na pin koji konfiguriramo kao padajući ulaz (što znači da će normalno biti na razini napona GND), taj će pin mjeriti digitalni "visoki" ili "uključeni" napon samo kada osjetnik razine vode zatvori krug - kada je razina vode niska. Koristio sam GPIO pin 16 kao ulaz, koji sam označio na gornjoj slici.
Python kôd za konfiguriranje pina kao ulaza i testiranje njegovog trenutnog stanja je:
uvoziti gpiozero
level_input = gpiozero. Tipka (16) water_low = level_input.is_pressed
Jedan od potencijalnih izazova je to što bi senzor samo promijenio stanje, brzo bi oscilirao između stanja uključivanja i isključivanja. Rješenje za to je poznato kao "debouncing" i traži dosljednu promjenu stanja prije poduzimanja radnji. Biblioteka GPIOZERO ima kod za to, ali iz nekog razloga taj kod mi nije dobro funkcionirao. Napisao sam jednostavnu petlju za pokretanje IFTTT upozorenja kada se otkrije dosljedna promjena stanja, koju možete pronaći u mom spremištu ovdje.
Korak 12: Napišite kôd kako biste sve povezali
To je to. Naše postavljanje je dovršeno. Možete napisati vlastiti kôd za povezivanje stvari u cjelovit sustav ili upotrijebiti kôd koji vam dajem. Da biste to učinili, samo stvorite strukturu direktorija i klonirajte spremište, na sljedeći način:
mkdir poolpi
cd poolpi git klon
Zatim uredite datoteke s imenom ifttt_url.txt u direktorijima motion_alert i water_level tako da s vašim tajnim ključem imaju URL za vašu IFTTT web udicu. Za različite radnje možete koristiti dvije različite web kuke.
Konačno, želimo da se ovaj kôd automatski pokrene. Najlakši način da to postignete je putem Linux crontab usluge. Možemo dodati neke retke crontab za dva glavna zadatka:
- Pokrenite naša tri programa: detektor objekata, senzor razine vode i web poslužitelj pri svakom ponovnom pokretanju
- Očistite izlazni direktorij, brišući stare slike i stare video datoteke (odabrao sam brisanje datoteka starijih od 1 dana i slika starijih od 7 dana - slobodno eksperimentirajte)
Da biste to učinili, upišite crontab -e koji će otvoriti vaš uređivač nano teksta. Dodajte sljedeće retke na dno datoteke:
0 1 * * * find/home/pi/poolpi/output -type f -name " *.avi" -mtime +1 -delete
0 2 * * * find/home/pi/poolpi/output -type f -name " *.jpg" -mtime +7 -delete @reboot python3 /home/pi/poolpi/motion_alert/webserv/webserv.py @reboot python3 /home/pi/poolpi/motion_alert/motion_obj_alert.py @reboot python3 /home/pi/poolpi/water_level/test_water_level.py
Na kraju, ponovno pokrenite svoj Raspberry Pi. Sada je spreman za održavanje vašeg bazena punim i sigurnim.
Učinite nešto s postavljanjem, kodom i ne zaboravite zvjezdicom označiti moje github spremište i komentirati uputstva ako vam je to od koristi. Uvijek želim naučiti više.
Sretno u izradi!
Drugoplasirani u IoT Challengeu
Preporučeni:
Sustav za nadzor zraka pomoću NodeMCU -a i IOT -a: 4 koraka
Sustav za nadzor zraka pomoću NodeMCU i IOT Thingspeak: ThingSpeak je IoT aplikacija otvorenog koda i API za pohranu i dohvaćanje podataka s hardverskih uređaja i senzora. Za komunikaciju koristi HTTP protokol putem Interneta ili LAN -a. Uključena je MATLAB analitika za analizu i vizualizaciju da
Arduino i Raspberry Pi sustav za nadzor kućnih ljubimaca: 19 koraka (sa slikama)
Arduino i Raspberry Pi sustav za nadzor kućnih ljubimaca: Nedavno smo, dok smo bili na odmoru, shvatili nedostatak veze s našim kućnim ljubimcem Beagleom. Nakon nekog istraživanja, pronašli smo proizvode sa statičkom kamerom koja je omogućila nadzor i komunikaciju s kućnim ljubimcem. Ti su sustavi imali određene prednosti b
Novi bežični IOT senzorski sloj za kućni sustav za nadzor okoliša: 5 koraka (sa slikama)
Novi bežični IOT senzorski sloj za kućni sustav za nadzor okoliša: Ova uputa opisuje jeftiniji, bežični IOT senzorski sloj na bateriju za moj raniji Instructable: LoRa IOT sustav za nadzor okoliša kod kuće. Ako već niste pogledali ovaj raniji Instructable, preporučujem da pročitate uvod
Hidroponski sustav za nadzor i kontrolu staklenika: 5 koraka (sa slikama)
Sustav za nadzor i kontrolu hidroponskih staklenika: U ovom uputstvu pokazat ću vam kako izgraditi hidroponski sustav nadzora i kontrole staklenika. Pokazat ću vam odabrane komponente, dijagram ožičenja kako je sklop konstruiran i Arduino skicu korištenu za programiranje Seeed
IoT sustav za nadzor postrojenja (s IBM IoT platformom): 11 koraka (sa slikama)
IoT sustav za nadziranje biljaka (s IBM IoT platformom): pregled Sustav za nadzor postrojenja (PMS) je aplikacija izrađena s pojedincima koji su u radničkoj klasi sa zelenim palcem na umu. Danas su zaposleni pojedinci zaposleniji nego ikad prije; napredovati u karijeri i upravljati svojim financijama