Modulo OpenLog – logger seriale su microSD

Il modulo OpenLog è un semplice logger seriale basato su di un microprocessore ATmega328 con clock a 16MHz, la prima versione è stata creata dalla SparkFun  (maggiori informazioni a questo link).
L’OpenLog può memorizzare o “registrare” enormi quantità di dati seriali e agire come una sorta di scatola nera per memorizzare tutti i dati seriali generati dal progetto, per scopi scientifici o di debug.

OpenLog logger seriale

Il modulo OpenLog è in grado di gestire schede SD di grande capacità in formati FAT16 e FAT32 (è stato testato con schede SD fino a 64 GB) e viene fornito con un bootloader seriale standard per caricare un nuovo firmware utilizzando una semplice connessione seriale.

Caratteristiche:

VCC Input:3.3V-12V (racommandato da 3.3V a 5V)
Memorizzazione:formato FAT16/32 su microSD fino a 64GB
Interfaccia di controlloUART e SPI
Configurazione:tramite file config.txt sulla scheda microSD o tramite il menu
Baud rate:configurabile (fino a 115200bps)
Processore:ATmega328 Preprogrammato con bootloader
Led per indicazione stati:Due led
Assorbimento:2mA a riposo, 6mA massimi in registrazione continua
Ourpcb

Schema del modulo

Schema elettrico del modulo, il file editabile compreso di PCB, è stato realizzato con il programma EasyEDA e può essere scaricato a questo link.  Per informazioni sul programma EasyEDAleggete questo articolo.

OpenLog logger seriale

Microcontrollore

Il modulo OpenLog, utilizzato come logger seriale è basato sul microprocessore ATmega328 funzionante a 16MHz grazie al cristallo presente nel circuito. L’ATmega328 ha il bootloader Optiboot caricato su di esso, che consente a OpenLog di essere compatibile con l’impostazione della scheda “Arduino Uno” nell’IDE di Arduino.

OpenLog logger seriale

OpenLog logger seriale

Circuito di alimentazione

Il microprocessore ATmega328 deve essere alimentato a 3,3V, per questo motivo è presente un regolatore tipo MIC 52053 3,3V.

OpenLog logger seriale

Connettore Interfaccia seriale UART

L’interfaccia principale con OpenLog è l’intestazione FTD di tipo seriale UART, posta sul bordo della scheda. Questa intestazione è progettata per collegarsi direttamente a un Arduino Pro o Pro Mini, che consente al microcontrollore di inviare i dati tramite una connessione seriale a OpenLog.

OpenLog logger seriale

Questa connessione hardware è progettata per l’interfacciamento con un OpenLog se è necessario riprogrammare la scheda o registrare i dati su una connessione seriale di base.
Per effettuare il collegamento occorre effettua i seguenti collegamenti:

OpenLogFTDI Basic Breakout
BLKGND
GNDGND
VCC3,3 V
TXORXI
RXTXO
GNRDTR

Si noti che non è una connessione diretta tra FTDI e OpenLog: è necessario scambiare le connessioni dei pin TXO e RXI. Una volta fati i collegamenti si collegherà la scheda FTDI a un cavo USB e al computer.
Per la programmazione si utilizzerà un terminale seriale.
Alcuni link utili, in lingua inglese dal sito Sparkfun:

Connettore SPI

Sulla scheda sono presenti anche i collegamenti tramite interfaccia SPI. È possibile utilizzarli per riprogrammare il bootloader sull’ATmega328.

OpenLog logger seriale

Slot pe scheda microSD

Tutti i dati registrati da OpenLog vengono memorizzati sulla scheda microSD. OpenLog funziona con schede microSD che comportano le seguenti funzionalità: Da 64 MB a 32 GB, FAT16 o FAT32

L’assorbimento di corrente di OpenLog è compreso tra 20 mA e 23 mA quando si scrive su una microSD. A seconda delle dimensioni della scheda microSD e del suo produttore, l’assorbimento di corrente attivo può variare quando OpenLog sta scrivendo sulla scheda di memoria. Aumentando la velocità di trasmissione si aumenterà anche l’assorbimento.

La memoria microSD

Il piccolo modulo (misura solo 18 x 18 x 11 mm) descritto in questa pagina, permette di dotare i progetti Arduino delle memorie MicroSD  (contrazione di Micro Secure Digital, in precedenza TransFlash o T-Flash) , per maggiori informazioni vedere il seguente link.

LED di stato

Sono presenti due  LED di stato su OpenLog utili per la risoluzione dei problemi;
STAT1 – Questo LED indicatore blu è collegato al pin D5 (ATmega328 PD5) e si accende / spegne quando viene ricevuto un nuovo carattere. Questo LED lampeggia quando la comunicazione seriale è in funzione.
STAT2 – Questo LED verde è collegato al pin D13 (SPI Serial Clock Line / ATmega328 PB5). Questo LED lampeggia solo quando l’interfaccia SPI è attiva. Lo si vedrà lampeggiare quando OpenLog registra 512 byte sulla scheda microSD.

Dove trovare il modulo

Il modulo OpenLog, utilizzabile come logger seriale, in questo caso un clone denominato GY Openlog, potrà essere acquistati presso il sito Homotix, il suo costo, al momento dell’uscita dell’articolo è di 8,97€. Ricordo che inserendo il codice di sconto dedicato agli utenti del sito adrirobot avranno uno sconto del 3%.

Base dei collegamenti del modulo OpenLog

Per il collegamento di base del modulo OpnLog sono sufficienti: una scheda Arduini, il modulo OpenLog una breadboard e devi caci di collegamento.

Sotto è riportato lo schema dei collegamenti

Foto del circuito dio prova del modulo Open Log

OpenLog logger seriale

Dettaglio del modulo OpenLog collegato alla scheda Arduino, l’accensione del led, segnala che è in atto un’operazione di scrittura sulle memoria MicroSD

OpenLog logger seriale

Programma di test

Per verificare il funzionamento del modulo OpenLog è possibile utilizzare un semplice Sketch.
Per la gestione del modulo OpenLog, non è necessaria nessuna libreria esterna, ma  si farà uso della libreria interna SoftwareSerial.
Questa è stata sviluppata per consentire la comunicazione seriale su altri pin digitali di Arduino, lasciando liberi i pin 0 e 1, per la programmazione di Arduino, questo software replica la funzionalità (da cui il nome ” SoftwareSerial “).
È possibile avere più porte seriali software con velocità fino a 115200 bps.  Per la sua attivazione dovranno essere indicati i pin utilizzati RX e TX.

Video illustrativo

Sotto il filmato pubblicato da Paolo Aliverti, sul suo canale su YouTube ha pubblicato moltissimi video in cui tratta argomenti teorici e propone esempi pratici, alla portata di tutti. I video sono organizzati in playlist, a seconda dei vari argomenti.
Nel filmato specifico è spiegato, tra l’altro, in dettaglio lo sketch utilizzato per il test.