Talaan ng mga Nilalaman:

Beaglebone Black Web Control Paggamit ng WebPy: 6 Mga Hakbang
Beaglebone Black Web Control Paggamit ng WebPy: 6 Mga Hakbang

Video: Beaglebone Black Web Control Paggamit ng WebPy: 6 Mga Hakbang

Video: Beaglebone Black Web Control Paggamit ng WebPy: 6 Mga Hakbang
Video: PWD MUNA MA MONITOR ANG ASAWA OR GF MO GAMIT LNG CCTV SA PHONE MO 2024, Nobyembre
Anonim
Beaglebone Black Web Control Gamit ang WebPy
Beaglebone Black Web Control Gamit ang WebPy
Beaglebone Black Web Control Gamit ang WebPy
Beaglebone Black Web Control Gamit ang WebPy

Kailanman nais na lumikha ng isang paraan upang makontrol ang iyong pintuan ng garahe gamit ang iyong telepono marahil mangolekta ng data at tingnan ito mula sa iyong laptop. Mayroong isang solong board computer na tinatawag na Beaglebone Black na kung saan ay isang napakalakas na aparato na nagbibigay-daan sa iyo upang makontrol ang mga GPIO pin nito upang makipag-ugnay sa mga totoong item sa mundo tulad ng mga motor, LED's, Lampara, atbp. Ang Beaglebone ay tulad ng isang raspberry pi board ngunit higit na mas malakas. Ang pamayanan ng Beaglebone ay hindi kasing laki ng raspberry pi's kaya't babalaan ka sa kakulangan ng mga tutorial.

Habang naghahanap ako sa paligid ng internet para sa isang solusyon upang makontrol ang aking Beaglebone Black mula sa aking laptop gamit ang isang web page, maraming mga tutorial ang lumitaw gamit ang library ng humanscript ng Beaglebone at ang socket.io library gamit ang cloud 9 id. Habang sinusundan ko ang mga tutorial at tiningnan ang mga code ng mga tao ay nabigo ako dahil sa ang katunayan na ang ulap ng 9 ay patuloy na nag-crash, ang aking kawalan ng pag-unawa sa javascript at pati na rin ang kakulangan ng kakayahang umangkop ng bawat tutorial (pinipilit ka ng bawat tutorial na gumamit ng isang paunang natukoy na dami ng GPIO's). Pamilyar ako sa sawa at ipinakilala ako ng aking kaibigan sa web.py na isang mahusay na balangkas sa web na ginamit upang bumuo ng mga web app. Gumamit din ako ng Adafruit's Beaglebone Black GPIO library upang makontrol ang mga indibidwal na mga pin ng Beaglebone Black.

Ano ang kakailanganin mo:

  • Isang kompyuter
  • SSH terminal tulad ng PuTTY o gumamit ng SSH sa terminal (Para sa Mac at Linux, ang Windows ay hindi naitayo sa SSH)
  • Isang Beaglebone Black na konektado sa computer sa pamamagitan ng USB
  • Isang koneksyon sa internet sa Beaglebone Black
  • (opsyonal) Isang SFTP client

Hakbang 1: I-install ang Mga Kinakailangan na Python Library

Kailangan naming mag-install ng dalawang mga aklatan na hindi karaniwang mga module sa python 2.7. Ang mga aklatan ay ang mga aklatan ng Adafruit BBIO at WebPy. Kailangan naming i-access ang Beaglebone gamit ang SSH. Napagpasyahan kong gamitin ang PuTTy terminal at i-access ito gamit ang IP address ng beaglebone, ang sa akin ay 192.168.7.2 sa iyo ay matatagpuan sa beaglebone start.html. Kung gumagamit ka ng uri ng Angstrom sa:

  • opkg update && opkg install python-pip python-setuptools python-smbus
  • pip install Adafruit_BBIO
  • pip install web.py

Kung gumagamit ka ng Debian o Ubuntu:

  • sudo apt-get update
  • sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y
  • pip install Adafruit_BBIO
  • pip install web.py

Upang masubukan kung ang mga aklatan ay na-install nang maayos na i-type sa:

  • sawa
  • mag-import ng web
  • i-import ang Adafruit_BBIO. GPIO

Kung walang mga error na naganap sa python console pagkatapos ay na-install mo nang maayos ang mga aklatan at handa kaming mag-code.

Hakbang 2: Ang Python Code

Ang Python Code
Ang Python Code

Ang code ng python ay medyo madaling maunawaan kung pamilyar ka sa paggamit ng sawa, kung ikaw ay isang nagsisimula sa pag-programa ay maaaring magkaroon ka ng ilang problema sa pag-unawa sa mga bahagi ng code.

Ang dokumentasyon ng 2 aklatan ay matatagpuan dito:

  • Web.py
  • Adafruit GPIO Library

Nakasulat ako ng code at nagkomento nito upang maunawaan mo at maisip ito.

Hakbang 3: Paglikha ng Web Page

Paglikha ng Web Page
Paglikha ng Web Page

Kung ikaw ang naka-attach na code ng sawa, makikita mo akong nakikipag-usap tungkol sa kahilingan sa GET. Ang isang kahilingan sa GET ay karaniwang isang paraan para sa isang webpage upang makipag-usap sa isang server. Upang maidagdag, tanggalin at ilipat ang mga output na ginagamit namin ang Jquery upang gumawa ng ilang pangunahing mga kahilingan sa pagkuha. Nag-attach ako ng isang pahina ng html na ginagawa lamang iyon at nagkomento din ako ng code para sa iyong kaginhawaan.

Ang control.html file ay narito view-source:

Hakbang 4: Paglilipat ng Python File sa Iyong Beaglebone

Paglilipat ng Python File sa Iyong Beaglebone
Paglilipat ng Python File sa Iyong Beaglebone

Maaari mong ilipat ang main.py file sa pamamagitan ng linya ng utos ngunit upang madaling mailipat ang mga file gagamitin ko ang WinSCP (maaari mong gamitin ang anumang sftp client) na maaari mong i-download dito. Mayroong Cyberduck para sa mga gumagamit ng mac ngunit dahil ako ay isang gumagamit ng PC hindi ko alam kung alin ang pinakamahusay kaya kailangan mo itong i-google. Ang proseso ay simple i-drag lamang ang main.py file sa Desktop o anumang iba pang direktoryo na iyong pinili.

Hakbang 5: Pagpapatakbo ng Server

Pagpapatakbo ng Server
Pagpapatakbo ng Server

Ang pagpapatakbo ng server ay madali lamang gamitin ang SSH gamit ang PuTTY o ang iyong terminal at baguhin ang iyong direktoryo sa main.py direktoryo. I-type sa:

python main.py 1234

Ngayon ang ginawa lang namin ay hilingin sa sawa na patakbuhin ang main.py file sa port 1234

Hakbang 6: Mayroon kang Kontrol

Mayroon kang Kontrol!
Mayroon kang Kontrol!
Mayroon kang Kontrol!
Mayroon kang Kontrol!
Mayroon kang Kontrol!
Mayroon kang Kontrol!

Pumunta ngayon sa file ng control.html at buksan gamit ang google chrome o anumang iba pang browser na iyong ginagamit, magkakaroon ka ng isang web page na may 2 mga kahon ng teksto at 3 mga pindutan. Humihiling ang kahon ng teksto ng numero ng pin para sa numero ng pin tulad ng P8_10 o P8_29, atbp. Kailangan mong mapunan ang pangalan upang magamit ang mga pindutan ng pagtanggal at paglipat. Ngayon na mayroon ka nang kontrol sa web maaari mong gamitin ang halimbawang ito upang lumikha ng isang mas advanced na panel. Siguro gumamit ng mga kakayahan sa database upang magamit ang iyong Beaglebone Black bilang isang logger ng data o gamitin ito para sa pag-automate ng bahay, ang mga posibilidad ay walang katapusan. Kung nais mo ng pagtuturo na ito, mangyaring bumoto para sa proyektong ito sa naka-code na paligsahan sa mga nilikha at paborito din ang proyektong ito. Salamat sa pagbabasa ng itinuturo na ito at magpatuloy sa pag-hack!:)

Inirerekumendang: