Firmware - Gennaio 2015 / N°108 - (Page 17)
SKILLS
esempio i campionamenti dei sensori capacitivi e le conversioni ADC.
In modalità inattiva l'obbiettivo principale è preservare la batteria. Sicuramente
andrà implementato un algoritmo lowpower di risveglio al tocco, per determinare quando è necessario passare in
modalità attiva. Per esempio si può decidere di campionare solo uno switch alla
frequenza di 1-10Hz per verificare se un
dito è stato appoggiato sulla piazzola capacitiva. Si può utilizzare un low power
RTC per pianificare questi controlli. Il
consumo di corrente in fase inattiva dovrà essere compreso tra 1 e 3 µA.
PROGETTAZIONE DELL'HARDWARE
I passi fondamentali per la progettazione
dell'hardware sono:
- eterminare il numero di aree capacitiD
ve necessarie al sistema.
- elezionare una MCU low power con
S
funzionalità di rilevamento capacitivo.
- rogettare il PCB
P
Il numero di zone capacitive dipende dalla
complessità dell'interfaccia utente, ogni
pulsante capacitivo necessità di un solo
ingresso touch, mantre slider e control
wheel sono solitamente realizzati con un
numero di ingressi variabile da 4 a 8.
Una volta decisi il numero di ingressi si
procede alla scelta della MCU.
L'MCU dovrà avere una modalità di sleep
estremamente efficiente e supportare dei
risvegli periodici (per esempio potrebbe
avere un real time clock). Una famiglia di
CPU molto indicata per queste applicazioni è la C8051F99x di Silicon Labs [1].
Le caratteristiche di questa famiglia
"F99x" sono:
- lash integrata (8 KB), RAM integrata (512
F
byte) e una CPU che garantisce 25MIPS
con 150µA/MHz di consumo in fase attiva.
- cquisizione autonoma di ingressi capaA
citivi, con tempo di conversione inferiore
a 40µs.
- na modalità di sleep che porta il conU
sumo a 300nA con LFO interno e tempi
di risveglio di 2µs.
- n ADC integrato da 10bit e 300Ksps
U
oppure da 12 bit a 75ksps.
- 3/14 ingressi capacitivi in un conteni1
tore ridotto.
La scelta del dispositivo giusto può essere fatta anche valutando le architetture di MCU che portano ulteriori vantaggi,
per esempio la possibilità di campionare
più canali in una singola conversione. Per
esempio la famiglia F99x permette di collegare internamente più ingressi capacitivi e analizzarli in una singola conversione. Questo può far risparmiare energia e
tornare utile per la funzionalità di risveglio collegando insieme più sensori capacitivi. Ovviamente questa funzionalità
deve essere abbinata ad un layout dove
tutte le aree capacitive abbiano la stessa
dimensione e forma per evitare sbilanciamenti nella misura.
La periferica si sensing capacitivo interna
alla MCU F99x (denominata CS0) ha un
oscillatore dedicato che controlla i tempi
di conversione, indipendente dal clock di
sistema. Questo permette di poter mette
la MCU in una modalità di sospensione
quando la conversione è in corso. In più
la funzionalità di risveglio della CPU dalla
modalità di sospensione al termine della
conversione è già integrata.
Se l'applicazione viene inserita in un ambiente soggetto a disturbi sarà necessario
eseguire più conversioni per essere sicuri
di avere una certa risoluzione sull'individuazione del tocco. La CS0 è in grado di
eseguire una media delle conversioni basata su 1,4, 8, 16 ,32 o 64 campioni, senza
intervento della CPU.
REALIZZARE IL PCB
La parte finale è quella che prevede la realizzazione del PCB. Un ottimo spunto lo
possono fornire le schede di valutazione
che solitamente sono disponibili per le
MCU con funzionalità di sensing capacitivo. Rimanendo sulla famiglia F99x, possiamo considerare la F990 Slider Evaluation Board, in figura 2.
La sorgente di potenza è una batteria
CR2032 accompagnata da una capacità
di disaccoppiamento da 1µF. La capacità risulta necessaria perché la batteria ha
un elevata impedenza in uscita e la sua
corrente di picco è limitata. La capacità
aiuta a risparmiare batteria e ad integrare
le richieste di corrente impulsive.
La MCU installata è la C8051F990, in un
contenitore da 3x3 mm, con 16 pin di I/O.
All'esterno gli unici componenti richiesti
sono un pull-up per la linea di reset e una
capacità per il pin di Vdd. La scheda è
equipaggiata con 10 LED e con 10 resistenze di limitazione per la corrente.
La parte più interessante della scheda
sono le 6 zone capacitive utili a generare
un interfaccia utente. Le zone sono realizzate con pattern a "v" in maniera da poter essere usate singolarmente come pulsanti o combinate come cursori. La parte
superiore delle piazzole è rivestita in maniera da proteggerle dalle ESD e ottenere
una superfice uniforme al tocco.
La MCU della scheda dispone di 13 pin in
grado di effettuare il sensing capacitivo,
per il collegamento alle pad l'ideale sarebbe realizzare le piste di collegamento
sul lato inferiore di una scheda a 2 facce
oppure su un lato interno di una scheda
multistrato. Un'interessante nota tecnica
applicativa per comprendere come realizzare il PCB è la AN447: Printed Circuit
Design Notes for Capacitive Sensing with
the CS0 Module[2].
1. C8051F99x Datasheet: https://www.silabs.com/Support%20Documents/TechnicalDocs/C8051F99x.pdf
2. l'AN447: Printed Circuit Design Notes for Capacitive Sensing with the CS0 Module
https://www.silabs.com/Support%20Documents/TechnicalDocs/C8051F99x.pdf
https://www.silabs.com/Support%20Documents/TechnicalDocs/C8051F99x.pdf
http://www.ie-cloud.it/web/contatti/
Tabella dei contenuti per la edizione digitale del Firmware - Gennaio 2015 / N°108
SOMMARIO
Tips’n Tricks Energy Harvesting
FOCUS La Rivoluzione Biomedicale “Bottom-Up”
Skills Low Power Capacitive Sensing
INside
USB 3.0: SuperSpeed con il “-25%” dei Consumi!
Com’è Fatta una Penna USB?
ANALOG Gestire la Luce Ambiente con TI OPT3001
SPOTlight Migliori Prestazioni dai Ricevitori “Very Wide Band” a Conversione Diretta
Tools Le “function priority” di Portos
News
EVENTS
Guida
Firmware - Gennaio 2015 / N°108
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2015-02_109
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2015-01_108
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-12_107
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-11_106
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-10_105
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-09_104
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-07_102
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-06_101
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-05_100
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-04_99
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-03_98
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-02_97
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-01_96
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-12_95
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-11_94
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-10_93
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-09_92
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-07_90_91
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-06_89
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-05_88
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-04_87
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-03_86
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-02_85
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-01_84
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-12_83
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-11_82
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-10_81
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-09_80
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-07_78-79
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-06_77
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-05_76
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-04_75
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-03_74
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-02_73
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-01_72
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-12_71
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-11_70
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-10_69
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-09_68
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-07_66_67
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-06_65
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-05_64
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-04_63
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-02_62
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2011-02_61
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2011-01_60
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-12_59
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-11_58
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-10_57
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-09_56
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2010-07_54-55
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2010-06_53
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Maggio-2010-52
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Aprile-2010-51
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Marzo-2010-50
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Febbraio-2010-49
https://www.nxtbookmedia.com