Innholdsfortegnelse:

Beaglebone Black Web Control ved hjelp av WebPy: 6 trinn
Beaglebone Black Web Control ved hjelp av WebPy: 6 trinn

Video: Beaglebone Black Web Control ved hjelp av WebPy: 6 trinn

Video: Beaglebone Black Web Control ved hjelp av WebPy: 6 trinn
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Juli
Anonim
Beaglebone Black Web Control ved hjelp av WebPy
Beaglebone Black Web Control ved hjelp av WebPy
Beaglebone Black Web Control ved hjelp av WebPy
Beaglebone Black Web Control ved hjelp av WebPy

Har du noen gang ønsket å lage en måte å kontrollere garasjeporten din på med telefonen, kanskje samle inn data og se den fra den bærbare datamaskinen. Det er en enkelt brettcomputer kalt Beaglebone Black, som er en ekstremt kraftig enhet som lar deg kontrollere GPIO -pinnene for å samhandle med virkelige ting som motorer, LED, lamper, etc. Beaglebone er akkurat som en bringebærpi brett, men mye kraftigere. Beaglebone -samfunnet er ikke så stort som bringebærpiene, så vær advart for mangel på opplæringsprogrammer.

Da jeg søkte rundt på internett etter en løsning for å kontrollere Beaglebone Black fra den bærbare datamaskinen min ved hjelp av en webside, dukket det opp mange opplæringsprogrammer ved hjelp av Beaglebones beinskriptbibliotek og socket.io -biblioteket ved hjelp av sky 9 ideen. Da jeg fulgte opplæringsprogrammer og så på folks kode, ble jeg frustrert på grunn av det faktum at skyen 9 fortsatte å krasje, min mangel på forståelse av javascript og mangelen på fleksibilitet for hver opplæring (hver opplæring tvang deg til å bruke en forhåndsdefinert mengde GPIO -er). Jeg var kjent med python, og vennen min introduserte meg for web.py, som er et flott webrammeverk som brukes til å utvikle webapper. Jeg brukte også Adafruit's Beaglebone Black GPIO -bibliotek for å kontrollere de enkelte pinnene til Beaglebone Black.

Dette trenger du:

  • En datamaskin
  • SSH -terminal som PuTTY eller bruk SSH på terminalen (For Mac og Linux har Windows ikke innebygd SSH)
  • En Beaglebone Black koblet til datamaskinen via USB
  • En internettforbindelse til Beaglebone Black
  • (valgfritt) En SFTP -klient

Trinn 1: Installer de nødvendige Python -bibliotekene

Vi må installere to biblioteker som ikke er standardmoduler i python 2.7. Bibliotekene er Adafruit BBIO- og WebPy -bibliotekene. Vi må få tilgang til Beaglebone ved hjelp av SSH. Jeg bestemte meg for å bruke PuTTy -terminalen og få tilgang til den med IP -adressen til beaglebone, min er 192.168.7.2 din kan bli funnet på beaglebone start.html. Hvis du bruker Angstrom, skriver du inn:

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

Hvis du bruker Debian eller Ubuntu:

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

For å teste om bibliotekene er riktig installert, skriv inn:

  • python
  • importer web
  • importer Adafruit_BBIO. GPIO

Hvis det ikke oppstår feil på pythonkonsollen, har du installert bibliotekene riktig, og vi er klare til å kode.

Trinn 2: Python -koden

Python -koden
Python -koden

Python -koden er ganske lett å forstå hvis du er kjent med å bruke python. Hvis du er nybegynner til å programmere, kan du ha problemer med å forstå deler av koden.

Dokumentasjonen til de to bibliotekene finner du her:

  • Web.py
  • Adafruit GPIO bibliotek

Jeg har skrevet kode og kommentert den slik at du forstår og tinker med den.

Trinn 3: Opprette websiden

Opprette websiden
Opprette websiden

Hvis du er pythonkoden jeg har vedlagt, kan du se meg snakke om GET -forespørsel. En GET -forespørsel er i utgangspunktet en måte for en webside å kommunisere med en server. For å legge til, slett og bytt utgangene vi bruker Jquery til å gjøre noen grunnleggende få forespørsler. Jeg har lagt ved en html -side som gjør nettopp det, og jeg har også kommentert koden for enkelhets skyld.

Control.html-filen er her visningskilde:

Trinn 4: Overføring av Python -filen til Beaglebone

Overføring av Python -filen til Beaglebone
Overføring av Python -filen til Beaglebone

Du kan overføre main.py -filen via kommandolinjen, men for å overføre filer enkelt kommer jeg til å bruke WinSCP (du kan bruke hvilken som helst sftp -klient) som du kan laste ned her. Det er Cyberduck for mac -brukere, men siden jeg er PC -bruker vet jeg ikke hvilken som er best, så du må google den. Prosessen er enkel, bare dra main.py -filen på skrivebordet eller en annen katalog du velger.

Trinn 5: Kjøre serveren

Kjører serveren
Kjører serveren

Det er enkelt å kjøre serveren, bare bruk SSH ved å bruke PuTTY eller terminalen din og endre katalogen til main.py -katalogen. Skriv inn:

python main.py 1234

Det vi nettopp gjorde er å be python om å kjøre main.py -filen på port 1234

Trinn 6: Du har kontroll

Du har kontroll!
Du har kontroll!
Du har kontroll!
Du har kontroll!
Du har kontroll!
Du har kontroll!

Gå nå til filen control.html og åpne med google chrome eller en hvilken som helst annen nettleser du bruker. Du får en webside med 2 tekstbokser og 3 knapper. Tekstboksen PIN -kode ber om PIN -nummeret, for eksempel P8_10 eller P8_29, etc. Du må ha navnet fylt ut for å bruke slette- og bytteknappene. Nå som du har webkontroll, kan du bruke dette eksemplet for å lage et mer avansert panel. Kanskje bruke databasemuligheter til å bruke Beaglebone Black som datalogger eller bruke den til hjemmeautomatisering, mulighetene er uendelige. Hvis du liker dette instruerbare, vennligst stem på dette prosjektet i konkurransen om kodede kreasjoner og favoritt dette prosjektet. Takk for at du leser dette instruerbare og fortsett å hacke!:)

Anbefalt: