Sommario:
- Passaggio 1: installa le librerie Python richieste
- Passaggio 2: il codice Python
- Passaggio 3: creazione della pagina Web
- Passaggio 4: trasferimento del file Python sul tuo Beaglebone
- Passaggio 5: esecuzione del server
- Passaggio 6: hai il controllo
Video: Controllo Web Beaglebone Black utilizzando WebPy: 6 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Hai mai voluto creare un modo per controllare la porta del tuo garage utilizzando il telefono, magari raccogliendo dati e visualizzandoli dal tuo laptop. C'è un computer a scheda singola chiamato Beaglebone Black che è un dispositivo estremamente potente che ti consente di controllare i suoi pin GPIO per interagire con oggetti del mondo reale come motori, LED, lampade, ecc. Il Beaglebone è proprio come un lampone pi scheda ma molto più potente. La comunità di Beaglebone non è così grande come quella dei Raspberry Pi, quindi attenzione per la mancanza di tutorial.
Mentre stavo cercando su Internet una soluzione per controllare il mio Beaglebone Black dal mio laptop utilizzando una pagina Web, sono comparsi molti tutorial utilizzando la libreria bonescript di Beaglebone e la libreria socket.io utilizzando l'ide cloud 9. Mentre seguivo i tutorial e guardavo il codice delle persone mi sentivo frustrato a causa del fatto che l'ide cloud 9 continuava a bloccarsi, la mia mancanza di comprensione di javascript e anche la mancanza di flessibilità di ogni tutorial (ogni tutorial ti costringeva a usare una quantità predefinita di GPIO). Conoscevo Python e il mio amico mi ha presentato web.py, un ottimo framework web utilizzato per sviluppare app web. Ho anche usato la libreria Beaglebone Black GPIO di Adafruit per controllare i singoli pin del Beaglebone Black.
Di cosa avrai bisogno:
- Un computer
- Terminale SSH come PuTTY o usa SSH sul terminale (per Mac e Linux, Windows non ha SSH integrato)
- Un Beaglebone Black collegato al computer tramite USB
- Una connessione Internet al Beaglebone Black
- (opzionale) Un client SFTP
Passaggio 1: installa le librerie Python richieste
Abbiamo bisogno di installare due librerie che non sono moduli standard in python 2.7. Le librerie sono le librerie Adafruit BBIO e WebPy. Dobbiamo accedere a Beaglebone usando SSH. Ho deciso di utilizzare il terminale PuTTy e accedervi utilizzando l'indirizzo IP del beaglebone, il mio è 192.168.7.2 il tuo può essere trovato su beaglebone start.html. Se stai usando Angstrom, digita:
- opkg aggiorna && opkg installa python-pip python-setuptools python-smbus
- pip install Adafruit_BBIO
- pip installa web.py
Se stai usando Debian o Ubuntu:
- sudo apt-get update
- sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y
- pip install Adafruit_BBIO
- pip installa web.py
Per verificare se le librerie sono installate correttamente digitare:
- pitone
- importare web
- import Adafruit_BBIO. GPIO
Se non si verificano errori sulla console Python, hai installato correttamente le librerie e siamo pronti per il codice.
Passaggio 2: il codice Python
Il codice python è abbastanza facile da capire se hai familiarità con l'uso di python, se sei un principiante nella programmazione potresti avere qualche problema a capire parti del codice.
La documentazione delle 2 biblioteche si trova qui:
- Web.py
- Libreria Adafruit GPIO
Ho scritto il codice e l'ho commentato in modo che tu possa capirlo e armeggiare con esso.
Passaggio 3: creazione della pagina Web
Se hai il codice Python che ho allegato, puoi vedermi parlare della richiesta GET. Una richiesta GET è fondamentalmente un modo per una pagina Web di comunicare con un server. Per aggiungere, eliminare e cambiare gli output stiamo usando Jquery per fare alcune richieste di base. Ho allegato una pagina html che fa proprio questo e ho anche commentato il codice per tua comodità.
Il file control.html è qui view-source:
Passaggio 4: trasferimento del file Python sul tuo Beaglebone
Puoi trasferire il file main.py tramite riga di comando ma per trasferire facilmente i file userò WinSCP (puoi usare qualsiasi client sftp) che puoi scaricare qui. C'è Cyberduck per utenti Mac ma dato che sono un utente PC non so quale sia il migliore, quindi devi cercarlo su Google. Il processo è semplice, basta trascinare il file main.py nel desktop o in qualsiasi altra directory scelta.
Passaggio 5: esecuzione del server
L'esecuzione del server è facile, basta usare SSH usando PuTTY o il tuo terminale e cambiare la tua directory nella directory main.py. Digitare:
python main.py 1234
Ora quello che abbiamo appena fatto è chiedere a Python di eseguire il file main.py sulla porta 1234
Passaggio 6: hai il controllo
Ora vai al file control.html e aprilo con google chrome o qualsiasi altro browser che utilizzi, avrai una pagina web con 2 caselle di testo e 3 pulsanti. La casella di testo del numero di pin richiede il numero di pin come P8_10 o P8_29, ecc. È necessario inserire il nome per utilizzare i pulsanti di eliminazione e commutazione. Ora che hai il controllo web puoi usare questo esempio per creare un pannello più avanzato. Magari usa le funzionalità del database per utilizzare il tuo Beaglebone Black come registratore di dati o utilizzalo per l'automazione domestica, le possibilità sono infinite. Se ti piace questo tutorial, vota per questo progetto nel concorso di creazioni codificate e aggiungi anche questo progetto ai preferiti. Grazie per aver letto questo istruibile e continua a hackerare!:)
Consigliato:
Iniziare con BeagleBone Black: 11 passaggi
Per iniziare con BeagleBone Black: dopo aver usato Arduino per un po', ho deciso di provare Beaglebone Black. Vedendo la mancanza di contenuti su Instructables e avendo qualche difficoltà a iniziare da solo, volevo aiutare altre persone a impostare BeagleBone Black
Controllo del display LED a 7 segmenti utilizzando il server Web ESP8266: 8 passaggi (con immagini)
Controllo del display a LED a 7 segmenti utilizzando il server Web ESP8266: il mio progetto ha un Nodemcu ESP8266 che controlla un display a 7 segmenti tramite il server http utilizzando il modulo html
Extension Mémoire Pour BeagleBone Black: 8 passaggi
Extension Mémoire Pour BeagleBone Black: Je vous présenter dans cet interactable un de mes projet qui consistait à piloter des mémoires de différents type afin de pouvoir tester leur fonctionnement dans des condition spacees (enceinte radiative) et de trouve
Progetto Arduino: controllo dell'elettronica su Internet utilizzando Nodejs + database SQL e sito Web.: 6 passaggi
Progetto Arduino: controllo dell'elettronica su Internet utilizzando Nodejs + database SQL e sito Web.: Progetto di: Mahmed.tech Data di realizzazione: 14 luglio 2017 Livello di difficoltà: principiante con alcune conoscenze di programmazione. Requisiti hardware: - Arduino Uno, Nano, Mega (penso che la maggior parte degli MCU con la connessione seriale funzionerà) - LED singolo e amp; Limite di corrente res
Orologio con animazione LED SMART connesso al Web con pannello di controllo basato sul Web, server dell'ora sincronizzato: 11 passaggi (con immagini)
Orologio con animazione LED SMART connesso al Web con pannello di controllo basato sul Web, server dell'ora sincronizzato: la storia di questo orologio risale a molto tempo fa, più di 30 anni. Mio padre è stato il pioniere di questa idea quando avevo solo 10 anni, molto prima della rivoluzione dei LED, quando i LED erano 1/1000 della luminosità della loro attuale brillantezza accecante. Un vero