Obsługa rezystancyjnych paneli dotykowych w systemach mikroprocesorowych

Obsługa rezystancyjnych paneli dotykowych w systemach mikroprocesorowych
Pobierz PDF Download icon
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
Artykuł ukazał się w
Październik 2009
DO POBRANIA
Pobierz PDF Download icon
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik czerwiec 2020

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio lipiec 2020

Świat Radio

Magazyn użytkowników eteru

APA - Automatyka Podzespoły Aplikacje czerwiec 2020

APA - Automatyka Podzespoły Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna czerwiec 2020

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Praktyczny Kurs Elektroniki 2018

Praktyczny Kurs Elektroniki

24 pasjonujące projekty elektroniczne

Elektronika dla Wszystkich czerwiec 2020

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów