Satura rādītājs:

Edisons gatavo man kafiju (kods): 3 soļi
Edisons gatavo man kafiju (kods): 3 soļi

Video: Edisons gatavo man kafiju (kods): 3 soļi

Video: Edisons gatavo man kafiju (kods): 3 soļi
Video: Common Relationship Problems & Solutions| Best Relationship Advice For Couples 2024, Jūlijs
Anonim
Edisons gatavo man kafiju (kods)
Edisons gatavo man kafiju (kods)

Šis projekts ļaus jums aktivizēt darbību (piemēram, kafijas pasniegšanu), tiklīdz WiFi tīkls ir atklājis WiFi klientu (piemēram, kad jūs vai jūsu darbinieki nokļūst jūsu birojā).

1. darbība: iestatiet savu Intel Edison

Iestatiet savu Intel Edison
Iestatiet savu Intel Edison

Savienojiet divus USB kabeļus no datora ar Edisona plati (viens barošanai, otrs sērijveida datiem). Operētājsistēmā OSX atveriet sērijas savienojumu ar plati no sava termināļa: screen /dev/tty.usbserial-AJ035OK6 115200 -L Noklusējuma pieteikumvārds Edison ir root. Kad esat pievienojies, konfigurējiet wifi tīklu: configure_edison --wifiPievienosim avotu sarakstu, lai varētu lejupielādēt paketes no Edison. Atveriet šo failu: root@edison: ~# vi /etc/opkg/base-feeds.confUn pievienojiet tam šīs rindiņas (ierakstiet "i", lai varētu ievietot tekstu vi redaktorā): 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 -32Tad atjauniniet avotus un instalējiet mūsu projektam nepieciešamās bibliotēkas: root@edison: ~# opkg updateroot@edison: ~# opkg install libmraa0 nanoroot@edison: ~# opkg install python-piproot@edison: ~# curl https:/ /bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | pythonroot@edison: ~# pip instalēt ubidotsDone! Tagad mēs esam gatavi kodēt. Noteikt, kad ierados savā birojā Scapy ir lielisks rīks, kas ļauj apstrādāt tīkla paketes, izmantojot Python skriptu. Bez tā mums būtu jāanalizē daudz binārā koda, nosakot tīkla trafiku. Mūsu pirmais skripts meklēs MAC adreses, kas saglabātas csv failā ar nosaukumu "dictionary.csv", un pēc tam nosūta vērtību "1" uz Ubidots mainīgo, tas nozīmē, ka persona ieradās. Ja MAC adrese tiek parādīta pirmo reizi, skripts automātiski izveidos Ubidots mainīgo, lai uzglabātu datus. Ievērojiet rindu: sniff (prn = arp_count, filter = "arp", store = 0), kas aktivizē funkciju " arp_count (pkt) "katru reizi, kad tiek šņaukta ARP pakete. Šī funkcija ir vieta, kur mēs aktivizējam vairākus procesus, lai atjauninātu mainīgo Ubidots. Iemesls, kāpēc es izmantoju Multiprocessing, ir tāpēc, ka man bija nepieciešama paralēla funkcija, lai, ja vienlaikus ieradīsies divi lietotāji, abas paketes varētu šņaukt un atjaunināt Ubidots. Opcija "store = 0" ir ļoti svarīga, jo pretējā gadījumā paketes sāciet aizpildīt Edisona RAM un mijmaiņas atmiņu, un tas pēc dažām stundām iesaldēsies. https://halckemy.s3.amazonaws.com/uploads/document/file/46958/dictionary.csvhttps://halckemy.s3.amazonaws.com /uploads/document/file/46543/wifi_sniff.py

2. darbība: aktivizējiet servo, kad tiek iesmidzināta ARP pakete

Aktivizējiet servo, kad tiek šņaukta ARP pakete
Aktivizējiet servo, kad tiek šņaukta ARP pakete

Otrais skripts visu laiku aptaujās šo Ubidots mainīgo (to, kuram mēs sūtām “0” vai “1”) un aktivizēs servo, kad mainīgais ir vienāds ar “1”. Es izmantoju MRAA bibliotēku (ko ieteikuši Intel ļaudis), kas ļauj apstrādāt visas jūsu Edisona GPIO tapas no Linux apvalka vai pitona skripta (tiešām, nav nepieciešams kodēt Arduino!). Tas ļāva man ātri rīkoties ar servomotoru no Python. Http://halckemy.s3.amazonaws.com/uploads/document/file/46556/pour_coffee.py Jūs varat iestatīt šo servo, lai iedarbinātu jebkuru fizisku vārstu, piemēram, kafijas automātu. Demo dēļ es izveidoju vienkāršu krūzes turētāju. Btw jūs varat arī izveidot "slēdzi" savā informācijas panelī un manuāli kontrolēt kafijas ielietāju:

3. solis: lūdzu, balsojiet

Lūdzu balsojiet !!! Videoklipam:

Ieteicams: