INHOUDSOPGAWE:

Edison maak vir my 'n koffie (kode): 3 stappe
Edison maak vir my 'n koffie (kode): 3 stappe

Video: Edison maak vir my 'n koffie (kode): 3 stappe

Video: Edison maak vir my 'n koffie (kode): 3 stappe
Video: Die Antwoord - Baita Jou Sabela feat. Slagysta (Official Video) 2024, Julie
Anonim
Edison maak vir my 'n koffie (kode)
Edison maak vir my 'n koffie (kode)

Met hierdie projek kan u 'n aksie aktiveer (soos om koffie te bedien) sodra 'n WiFi -kliënt in 'n WiFi -netwerk opgespoor is (soos wanneer u of u werknemers by u kantoor kom).

Stap 1: Stel u Intel Edison op

Stel u Intel Edison op
Stel u Intel Edison op

Koppel die twee usb -kabels van u rekenaar aan die Edison -bord (een vir krag, een vir seriële data). Open in OSX 'n seriële verbinding met die kaart vanaf u terminale: skerm /dev/tty.usbserial-AJ035OK6 115200 -LDie standaard Edison -aanmelding is root. Sodra u ingeskakel is, stel u die wifi -netwerk op: configure_edison --wifi Laat ons die bronnelys byvoeg om pakkette van die Edison af te laai. Maak hierdie lêer oop: root@edison: ~# vi /etc/opkg/base-feeds.conf En voeg hierdie reëls daarby (tik "i" om teks in die vi-redakteur in te voeg): src/gz alles 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 -32Dateer die bronne op en installeer die vereiste biblioteke vir ons projek: root@edison: ~# opkg updateroot@edison: ~# opkg installeer libmraa0 nanoroot@edison: ~# opkg installeer python-piproot@edison: ~# curl https:/ /bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | pythonroot@edison: ~# pip installeer ubidotsDone! nou is ons gereed om te kodeer. Ontdek wanneer ek by my kantoor aankom. Ons sal die Scapy -pakkiesnuffelaar gebruik om ARP -verkeer in die plaaslike wifi -netwerk op te spoor. Scapy is 'n uitstekende hulpmiddel waarmee u netwerkpakkette kan hanteer vanaf die gemak van 'n Python -script. Daarsonder sou ons baie binêre kode moes ontleed wanneer ons netwerkverkeer snuif. Ons eerste script sal kyk na MAC -adresse wat gestoor is in 'n csv -lêer genaamd "dictionary.csv", en dan die waarde "1" na 'n Ubidots -veranderlike stuur, wat beteken dat die persoon aangekom het. As die MAC -adres vir die eerste keer gesien word, sal die script outomaties 'n Ubidots -veranderlike skep om die data te stoor. Let op die reël: snuif (prn = arp_count, filter = "arp", store = 0) wat die funksie aktiveer " arp_count (pkt) "elke keer as 'n ARP -pakkie gesnuif word. Die funksie is waar ons multi-prosesse afskakel om die veranderlike van Ubidots by te werk. Die rede waarom ek Multiprocessing gebruik het, is omdat ek 'n parallelle funksie nodig gehad het, sodat as twee gebruikers op dieselfde tyd aankom, beide pakkies in Ubidots gesnuffel en bygewerk kan word. Die opsie "store = 0" is baie belangrik, want anders sou die pakkies begin die Edison se RAM en ruilgeheue vul, en dit sal na 'n paar uur vries. /uploads/document/file/46543/wifi_sniff.py

Stap 2: aktiveer 'n servo as die ARP -pakkie gesnuif word

Aktiveer 'n servo as die ARP -pakkie gesnuif word
Aktiveer 'n servo as die ARP -pakkie gesnuif word

Die tweede skrif sal die Ubidots -veranderlike die hele tyd ondersoek (die een waarna ons "0" of "1" stuur) en die servo aktiveer wanneer die veranderlike gelyk is aan "1". Ek gebruik die MRAA -biblioteek (voorgestel deur die Intel -mense) waarmee u al die GPIO -penne van u Edison vanaf die Linux -dop of 'n python -script kan hanteer (eintlik hoef u nie in Arduino te kodeer nie!). Dit het my in staat gestel om vinnig 'n servomotor van Python af te hanteer. U kan hierdie servo instel om enige fisiese klep te aktiveer, soos 'n koffiemasjien. Ek het 'n eenvoudige bekerhouer gemaak ter wille van die demo. Btw kan u ook 'n "skakelaar" in u paneelbord maak en die koffiegieter met die hand beheer:

Stap 3: Stem asseblief

Stem asb !!! Vir die video:

Aanbeveel: