Kazalo:

Edison mi skuha kavo (koda): 3 koraki
Edison mi skuha kavo (koda): 3 koraki

Video: Edison mi skuha kavo (koda): 3 koraki

Video: Edison mi skuha kavo (koda): 3 koraki
Video: Стивен Грир: UAP, CE5, Lazar, Skinwalker Ranch 2024, November
Anonim
Edison mi skuha kavo (koda)
Edison mi skuha kavo (koda)

Ta projekt vam bo omogočil, da sprožite dejanje (na primer postrežbo kave), ko v omrežju WiFi zazna odjemalca WiFi (na primer, ko vi ali vaši zaposleni pridete v svojo pisarno).

1. korak: Namestite svoj Intel Edison

Nastavite svoj Intel Edison
Nastavite svoj Intel Edison

Priključite dva kabla USB iz računalnika na ploščo Edison (enega za napajanje, drugega za serijske podatke). V OSX odprite serijsko povezavo s ploščo s svojega terminala: screen /dev/tty.usbserial-AJ035OK6 115200 -L Privzeta prijava za Edison je root. Ko ste prijavljeni, konfigurirajte omrežje wifi: configure_edison --wifi Dodajmo vire, da lahko prenesemo pakete iz Edisona. Odprite to datoteko: root@edison: ~# vi /etc/opkg/base-feeds.confIn dodajte te vrstice (vnesite "i", da lahko vstavite besedilo v urejevalnik vi): src/gz vse 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 -32 Nato posodobite vire in namestite potrebne knjižnice za naš projekt: root@edison: ~# opkg updateroot@edison: ~# opkg namestite libmraa0 nanoroot@edison: ~# opkg namestite python-piproot@edison: ~# curl https:/ /bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | pythonroot@edison: ~# pip install ubidotsDokončano! Zdaj smo pripravljeni na kodiranje. Zaznaj, ko pridem v svojo pisarno. Za odkrivanje prometa ARP v lokalnem omrežju wifi bomo uporabili programsko opremo za iskanje paketov Scapy. Scapy je odlično orodje, ki vam omogoča preprosto upravljanje skripta Python. Brez tega bi morali pri raziskovanju omrežnega prometa razčleniti veliko binarne kode. Naš prvi skript bo pazil na naslove MAC, shranjene v datoteki csv, imenovano "dictionary.csv", nato pa vrednost "1" poslal spremenljivki Ubidots, kar pomeni, da je oseba prispela. Če je naslov MAC prvič viden, bo skript samodejno ustvaril spremenljivko Ubidots za shranjevanje podatkov. Upoštevajte vrstico: sniff (prn = arp_count, filter = "arp", store = 0), ki sproži funkcijo " arp_count (pkt) "vsakič, ko se vdihne paket ARP. Ta funkcija sproži več procesov za posodobitev spremenljivke Ubidots. Razlog, da sem uporabil večprocesno obdelavo, je, ker sem potreboval vzporedno funkcijo, tako da je mogoče, če hkrati prispeta dva uporabnika, oba paketa ponjuhati in posodobiti v Ubidotih. Možnost "store = 0" je zelo pomembna, ker bi v nasprotnem primeru paketi začnite polniti Edisonov RAM in zamenjati pomnilnik in po nekaj urah bi zamrznil. https://halckemy.s3.amazonaws.com/uploads/document/file/46958/dictionary.csvhttps://halckemy.s3.amazonaws.com /uploads/document/file/46543/wifi_sniff.py

2. korak: Sprožite servo, ko je paket ARP vdihan

Sprožite servo, ko vdihnete paket ARP
Sprožite servo, ko vdihnete paket ARP

Drugi skript bo ves čas iskal to spremenljivko Ubidots (tisto, na katero pošiljamo "0" ali "1") in aktiviral servo, ko je spremenljivka enaka "1". Uporabljam knjižnico MRAA (predlagano z Intel -jevimi ljudmi), ki vam omogoča rokovanje z vsemi zatiči GPIO vašega Edisona iz lupine Linuxa ali skripta python (res, ni potrebe po kodiranju v Arduinu!). To mi je omogočilo hitro rokovanje s servo motorjem s Pythona. Servo lahko nastavite tako, da sproži kateri koli fizični ventil, na primer aparat za kavo. Zaradi predstavitve sem naredil preprosto držalo za skodelico. Na svoji armaturni plošči lahko ustvarite tudi "Switch" in ročno upravljate nalivalnik kave:

Korak: Glasujte

Prosim, glasujte !!! Za video:

Priporočena: