Sadržaj:

Edison mi kuha kavu (kod): 3 koraka
Edison mi kuha kavu (kod): 3 koraka

Video: Edison mi kuha kavu (kod): 3 koraka

Video: Edison mi kuha kavu (kod): 3 koraka
Video: Очистка самогона за 5 минут 2024, Novembar
Anonim
Edison mi pravi kafu (šifra)
Edison mi pravi kafu (šifra)

Ovaj projekt će vam omogućiti da pokrenete radnju (poput posluživanja kave) kada se WiFi klijent otkrije u WiFi mreži (na primjer kada vi ili vaši zaposlenici dođete u ured).

Korak 1: Postavite svoj Intel Edison

Postavite svoj Intel Edison
Postavite svoj Intel Edison

Priključite dva USB kabla sa računara na Edisonovu ploču (jedan za napajanje, drugi za serijske podatke). U OSX -u otvorite serijsku vezu sa pločom sa svog terminala: screen /dev/tty.usbserial-AJ035OK6 115200 -L Zadana prijava za Edison je root. Nakon što ste ušli, konfigurirajte wifi mrežu: configure_edison --wifiDodajmo listu izvora kako bismo mogli preuzimati pakete s Edisona. Otvorite ovu datoteku: root@edison: ~# vi /etc/opkg/base-feeds.confI dodajte joj ove redove (upišite "i" da biste mogli umetnuti tekst u vi editor): src/gz sve http:/ /repo.opkg.net/edison/repo/allsrc/gz edison https://repo.opkg.net/edison/repo/edisonsrc/gz core2-32 https://repo.opkg.net/edison/repo/core2 -32Zatim ažurirajte izvore i instalirajte potrebne biblioteke za naš projekt: root@edison: ~# opkg updateroot@edison: ~# opkg instalirajte libmraa0 nanoroot@edison: ~# opkg instalirajte python-piproot@edison: ~# curl https:/ /bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | pythonroot@edison: ~# pip install ubidotsUrađeno! sada smo spremni za kodiranje. Otkrijte kad stignem u ured. Koristit ćemo Scapy njuškač paketa da bismo mogli otkriti ARP promet u lokalnoj WiFi mreži. Scapy je odličan alat koji vam omogućuje rukovanje mrežnim paketima iz jednostavnosti Python skripte. Bez toga, morali bismo raščlaniti puno binarnog koda pri njuškanju mrežnog prometa. Naša prva skripta će tražiti MAC adrese pohranjene u csv datoteci pod nazivom "dictionary.csv", a zatim će poslati vrijednost "1" u varijablu Ubidots, što znači da je osoba stigla. Ako se MAC adresa vidi prvi put, tada će skripta automatski stvoriti Ubidots varijablu za spremanje podataka. Zabilježite red: sniff (prn = arp_count, filter = "arp", store = 0) koji pokreće funkciju " arp_count (pkt) "svaki put kada se njuši ARP paket. Ta funkcija pokreće više procesa radi ažuriranja varijable Ubidots. Razlog zašto sam koristio Multiprocessing je taj što mi je trebala paralelna funkcija tako da, ako dva korisnika dođu u isto vrijeme, tada se oba paketa mogu njuškati i ažurirati u Ubidotsima. Opcija "store = 0" je vrlo važna jer bi u suprotnom paketi počnite puniti Edisonovu RAM i zamijeniti memoriju i ona bi se zamrznula nakon nekoliko sati. /uploads/document/file/46543/wifi_sniff.py

Korak 2: Pokrenite servo kada se njuši ARP paket

Aktivirajte servo kada se njuši ARP paket
Aktivirajte servo kada se njuši ARP paket

Druga skripta će sve vrijeme ispitivati tu Ubidots varijablu (onu kojoj šaljemo "0" ili "1") i aktivirati servo kada je varijabla jednaka "1". Koristim biblioteku MRAA (koju su predložili Intel ljudi) koja vam omogućava da upravljate svim GPIO pinovima vašeg Edisona iz Linux ljuske ili python skripte (zaista, nema potrebe za kodiranjem u Arduinu!). To mi je omogućilo brzo rukovanje servo motorom s Pythona. Https://halckemy.s3.amazonaws.com/uploads/document/file/46556/pour_coffee.py Servo je priključen na pin D3 u kompletu Grove. Ovaj Servo možete postaviti tako da aktivira bilo koji fizički ventil, poput aparata za kavu. Napravio sam jednostavan držač za čaše radi demonstracije. Osim toga, možete stvoriti i "Switch" na svojoj nadzornoj ploči i ručno kontrolirati točionik kave:

Korak 3: Molimo glasajte

Molimo glasajte !!! Za video:

Preporučuje se: