Satura rādītājs:

Beaglebone Black Web Control, izmantojot WebPy: 6 soļi
Beaglebone Black Web Control, izmantojot WebPy: 6 soļi

Video: Beaglebone Black Web Control, izmantojot WebPy: 6 soļi

Video: Beaglebone Black Web Control, izmantojot WebPy: 6 soļi
Video: Controlling Expansion connector's BeagleBoard running as a Web Server 2024, Novembris
Anonim
Beaglebone Black Web Control, izmantojot WebPy
Beaglebone Black Web Control, izmantojot WebPy
Beaglebone Black Web Control, izmantojot WebPy
Beaglebone Black Web Control, izmantojot WebPy

Kādreiz esat vēlējies izveidot veidu, kā kontrolēt garāžas durvis, izmantojot tālruni, iespējams, apkopot datus un apskatīt tos no klēpjdatora. Ir viens bortdators ar nosaukumu Beaglebone Black, kas ir ārkārtīgi jaudīga ierīce, kas ļauj kontrolēt GPIO tapas, lai mijiedarbotos ar reālās pasaules priekšmetiem, piemēram, motoriem, gaismas diodēm, lampām utt. Beaglebone ir kā aveņu pi dēlis, bet daudz jaudīgāks. Bīglebona kopiena nav tik milzīga kā aveņu pi, tāpēc jābrīdina par pamācību trūkumu.

Kamēr internetā meklēju risinājumu, kā no sava klēpjdatora kontrolēt savu Beaglebone Black, izmantojot tīmekļa lapu, daudzas pamācības parādījās, izmantojot Beaglebone kaulu bibliotēku un bibliotēku socket.io, izmantojot mākoni 9 ide. Sekojot pamācībām un skatoties uz cilvēku kodiem, es kļuvu neapmierināts, jo mākoņa 9 ideja turpināja avarēt, man nebija izpratnes par javascript, kā arī katras apmācības elastībai (katra apmācība lika jums izmantot iepriekš noteiktu daudzumu GPIO). Es biju pazīstams ar python, un mans draugs iepazīstināja mani ar web.py, kas ir lieliska tīmekļa sistēma, ko izmanto tīmekļa lietotņu izstrādei. Es arī izmantoju Adafruit Beaglebone Black GPIO bibliotēku, lai kontrolētu Beaglebone Black atsevišķās tapas.

Kas jums būs nepieciešams:

  • Dators
  • SSH terminālis, piemēram, PuTTY, vai terminālī izmantojiet SSH (operētājsistēmai Mac un Linux operētājsistēmai Windows nav iebūvēta SSH)
  • Beaglebone Black ir savienots ar datoru, izmantojot USB
  • Interneta savienojums ar Beaglebone Black
  • (pēc izvēles) SFTP klients

1. darbība: instalējiet nepieciešamās Python bibliotēkas

Mums ir jāinstalē divas bibliotēkas, kas nav standarta moduļi python 2.7. Bibliotēkas ir Adafruit BBIO un WebPy bibliotēkas. Mums ir jāpiekļūst Beaglebone, izmantojot SSH. Es nolēmu izmantot PuTTy termināli un piekļūt tam, izmantojot beaglebone IP adresi, mans ir 192.168.7.2 jūsu var atrast beaglebone start.html. Ja izmantojat Angstrom, ierakstiet:

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

Ja izmantojat Debian vai Ubuntu:

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

Lai pārbaudītu, vai bibliotēkas ir pareizi instalētas, ierakstiet:

  • pitons
  • importēt tīmekli
  • importēt Adafruit_BBIO. GPIO

Ja python konsolē nav kļūdu, tad esat pareizi instalējis bibliotēkas un mēs esam gatavi kodēt.

2. darbība: Python kods

Python kods
Python kods

Python kods ir diezgan viegli saprotams, ja esat iepazinies ar python lietošanu, ja esat iesācējs programmēšanā, jums var rasties grūtības saprast koda daļas.

Divu bibliotēku dokumentāciju var atrast šeit:

  • Web.py
  • Adafruit GPIO bibliotēka

Es esmu uzrakstījis kodu un komentējis to, lai jūs to saprastu un izdomātu.

3. darbība: tīmekļa lapas izveide

Tīmekļa lapas izveide
Tīmekļa lapas izveide

Ja jūs pievienojat pitona kodu, kuru es pievienoju, jūs varat redzēt, ka es runāju par GET pieprasījumu. GET pieprasījums būtībā ir veids, kā tīmekļa lapa var sazināties ar serveri. Lai pievienotu, dzēstu un pārslēgtu izejas, mēs izmantojam Jquery, lai veiktu dažus pamata pieprasījumus. Esmu pievienojis html lapu, kas to dara, un jūsu ērtībai esmu arī komentējis kodu.

Control.html fails ir šeit-skata avots:

4. darbība: Python faila pārsūtīšana uz jūsu Beaglebone

Python faila pārsūtīšana uz jūsu Beaglebone
Python faila pārsūtīšana uz jūsu Beaglebone

Jūs varat pārsūtīt failu main.py, izmantojot komandrindu, bet, lai viegli pārsūtītu failus, es izmantošu WinSCP (jūs varat izmantot jebkuru sftp klientu), kuru varat lejupielādēt šeit. Mac lietotājiem ir pieejams Cyberduck, bet, tā kā esmu datora lietotājs, es nezinu, kurš no tiem ir labākais, tāpēc jums tas jāmeklē googlē. Process ir vienkāršs, vienkārši velciet failu main.py darbvirsmā vai jebkurā citā izvēlētajā direktorijā.

5. darbība: servera palaišana

Palaist serveri
Palaist serveri

Servera vadīšana ir vienkārša, vienkārši izmantojiet SSH, izmantojot PuTTY vai savu termināli, un nomainiet direktoriju uz main.py direktoriju. Ieraksti:

1234

Tagad mēs tikai lūdzām python palaist failu main.py portā 1234

6. solis: jums ir kontrole

Jums ir kontrole!
Jums ir kontrole!
Jums ir kontrole!
Jums ir kontrole!
Jums ir kontrole!
Jums ir kontrole!

Tagad dodieties uz failu control.html un atveriet ar google chrome vai jebkuru citu pārlūku, kuru izmantojat, jums būs tīmekļa lapa ar 2 tekstlodziņiem un 3 pogām. PIN numura tekstlodziņā tiek prasīts PIN kods, piemēram, P8_10 vai P8_29 utt. Lai varētu izmantot dzēšanas un pārslēgšanas pogas, ir jāaizpilda vārds. Tagad, kad jums ir tīmekļa vadība, varat izmantot šo piemēru, lai izveidotu sarežģītāku paneli. Varbūt izmantojiet datu bāzes iespējas, lai izmantotu savu Beaglebone Black kā datu reģistrētāju vai izmantotu to mājas automatizācijai, iespējas ir bezgalīgas. Ja jums patīk šī pamācība, lūdzu, balsojiet par šo projektu kodēto darbu konkursā un arī iecieniet šo projektu. Paldies, ka izlasījāt šo pamācību un turpiniet uzlauzt!:)

Ieteicams: