Obsługa rezystancyjnych paneli dotykowych w systemach mikroprocesorowych
Czwartek, 01 Październik 2009
![Obsługa rezystancyjnych paneli dotykowych w systemach mikroprocesorowych](/i/2019/06/24/11-be20-740x0-sc1x4_cover.jpg)
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