In questi giorni di vacanze natalizie e di pausa dagli esami, ho deciso di cimentarmi in un simpatico progetto, una stazione meteo!
E' progetto che abbraccerà molti argomenti, elettronica, programmazione di Arduino, programmazione PHP, Gestione DB e WebDesign.
Indice |
Indice del progetto
Web Stazione Meteo con Arduino [1] - L'idea
Web Stazione Meteo con Arduino [2] - La Rilevazione dei Dati
Web Stazione Meteo con Arduino [3] - Il Primo Circuito di Prova
Web Stazione Meteo con Arduino [4] - Il circuito definitivo e la comunicazione http
Web Stazione Meteo con Arduino [5] - Appendice 1 : Le Reti spiegate a mia Nonna
Web Stazione Meteo con Arduino [6] : Il Sito Web
Web Stazione Meteo con Arduino [7] : Bug Fixing
L'idea
Vorrei costruire, non un stazione meteo qualunque, ma una in grado di interfacciarsi con un sito internet creato ad hoc, che raccolga le segnalazioni ad intervalli regolari e che sia in grado di creare grafici su le medie stagionali e tante altre statistiche.
Beh, l'idea sembra buona, la voglia non manca e se incontrerò qualche difficoltà, ho molta inventiva e una comunity stupenda come quella di ElectroYou che mi può aiutare !
Il progetto
Da una prima analisi, possiamo distinguere alcune macro-aree in cui suddividere il problema:
- Quali dati analizzare
- La raccolta dei dati
- La trasmissione dei dati
- L'elaborazione/archiviazione dei dati
Quali dati analizzare
Considerate le mie "Eccelse" conoscenze nel campo della meteorologia (sì, come no....), ho deciso che i dati più significativi e di semplice rilevazione fossero:
- Temperatura
- Umidità Relativa
Ci sono molti altri tipi di dati da poter raccogliere:
- Forza e direzione del vento
- Pressione Atmosferica
- Quantità di precipitazioni
- Irraggiamento Solare
- Etc. etc.
Ma per adesso limitiamoci a questi due, dato che si trovano in commercio molti sensori a buon mercato e di facile reperibilità per effettuare queste misure.Anche se non escludo in un futuro di aggiungere altri sensori... Chi sa...
La raccolta dei dati
La raccolta dei dati verrà effettuata da una scheda Arduino Uno, sulla quale inserirò un firmware per la misura delle varie grandezze da rilevare.Le misure per essere il più veritiere possibili, dovranno essere fatte più volte nell'arco di tempo che intercorrerà tra un invio e l'altro al sito, per poi inviare una media delle stesse. Per Es. Se decido di notificare al sito la situazione ogni 5min potrò effettuare 300 misure (una ogni secondo), per poi fare una media che rappresenterà il dato da inviare al database su internet.
La trasmissione dei dati
La trasmissione dei dati raccolti da arduino verso internet verrà fatta da l'Ethernet Shield ufficiale di Arduino connesso alla linea ADSL Flat di casa.Il tutto utilizzando il protocollo http, che farà delle interrogazioni a pagine php con le quali elaborerò i dati.
L'elaborazione/archiviazione dei dati
Su questo settore la scelta è ricaduta sulla ormai consolidata accoppiata MySQL/PHP, appoggiandosi ad un servizio di hosting gratuito, come quello di Altervista, sul quale attiverò un servizio di database base (1000 query/ora), che per la notifica dei nostri dati è più che sufficiente. I dati raccolti verranno immagazzinati in un database MySQL, che verrà poi interrogato per la costruzione delle varie statistiche e per l'elaborazione dei grafici. Proprio per i grafici ho deciso di appoggiarmi alle API Google, che permettono in maniera semplice e con un notevole effetto finale, di disegnar degli ottimi grafici interattivi.
Conclusioni
Termina qui la prima puntata della mia nuova avventura, spero di aver illustrato, in maniera chiara, l'idea di un progetto interessante e simpatico, che vuole abbracciare una rosa quanto più larga di argomenti e che servirà, a me per primo, ad imparare qualcosa di nuovo.
Vi aspetto alle prossime "puntate" per parlare dei vari passi che mi porteranno alla conclusione del progetto.
Per adesso vi saluto e vi auguro un BUON 2012!!