Obsah:

Edison mi dělá kávu (kód): 3 kroky
Edison mi dělá kávu (kód): 3 kroky

Video: Edison mi dělá kávu (kód): 3 kroky

Video: Edison mi dělá kávu (kód): 3 kroky
Video: Arianka není rozmazlený dítě! Je jenom perfekcionista 🥺 2024, Listopad
Anonim
Edison mi dělá kávu (kód)
Edison mi dělá kávu (kód)

Tento projekt vám umožní spustit akci (například podávání kávy), jakmile je v síti WiFi detekován klient WiFi (jako když se vy nebo vaši zaměstnanci dostanete do své kanceláře).

Krok 1: Nastavení Intel Edison

Nastavte si Intel Edison
Nastavte si Intel Edison

Připojte dva USB kabely z vašeho počítače k desce Edison (jeden pro napájení, jeden pro sériová data). V OSX otevřete sériové připojení k desce z vašeho terminálu: screen /dev/tty.usbserial-AJ035OK6 115200 -L Výchozí přihlášení Edison je root. Jakmile jste v, nakonfigurujte síť Wi -Fi: configure_edison --wifiPřidáme seznam zdrojů, abychom mohli stahovat balíčky z Edisonu. Otevřete tento soubor: root@edison: ~# vi /etc/opkg/base-feeds.confA přidejte do něj tyto řádky (zadejte „i“, abyste mohli vložit text do editoru vi): src/gz vše 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 Potom aktualizujte zdroje a nainstalujte požadované knihovny pro náš 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! Nyní jsme připraveni kódovat. Zjistit, až dorazím do své kanceláře. Použijeme Scapy packet sniffer, abychom mohli detekovat provoz ARP v místní wifi síti. Scapy je skvělý nástroj, který vám umožní zvládnout síťové pakety z jednoduchosti skriptu Pythonu. Bez toho bychom museli při čichání síťového provozu analyzovat spoustu binárních kódů. Náš první skript vyhledá adresy MAC uložené v souboru csv s názvem „dictionary.csv“a poté odešle hodnotu „1“do proměnné Ubidots., to znamená, že osoba dorazila. Pokud je adresa MAC viděna poprvé, skript automaticky vytvoří proměnnou Ubidots pro uložení dat. Všimněte si řádku: sniff (prn = arp_count, filter = "arp", store = 0), která spustí funkci " arp_count (pkt) "pokaždé, když je čichán paket ARP. V této funkci spouštíme více procesů, abychom aktualizovali proměnnou Ubidots. Důvod, proč jsem použil Multiprocessing, je ten, že jsem potřeboval paralelní funkci, takže pokud dorazí dva uživatelé současně, pak lze oba pakety očichat a aktualizovat v Ubidots. Možnost „store = 0“je velmi důležitá, protože jinak by pakety začněte plnit paměť Edisona a vyměňte paměť a po několika hodinách zmrzne. https://halckemy.s3.amazonaws.com/uploads/document/file/46958/dictionary.csv /uploads/document/file/46543/wifi_sniff.py

Krok 2: Spusťte servo, když je paket ARP čichán

Spusťte servo, když je paket ARP čichán
Spusťte servo, když je paket ARP čichán

Druhý skript bude dotazovat proměnnou Ubidots po celou dobu (ten, kterému posíláme „0“nebo „1“) a aktivuje servo, když se proměnná rovná „1“. Používám knihovnu MRAA (navrhovanou lidmi z Intelu), která vám umožňuje zpracovat všechny GPIO piny vašeho Edisona z Linuxového shellu nebo pythonového skriptu (ve skutečnosti není potřeba kódovat v Arduinu!). To mi umožnilo rychle zvládnout servomotor z Pythonu. Https://halckemy.s3.amazonaws.com/uploads/document/file/46556/pour_coffee.py Toto servo můžete nastavit tak, aby spouštělo jakýkoli fyzický ventil, například kávovar. Pro ukázku jsem vytvořil jednoduchý držák šálků. Na palubní desce můžete také vytvořit „Přepínač“a manuálně ovládat kávovar:

Krok 3: Hlasujte prosím

Prosím hlasujte !!! Pro video:

Doporučuje: