Mündəricat:

Edison mənə qəhvə hazırlayır (kod): 3 addım
Edison mənə qəhvə hazırlayır (kod): 3 addım

Video: Edison mənə qəhvə hazırlayır (kod): 3 addım

Video: Edison mənə qəhvə hazırlayır (kod): 3 addım
Video: Tomas Edison - 20 əsri işıqlandıran Dahi şəxsin sitatları və düşüncələri 2024, Iyul
Anonim
Edison mənə qəhvə hazırlayır (kod)
Edison mənə qəhvə hazırlayır (kod)

Bu layihə, WiFi şəbəkəsində bir WiFi müştəri aşkar edildikdən sonra (məsələn, sizin və ya işçilərinizin ofisinizə gələrkən) bir hərəkəti (qəhvə xidməti kimi) tetiklemenize imkan verəcək.

Addım 1: Intel Edison qurun

Intel Edison qurun
Intel Edison qurun

Kompüterinizdən iki usb kabelini Edison lövhəsinə qoşun (biri güc üçün, biri serial məlumat üçün). OSX -də terminaldan lövhəyə seriya bağlantısı açın: ekran /dev/tty.usbserial-AJ035OK6 115200 -L Varsayılan Edison girişi kökdür. İçəri girdikdən sonra wifi şəbəkəsini konfiqurasiya edin: configure_edison -wifi Edisondan paketləri yükləyə bilmək üçün mənbələr siyahısını əlavə edək. Bu faylı açın: root@edison: ~# vi /etc/opkg/base-feeds.confVə bu sətirləri əlavə edin (vi redaktoruna mətn daxil etmək üçün "i" yazın): src/gz all 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 -32O zaman mənbələri yeniləyin və layihəmiz üçün lazım olan kitabxanaları quraşdırın: root@edison: ~# opkg updateroot@edison: ~# opkg install libmraa0 nanoroot@edison: ~# opkg python-piproot@edison qurun: ~# curl https:/ /bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | pythonroot@edison: ~# pip install ubidotsDone! İndi kod verməyə hazırıq. Ofisimə gəldiyimdə təsbit edin Yerli wifi şəbəkəsindəki ARP trafikini aşkar etmək üçün Scapy paket sniffer istifadə edəcəyik. Scapy, Python skriptinin rahatlığından şəbəkə paketlərini idarə etməyə imkan verən əla bir vasitədir. Onsuz şəbəkə trafikini kəşf edərkən çoxlu ikili kodu təhlil etməliyik. İlk skriptimiz "dictionary.csv" adlı bir csv faylında saxlanılan MAC ünvanlarını axtaracaq və sonra "1" dəyərini Ubidots dəyişəninə göndərəcək. adamın gəldiyini bildirir. MAC ünvanı ilk dəfə görünürsə, o zaman skript məlumatları saxlamaq üçün avtomatik olaraq Ubidots dəyişənini yaradacaq. Xətti qeyd edin: funksiyanı işə salan sniff (prn = arp_count, filter = "arp", store = 0) " arp_count (pkt) "" bir ARP paketi hər dəfə koklandığında. Bu funksiya, Ubidots dəyişənini yeniləmək üçün çoxlu prosesləri işə saldığımız yerdir. Multiprocessing istifadə etməyimin səbəbi, paralel bir funksiyaya ehtiyacım olmasıdır, çünki iki istifadəçi eyni anda gəlsə, hər iki paket Ubidots -da iylənə və yenilənə bilər. "Store = 0" seçimi çox vacibdir, çünki əks halda paketlər Edisonun RAM və Swap yaddaşını doldurmağa başlayın və bir neçə saatdan sonra donacaqdır. /uploads/document/file/46543/wifi_sniff.py

Addım 2: ARP Paketi Qoxulandıqda Servo Tetikleyin

ARP Paketi Qoxulandıqda Servo Tetikleyin
ARP Paketi Qoxulandıqda Servo Tetikleyin

İkinci skript, hər zaman Ubidots dəyişənini ("0" və ya "1" göndərdiyimiz) sorğu -sual edəcək və dəyişən "1" -ə bərabər olduqda servo aktivləşdirəcək. Linux qabığından və ya python skriptindən Edisonunuzun bütün GPIO sancaqlarını idarə etməyə imkan verən MRAA kitabxanasından (Intel xalqı tərəfindən təklif olunur) istifadə edirəm (həqiqətən Arduinoda kod yazmağa ehtiyac yoxdur!). Bu, Python -dan bir Servo motoru tez idarə etməyimə imkan verdi. Bir qəhvə maşını kimi hər hansı bir fiziki klapanı işə salmaq üçün bu Servo qura bilərsiniz. Demo xatirinə sadə bir fincan tutucusu hazırladım. Btw də tablosunuzda "Switch" yarada və qəhvə tökmə qurğusunu əl ilə idarə edə bilərsiniz:

Addım 3: Zəhmət olmasa səs verin

Zəhmət olmasa səs verin !!! Video üçün:

Tövsiyə: