Możesz to zrobić na wiele sposobów, używając CGI lub innego skryptu po stronie serwera. Jednym z problemów będą uprawnienia do dostępu do pinów GPIO. Wydaje się, że nie ma czystego rozwiązania . Obecnie najłatwiej jest udostępnić pliki GPIO użytkownikowi, który uruchamia serwer WWW, wywołać program (suid), który może uzyskać dostęp do pinów lub mieć osobnego demona z dostępem do pinów, do których można wysyłać wiadomości (sygnał, potok / socket, other ipc ...).
Do „wykonywania skryptu Pythona poprzez interfejs WWW”, warto spojrzeć na web.py . Jest to bardzo schludny mały moduł, który pozwala napisać pojedynczy plik „usługa sieciowa”, który może zrobić wszystko. Bardzo przydatny do tego typu edytorów IME. Nie wymaga efektywnej konfiguracji ani specjalnego oprogramowania (oprócz wspólnej instalacji Pythona i samego pliku web.py). Wystarczy napisać moduły obsługi adresów URL w pythonie, opcjonalnie z szablonami HTML i uruchomić. Skieruj klienta (przeglądarkę, inny skrypt, wget ...) na właściwy port i to po prostu działa. :)
Edycja: Wykryto nowy projekt, serpint wydaje się pozwalać na poruszanie gpio z gniazda lub ewentualnie fałszywego interfejsu urządzenia char.
Jeśli dopiero zaczynasz od tworzenia stron internetowych, spójrz na Bottle . Butelka jest prostsza niż flask w tym sensie, że jest kompletną strukturą internetową w jednym pliku. W przeciwieństwie do tego, Flask chce ponownie wykorzystać kod dźwiękowy z różnych bibliotek i dlatego może być bardziej solidny, ale także bardziej złożony.
Oto Hello World with Bottle:
Uruchom z:
I otwórz w przeglądarce:
http://localhost:8080/hello/world
Aby twoja strona dostępna z innych komputerów, zestaw
host
do0.0.0.0
wrun
metodzie. Ostatni wiersz powyższego Hello World powinien brzmieć:Powinieneś być teraz w stanie uzyskać dostęp do swojej witryny za pośrednictwem adresu IP Pi, w następujący sposób:
http://192.168.0.123:8080/hello/world
Więcej informacji znajduje się w dokumentacji butelki dotyczącej wdrożenia .
źródło
curl http://localhost:8080/hello/world
, otrzymuję oczekiwane wyniki. Jednak chcę mieć dostęp do tego na moim zwykłym komputerze przez sieć LAN. Po użyciuifconfig
na mój adres IP, następujący URL na mój zwykły komputer nie jest w stanie nawiązać połączenia:http://192.168.1.102:8080/hello/matthew
. Mam dostęp do innej strony, którą utworzyłem pod adresem ` 192.168.1.102/home.php '. Czy masz jakiś pomysł, jak mogę przejść do mojej strony z butelkami?0.0.0.0
powoduje, że butelka będzie nasłuchiwać pod dowolnym adresem , w tym z Pi.Zainstaluj iPython Notebook.
Następnie uruchom:
Bibliografia:
http://ipython.org/
http://jupyter.org/
https://www.raspberrypi.org/documentation/usage/gpio-plus-and-raspi2/
http://maxembedded.com/2014/07/ using-raspberry-pi-gpio-using-python /
Youtube: https://www.youtube.com/watch?v=cJuF4IDMuLY
Bardzo ważne:
Muzyka działa na RPi w tle w programie linux screen na mps-youtube.
Powodzenia!
źródło
Oto samouczek, w jaki sposób można to osiągnąć: https://roderickvella.wordpress.com/2017/01/04/control-a-separate-running-script-from-a-web-server-python-rpi/
źródło