Cronjob PHP: come usarli per generare automaticamente report dati nel mondo IoT

Generare report dati nel mondo IoT è molto importante, specialmente per ciò che riguarda i sensori. Una delle modalità che abbiamo a disposizione sono i cronjob PHP: in questo articolo vediamo assieme come usarli per generare report automaticamente e ciclicamente a seconda delle nostre esigenze e inviarceli via mail.

Ciao sono Lorenzo Neri: Chief Education Officer di Elettronica Open Source, mi occupo di realizzare contenuti educativi per aiutare persone come te a comprendere meglio questo mondo!

Durante la mia carriera lavorativa, ho usato PHP, un linguaggio di programmazione che torna molto comodo per realizzare il back-end di tanti siti web. Per farti un esempio, il blog di Elettronica Open Source basa parte del suo funzionamento in PHP: grazie a lui puoi commentare i nostri articoli!

Ma c'è molto, molto di più: il PHP può essere utilizzato anche per la realizzazione di sistemi IoT. Per farti un esempio, avere una piattaforma web dove hai delle API realizzate in PHP permette ai nodi della tua stessa rete IoT di inviare le informazioni raccolte dai sensori e salvare su un database, per poi generare un report che puoi comodamente salvare sul tuo computer.

Questo, gli studenti di Making IoT lo sanno bene: spiego, infatti, come possa tornare comodo attraverso l'uso del PHP e il protocollo HTTP come dare vita a un sistema di raccolta dati.

Chiaramente non c'è raccolta dati senza database: e non per nulla, se fossi curioso ho scritto un articolo in merito che puoi trovare proprio qui.

Se ti stessi chiedendo il funzionamento alla base dei cronjob PHP, in un altro articolo ne ho parlato in modo approfondito: te lo lascio a distanza di un click qui ma mi raccomando... Ti aspetto di nuovo qui una volta che ti sei messo in pari! 😀

Ciò detto, vediamo assieme cosa ci aspetta.

Architettura del nostro sistema

Non c'è report, non c'è IoT senza un sistema!

Nel nostro esempio, vorrei usare il seguente:

Il nostro sistema IoT

  • Arduino: una scheda Arduino a cui colleghiamo un sensore di temperatura che invia ogni minuto la temperatura al nostro server web
  • Il server web: che offre delle API tramite cui riceve la temperatura del nostro Arduino, salva nel database la temperatura stessa risponde con un "ok" alla scheda per confermare l'operazione di avvenuto salvataggio
  • Il nostro file PHP che diventerà un cronjob: ogni giorno preleva i dati dal database, crea un file CSV dei valori generati nelle ultime 24 ore e ce lo invia tramite una mail

Per la parte legata al come effettuare le richieste HTTP con Arduino o schede ESP, non posso che invitarti a leggere questo articolo oppure scoprire cosa ti può offrire Making IoT, allo stesso tempo se ti stessi chiedendo come impostare un cronjob ogni giorno, puoi prendere spunto dall'articolo che ti ho lasciato qualche paragrafo fa... Ma ti lascio nuovamente qui se fossi troppo preso dalla lettura di questo!

Come usare tutto questo per generare automaticamente un report dati

Ciò che faremo sarà generare ogni giorno un file CSV e mandare un'email con il link per scaricarlo.

Tutto questo, attraverso le seguenti righe di PHP:

[...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 1223 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend