Let's start with Python! - Temperature of Raspberry PI

Sarà che non ho mai programmato seriamente, ne mi sono sentito informatico... Sarà che  da tempo non scrivevo una sola riga di programma... Sarà che comincio a scrivere in Python... Fatto sta che queste 4 righe di codice, che legge la temperatura del processore del Raspberry e la salva in un txt, mi hanno gasato alquanto:

import subprocess
from time import localtime, strftime
t = subprocess.check_output(["/opt/vc/bin/vcgencmd","measure_temp"])
a = str(t)
h = a[7:11]
s = strftime("%H:%M:%S", localtime())
d = strftime("%d %b %Y", localtime())
f = open("temperature.txt", "w")
print("Internal temperature of Toby's Raspberry at ", s, "of the day", d,"it's ", h ,file=f)
f.close()

 

Due parole di commento al listato Python, sperando che gli informatici di professione abbiano pietà per la mia pochezza in tale materia (e per l'assenza di righe di commento all'interno del programma): le prime 2 righe servono ad importare i moduli necessari: local time per recuperare ora e data, strftime per convertirle in stringhe e subprocess per leggere la temperatura interna. La terza riga è quella chiave: grazie al comando check_output del modulo subprocess, viene letta la temperatura interna, contenuta nell'indirizzo "/opt/vc/bin/vcgencmd"; ora è contenuta nella tupla t. Ciò che mi interessa salvare nel file è solo il valore, mentre la tupla restituisce una stringa tipo temp"XX.X°C". Quindi con le 2 righe successive trasformo la tupla in una stringa che vado poi ad affettare per togliere quelle virgolette e il testo temp. Restano solo da caricare data e ora (per riferire la temperatura), che vengono salvate nelle stringhe s e d. Quindi apro un file, ci scrivo temperatura, ora e data della misurazione e lo chiudo. Figon!

Cosa farci di questo file? Visto che sto ancora esplorando le potenzialità del Raspberry, pensavo di caricarlo automaticamente via ftp su ToBlog, ad intervalli predefiniti, così da verificare la possibilità di lettura remota  dati in real time. O quasi... A breve!