Indholdsfortegnelse:

Beaglebone sort webkontrol ved hjælp af WebPy: 6 trin
Beaglebone sort webkontrol ved hjælp af WebPy: 6 trin

Video: Beaglebone sort webkontrol ved hjælp af WebPy: 6 trin

Video: Beaglebone sort webkontrol ved hjælp af WebPy: 6 trin
Video: Led switching via web browser ros + arduino + roslibjs 2024, November
Anonim
Beaglebone Black Web Control ved hjælp af WebPy
Beaglebone Black Web Control ved hjælp af WebPy
Beaglebone Black Web Control ved hjælp af WebPy
Beaglebone Black Web Control ved hjælp af WebPy

Har du nogensinde ønsket at skabe en måde at styre din garageport ved hjælp af din telefon, måske indsamle data og se dem fra din bærbare computer. Der er en enkelt boardcomputer kaldet Beaglebone Black, som er en ekstremt kraftfuld enhed, der giver dig mulighed for at styre dens GPIO -pins for at interagere med virkelige ting som motorer, LED'er, lamper osv. Beaglebone er ligesom en hindbærpi bord, men meget mere kraftfuld. Beaglebone -samfundet er ikke så stort som hindbærpi'erne, så advar om manglen på selvstudier.

Da jeg søgte rundt på internettet efter en løsning til at styre min Beaglebone Black fra min bærbare computer ved hjælp af en webside, dukkede mange tutorials op ved hjælp af Beaglebones bone script -bibliotek og socket.io -biblioteket ved hjælp af cloud 9 ide. Da jeg fulgte tutorials og kiggede på folks kode, blev jeg frustreret på grund af det faktum, at cloud 9 ide blev ved med at gå ned, min mangel på forståelse af javascript og også den manglende fleksibilitet i hver tutorial (hver tutorial tvang dig til at bruge en foruddefineret mængde GPIO'er). Jeg kendte python, og min ven introducerede mig til web.py, som er en fantastisk webramme, der bruges til at udvikle webapps. Jeg brugte også Adafruit's Beaglebone Black GPIO -bibliotek til at styre de enkelte stifter af Beaglebone Black.

Det skal du bruge:

  • En computer
  • SSH -terminal, f.eks. PuTTY, eller brug SSH på terminalen (til Mac og Linux har Windows ikke indbygget SSH)
  • En Beaglebone Black tilsluttet computeren via USB
  • En internetforbindelse til Beaglebone Black
  • (valgfrit) En SFTP -klient

Trin 1: Installer de påkrævede Python -biblioteker

Vi skal installere to biblioteker, der ikke er standardmoduler i python 2.7. Bibliotekerne er Adafruit BBIO- og WebPy -bibliotekerne. Vi skal have adgang til Beaglebone ved hjælp af SSH. Jeg besluttede at bruge PuTTy -terminalen og få adgang til den ved hjælp af beaglebone -IP -adressen, min er 192.168.7.2 din kan findes på beaglebone start.html. Hvis du bruger Angstrom, skal du skrive i:

  • opkg opdatering && opkg installer python-pip python-setuptools python-smbus
  • pip installer Adafruit_BBIO
  • pip installere web.py

Hvis du bruger Debian eller Ubuntu:

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

For at teste, om bibliotekerne er installeret korrekt, skal du indtaste:

  • python
  • importere web
  • import Adafruit_BBIO. GPIO

Hvis der ikke opstår fejl på pythonkonsollen, har du installeret bibliotekerne korrekt, og vi er klar til at kode.

Trin 2: Python -koden

Python -koden
Python -koden

Python -koden er ret let at forstå, hvis du er fortrolig med at bruge python, hvis du er nybegynder til at programmere, kan du have problemer med at forstå dele af koden.

Dokumentationen for de 2 biblioteker findes her:

  • Web.py
  • Adafruit GPIO -bibliotek

Jeg har skrevet kode og kommenteret det, så du kan forstå og pille ved det.

Trin 3: Oprettelse af websiden

Oprettelse af websiden
Oprettelse af websiden

Hvis du er den python -kode, jeg vedhæftede, kan du se mig tale om GET -anmodning. En GET -anmodning er dybest set en måde for en webside at kommunikere med en server. For at tilføje, slette og skifte de output, vi bruger Jquery til at lave nogle grundlæggende henteanmodninger. Jeg har vedhæftet en html -side, der gør netop det, og jeg har også kommenteret koden for din bekvemmelighed.

Filen control.html er her visningskilde:

Trin 4: Overførsel af Python -filen til din Beaglebone

Overførsel af Python -filen til din Beaglebone
Overførsel af Python -filen til din Beaglebone

Du kan overføre main.py -filen via kommandolinjen, men for at overføre filer let vil jeg bruge WinSCP (du kan bruge enhver sftp -klient), som du kan downloade her. Der er Cyberduck til mac -brugere, men da jeg er pc -bruger, ved jeg ikke, hvilken der er den bedste, så du skal google den. Processen er enkel, bare træk main.py -filen på skrivebordet eller en anden mappe, du vælger.

Trin 5: Kørsel af serveren

Kører serveren
Kører serveren

Det er let at køre serveren, bare brug SSH ved hjælp af PuTTY eller din terminal og skift dit bibliotek til main.py -biblioteket. Indtaste:

python main.py 1234

Det vi lige gjorde, er nu at bede python om at køre main.py -filen på port 1234

Trin 6: Du har kontrol

Du har kontrol!
Du har kontrol!
Du har kontrol!
Du har kontrol!
Du har kontrol!
Du har kontrol!

Gå nu til filen control.html, og åbn med google chrome eller enhver anden browser, du bruger, du har en webside med 2 tekstbokse og 3 knapper. Tekstboksen pinkode beder om pinkodenummer som P8_10 eller P8_29 osv. Du skal have navnet udfyldt for at bruge slette og skifte knapperne. Nu hvor du har webkontrol, kan du bruge dette eksempel til at oprette et mere avanceret panel. Måske bruge databasefunktioner til at bruge din Beaglebone Black som datalogger eller bruge den til hjemmeautomatisering, mulighederne er uendelige. Hvis du kan lide dette instruerbare, bedes du stemme på dette projekt i den kodede kreationskonkurrence og også favorit dette projekt. Tak fordi du læste dette instruerbare og fortsæt med at hacke!:)

Anbefalede: