Мазмуну:

Эдисон мени кофе кылат (код): 3 кадам
Эдисон мени кофе кылат (код): 3 кадам

Video: Эдисон мени кофе кылат (код): 3 кадам

Video: Эдисон мени кофе кылат (код): 3 кадам
Video: Чемоданчик-убийца убил и расчленил ее мужа 2024, Ноябрь
Anonim
Эдисон мени кофе кылат (код)
Эдисон мени кофе кылат (код)

Бул долбоор WiFi түйүнүнөн WiFi кардары аныкталгандан кийин (мисалы, сиз же сиздин кызматкерлер кеңсеңизге келгенде) бир аракетти (кофе берүү сыяктуу) баштоого мүмкүндүк берет.

1 -кадам: Intel Эдисонуңузду орнотуңуз

Сиздин Intel Эдисон орнотуу
Сиздин Intel Эдисон орнотуу

Компьютериңиздеги эки USB кабелин Эдисон тактасына туташтырыңыз (бири бийлик үчүн, бири сериялык маалымат үчүн). OSXте, терминалдан тактага сериялык туташууну ачыңыз: screen /dev/tty.usbserial-AJ035OK6 115200 -L Демейки Эдисон логин тамыры. Сиз киргенден кийин, wifi тармагын конфигурациялаңыз: configure_edison --wifi Келгиле, Эдисондон пакеттерди жүктөп алуу үчүн булактардын тизмесин кошолу. Бул файлды ачыңыз: root@edison: ~# vi /etc/opkg/base-feeds.confЖана бул саптарды ага кошуңуз (vi редакторуна текстти киргизүү үчүн "i" деп жазыңыз): 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 -32Анан булактарды жаңыртып, биздин долбоорго керектүү китепканаларды орнотуңуз: root@edison: ~# opkg updateroot@edison: ~# opkg install libmraa0 nanoroot@edison: ~# opkg python-piproot@edison: ~# curl https:/ /bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | pythonroot@edison: ~# pip install ubidotsDone! азыр биз кодго даярбыз. Мен офисиме келгенде аныктагыла. Биз жергиликтүү wifi тармагындагы ARP трафигин аныктоо үчүн Scapy пакетин колдонуучуну колдонобуз. Scapy - бул Python скриптинин оңойлугунан тармактык пакеттерди иштетүүгө мүмкүнчүлүк берген эң сонун курал. Ансыз тармактык трафикти жыттап жатканда биз экилик коддун көп бөлүгүн талдап чыгышыбыз керек болчу. Биздин биринчи скрипт csv файлында сакталган MAC даректерин издейт "dictionary.csv", анан Ubidots өзгөрмөсүнө "1" маанисин жөнөтөт., адам келгенин билдирет. Эгерде MAC дареги биринчи жолу көрүнүп турса, анда скрипт маалыматтарды сактоо үчүн Ubidots өзгөрмөсүн автоматтык түрдө түзөт. Сапка көңүл буруңуз: функцияны иштетүүчү sniff (prn = arp_count, filter = "arp", store = 0) " arp_count (pkt) "" ARP пакети жытталган сайын. Бул функция Ubidots өзгөрмөсүн жаңыртуу үчүн биз көп процесстерди күйгүзөбүз. Мультипроцессин колдонгонумдун себеби, параллель функцияны талап кылгандыктан, эгер эки колдонуучу бир убакта келсе, анда эки пакетти да жыттоо жана Ubidotsто жаңыртуу мүмкүн. "Store = 0" опциясы абдан маанилүү, анткени антпесе пакеттер Эдисондун RAM жана Swap эстутумун толтура баштаңыз, ал бир нече сааттан кийин тоңуп калат. /uploads/document/file/46543/wifi_sniff.py

2 -кадам: ARP пакети жыттаганда сервопроводду иштетиңиз

ARP пакети жыттаганда сервопровокту иштетиңиз
ARP пакети жыттаганда сервопровокту иштетиңиз

Экинчи скрипт Ubidots өзгөрмөсүн дайыма сурамжылайт (биз "0" же "1" жөнөтүп жатабыз) жана өзгөрмө "1" ге барабар болгондо сервону иштетет. Мен MRAA китепканасын колдонуп жатам (Intel эли сунуштаган), бул Эдисонуңуздун бардык GPIO казыктарын Linux кабыгынан же питон скриптинен башкарууга мүмкүндүк берет (чынында, Arduinoдо коддоонун кереги жок!). Бул мага Python'дон Servo моторун тез башкарууга мүмкүндүк берди. Сиз бул Сервону кофе машинасы сыяктуу кандайдыр бир физикалык клапанды иштетүү үчүн орното аласыз. Мен демо үчүн эң жөнөкөй чөйчөк кармагыч жасадым. Btw сиз өзүңүздүн тактаңызда "Коммутатор" түзүп, кофе куйгучту кол менен башкарсаңыз болот:

3 -кадам: Сураныч, добуш бериңиз

Сураныч, добуш бериңиз !!! Видео үчүн:

Сунушталууда: