martedì 28 novembre 2017

Android RS232

E' interessante la possibilità di utilizzare uno smartphone Android per connettersi ad un dispositivo elettronico mediante la tradizionale connessione seriale RS232. Esistono degli adattatori USB/seriale RS232 che si possono utilizzare con smartphone dotati di supporto USB OTG. In particolare l'adattatore basato su PL2303HXD della Prolific mette a disposizione una app di emulazione terminale e delle API per realizzare programmi di comunicazione e acquisizione dati.
Nella foto che segue uno smartphone connesso ad un misuratore di campo PMM8053:


Sviluppare una applicazione Android che scambi dati via linea seriale/USB non è tuttavia una cosa semplicissima. Occorre innanzitutto installare l'ambiente di sviluppo Android Studio che a sua volta richiede l'installazione dell'ambiente di sviluppo Java JDK.E' poi richiesta una sufficiente conoscenza del linguaggio Java e della sintassi XML.

giovedì 22 giugno 2017

Processing, DAQ e grafici

L'interfaccia seriale è ancora largamente utilizzata da molta strumentazione elettronica per scambiare dati con un personal computer. Quest'ultimo è spesso utilizzato per raccogliere dati (DAQ: Data Acquisition) e presentarli all'utilizzatore in una interfaccia grafica più o meno accattivante. Il linguaggio Processing (https://processing.org) si presta bene a questi scopi.

Un esempio
Sulla rivista Elektor (Mar.-Apr. 2015) è apparso un articolo "Security Labels are the key" in cui una scheda Arduino viene utilizzata per rilevare la frequenza di risonanza di una lamina antitaccheggio utilizzata in molti prodotti di consumo. La scheda invia su linea seriale il livello di segnale ai capi di una bobina che viene sollecitata con una serie di frequenze da 52 a 64 kHz.

Un programma Processing che gira su PC riceve dalla scheda Arduino via linea seriale i dati delle frequenze e genera un grafico (istogramma) in cui risulta con evidenza una frequenza di risonanza.




 L'ambiente di sviluppo (IDE) di Processing e quello di Arduino sono molto simili, il secondo infatti è derivato dal primo, come Wiring (http://wiring.org.co) il precursore di Arduino.