Sadržaj:

Beaglebone Black Web Control pomoću WebPy: 6 koraka
Beaglebone Black Web Control pomoću WebPy: 6 koraka

Video: Beaglebone Black Web Control pomoću WebPy: 6 koraka

Video: Beaglebone Black Web Control pomoću WebPy: 6 koraka
Video: CupBot - BeagleBone Black - using a web app as a controller 2024, Novembar
Anonim
Beaglebone Black Web kontrola pomoću WebPy -a
Beaglebone Black Web kontrola pomoću WebPy -a
Beaglebone Black Web kontrola pomoću WebPy -a
Beaglebone Black Web kontrola pomoću WebPy -a

Uvijek ste htjeli stvoriti način za upravljanje vašim garažnim vratima pomoću telefona, možda prikupiti podatke i pregledati ih sa vašeg prijenosnog računala. Postoji jedan putni računar nazvan Beaglebone Black koji je izuzetno moćan uređaj koji vam omogućava kontrolu njegovih GPIO pinova radi interakcije sa stvarnim stvarima poput motora, LED dioda, svjetiljki itd. Beaglebone je poput maline pi ploča, ali mnogo moćnija. Zajednica Beaglebone nije toliko velika kao malina pi pa budite upozoreni zbog nedostatka vodiča.

Dok sam tražio po internetu rješenje za kontrolu svog Beaglebone Black -a sa svog laptopa koristeći web stranicu, pojavili su se mnogi vodiči koristeći Beaglebone -ovu biblioteku kostiju i biblioteku socket.io koristeći cloud 9 ide. Dok sam pratio tutorijale i gledao ljudski kod, postao sam frustriran zbog činjenice da se cloud 9 ide stalno rušio, zbog nerazumijevanja javascripta, kao i zbog nedostatka fleksibilnosti svakog vodiča (svaki tutorijal tjerao vas je da koristite unaprijed definiranu količinu GPIO -ovi). Bio sam upoznat s pythonom i moj prijatelj me je upoznao sa web.py koji je odličan web okvir koji se koristi za razvoj web aplikacija. Takođe sam koristio Adafruit -ovu Beaglebone Black GPIO biblioteku za kontrolu pojedinačnih pinova Beaglebone Black -a.

Šta će vam trebati:

  • Kompjuter
  • SSH terminal kao što je PuTTY ili koristite SSH na terminalu (Za Mac i Linux, Windows nema ugrađen SSH)
  • Beaglebone Black povezan sa računarom putem USB -a
  • Internet veza sa Beaglebone Black
  • (opcionalno) SFTP klijent

Korak 1: Instalirajte potrebne Python biblioteke

Moramo instalirati dvije biblioteke koje nisu standardni moduli u python 2.7. Biblioteke su biblioteke Adafruit BBIO i WebPy. Moramo pristupiti Beagleboneu koristeći SSH. Odlučio sam koristiti PuTTy terminal i pristupiti mu putem IP adrese beaglebone, moj je 192.168.7.2 vaš se može pronaći na beaglebone start.html. Ako koristite Angstrom, upišite:

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

Ako koristite Debian ili 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

Da biste provjerili jesu li knjižnice ispravno instalirane, upišite:

  • python
  • uvoz web
  • import Adafruit_BBIO. GPIO

Ako se na python konzoli ne pojave greške, onda ste pravilno instalirali biblioteke i spremni smo za kodiranje.

Korak 2: Python kod

Python kod
Python kod

Python kôd je prilično lako razumljiv ako ste upoznati s upotrebom pythona, ako ste početnik u programiranju, možda ćete imati problema s razumijevanjem dijelova koda.

Dokumentaciju 2 biblioteke možete pronaći ovdje:

  • Web.py
  • Biblioteka Adafruit GPIO

Napisao sam kôd i komentirao ga kako biste ga razumjeli i pozabavili se njime.

Korak 3: Kreiranje web stranice

Kreiranje web stranice
Kreiranje web stranice

Ako imate python kod koji sam priložio, možete me vidjeti kako govorim o GET zahtjevu. GET zahtjev je u osnovi način komunikacije web stranice s poslužiteljem. Da bismo dodali, izbrisali i prebacili izlaze koje koristimo Jquery za neke osnovne zahtjeve za dobijanje. Priložio sam html stranicu koja radi upravo to, a također sam prokomentirao kôd radi vaše udobnosti.

Datoteka control.html je ovdje izvor izvora:

Korak 4: Prijenos Python datoteke na vašu Beaglebone

Prijenos Python datoteke na vašu Beaglebone
Prijenos Python datoteke na vašu Beaglebone

Možete prenijeti datoteku main.py putem komandne linije, ali za lakši prijenos datoteka upotrijebit ću WinSCP (možete koristiti bilo koji sftp klijent) koji možete preuzeti ovdje. Postoji Cyberduck za korisnike Mac računara, ali budući da sam korisnik računara, ne znam koji je najbolji pa ga morate proguglati. Postupak je jednostavan, samo povucite datoteku main.py na radnu površinu ili bilo koji drugi direktorij koji odaberete.

Korak 5: Pokretanje servera

Pokretanje servera
Pokretanje servera

Pokretanje poslužitelja je jednostavno, samo upotrijebite SSH koristeći PuTTY ili svoj terminal i promijenite svoj direktorij u direktorij main.py. Ukucaj:

python main.py 1234

Ono što smo upravo učinili je zatražili od pythona da pokrene datoteku main.py na portu 1234

Korak 6: Imate kontrolu

Vi imate kontrolu!
Vi imate kontrolu!
Vi imate kontrolu!
Vi imate kontrolu!
Vi imate kontrolu!
Vi imate kontrolu!

Sada idite na datoteku control.html i otvorite pomoću google chroma ili bilo kojeg drugog preglednika koji koristite, imat ćete web stranicu s 2 polja za tekst i 3 gumba. Okvir za tekst PIN broja traži PIN broj poput P8_10 ili P8_29 itd. Morate imati ispunjeno ime da biste mogli koristiti tipke za brisanje i prebacivanje. Sada kada imate web kontrolu, možete koristiti ovaj primjer za stvaranje naprednije ploče. Možda koristite mogućnosti baze podataka da biste svoj Beaglebone Black koristili kao zapisnik podataka ili ga koristili za kućnu automatizaciju, mogućnosti su beskrajne. Ako vam se sviđa ovo uputstvo, molimo vas da glasate za ovaj projekt na natječaju za kodirane kreacije, a takođe i da označite ovaj projekt kao favorit. Hvala što ste pročitali ovo uputstvo i nastavite sa hakiranjem!:)

Preporučuje se: