Indholdsfortegnelse:

Edison laver mig en kaffe (kode): 3 trin
Edison laver mig en kaffe (kode): 3 trin

Video: Edison laver mig en kaffe (kode): 3 trin

Video: Edison laver mig en kaffe (kode): 3 trin
Video: ЛЮБОВЬ С ДОСТАВКОЙ НА ДОМ (2020). Романтическая комедия. Хит 2024, Juli
Anonim
Edison laver mig en kaffe (kode)
Edison laver mig en kaffe (kode)

Dette projekt giver dig mulighed for at udløse en handling (f.eks. Servering af kaffe), når en WiFi -klient er registreret i et WiFi -netværk (f.eks. Når du eller dine medarbejdere kommer til dit kontor).

Trin 1: Konfigurer din Intel Edison

Konfigurer din Intel Edison
Konfigurer din Intel Edison

Tilslut de to usb -kabler fra din computer til Edison -kortet (et til strøm, et til serielle data). I OSX skal du åbne en seriel forbindelse til kortet fra din terminal: skærm /dev/tty.usbserial-AJ035OK6 115200 -L Standard Edison -login er root. Når du er i, skal du konfigurere wifi -netværket: configure_edison --wifiLad os tilføje kildelisten for at kunne downloade pakker fra Edison. Åbn denne fil: root@edison: ~# vi /etc/opkg/base-feeds.confOg tilføj disse linjer til den (skriv "i" for at kunne indsætte tekst i vi-editoren): src/gz alle 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 -32Opdater derefter kilderne og installer de nødvendige biblioteker til vores projekt: 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 install ubidotsDone! nu er vi klar til at kode. Opdag, hvornår jeg ankommer til mit kontor Vi vil bruge Scapy -pakkens sniffer til at kunne registrere ARP -trafik i det lokale wifi -netværk. Scapy er et fantastisk værktøj, der giver dig mulighed for at håndtere netværkspakker på en let måde med et Python -script. Uden det skulle vi analysere masser af binær kode, når vi snusede netværkstrafik. Vores første script vil se efter MAC -adresser, der er gemt i en csv -fil kaldet "dictionary.csv", og derefter sende værdien "1" til en Ubidots -variabel, hvilket betyder, at personen ankom. Hvis MAC -adressen ses for første gang, vil scriptet automatisk oprette en Ubidots -variabel til lagring af data. Bemærk linjen: sniff (prn = arp_count, filter = "arp", store = 0), der udløser funktionen " arp_count (pkt) "hver gang en ARP -pakke bliver snuset. Denne funktion er, hvor vi aktiverer multi-processer for at opdatere Ubidots-variablen. Grunden til at jeg brugte Multiprocessing er fordi jeg havde brug for en parallel funktion, så hvis to brugere ankommer på samme tid, så kan begge pakker snuses og opdateres i Ubidots. Muligheden "store = 0" er meget vigtig, for ellers ville pakkerne begynde at fylde Edisons RAM og bytte hukommelse, og det ville fryse efter et par timer. https://halckemy.s3.amazonaws.com/uploads/document/file/46958/diction.csvhttps://halckemy.s3.amazonaws.com /uploads/document/file/46543/wifi_sniff.py

Trin 2: Udløser en servo, når ARP -pakken er sniffet

Udløser en servo, når ARP -pakken er snuset
Udløser en servo, når ARP -pakken er snuset

Det andet script undersøger den Ubidots -variabel hele tiden (den vi sender "0" eller "1" til) og aktiverer servoen, når variablen er lig med "1". Jeg bruger MRAA -biblioteket (foreslået af Intel -folkene), som giver dig mulighed for at håndtere alle GPIO -benene i din Edison fra Linux -shell eller et python -script (virkelig, ingen grund til at kode i Arduino!). Dette tillod mig hurtigt at håndtere en servomotor fra Python. Http://halckemy.s3.amazonaws.com/uploads/document/file/46556/pour_coffee.py Servoen er fastgjort til pin D3 i Grove Kit. Du kan opsætte denne servo til at udløse enhver fysisk ventil, f.eks. En kaffemaskine. Jeg lavede en enkel kopholder af hensyn til demoen. BTW du kan også oprette en "Switch" i dit dashboard og styre kaffehælderen manuelt:

Trin 3: Stem venligst

Stem venligst !!! Til videoen:

Anbefalede: