comunicazione tra circuiti

Arduino datalogger con pc

Come realizzare un datalogger utilizzando Arduino e un pc

Il datalogger è uno di circuiti che fanno parte del bagaglio tecnico di chi come noi smanetta con l’elettronica e l’informatica. Il suo funzionamento è in effetti semplice ma allo stesso tempo utile per realizzare tutte quelle applicazioni in cui è necessario acquisire e registrare dati (digitali o analogici), pensiamo a tutti i sistemi di monitoring (energia, gas, acqua …) alle stazioni meteo o a sistemi di controllo. Esistono circuiti dedicati che eseguono funzioni di datalogging locale e remote, persino cloud, dai costi variabili da poche decine di euro a centinaia di euro a seconda della robustezza e della precisione dei circuiti.
Per impadronirci anche di questo aspetto possiamo realizzare il nostro datalogger usando il nostro caro Arduino. Il logging può avvenire sia sui pin analogici che su quelli digitali a seconda dei segnali e dei sensori collegati alla scheda.

In questo tutorial utilizzerò i sei pin analogici della scheda per acquisire dei segnali analogici ed inviarli al pc, tramite la porta seriale, dove avverrà la memorizzazione dei dati. Ho deciso di non memorizzare i dati sulla scheda per far capire come inviare i dati e come sincronizzazione la comunicazione tra i due dispositivi.Come scheda ho impiegato la Arduino Ethernet e lato pc ho utilizzato Microsoft Visual C# 2012 (su Windows 8) per scrivere il programma di logging.

Continua a leggere

Comunicazione tra Arduino tramite I2C

Come collegare due Arduino usando il bus I2C.

Una caratteristica che reputo molto interessante è la possibilità di espandere Arduino tramite l’uso di shield. La maggior parte di queste schede aggiuntive sono però progettate per compiere una funzione specifica, non programmabile.
Esistono alcuni metodi che permettono di comunicare con altri dispositivi utilizzando come canale di trasmissione dati i protocolli seriali (I2C, SPI o RS232). Questo rende possibile demandare ad una scheda slave funzioni di elaborazione gravose, che non vogliamo far eseguire alla scheda master. Ho realizzato questo piccolo tutorial usando il bus I2C per creare uno scambio dati tra un Arduino ed un chip ATmega328 standalone.

Bus i2c

Il bus I2C, basandosi su due fili, non permette la comunicazione contemporanea tra Master e Slave. Lo scambio dati deve essere gestito dal Master tramite gli indirizzi (univoci) degli slave. Il flusso può essere sintetizzato in questo modo

  1. Il Master invia sul bus un bit di start
  2. Il Master invia sul bus l’indirizzo dello slave con cui vuole comunicare
  3. Il Master decide se scrivere o leggere dal dispositivo
  4. Lo Slave legge o scrive in base alla richiesta del Master

Continua a leggere

RS422 comunicazione seriale utilizzando Arduino

Come utilizzare dei convertitori TTL/RS422

La comunicazione seriale RS422 è uno standard che prevede l’utilizzo di due fili per trasmettere i dati. Questo standard permette di realizzare una comunicazione con dispositivi che si trovano a distanze considerevoli (1000-1500 mt) grazie all’alta immunità ai disturbi e alla sensibilità dei circuiti di ricezione. Le velocità di trasmissione possono raggiungere su brevi distanza (circa 1mt) i 10Mb/s mentre si scende a circa 100Kb/s per distanze intorno ai 1000 mt. La RS422 è tipicamente impiegata in ambito industriale.

Nella figura seguente viene illustrato lo schema a blocchi composto da due driver che codificano e decodificano il segnale in ingresso.
Questo segnale viene messo in uscita, dal primo driver, con opposizione di fase,  e tramite una coppia di fili viene inviato al driver ricevente che ha il compito di ricostruirlo come in ingresso.
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