Obsah:

Beaglebone Black Web Control pomocou WebPy: 6 krokov
Beaglebone Black Web Control pomocou WebPy: 6 krokov

Video: Beaglebone Black Web Control pomocou WebPy: 6 krokov

Video: Beaglebone Black Web Control pomocou WebPy: 6 krokov
Video: Controlling Expansion connector's BeagleBoard running as a Web Server 2024, November
Anonim
Beaglebone Black Web Control pomocou WebPy
Beaglebone Black Web Control pomocou WebPy
Beaglebone Black Web Control pomocou WebPy
Beaglebone Black Web Control pomocou WebPy

Chceli ste niekedy vytvoriť spôsob, ako ovládať garážové brány pomocou telefónu, možno zhromažďovať údaje a zobrazovať ich z prenosného počítača. Existuje jeden palubný počítač s názvom Beaglebone Black, ktorý je mimoriadne výkonným zariadením a ktoré vám umožňuje ovládať piny GPIO, aby ste mohli komunikovať s predmetmi skutočného sveta, akými sú motory, diódy LED, žiarovky atď. Beaglebone je ako malinový pi doska, ale oveľa silnejšia. Komunita Beaglebone nie je taká obrovská ako malinové pi, takže vás upozorňujeme na nedostatok návodov.

Keď som hľadal na internete riešenie, ako ovládať svoj Beaglebone Black z prenosného počítača pomocou webovej stránky, objavilo sa mnoho návodov na použitie knižnice Beaglebone Bonescript a knižnice socket.io pomocou cloud 9 ide. Ako som sledoval návody a pozeral som sa na kód ľudí, bol som frustrovaný z toho, že cloud 9 ide stále padal, z môjho nepochopenia javascriptu a tiež z nedostatku flexibility každého tutoriálu (každý tutoriál vás prinútil použiť vopred definované množstvo GPIO). Bol som oboznámený s pythonom a môj priateľ ma zoznámil s web.py, čo je skvelý webový rámec používaný na vývoj webových aplikácií. Na ovládanie jednotlivých pinov Beaglebone Black som použil aj knižnicu Adafruit Beaglebone Black GPIO.

Čo budete potrebovať:

  • Počítač
  • Terminál SSH, ako napríklad PuTTY, alebo použitie SSH na termináli (V systémoch Mac a Linux nemá systém Windows vstavaný protokol SSH)
  • Beaglebone Black pripojený k počítaču prostredníctvom USB
  • Internetové pripojenie k Beaglebone Black
  • (voliteľné) Klient SFTP

Krok 1: Nainštalujte požadované knižnice Pythonu

V pythone 2.7 musíme nainštalovať dve knižnice, ktoré nie sú štandardnými modulmi. Knižnice sú knižnice Adafruit BBIO a WebPy. Potrebujeme prístup k Beaglebone pomocou SSH. Rozhodol som sa použiť terminál PuTTy a pristupovať k nemu pomocou IP adresy beaglebone, moja je 192.168.7.2 tú vašu nájdete na beaglebone start.html. Ak používate typ Angstrom v:

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

Ak používate Debian alebo Ubuntu:

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

Ak chcete otestovať, či sú knižnice správne nainštalované, zadajte:

  • pytón
  • importovať web
  • importovať Adafruit_BBIO. GPIO

Ak sa na konzole python nevyskytnú žiadne chyby, potom ste knižnice nainštalovali správne a sme pripravení kódovať.

Krok 2: Pythonov kód

Pythonov kód
Pythonov kód

Pythonový kód je pomerne ľahko zrozumiteľný, ak ste oboznámení s používaním pythonu, ak ste začiatočník v programovaní, môžete mať problémy s porozumením častí kódu.

Dokumentáciu k 2 knižniciam nájdete tu:

  • Web.py
  • Knižnica GPIO Adafruit

Napísal som kód a okomentoval ho, aby ste mu porozumeli a pohrali sa s ním.

Krok 3: Vytvorenie webovej stránky

Vytvorenie webovej stránky
Vytvorenie webovej stránky

Ak poznáte kód pythonu, ktorý som pripojil, môžete ma vidieť hovoriť o požiadavke GET. Požiadavka GET je v zásade spôsob, akým môže webová stránka komunikovať so serverom. Aby sme mohli pridať, odstrániť a prepnúť výstupy, pomocou Jquery robíme základné požiadavky na získanie. Priložil som html stránku, ktorá robí práve to, a kód som tiež komentoval pre vaše pohodlie.

Súbor control.html je tu-zdroj zobrazenia:

Krok 4: Prenos súboru Python do vášho Beaglebone

Prenos súboru Python do vášho Beaglebone
Prenos súboru Python do vášho Beaglebone

Súbor main.py môžete prenášať pomocou príkazového riadku, ale na ľahký prenos súborov budem používať WinSCP (môžete použiť ľubovoľného klienta sftp), ktorý si môžete stiahnuť tu. Existuje Cyberduck pre používateľov počítačov Mac, ale keďže som používateľom počítača, neviem, ktorý z nich je najlepší, takže si ho musíte vygoogliť. Tento proces je jednoduchý, stačí presunúť súbor main.py na plochu alebo do iného adresára, ktorý si vyberiete.

Krok 5: Spustenie servera

Spustenie servera
Spustenie servera

Spustenie servera je jednoduché, stačí použiť SSH pomocou PuTTY alebo vášho terminálu a zmeniť priečinok na adresár main.py. Zadajte:

python main.py 1234

Teraz sme len požiadali python, aby spustil súbor main.py na porte 1234

Krok 6: Máte kontrolu

Máte kontrolu!
Máte kontrolu!
Máte kontrolu!
Máte kontrolu!
Máte kontrolu!
Máte kontrolu!

Teraz choďte do súboru control.html a otvorte ho v prehliadači Google Chrome alebo v inom prehliadači, ktorý použijete. Budete mať webovú stránku s 2 textovými poliami a 3 tlačidlami. Textové pole s číslom PIN požaduje PIN číslo ako P8_10 alebo P8_29 atď. Na používanie tlačidiel na odstránenie a prepnutie je potrebné vyplniť meno. Teraz, keď máte webové ovládanie, môžete tento príklad použiť na vytvorenie pokročilejšieho panelu. Ak chcete použiť svoj Beaglebone Black ako záznamník údajov alebo ho použiť na domácu automatizáciu, použite možnosti databázy, možnosti sú nekonečné. Ak sa vám tento návod páči, hlasujte prosím za tento projekt v súťaži o kódované výtvory a tiež ho obľúbite. Ďakujeme, že ste si prečítali tento návod a pokračujte v hackovaní!:)

Odporúča: