Mundarija:

WebPy yordamida Beaglebone qora veb -boshqaruvi: 6 qadam
WebPy yordamida Beaglebone qora veb -boshqaruvi: 6 qadam

Video: WebPy yordamida Beaglebone qora veb -boshqaruvi: 6 qadam

Video: WebPy yordamida Beaglebone qora veb -boshqaruvi: 6 qadam
Video: G1000 pygame python rip-off 2024, Noyabr
Anonim
WebPy yordamida Beaglebone qora veb -boshqaruvi
WebPy yordamida Beaglebone qora veb -boshqaruvi
WebPy yordamida Beaglebone qora veb -boshqaruvi
WebPy yordamida Beaglebone qora veb -boshqaruvi

Siz har doim telefoningiz orqali garaj eshigingizni boshqarishni xohlagan bo'lsangiz, ma'lumotlarni yig'ib, ularni noutbukdan ko'rishingiz mumkin. Beaglebone Black deb nomlangan bitta taxtali kompyuter bor, bu sizning dvigatellar, svetodiodlar, lampalar va boshqalar kabi real narsalar bilan o'zaro aloqada bo'lish uchun GPIO pinlarini boshqarishga imkon beradigan juda kuchli qurilma. Beaglebone xuddi malina pi ga o'xshaydi. taxta, lekin ancha kuchliroq. Beaglebone hamjamiyati malina pi kabi unchalik katta emas, shuning uchun darsliklar yo'qligi uchun ogohlantiring.

Veb -sahifa yordamida noutbukdan Beaglebone Black -ni boshqarishning echimini Internetda qidirayotganimda, Beaglebone -ning suyak yozuvi kutubxonasi va socket.io kutubxonasi yordamida bulut 9 ide yordamida ko'plab darsliklar paydo bo'ldi. Men darsliklarni kuzatib, odamlarning kodini ko'rib chiqayotganimda, bulut 9 ideasi ishlamay qolishi, javascriptni tushunmasligim, shuningdek, har bir darsning moslashuvchanligining yo'qligi (har bir darslik sizni oldindan belgilangan miqdordan foydalanishga majbur qilgani uchun) hafsalam pir bo'ldi. GPIO). Men python bilan tanish edim va do'stim meni web.py bilan tanishtirdi, bu veb -ilovalarni ishlab chiqish uchun ajoyib veb -ramka. Men Beaglebone Black -ning alohida pinlarini boshqarish uchun Adafruit -ning Beaglebone Black GPIO kutubxonasidan ham foydalanardim.

Sizga nima kerak bo'ladi:

  • Kompyuter
  • PuTTY kabi SSH terminali yoki terminalda SSHdan foydalanish (Mac va Linux uchun Windowsda SSH o'rnatilgan emas)
  • Beaglebone Black kompyuterga USB orqali ulangan
  • Beaglebone Black uchun Internet aloqasi
  • (ixtiyoriy) SFTP mijozi

1 -qadam: Kerakli Python kutubxonalarini o'rnating

Python 2.7 da standart modul bo'lmagan ikkita kutubxonani o'rnatishimiz kerak. Kutubxonalar - Adafruit BBIO va WebPy kutubxonalari. Biz SSH yordamida Beaglebone -ga kirishimiz kerak. Men PuTTy terminalidan foydalanishga va beaglebone IP -manzilidan foydalanishga qaror qildim, meniki 192.168.7.2 sizniki beaglebone start.html da. Agar siz Angstrom -dan foydalansangiz:

  • opkg update && opkg python-pip python-setuptools python-smbus-ni o'rnating
  • pip Adafruit_BBIO ni o'rnating
  • web.py -ni o'rnatish

Agar siz Debian yoki Ubuntu dan foydalanayotgan bo'lsangiz:

  • sudo apt-get yangilanishi
  • sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y
  • pip Adafruit_BBIO ni o'rnating
  • pip. web.py -ni o'rnating

Kutubxonalar to'g'ri o'rnatilganligini tekshirish uchun quyidagilarni kiriting:

  • piton
  • Internetni import qilish
  • Adafruit_BBIO. GPIO -ni import qilish

Agar python konsolida xatolar bo'lmasa, siz kutubxonalarni to'g'ri o'rnatgansiz va biz kodlashga tayyormiz.

2 -qadam: Python kodi

Python kodi
Python kodi

Agar siz python -dan foydalanishni yaxshi bilsangiz, python kodini tushunish juda oson, agar siz dasturlashni boshlayotgan bo'lsangiz, kodning qismlarini tushunishda muammolarga duch kelishingiz mumkin.

2 ta kutubxonaning hujjatlarini bu erda topishingiz mumkin:

  • Web.py
  • Adafruit GPIO kutubxonasi

Men kodni yozdim va sharhladim, shunda siz uni tushunishingiz va o'ylashingiz mumkin.

3 -qadam: Internet sahifasini yaratish

Veb -sahifa yaratish
Veb -sahifa yaratish

Agar siz men qo'shgan python kodi bo'lsa, meni GET so'rovi haqida gapirayotganimni ko'rishingiz mumkin. GET so'rovi - bu veb -sahifaning server bilan aloqa qilish usuli. Jquery -dan foydalanadigan chiqishlarni qo'shish, o'chirish va almashtirish uchun ba'zi asosiy so'rovlarni bajaring. Men html sahifasini biriktirdim, bu sizga qulay bo'lishi uchun kodni sharhlab berdi.

Control.html fayli mana bu erda-manba:

4 -qadam: Python faylini Beaglebone -ga o'tkazish

Python faylini Beaglebone -ga o'tkazish
Python faylini Beaglebone -ga o'tkazish

Siz main.py faylini buyruq satri orqali o'tkazishingiz mumkin, lekin fayllarni osongina uzatish uchun men WinSCP -dan foydalanmoqchiman (har qanday sftp mijozidan foydalanishingiz mumkin). Mac foydalanuvchilari uchun Cyberduck bor, lekin men shaxsiy kompyuter foydalanuvchisi bo'lganim uchun, qaysi biri eng yaxshisi ekanligini bilmayman, shuning uchun uni google -ga kiritish kerak. Jarayon oddiy, ish stolidagi main.py faylini yoki siz tanlagan boshqa katalogni harakatlantiring.

5 -qadam: Serverni ishga tushirish

Serverni ishga tushirish
Serverni ishga tushirish

Serverni ishlatish juda oson, faqat PuTTY yoki terminal yordamida SSH -dan foydalaning va katalogingizni main.py katalogiga o'zgartiring. Kiriting:

python main.py 1234

Endi biz qilgan narsa - pythondan main.py faylini 1234 portda ishga tushirishni so'rash

6 -qadam: Siz nazorat qilasiz

Sizda nazorat bor!
Sizda nazorat bor!
Sizda nazorat bor!
Sizda nazorat bor!
Sizda nazorat bor!
Sizda nazorat bor!

Endi control.html fayliga o'ting va google chrome yoki boshqa brauzer bilan oching, sizda 2 ta matnli quti va 3 ta tugmachali veb -sahifa bo'ladi. PIN kodli matn qutisi P8_10 yoki P8_29 va hokazo kabi pin raqamini so'raydi. O'chirish va almashtirish tugmalaridan foydalanish uchun ismni to'ldirish kerak. Endi sizda veb -boshqaruv mavjud bo'lsa, siz bu misolni yanada rivojlangan panel yaratish uchun ishlatishingiz mumkin. Ma'lumotlar bazasi imkoniyatlaridan Beaglebone Black -ni ma'lumotlar yozuvchisi sifatida ishlatish yoki uyni avtomatlashtirish uchun ishlatish mumkin, imkoniyatlar cheksizdir. Agar sizga bu ko'rsatma yoqsa, iltimos, ushbu loyihaga kodlangan ijodiyot tanlovida ovoz bering va bu loyihani yoqtiring. Buni o'qiganingiz uchun tashakkur va xakerlikni davom ettiring!:)

Tavsiya: