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: Сердце Одессы. Рынок Привоз. Все люди вышли скупиться перед праздниками. Цены Сало Липован 2024, Studeni
Anonim
Edison mi kuha kavu (kod)
Edison mi kuha kavu (kod)

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

Korak 1: Postavite svoj Intel Edison

Postavite svoj Intel Edison
Postavite svoj Intel Edison

Spojite dva USB kabela s računala na Edisonovu ploču (jedan za napajanje, drugi za serijske podatke). U OSX -u otvorite serijsku vezu s 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 popis izvora kako bismo mogli preuzimati pakete s Edisona. Otvorite ovu datoteku: root@edison: ~# vi /etc/opkg/base-feeds.confI dodajte joj ove retke (upišite "i" da biste mogli umetnuti tekst u uređivač vi): 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 -32Onda ažurirajte izvore i instalirajte potrebne knjižnice 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 ubidotsUčinjeno! sada smo spremni za kodiranje. Otkrij kad stignem u svoj ured. Koristit ćemo njuškalo paketa Scapy da bismo mogli otkriti ARP promet u lokalnoj WiFi mreži. Scapy je izvrstan 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 će prva skripta paziti na MAC adrese pohranjene u csv datoteci pod nazivom "dictionary.csv", a zatim 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 varijablu Ubidots za spremanje podataka. Zabilježite redak: 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 aktivira 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, oba se paketa mogu njušiti i ažurirati u Ubidotsima. Opcija "store = 0" je vrlo važna jer bi u suprotnom paketi počnite puniti Edisonov RAM i zamijeniti memoriju i zamrznula bi se nakon nekoliko sati.https://halckemy.s3.amazonaws.com/uploads/document/file/46958/dictionary.csvhttps://halckemy.s3.amazonaws.com /uploads/document/file/46543/wifi_sniff.py

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

Pokrenite servo pogon kada se njuši ARP paket
Pokrenite servo pogon kada se njuši ARP paket

Druga skripta će cijelo 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ćuje rukovanje svim GPIO pinovima vašeg Edisona iz Linux ljuske ili python skripte (stvarno, 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 šalice radi demonstracije. Btw također možete stvoriti "Switch" na svojoj nadzornoj ploči i ručno kontrolirati točionik kave:

Korak 3: Molimo glasajte

Molimo glasajte !!! Za video:

Preporučeni: