Tutorial Arduino

Impara a programmare Arduino in modo semplice seguendo i miei articoli Tutorial Arduino. Seguendo passo passo le istruzioni dei miei articoli potrai imparare in modo semplice  e rapido a sviluppare i tuoi progetti

Arduino come utilizzare l’RTCC MCP7940N

Accedere ai registri dell’MCP7940N usando Arduino

Molti tutorial sull’utilizzo di un RTCC (Real Time Clock and Calendar) con Arduino riguardano l’integrato DS1307 in quanto la sua diffusione è data dalla disponibilità di diverse librerie, dal costo contenuto e dalla sua integrazione in numerose shield. Nonostante ciò sul mercato esistono molti altri dispositivi interessanti che svolgono funzioni aggiuntive e hanno precisioni molto più elevate riguardo al conteggio del tempo.

Mi sono trovato a realizzare dei progetti che come specifica richiedevano una alimentazione di 3,3V, dato che il DS1307 lavora tra i 4,5V e i 5,5V ho dovuto ripiegare su un altro rtcc. Quello che ho scelto è l’MCP7940N prodotto da Microchip. Nonostante non sia disponibile la versione PDIP ho scelto questo integrato perché oltre a lavorare con tensione di alimentazione di 3,3V ha alcune altre funzioni interessanti come la possibilità di impostare due allarmi e la possibilità di calibrare l’orologio per poter aumentare la sua precisione nel conteggio del tempo.

Continua a leggere

Genuino 101 gpio Speed Test

Misura della velocità di commutazione di un pin della Genuino 101

Ho acquistato la Genuino 101 di recente e ho realizzato un semplice gpio speed test per misurare e soprattutto paragonare la velocità di commutazione di un pin digitale rispetto alle altre schede in mio possesso. Lo schema elettrico che ho realizzato per effettuare la misura è il seguente:

Genuino 101 Gpio Speed test

Il codice caricato sulla Genuino 101 permette tramite un ciclo while di eseguire continuamente la commutazione, da uno stato alto ad uno basso, di un pin della scheda:

Continua a leggere

Arduino gps ottenere coordinate geografiche e orario

Come utilizzare un ricevitore gps con Arduino

Il ricevitore GPS (Global Positioning System) è oggi un dispositivo alla portata di tutti, dal costo contenuto e dal semplice utilizzo. Questo articolo vuole essere una guida introduttiva all’interpretazione dei dati di posizione forniti dal ricevitore gps, senza utilizzare librerie esterne. Ho utilizzato una scheda Arduino/Genuino UNO e il modulo Adafruit Ultimate GPS Breakout v3 (vedi l’articolo su Amazon).

arduino Gps

Il modulo ha una sensibilità di ben -165dBm (in tracking), questo significa che riesce a rilevare segnali di 1.25nVolt, ha un refresh di 10 Hz e permette di ‘inseguire’ 22 satelliti.

Questo dispositivo rende semplice la gestione del tracking dei satelliti ed del calcolo della posizione. I dati vengono restituiti sul canale seriale TTL, alla frequenza di 1Hz. E’ sufficiente collegarsi alla seriale per poter leggere i dati. I dati principali sono quelli di posizione (espressa in Latitudine e Longitudine) la quota e l’orario zulu ma sono presenti anche altre informazioni relative ai satelliti utilizzati per il fix.

Continua a leggere

Come usare il sensore di luminosità TSL2591

Misurare l’intensità luminosa col sensore TSL2591

Il sensore TSL2591 permette di misurare l’intensità luminosa di un ambiente. Ha una buona capacità di campionamento ed in particolare permette con un solo sensore di rilevare sia lo spettro IR sia quello visibile. Il range di misurazione va da 188 Lux sino ad arrivare ad 88000 Lux (unità di misura Lux).
Nella figura seguente potete osservare il diagramma del circuito:

TSL2591 Diagramma di funzionamento

La conversione dei due canali viene eseguita contemporaneamente. Al termine del ciclo di conversione i dati vengono memorizzati nei relativi registri (CH0 Data e CH1 Data). Dopo la memorizzazione dei dati viene automaticamente eseguita la misurazione successiva.

Continua a leggere

Arduino. Utilizzare la rete GSM per progetti IoT

Come utilizzare Arduino e rete gsm per progetti IoT

Sentire parlare di progetti IoT è quasi diventata una moda e nonostante la realizzazione di progetti più o meno interessanti, possiamo confermare che il mercato è in forte espansione e l’industria sta investendo ingenti capitali. Uno degli aspetti chiave dell’internet delle cose è sicuramente la remotizzazione dei dispositivi. Vengono perciò progettate reti dedicate, come la rete Sigfox oppure il sistema LoRa caratterizzate da lunghe distanze operative e bassi consumi.
Un altro canale di comunicazione che sta ritornando in uso è la rete gsm, forte della sua alta percentuale di copertura del territorio nazionale e un uso ormai semplificato grazie a libreria pronte all’uso.
Nonostante i moduli GSM abbiano un consumo energetico maggiore rispetto a quelli SigFox e LoRa, rimane comunque un sistema molto valido soprattutto in attesa che anche nel nostro paese vengano realizzate reti IoT dedicate.

Esistono diverse shield gsm o moduli stand alone che permettono di costruire circuiti capaci di dialogare tra loro a grandi distanze. La shield ufficiale Arduino è da tempo indisponibile, nonostante esiste una seconda versione, viste le diatribe tra le due società Arduino, ho preferito usare un altro prodotto ed in particolare quello sviluppato da Mikroelektronica che si basa sul modulo M95A perché  ha un costo contenuto ed è compatibile con la libreria ufficiale disponibile nell’ide sviluppato da Arduino.cc.

Continua a leggere

Arduino, Time, TimeAlarms e DS1307RTC

Come gestire il tempo con Arduino

I microcontrollori funzionano grazie ad una sorgente di clock che permette di temporizzare e sincronizzare tutti i moduli che lo compongono. Il clock è un segnale con una frequenza fissa e stabile tipicamente prodotta da un oscillatore al quarzo. Questo segnale è la base per tutte quelle applicazioni che devono gestire date e orari. In effetti esistono molte applicazioni in cui la gestione del tempo è il fattore principale, pensiamo a tutti quegli automatismi che vengono attivati in funzione dell’ora e della data corrente o che devono compiere delle azioni cicliche.
La gestione del tempo viene affidata a librerie esterne all’Arduino IDE, on line troviamo decine di progetti, quella che io utilizzo è la libreria Arduino Time scritta da Michael Margolis. Questa libreria comprende le classi Time, TimeAlarms e DS1307RTC, con cui è possibile avere un controllo pressoché completo sulle data e sull’orario.

La sorgente di clock alla base della generazione del dato di tempo può essere quella interna al microcontrollore oppure quella gestita da un circuito esterno, tipicamente chiamato Real Time Clock(RTC) come l’itegrato DS1307.
La differenza sostanziale è che usando un RTC avremmo sempre a disposizione il tempo e la data correnti poiché questo circuito tiene in memoria il conteggio impiegando una batteria tampone. Quando la base dei tempi è il clock interno del mirocontrollore, avremo il vantaggio di risparmiare sul costo dell’hardware esterno, ma purtroppo in caso di reset o mancata alimentazione del circuito, la perdita del conteggio. Quindi quando il nostro progetto ha bisogno di avere una fonte temporale sicura è consigliato l’uso di un circuito RTC. Per tutte le applicazioni di test possiamo invece utilizzare il conteggio interno del microcontrollore.

Continua a leggere

Arduino Day 2015 in Sardegna

Arduino Day 2015 si festeggia il compleanno di Arduino

Due gli eventi sardi per festeggiare la scheda di prototipazione creata da M. Banzi e Co. Le manifestazioni sono state organizzate dal Fablab Sardegna Ricerche e dall’Arduino User Group Cagliaritano. Quello a cui ho assistito è stato ospitato dall’istituto superiore Buccari Marconi di Cagliari in collaborazione col Fab Lab Sardegna Ricerche.

Arduino day 2015 cagliari sardegna

Oltre alle ormai onnipresenti stampanti 3D, tra le quali una realizzata dagli studenti dell’istituto, sono stati presentati anche diversi progetti di domotica e automazione.

Continua a leggere

Come configurare ed utilizzare la Bluerelay Shield by LemonTech

Utilizzare la BlueRelay per progetti di domotica

Ho ricevuto da Mauro Alfieri una shield per Arduino da lui sviluppata in collaborazione con Luca Dentella che permette, tramite una comunicazione seriale via Bluetooth, di interagire con Arduino.

LemontechBluetooth

Il cuore della scheda è un transceiver HC-05 che permette di instaurare la comunicazione bluetooth di inviare e ricevere dati utilizzando il semplice protocollo seriale. La shield possiede anche due relè che possono essere utilizzati per comandare direttamente altri dispositivi.

Continua a leggere

Rimani aggiornato

La mia lista dei prodotti
Compra su Amazon Italia

Compra su Amazon Italia
Sondaggi

Arduino.cc vs Arduino.org

Visualizza risultati

Loading ... Loading ...
Seguimi su Twitter