domenica 23 marzo 2014

Trasmissione dati di sensori via Bluetooth 4.0 - parte 1: il progetto

Si è imposto ormai da parecchio tempo il protocollo Bluetooth 4.0 (BLE: Bluetooth Low Energy), che non è la semplice evoluzione degli standard precedenti, ma rappresenta un nuovo sistema per far comunicare apparecchiature hardware con un consumo estremamente ridotto.
Questo apre scenari davvero interessanti, si pensi ad esempio all'uso dei Beacon per le applicazioni di micro-location e notifica a dispositivi smartphone, con l'impiego di Beacon la cui batteria dura mesi.

Anche i dispositivi iOS recenti (iPhone dal 4S in poi) dispongono di questo tecnologia, che può essere utilizzata con molta facilità.

Il progettino qui descritto è finalizzato all'acquisizione di un segnale da un sensore (nel mio caso un potenziometro) e la trasmissione in tempo reale del dato via Bluetooth, nel mio caso una app per iPhone.

RedBearLab ha a catalogo una piccola shield dal costo ridotto che copre perfettamente tutte le esigenze di trasmissione/ricezione dati BLE con Arduino.
Il prodotto si chiama BLE mini e è costituito da una piccola scheda che all'occorrenza può essere alimentata tramite una batteria tampone che ne garantisce il funzionamento per parecchie settimane.




La scheda dispone di 4 pin (P0 e Reset non vanno collegati) che vanno interfacciati
 ad Arduino con questo schema:

VIN > 5V
GND > GND
TX > Pin 8
RX > Pin 9



Questo differisce da quanto riportato nella documentazione, dove gli esempi riportano il collegamento di TX/RX ai pin 0/1, normalmente utilizzati da Arduino per la trasmissione seriale.
Il motivo è quello di non interferire con l'interfaccia seriale verso il pc che utilizza appunto normalmente i pin 0/1. Per ottenere il routing verso i pin 8/9 ho utilizzato la libreria AltSoftSerial.

Per completare i collegamenti, ho previsto un Led con la classica resistenza da 1K dal pin 7 verso GND, e un potenziometro lineare collegato in modo da fornire sul pin A0 una tensione tra 0-5V in funzione della sua rotazione.

Nessun commento:

Posta un commento