Obsługa rezystancyjnych paneli dotykowych w systemach mikroprocesorowych
Czwartek, 01 Październik 2009
Panele dotykowe to przyszłość. Dziś, chyba już nikt nie ma
wątpliwości, co do słuszności tego stwierdzenia, wszak stawiają
one na zupełnie nowej płaszczyźnie interakcję urządzenia
z użytkownikiem. W tej chwili trudno już sobie wyobrazić
nowoczesny system nawigacji satelitarnej, współczesny telefon
komórkowy czy też mały, przenośny komputer bez tego cennego
wynalazku, a skoro taki jest kierunek rozwoju współczesnej
elektroniki użytkowej, czemu nie skorzystać z możliwości, jakie
daje nam ten prosty a zarazem genialny element, tym bardziej,
iż jest on w zasięgu możliwości finansowych i technicznych także
elektroników amatorów.
57ELEKTRONIKA PRAKTYCZNA 10/2009
Obsługa rezystancyjnych paneli dotykowych w systemach mikroprocesorowych
Generalnie, pomijając dość egzotyczne
rozwiązania, panele dotykowe wykonane
są jako panele rezystancyjne lub pojemno-
ściowe, co determinuje sposób ich obsługi.
W tym artykule opiszę najprostszy a zarazem
najtańszy, 4-przewodowy panel rezystancyj-
ny. Dla porządku należy wspomnieć, iż na-
wet panele rezystancyjne produkowane są
w kilku wykonaniach, różniących się sposo-
bem ich obsługi, gdyż można spotkać panele
rezystancyjne 5-, 6-, 7- oraz 8-przewodowe,
które różnią się przede wszystkim możliwą
do osiągnięcia rozdzielczością odczytu.
Wybór 4-przewodowego panelu rezystan-
cyjnego podyktowany był łatwością obsługi,
dostępnością, a także ceną. Oczywiście, ist-
nieją gotowe układy scalonych kontrolerów
paneli dotykowych (choćby w ofercie firmy
Texas Instruments), lecz rezystancyjny panel
dotykowy może być obsłużony za pomocą
pierwszego, lepszego mikrokontrolera wypo-
sażonego w przetwornik A/C.
W dużym uproszczeniu, panel dotykowy
zbudowany jest z dwóch, przeźroczystych
folii rezystancyjnych (jako medium rezystan-
cyjne używany jest tlenek cynkowo-indowy)
umieszczonych jedna nad drugą, przedzie-
lonych odpowiednio przygotowanym die-
lektrykiem i naklejonych na płytce szklanej
niewielkiej grubości, którą to najczęściej
umieszcza się na wyświetlaczu LCD. Każda
Obsługa rezystancyjnych
paneli dotykowych
w systemach
mikroprocesorowych
Panele dotykowe to przyszłość. Dziś, chyba już nikt nie ma
wątpliwości, co do słuszności tego stwierdzenia, wszak stawiają
one na zupełnie nowej płaszczyźnie interakcję urządzenia
z użytkownikiem. W tej chwili trudno już sobie wyobrazić
nowoczesny system nawigacji satelitarnej, współczesny telefon
komórkowy czy też mały, przenośny komputer bez tego cennego
wynalazku, a skoro taki jest kierunek rozwoju współczesnej
elektroniki użytkowej, czemu nie skorzystać z możliwości, jakie
daje nam ten prosty a zarazem genialny element, tym bardziej,
iż jest on w zasięgu możliwości finansowych i technicznych także
elektroników amatorów.
z tych folii ma umieszczone na brzegach
elektrody, przy czym na jednej z folii umiesz-
czone są one wzdłuż osi X, a na drugiej
wzdłuż osi Y. Wspomniany dielektryk wyko-
nany jest w taki sposób, aby po miejscowym
przyciśnięciu panelu nastąpiło elektryczne
połączenie warstw obu folii w miejscu naci-
sku. W ten sposób powstaje prosty dzielnik
rezystancyjny, który odpowiednio spolaryzo-
wany pozwala na odczyt położenia miejsca
styku. Poglądowy rysunek budowy panelu
rezystancyjnego wraz ze schematem funk-
cjonalnym przedstawiono na rysunku rys. 1.
Modelem panelu rezystancyjnego może
być układ dwóch potencjometrów, których
ślizgacze połączone są ze sobą w miejscu
odpowiadającym zwarciu płaszczyzn (miej-
scu temu odpowiadają położenia ślizgaczy),
z uwzględnieniem niewielkiej rezystancji
styku RT
. Z analizy tego schematu ideowego
nasuwa się prosta metoda na wyznaczenie
szukanych parametrów położenia polegająca
na pomiarze spadków napięć na powstałym
dzielniku rezystancyjnym, oddzielnie dla osi
X i Y. Jest to równoważne położeniu miejsca
styku obu folii. Wystarczy jedną z osi spola-
ryzować napięciem stałym i na jednym z za-
cisków drugiej osi odczytać zmierzony spa-
dek napięcia, a następnie dokonać takiego
samego pomiaru w sytuacji odwrotnej.
W tym przykładzie, do polaryzacji obu
osi (warstw folii rezystancyjnej) użyjemy
portów GPIO, ustawiając na nich przeciw-
ne stany logiczne, zaś do odczytu poziomu
napięcia, wbudowanego w mikrokontroler
Atmega32 10-bitowego przetwornika analo-
gowo-cyfrowego pracującego w trybie poje-
dynczego pomiaru. Pomiar dokonywany jest
dla każdej z osi naprzemiennie z użyciem
alternatywnych funkcji portu PORTA mi-
Rys. 1. Poglądowy rysunek budowy panelu rezystancyjnego, widok złącza oraz schemat
funkcjonalny
Notatnik konstruktora
58 ELEKTRONIKA PRAKTYCZNA 10/2009
Notatnik konstruktora
krokontrolera. W przypadku tego typu pola-
ryzacji należy pamiętać o tym, aby nie prze-
kroczyć maksymalnego prądu poszczegól-
nych wyprowadzeń portu, a także mieć na
uwadze zalecenie producenta, by w czasie
konwersji pomiaru realizowanej przez prze-
twornik ADC nie dokonywać zmiany stanów
portu PORTA. Oczywiście przetwornik ADC
przed pierwszym użyciem musi zostać skon-
figurowany i włączony, co sprowadza się do
ustawienia odpowiednich rejestrów konfigu-
racyjnych.
Ta najprostsza metoda jest wystarczająca
jeśli planowana, programowa rozdzielczość
naszego panelu ma być niewielka (tzn. prze-
widziano niewielką liczbę aktywnych pól
o sporych rozmiarach) lecz zwykle zawodzi,
gdy chcemy wykorzystać pełną rozdziel-
czość wyświetlacza LCD jaki ma być obsługi-
wany przez nasz panel. Niekorzystnym zja-
wiskiem, które komplikuje obsługę panelu są
zakłócenia komutacji charakterystyczne dla
obsługi przycisków w systemach mikropro-
cesorowych. Dodatkowym problemem jaki
może się pojawić jest dopuszczalna wielkość
elementu, za pomocą którego chcemy obsłu-
giwać taki panel, która to determinuje za-
równo maksymalną, możliwą do osiągnięcia
rozdzielczość panelu jak i kształt programu
obsługi (jego złożoność). Na rysunku rys. 2
przedstawiono przebiegi stanów przejścio-
wych przy obsłudze panelu za pomocą de-
dykowanego rysika jak i palca ? wykonano
pomiary dla przypadku właściwej i niewła-
ściwej siły nacisku na powierzchnię panelu.
Należy także pamiętać, iż pole panelu
obsługi jest z reguły większe aniżeli aktyw-
ny obszar wyświetlacza LCD, stąd skrajnym
położeniom obrazu nie odpowiadają skrajne
(0 i max) wartości spadków napięć, co na-
leży uwzględnić w procedurze skalowania.
Procedura ta powinna ponadto uwzględniać
odpowiedni margines bezpieczeństwa po-
między poszczególnymi polami odwzorowu-
jącymi położenia wirtualnych przycisków,
tak by nie dochodziło do niepotrzebnych de-
tekcji naciśnięcia elementów znajdujących
się w pobliżu miejsca styku. Przykładowy
wygląd panelu dotykowego z podziałem na
aktywne, programowe pola pokazano na ry-
sunku rys. 3 (zaznaczono bezwzględne war-
tości otrzymane z przetwornika A/C).
Jednym ze sposobów zabezpieczenia się
przed problemami zakłóceń komutacji jest
ustalenie jakiegoś minimalnego progu, który
informuje o tym, że panel został naciśnięty,
a następnie wykonanie serii pomiarów dla
każdej z osi, odrzucenie pomiarów skrajnych
i obliczenie średniej wartości z pozostałych
pomiarów. Procedura ta jest dość dobra, lecz
nie zawsze okazuje się wystarczająca, gdyż
nadal istnieje ryzyko błędnych odczytów.
Doświadczenie zebrane na etapie wielu prób
z panelami dotykowymi użytymi w kilku
aplikacjach układowych pokazało, iż najlep-
Rys. 2. Przykładowe przebiegi stanów przejściowych przy obsłudze panelu dotykowego
Rys. 3. Przykładowy wygląd panelu dotykowego z podziałem na aktywne pola
programowe (zaznaczono bezwzględne wartości otrzymane z przetwornika A/C)
Rys. 4. Konfiguracja pomiarowa panelu dotykowego dla każdego z czterech kroków
pomiarowych
59ELEKTRONIKA PRAKTYCZNA 10/2009
Obsługa rezystancyjnych paneli dotykowych w systemach mikroprocesorowych
Rys. 5. kompletny graf optymalnej procedury pomiarowej
szą i niewymagającą żmudnych procesów
z zakresu DSP jest procedura z udziałem
dwóch, dodatkowych kroków pomiarowych
pozwalających na pomiar względnej rezy-
stancji styku RT
(tak naprawdę wzór na rezy-
stancję styku jest bardziej złożony, lecz na-
szej procedurze wystarczy stosunek Z2/Z1)
jak i odpowiedni schemat działania w celu
wyeliminowania zakłóceń. W procedurze
tej stosuje się dwa, dodatkowe układy po-
laryzacyjne służące pomiarowi umownych
wartości Z2 i Z1, służących do wyznaczenia
względnej rezystancji styku jako wskaźnika
jakościowego (progu) zdarzenia naciśnięcia
panelu. Na rysunku rys. 4 pokazano konfi-
gurację pomiarowa panelu dotykowego dla
każdego z 4 kroków pomiarowych ze sche-
matycznym zestawieniem stanu portów uży-
wanego mikrokontrolera (w tym przypadku
Atmega32) wykorzystywanego zarówno do
polaryzacji osi jak i do odczytu spadków na-
pięcia. Natomiast na rysunku rys. 5 przed-
stawiono kompletny graf procedury pomia-
rowej.
Poza pomiarem rezystancji styku RT
sta-
nowiącej próg informujący o przyciśnięciu
panelu dotykowego (RTMAX
), dla każdej z osi
dokonywanych jest pięć pomiarów wartości
spadku napięcia (pomiar odniesienia i czte-
ry kolejne pomiary porównawcze), których
odchyłka determinuje ustawienie wskaźnika
odczytu panelu ? Ready (wskaźnik używany
jest jako ?aga gotowości dla programu głów-
nego aplikacji). Przyjęto rozwiązanie, iż jeśli
którykolwiek z pomiarów porównawczych
różni się od pomiaru odniesienia (XODN
i YODN
)
więcej aniżeli przyjęte maksimum (XLIMIT
i YLIMIT
) to wskaźnik gotowości (Ready) jest
zerowany, a procedura pomiarowa rozpoczy-
na się od nowa. To rozwiązanie, choć z pew-
nością nie najszybsze, dało najlepsze rezulta-
ty, w praktyce minimalizując ryzyko błędów
odczytu i pozwalając wykorzystać pełną roz-
dzielczość wyświetlacza LCD współpracują-
cego z panelem. Na koniec, jeśli cały proces
pomiarowy zakończył się sukcesem, otrzy-
mane wartości spadków napięcia dla obu
osi należy przeliczyć na współrzędne dla
ekranu LCD mając na uwadze założoną roz-
dzielczość a co za tym idzie, liczbę aktyw-
nych pól (np. zgodnie z rysunkiem rys. 2).
Czasami warto jest także zbocznikować obie
osie panelu niewielkimi kondensatorami ce-
ramicznymi w celu zmniejszenia zakłóceń
komutacji, lecz krok ten należy przewidzieć
jako ostateczny, w pierwszej kolejności do-
bierając wartości RTMAX
, XLIMIT
i YLIMIT
.
W tym krótkim artykule opisałem własne
doświadczenia wynikające z zastosowań pa-
neli dotykowych. Jednocześnie zdaję sobie
sprawę, że nie da się w ten sposób wyczer-
pać obszernego tematu obsługi paneli doty-
kowych. Mam jednak nadzieję, że artykuł po-
zwoli wielu osobom rozpocząć samodzielne
stosowanie paneli. Zbudowany w ten sposób
interfejs użytkownika jest elastyczny, no-
woczesny i estetyczny, jednocześnie otwie-
ra drogę wyobraźni i daje sporo satysfakcji
z wykonanego urządzenia, ponieważ do-
tychczas jedynie duże i zasobne finansowo
koncerny mogły pochwalić się urządzeniami
z zaimplementowaną, sprawną obsługą tego
typu interfejsu użytkownika.
Robert Wołgajew, EP
robert.wolgajew@ep.com.pl
Literatura:
http://www.ti.com/
http://mcselec.com/
R E K L A M A
Zobacz więcej w kategorii Notatnik konstruktora