Cosa impareremo?
innanzitutto, ad intercettare i dati forniti dai sensori della Sense HAT, poi a costruire una semplice app web sfruttando il potete micro framework Python Flask, quindi a passare i dati dalla scheda alla web app attraverso un programma in Python.
Difficile? Neanche poi tanto.
vediamo come si può fare.
Innanzitutto, partendo dal presupposto che sulla MicroSD sia già caricato il sistema operativo Raspian, che la Sense HAT sia correttamente installata e collegata, la prima cosa da fare e verificare che il sistema sia nella sua versione più aggiornata.
Per operare l’aggiornamento del Raspberry Pi, digitate:
sudo apt-get update
sudo apt-get upgrade
Sedetevi ed aspettate un po’, potrebbe volerci per aggiornare il sistema operativo.
Controlliamo poi che siano installati il software per il linguaggio Python e per la Sense HAT provando ad installarli:
sudo apt-get install python3-flask
sudo apt-get install sense-hat
Ovviamente, è molto probabile che riceviate un messaggio di errore del tipo
python3-flask is already the newest version.
sense-hat is already the newest version.
Non ve ne preoccupate, vuo dire che i due software sono già installati. In caso contrario, verranno comunque installati ex novo.
Ora costruiremo una web app e un web server su cui farla girare utilizzando Python Flask.
Pensate sia difficile, vero? Niente di tutto questo.
Apriamo un file python dal nome, benaugurante meteo.py digitando
sudo nano meteo.py
Nel file che si aprirà, scriveremo il nostro programma.
from flask import Flask, render_template
from sense_hat import SenseHat
app = Flask(__name__)
@app.route('/')
def index():
sense = SenseHat()
celsius = round(sense.get_temperature(), 1)
fahrenheit = round(1.8 * celsius + 32, 1)
return render_template('meteo.html', celsius=celsius, fahrenheit=fahrenheit)
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0')
Ora occorre creare una pagina di base (template) in html in cui riprodurre i dati della sense HAT.
Creiamo una directory apposita e apriamo il file meteo.html con l’editor da linea di codice nano:
mkdir templates
nano templates/meteo.html
Nel file scriviamo lo schema della nostra pagina, per ora molto spartano:
Raspberry Pi Stazione Meteo
Temperatura
Celsius: {{ celsius }}
Fahrenheit: {{ fahrenheit }}
E salviamo il file come sopra.
Questo dovrebbe essere il risultato:
Se il raspi è sulla stessa rete del vostro PC o smartphone, potrete vedere la vostra weather station fai date all’indirzzo del raspi, sulla porta 5000. Ad esempio, http://192.168.0.101:5000
.
Bene, per questa volta è tutto.
Nella prossima puntata vedremo come migliorare esteticamente la nostra stazione meteo virtuale.
Alla prossima…
RASPBERRY PI STAGIONE 2 PUNTATA 15: Cayenne Raspi
Nuova puntata dedicata alla scheda single board preferita. Questa volta ci preoccuperemo di gestire la nostra Raspberry Pi in remoto grazie ad un’app: Cayenne.
Continua la lettura di RASPBERRY PI STAGIONE 2 PUNTATA 15: Cayenne Raspi