Datalogger sulla EEPROM di Arduino

In questo post vedremo come creare un semplicissimo datalogger con Arduino.

Un datalogger, è un dispositivo che memorizza periodicamente i dati che provengono da uno o più sensori.



Una "scatola nera", probabilmente il più famoso registratore di dati.



Generalmente un datalogger sfrutta delle memorie esterne per memorizzare i dati acquisiti, spesso è dotato di vari tipi di connessioni per poter leggere questi dati.

Nel nostro progetto di oggi salvare i dati non utilizzeremo memorie esterne ma la EEPROM interna del nostro Arduino.

Questa memoria ha una capacità di 1KB (nell'Atmega 328, Arduino Uno), quindi sarà possibile memorizzare 1024 dati diversi (con valori compresi tra 0 e 255).
Uno spazio non enorme, ma comunque sufficiente per molte applicazioni.

Detto questo, starà a noi decidere ogni quanto acquisire i dati, per avere maggiore concentrazione di dati o una migliore autonomia.
Ad esempio salvando un dato ogni secondo riempiremo la memoria dopo circa 17 minuti (1024/60=17,06), ma acquisendo un dato ogni ora la stessa durerà circa 42 giorni.


Ecco un codice di esempio:


Chiudendo con un ponticello il pin 2 con GND si entra in modalità scrittura, quindi scriverò i dati sulla EEPROM.
Salverò un byte (quindi un "numero" di valore compreso tra 0 e 255) ogni secondo da quando accendo la scheda.
Questo numero nell'esempio è sempre il numero 5, ma è sufficiente utilizzare il comando "analogRead" per campionare il valore letto su un pin analogico (quindi un sensore di temperatura, luce, etc).
Una volta che ho finito di acquisire dati è sufficiente togliere alimentazione alla scheda e togliere il ponticello.
Collegare poi la scheda al pc ed aprire il serial monitor di Arduino (il simbolo con la lente in alto a destra nell'IDE) impostare la velocità a 57600, verranno stampati in sequenza tutti i byte contenuti nella EEPROM.

Questo è tutto!
per qualsiasi domanda lascia pure un commento qui sotto,
Ciao!

Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!

Nessun commento:

Posta un commento

Lascia un commento qui sotto, ti risponderò il prima possibile!

Altri Post