Spisu treści:

Kontrola sieci Beaglebone Black za pomocą WebPy: 6 kroków
Kontrola sieci Beaglebone Black za pomocą WebPy: 6 kroków

Wideo: Kontrola sieci Beaglebone Black za pomocą WebPy: 6 kroków

Wideo: Kontrola sieci Beaglebone Black za pomocą WebPy: 6 kroków
Wideo: Sterowanie silnikami za pomocą pada USB, STM32 oraz Beaglebone Black 2024, Listopad
Anonim
Kontrola sieci Beaglebone Black za pomocą WebPy
Kontrola sieci Beaglebone Black za pomocą WebPy
Kontrola sieci Beaglebone Black za pomocą WebPy
Kontrola sieci Beaglebone Black za pomocą WebPy

Kiedykolwiek chciałeś stworzyć sposób na kontrolowanie bramy garażowej za pomocą telefonu, może zbierać dane i przeglądać je z laptopa. Istnieje komputer jednopłytkowy o nazwie Beaglebone Black, który jest niezwykle potężnym urządzeniem, które umożliwia sterowanie jego pinami GPIO w celu interakcji z elementami świata rzeczywistego, takimi jak silniki, diody LED, lampy itp. Beaglebone jest jak raspberry pi tablica, ale o wiele mocniejsza. Społeczność Beaglebone nie jest tak duża jak raspberry pi, więc uważaj na brak samouczków.

Gdy szukałem w Internecie rozwiązania do kontrolowania mojego Beaglebone Black z mojego laptopa za pomocą strony internetowej, pojawiło się wiele samouczków korzystających z biblioteki bonescript Beaglebone i biblioteki socket.io przy użyciu ide chmury 9. Gdy podążałem za samouczkami i patrzyłem na kod ludzi, byłem sfrustrowany z powodu faktu, że ide chmury 9 ciągle się zawieszał, mojego braku zrozumienia javascriptu, a także braku elastyczności każdego samouczka (każdy samouczek zmuszał do korzystania z predefiniowanej ilości GPIO). Znałem pythona, a mój przyjaciel wprowadził mnie do web.py, który jest świetnym frameworkiem internetowym służącym do tworzenia aplikacji internetowych. Użyłem również biblioteki GPIO Beaglebone Black firmy Adafruit do sterowania poszczególnymi pinami Beaglebone Black.

Czego będziesz potrzebować:

  • Komputer
  • Terminal SSH, taki jak PuTTY lub użyj SSH na terminalu (dla komputerów Mac i Linux, Windows nie ma wbudowanego SSH)
  • Beaglebone Black podłączony do komputera przez USB
  • Połączenie internetowe z Beaglebone Black
  • (opcjonalnie) Klient SFTP

Krok 1: Zainstaluj wymagane biblioteki Pythona

Musimy zainstalować dwie biblioteki, które nie są standardowymi modułami w Pythonie 2.7. Biblioteki to biblioteki Adafruit BBIO i WebPy. Musimy uzyskać dostęp do Beaglebone za pomocą SSH. Zdecydowałem się użyć terminala PuTTy i uzyskać do niego dostęp za pomocą adresu IP beaglebone, mój to 192.168.7.2, twój można znaleźć na beaglebone start.html. Jeśli używasz Angstrem, wpisz:

  • aktualizacja opkg i instalacja opkg python-pip python-setuptools python-smbus
  • pip zainstaluj Adafruit_BBIO
  • pip zainstaluj web.py

Jeśli używasz Debiana lub Ubuntu:

  • aktualizacja sudo apt-get
  • sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y
  • pip zainstaluj Adafruit_BBIO
  • pip zainstaluj web.py

Aby sprawdzić, czy biblioteki są poprawnie zainstalowane, wpisz:

  • pyton
  • importuj sieć
  • importuj Adafruit_BBIO. GPIO

Jeśli nie wystąpią żadne błędy w konsoli Pythona, oznacza to, że poprawnie zainstalowałeś biblioteki i jesteśmy gotowi do kodowania.

Krok 2: Kod Pythona

Kod Pythona
Kod Pythona

Kod Pythona jest dość łatwy do zrozumienia, jeśli znasz się na używaniu Pythona, jeśli jesteś początkującym programistą, możesz mieć problemy ze zrozumieniem części kodu.

Dokumentację 2 bibliotek można znaleźć tutaj:

  • Web.py
  • Biblioteka Adafruit GPIO

Napisałem kod i skomentowałem go, abyś mógł go zrozumieć i majstrować.

Krok 3: Tworzenie strony internetowej

Tworzenie strony internetowej
Tworzenie strony internetowej

Jeśli dołączyłem kod Pythona, możesz zobaczyć, jak mówię o żądaniu GET. Żądanie GET jest w zasadzie sposobem komunikacji strony internetowej z serwerem. Aby dodawać, usuwać i przełączać dane wyjściowe, używamy Jquery do wykonywania podstawowych żądań pobierania. Dołączyłem stronę html, która właśnie to robi, a także skomentowałem kod dla Twojej wygody.

Plik control.html znajduje się tutaj view-source:

Krok 4: Przenoszenie pliku Pythona do Beaglebone

Przesyłanie pliku Pythona do Twojego Beaglebone
Przesyłanie pliku Pythona do Twojego Beaglebone

Możesz przesłać plik main.py za pomocą wiersza poleceń, ale aby łatwo przesyłać pliki, zamierzam użyć WinSCP (możesz użyć dowolnego klienta sftp), który możesz pobrać tutaj. Istnieje Cyberduck dla użytkowników komputerów Mac, ale ponieważ jestem użytkownikiem komputera PC, nie wiem, który z nich jest najlepszy, więc musisz go wygooglować. Proces jest prosty, wystarczy przeciągnąć plik main.py na Pulpit lub dowolny inny wybrany katalog.

Krok 5: Uruchamianie serwera

Uruchamianie serwera
Uruchamianie serwera

Uruchomienie serwera jest łatwe, wystarczy użyć SSH za pomocą PuTTY lub terminala i zmienić katalog na katalog main.py. Wpisz:

python main.py 1234

Teraz właśnie poprosiliśmy pythona o uruchomienie pliku main.py na porcie 1234

Krok 6: Masz kontrolę

Masz kontrolę!
Masz kontrolę!
Masz kontrolę!
Masz kontrolę!
Masz kontrolę!
Masz kontrolę!

Teraz przejdź do pliku control.html i otwórz w Google Chrome lub innej używanej przeglądarce, będziesz miał stronę internetową z 2 polami tekstowymi i 3 przyciskami. Pole tekstowe numeru pin poprosi o podanie numeru pin, np. P8_10 lub P8_29 itp. Aby móc korzystać z przycisków usuwania i przełączania, musisz mieć wpisaną nazwę. Teraz, gdy masz kontrolę internetową, możesz użyć tego przykładu, aby stworzyć bardziej zaawansowany panel. Może wykorzystać możliwości bazy danych, aby użyć Beaglebone Black jako rejestratora danych lub użyć go do automatyzacji domu, możliwości są nieograniczone. Jeśli podoba Ci się ta instrukcja, zagłosuj na ten projekt w konkursie na kodowane kreacje, a także jako faworyzuj ten projekt. Dzięki za przeczytanie tej instrukcji i kontynuuj hakowanie!:)

Zalecana: