Mundarija:

Pizza tugmasi: 13 qadam (rasmlar bilan)
Pizza tugmasi: 13 qadam (rasmlar bilan)

Video: Pizza tugmasi: 13 qadam (rasmlar bilan)

Video: Pizza tugmasi: 13 qadam (rasmlar bilan)
Video: Nigina ukasini nima qildi 😱 2024, Noyabr
Anonim
Pizza tugmasi
Pizza tugmasi
Pizza tugmasi
Pizza tugmasi
Pizza tugmasi
Pizza tugmasi

Ikkinchi kurs talabalari, Nyu-Yorkliklar, kechqurun texnikalar va chindan ham dangasalar: fantaziyangizga xush kelibsiz. Gastronomik texnologiyaning eng so'nggi yangilanishi - Pizza tugmasi. Endi pizza buyurtma qilish uchun telefonni olishning hojati yo'q. Bu tugmani bosish kifoya va u sizning manzilingizga pizza etkazib berishini kuting.

Pizza Button BeagleBone Black (BBB) taxtasidan foydalanib, ushbu loyihada og'ir yuklarni ko'taradi. Tugmani bosish taxtani veb -qirg'ichni ishga tushirishga undaydi. Veb -kazıyıcı sizning Grub Hub hisobingizga kiradi va mashhur San -Frantsisko North Beach Pizza -dan pizza buyurtma qiladi (hozirda bu tugma faqat San -Frantsiskoda ishlaydi, lekin rostini aytsam, siz haqiqatan ham boshqa joyda bo'lishni xohlaysizmi?) U katta pishloqga buyurtma beradi. pizza, pizza uchun pul to'laydi va uni sizning eshigingizga yetkazib beradi. Ushbu loyihani amalga oshirish juda oson va uni ishlatib bo'lmaydi!

Ushbu loyihaning kelajakdagi yangilanishlariga quyidagilar kiradi:

  • Wifi
  • Ichki GPS
  • Pizza ishtahasini oshirish uchun hidlang

Qismlar ro'yxati

  • (x3) sevimli pizza do'konining pizza qutilari
  • (x1) LEDli massiv Arja tugmasi - 100 mm Oq Adafruit 1187
  • (x1) BeagleBone Adafruit uchun Proto Cape Kit 572
  • (x1) 470 ohm 1/4 Vt qarshilik RadioShack 271-1317
  • (x1) 1 k-ohm 1/4 Vt qarshilik RadioShack 271-1321
  • vinil yoki LC yaltiroq inkjet foto stiker qog'ozi (8,5 "x 11") Amazon B000VKV2H4

Qo'shimcha materiallar

  • RadioShack lehimi 64-013
  • 22 Gauge Wire RadioShack 278-1224
  • RadioShack 278-1611 issiqlik qisqaruvchi quvurlari

1 -qadam: Pizza stikerini chop eting

Pizza stikerini chop eting
Pizza stikerini chop eting
Pizza stikerini chop eting
Pizza stikerini chop eting

Pizzaning og'ziga solingan rasmni toping va yopishqoq qog'ozga chop eting. Men vinil to'sar ishlatardim, lekin standart printer ham ishlaydi.

2 -qadam: Arja tugmachasini ajratib oling

Arja tugmachasini ajratib oling
Arja tugmachasini ajratib oling
Arja tugmachasini ajratib oling
Arja tugmachasini ajratib oling
Arja tugmachasini ajratib oling
Arja tugmachasini ajratib oling

Arja tugmasi uning tagiga qulflangan kalit bilan birga keladi. Kalitni soat sohasi farqli o'girib, qulfini oching. Kalitni tugma bosilgan bo'ynidan chiqarib oling (tegish - bu vintlardek narsalarda ko'rilgan oluklar). Kalitga LED o'rnatilgan bo'ladi. Keyin tugunning tagini tortib olish uchun bo'ynidan kichik qora halqani echib oling. Bo'yin ichida ikkita oq tuvak bor. Plastik tugmachani bo'ynidan chetga surish uchun ularni ichkariga va pastga suring. Endi oq platformaga yorliqlar bilan biriktirilgan aniq tugma yuzi qoldi. Kichkina tornavida yordamida tugmachani oq platformadan pastga qarating.

3 -qadam: Stikerni qo'llang va tugmani qayta yig'ing

Stikerni qo'llang va tugmani qayta yig'ing
Stikerni qo'llang va tugmani qayta yig'ing
Stikerni qo'llang va tugmani qayta yig'ing
Stikerni qo'llang va tugmani qayta yig'ing
Stikerni qo'llang va tugmani qayta yig'ing
Stikerni qo'llang va tugmani qayta yig'ing

Stikerni kesib oling va uni tekis oq platformaga mahkamlang. Shunday qilib, bu aniq tugma yuzi orqali ko'rinadi. Tugmani qayta yig'ing.

4 -qadam: qutini yarating

Qutini yasang
Qutini yasang
Qutini yasang
Qutini yasang
Qutini yasang
Qutini yasang

Men konteyner do'konidan sotib olgan tekis pizza qutilaridan boshladim. Shunday bo'lsa -da, o'zingiz yoqtirgan pizza qutilaridan foydalaning! Bu bazaga bir -birining ustiga qo'yilgan uchta pizza qutisi kerak bo'ladi, ular kattaroq arkada tugmachasini joylashtiradi va elektronikani joylashtiradi. Pastki qutidan boshlang. Qutining o'rtasini o'lchagich bilan toping va belgilang va chashka yordamida aylana chizib qo'ying. Teshikni X-Acto pichog'i bilan kesib oling. Pastki qutining tepasida, o'rta va yuqori qutilarning yuqori va pastki qismidagi teshiklarni kesib oling. Qutilarni bir -biriga yopishtiring va ularni issiq yopishtiruvchi qurol bilan yopishtiring. Tugmachaning teshikka to'g'ri o'rnatilganligiga ishonch hosil qilish uchun tugmani tepaga qo'ying.

5 -qadam: O'chirish davri

O'chirish davri
O'chirish davri

Bu sxema ancha to'g'ri. Qachon bosilsa, arja tugmasi ishga tushadigan kodni ham, tugma ichidagi LEDni yonishini ham ishga tushiradi.

6 -qadam: Beagle Bone Black bilan aloqa

Bu loyiha BeagleBone Black Board bilan birinchi tajribam. Menimcha, BeagleBoard RaspberryPi kartasiga juda o'xshash, lekin gpio pinlari ko'proq. BeagleBoard haqida ko'proq ma'lumotni rasmiy hamjamiyat saytida o'qing va BeagleBoard va Raspberry Pi o'rtasidagi asosiy farqlarni bilib oling.

Ushbu loyihada Debian muhiti yonib ketgan 16G micro SD -karta bilan ishlaydigan Rev C BeagleBone Black taxtasi ishlatiladi. Siz 8G dan katta bo'lgan har qanday o'lchamdagi micro SD kartadan foydalanishingiz mumkin. Yangi BeagleBone Black Board 4G protsessoriga ega bo'lsa -da, Debian ish stoli ko'proq saqlash joyini talab qiladi. Kengash bilan o'zaro aloqa qilish uchun uni kartangiz bilan birga kelgan micro HDMI -USB kabeli orqali kompyuterga ulang. Ethernet porti yonida joylashgan "foydalanuvchi chiroqlari" odamning pulsini taqlid qilish uchun dasturlashtirilgan tarzda yonib turishi kerak (beagle ishlab chiqaruvchilari yaxshi, to'g'rimi?) Va taxtaning belgisi ish stolida paydo bo'lishi kerak. Agar siz Mac -dan foydalanayotgan bo'lsangiz, taxtangizni ikki xil usulda dasturlashingiz mumkin:

1 -Usul: TERMINAL

Terminalni oching va buyruq satriga kiriting

ssh [email protected]

Agar sizdan parol so'ralsa, yozing

ildiz

** Agar bu "buzilgan ssh kaliti" tufayli ishlamasa **

Buyruq satriga yozing

rm -f.ssh/ma'lum_xostlar

ssh [email protected]

** Agar bu hali ham ishlamasa **

Buyruq satriga yozing

sudo ssh [email protected]

2 -USUL: DEBIAN MUHIT

Shuningdek, siz boshqaruv paneli ish stoliga kirishingiz va uni shu erdan dasturlashingiz mumkin. Buning uchun quyidagi amallarni bajaring.

  • Mac uchun masofaviy ish stoli ulanishini bu erdan yuklab oling.
  • Masofaviy ish stoli ulanishini oching va kirish qutisiga "Kompyuter" yozing "192.168.7.2"
  • Ochilgan ish stolida foydalanuvchi nomi va parol uchun "root" yozing.
  • Sizga Beagle Board ish stoli taqdim etiladi.

7 -qadam: Kod

Bu kod avtomatik ravishda GrubHub shaxsiy hisobingizga kiradi, North Beach Pizza menyusiga o'tadi va katta pishloqli pizza buyurtma qiladi. Hammasi tugmani bosish bilan ishga tushadi!

Bularning hammasini boshi bo'lmagan PhantomJS veb -brauzeri yordamida Selenium veb -sahifalari bilan o'zaro aloqada bo'lish orqali amalga oshiradi. Selen nima? Bu siz uchun veb -sahifalarni bosishni ta'minlaydigan dasturiy ta'minot to'plami (esda tutingki, bu loyiha dangasalar uchun). Boshsiz veb -brauzer nima? Bu erda ko'proq ma'lumot oling, lekin qisqasi, bu grafik foydalanuvchi interfeysi bo'lmagan veb -brauzer (Safari, Firefox va aytishga jur'at eting). Bu veb -sahifalarda navigatsiyani avtomatlashtirishni ancha tezlashtiradi (siz pizza uchun ochsiz, shuning uchun buyurtmangiz iloji boricha tezroq yuborilishini xohlaysiz).

Kod ichida tahrir qilishingiz kerak bo'lgan narsalar:

  • Foydalanuvchi nomi va parolni o'z ichiga olgan GrubHub kirish ma'lumotlari
  • Kredit karta ma'lumotlari

8 -qadam: Faylni kompyuterdan BBB -ga o'tkazish

Siz "code.py" kabi fayllarni terminal muhitida oddiy buyruqlar yordamida kompyuterdan BBB -ga o'tkazishingiz mumkin.

Umuman olganda, faylni kompyuterdan BBB -ga o'tkazish usuli shunday ko'rinadi

scp /home/filename.file user@IPAddress:/katalog

Buni buzish:

  • 'scp': 'scp' buyrug'i fayllarni turli xostlarga, ulardan yoki orasidan nusxalash imkonini beradi. Ma'lumot uzatish uchun u ssh -dan foydalanadi va ssh bilan bir xil autentifikatsiya va xavfsizlik darajasini ta'minlaydi.
  • '/home/filename.file': Kompyuterda fayl joylashuvi.
  • 'user@IPAddress:/directory': BBB -ning kirish ma'lumotlari va faylni taxtada qayerga nusxalashni xohlaysiz.

Masalan, "code.py" ni kompyuterim ish stoliga yukladim va saqladim deylik. Endi men uni BBB ish stoliga o'tkazmoqchiman. Men kompyuterning terminalini ochaman va yozaman

scp /Users/dot/Desktop/code.py [email protected]:/home/root/Desktop/

Bu misolni so'zma -so'z ko'chirmang, chunki sizning kompyuteringiz va BBB yo'llari menikidan farq qiladi.

Men bu ma'lumotni foydali veb -saytdan topdim, bu erda siz kontent papkalarini qanday o'tkazishni ham bilib olishingiz mumkin.

9 -qadam: to'g'ri kutubxonalarni BBB -ga o'rnatish

Kodning to'g'ri ishlashi uchun siz bir nechta kutubxonalarni o'rnatishingiz kerak bo'ladi. BBB -ga biror narsani o'rnatish uchun u quyidagilarni bajarishi kerak:

  • Ethernet tarmog'iga ulaning
  • Kompyuteringiz tomonidan quvvatlanadi (agar siz kartangizga terminal orqali xabar bersangiz)
  • 5V devorli siğil bilan quvvatlanadi (agar siz taxtani monitorga ulasangiz)

Men shaxsiy taxtani kompyuterim orqali quvvatlantirdim va uni "Beagle Bone Black" bilan muloqotda tasvirlangan ssh buyrug'i orqali dasturlashtirdim.

Siz o'rnatishingiz kerak bo'ladi:

  • Python
  • Adafruit GPIO python kutubxonasi
  • Selen
  • PhantomJS boshsiz veb -brauzer

10 -qadam: Python va Adafruit kirish -chiqish kutubxonasini o'rnatish

Beaglebone Black Board -da ko'plab gpio pinlari bor, ularning soni 65 tani tashkil etadi, bu uni bozorda ko'plab mini kompyuterlar va mikroprotsessorlar platalari orasida yagona qiladi. Beagle gpio pinlari bilan mos keladigan ikkita gpio kutubxonasi-bu BoneScript-ning o'rnatilgan kutubxonasi va Adafruit-ning Python GPIO kutubxonasi. Men shaxsan Python bilan o'zimni qulayroq his qilganim uchun Python GPIO kutubxonasidan foydalanishga qaror qildim. Kutubxonani yuklab olish juda oddiy. Birinchidan, Beagle Board -ga ssh kiriting va quyidagi bog'liqliklarni o'rnating:

sudo ntpdate pool.ntp.org

sudo apt-get update sudo apt-get install-essential python-dev python-setuptools python-pip python-smbus -y

Keyin python gpio kutubxonasini o'rnatish uchun quyidagi buyruqni kiriting

suda pip Adafruit_BBIO ni o'rnating

11 -qadam: Seleni o'rnatish

Selen, sodda qilib aytganda, veb -brauzerlarni avtomatlashtiradi. Bu loyihada asosan Selenium WebDriver ishlatiladi, u buyruqlarni qabul qiladi, ularni Chrome yoki Firefox kabi brauzerga yuboradi va natijalarni oladi. Ushbu loyiha Selenning piton birikmalaridan foydalanadi. Men javascript birikmalaridan foydalanishim mumkin edi, lekin men kodni bitta tilda saqlashni afzal ko'rardim va BBB GPIO pinlarini boshqarish uchun pythondan foydalanishga qaror qilganim uchun, men veb -qirg'ichim uchun pitondan ham foydalanardim.

Seleni o'rnatish uchun sb -ni BBB -ga kiriting va buyruq satriga kiriting

selo o'rnatish sudo pip

12 -qadam: Selenni boshsiz veb -brauzer bilan ishlatish

PhantomJS -ni o'rnatish uchun siz PhantomJS boshsiz veb -brauzeridan foydalanishingiz mumkin, ssh -ni BBB -ga yozing va buyruq satriga kiriting.

sudo apt-get install build-essential chrpath git-core libssl-dev

libfontconfig1-dev git clone git: //github.com/ariya/phantomjs.git cd phantomjs git checkout 1.9./build.sh

Bu ko'rsatmalar PhantomJS veb -saytidan kelgan. Men PhantomJS -ni o'rnatishda ko'p muammolarga duch keldim, lekin oxir -oqibat bu buyruqlarni bajarib muvaffaqiyatga erishdim.

13 -qadam: pizza vaqti

Endi o'tiring va pizza bilan zavqlaning.

Tavsiya: