Jednoduchý dotykový senzor
Kapacitný dotykový senzor s ATtiny2313.
ChaN, 25.01.2010-23:59
Princíp kapacitného dotykového senzoraKapacitné senzory detekujú zmeny kapacity na snímacej elektróde priložením vodivého objektu, ako napríklad ľudského prstu. Existuje niekoľko metód používaných na snímanie, v tomto prípade je využitá
integračná metóda, ktorú si niektorý z vás iste pamätajú z článku o
merači kapacity. Zmeny kapacity sú veľmi malé, okolo 1 až 10 pF, dajú sa však zistiť veľmi ľahko, keďže dosiahnuté rozlíšenie je 20fF. Z princípu vyplýva, že objekty, ktoré chceme detekovať, musia byť uzemnené (vytvorenie prídavnej kapacity
Cx, viď. obrázok B ).
Avšak, metóda funguje dokonca aj, ak je ľudské telo izolované od zeme. Ako je to možné, nám priblížia nasledujúce riadky.
Vodivý objekt s určitou plochou má vlastnú kapacitu. V prípade ak má objekt tvar gule kapacita
C=4πε0r, kde
ε0 je
permitivita vákua a
r je polomer. Ľudské telo má podľa modelu pre ESD testy kapacitu približne 100pF, čo je hodnota dostatočne veľká v porovnaní s
Cs. Preto môžeme ľudské telo považovať za uzemnený vodič, aj keď priamo uzemnené nie je. Je však spojené zo zemnou pomocou parazitných kapacít a to umožňuje vytvorenie kapacity
Cx.
HardwareElektródy (dotykové plochy) sú 10mm medené štvorce položené na DPS a prekryté izolačnou vrstvou (
páskou Kapton). V detekčnom "obvode" je na každom pine ATtiny2313 pripojený 1MOhm pull-up rezistor. V normálnom stave (stav bez dotyku) je čas integrácie daný hodnotou pull-up rezistora a parazitnou kapacitou na pinoch mikrokontroléru a elektródach. Keď sa dotkneme dotykovej elektródy prstom, čas integrácie sa zvýši, čo má za následok detekciu dotyku. Aktuálne sa čas integrácie pohybuje od niekoľko jednotiek mikrosekúnd po niekoľko desiatok mikrosekúnd.
SoftwareV prvom rade zariadenie skalibruje každý detekčný bod (referenčný čas integrácie spôsobený kapacitou
Cs) a následne sa spustí skenovanie jednotlivých dotykových bodov, ktoré prebieha s konštantnou periódou. Ak sa zvýši čas integrácie a prekročí sa jeho prahová hodnota, je to vyhodnotené ako dotyk na danom dotykovom bode. K prekročeniu prahovej hodnoty je potrebná určitá hysteréza a ak sa dotykovej plôšky dotkneme napr. iba polovicou prsta nebude to vyhodnotené ako dotyk, ale výstup bude nestabilný. Meranie času v každom dotykovom bode je rovné času integrácie, takže meranie môže byť veľmi rýchle. Kapacita je daná meraním času integrácie, pomocou komparátora a interného časovača s funkciou zachytávania. Táto funkcia však nie je k dispozícii na všetkých I/O pinoch. Ak chceme implementovať dotykový senzor na každý I/O pin, čas integrácie musí byť meraný softwarovo a tým nám narastie rozlíšenie na 3 hodinové takty (375ns).
ZáverV konečnom dôsledku, môžem povedať, že kapacitné dotykové senzory sa dajú ľahko realizovať na väčšine mikrokontrolérov. Pre správne fungovanie, môže mať izolačná vrstva hrúbku až 1mm (v závislosti od dielektrickej konštanty materiálu). Pri použití ATtiny2313, môže byť v jednom module integrovaných až 15 dotykových plôšok. Firmware mikrokontroléru (v prílohe pod článkom) použitý v tomto projekte je na experimentálne účely a nebol testovaný pri nepriaznivých vplyvoch ako je napríklad šum a vlhkosť, takže pre seriózne použitie by vyžadoval doprogramovať minimálne algoritmus na odstránenie šumu. Video, na ktorom si môžte pozrieť funkčnosť tohto zariadenia
nájdete tu.
Homepage projektu:
http://elm-chan.org/works/capsens/report_e.htmlZverejnené zo súhlasom autora.Preklad:
Kiwwicek
tento článok je z mikroZONE
( https://mikrozone.sk/pluginy/content/content.php?content.38 )