- Co to jest pojemnościowy czujnik dotyku?
- Wymagane materiały
- Schemat obwodu
- Programowanie mikrokontrolera Atmega AT89S52
We współczesnym świecie elektroniki wprowadzanie dotykowe jest używane prawie wszędzie, niezależnie od tego, czy może to być telefon komórkowy czy przełącznik monitora LCD. Pojemnościowy dotyk jest szeroko stosowany w segmencie czujników dotykowych, a wcześniej używaliśmy pojemnościowego dotyku z Raspberry Pi. W tym projekcie połączymy czujnik dotykowy z mikrokontrolerem 8051 AT89S52. Jeśli nie masz doświadczenia z mikrokontolerem 8051, możesz zacząć od migania diody 8051.
Co to jest pojemnościowy czujnik dotyku?
Dotyk pojemnościowy działa na ładunek elektrostatyczny, który jest dostępny w naszym ciele. Ekran jest już naładowany polem elektrycznym. Kiedy dotykamy ekranu, tworzy się obwód zamknięty z powodu ładunku elektrostatycznego, który przepływa przez nasze ciało. Ponadto oprogramowanie decyduje o lokalizacji i czynności do wykonania. Pojemnościowy ekran dotykowy nie będzie działał z rękawiczkami, ponieważ nie będzie żadnego przewodzenia między palcem (palcami) a ekranem.
Czujnik dotyku użyty w tym projekcie
Czujnik dotyku użyty w tym projekcie to pojemnościowy moduł czujnika dotyku, a sterownik czujnika oparty jest na sterowniku IC TTP223. Napięcie robocze układu IC TTP23 wynosi od 2,0 V do 5,5 V, a pobór prądu przez czujnik dotykowy jest bardzo niski. Dzięki niedrogiemu, niskiemu poborowi prądu i łatwej do zintegrowania obsłudze, czujnik dotykowy z TTP223 jest bardzo popularny w swoim segmencie.
Na powyższym obrazie pokazano obie strony czujnika, na których schemat wyprowadzeń jest wyraźnie widoczny. Posiada również zworkę do lutowania, za pomocą której można zmienić konfigurację czujnika w odniesieniu do wyjścia. Zworka to A i B. Konfiguracja domyślna lub w stanie domyślnym zworki do lutowania, wyjście zmienia się z niskiego na wysoki, gdy czujnik jest dotykany. Jednak po założeniu zworki i rekonfiguracji czujnika wyjście zmienia stan, gdy czujnik dotyku wykryje dotyk. Czułość czujnika dotyku można również skonfigurować, zmieniając kondensator. Aby uzyskać szczegółowe informacje, bardzo przydatna jest karta katalogowa TTP 223.
Poniższy wykres pokazuje różne wyjścia przy różnych ustawieniach zworek-
Sweter A | Sweter B. |
Stan blokady wyjścia |
Wyjściowy poziom TTL |
otwarty | otwarty |
Brak blokady |
Wysoki |
otwarty | Blisko |
Samoblokujący |
Wysoki |
Blisko | otwarty |
Brak blokady |
Niska |
Blisko | Blisko |
Samoblokowanie |
Niska |
W tym projekcie czujnik będzie używany w domyślnej konfiguracji, która jest dostępna w stanie fabrycznym. W tym projekcie czujnik dotykowy posłuży do sterowania żarówką AC za pomocą mikrokontrolera AT89S52.
Przekaźnik jest połączony z mikrokontrolerem 8051. Pinout przekaźnika można zobaczyć na poniższym obrazku-
NO jest normalnie otwarte, a NC jest normalnie podłączone. L1 i L2 to dwa zaciski cewki przekaźnika. Gdy napięcie nie jest podawane, przekaźnik jest wyłączany, a BIEGUN łączy się z pinem NC. Po przyłożeniu napięcia na zaciski cewki L1 i L2 przekaźnika włączają się, a BIEGUN łączy się z NO. Dlatego połączenie między biegunem i zwierne może być włączane lub wyłączane poprzez zmianę stanu pracy przekaźnika.
Wymagane materiały
- AT89S52 8051 Mikrokontroler
- Standardowy przekaźnik sześcienny - 5 V.
- Kryształ 11,592 MHz
- Kondensatory 33pF - 2szt
- Rezystor 2k -1 szt
- Rezystor 4,7k - 1 szt
- Kondensator 10uF
- Tranzystor BC549B
- Czujnik TTP223
- Dioda 1N4007
- Żarówka Z Uchwytem Żarówki
- Płytka prototypowa
- Zasilanie 5 V, ładowarka do telefonu może działać.
- Wiele przewodów połączeniowych lub przewodów górskich.
- Środowisko programowania AT89S52 z zestawem Programmer Kit i IDE z kompilatorem
Schemat obwodu
Schemat sterowania oświetleniem za pomocą czujnika dotykowego i 8051 przedstawiono poniżej,
Tranzystor służy do włączania i wyłączania przekaźnika. Czujnik dotyku jest połączony z mikrokontrolerem AT89S52. Obwód jest zbudowany przy użyciu płytki stykowej.
Programowanie mikrokontrolera Atmega AT89S52
Kompletny kod 8051 podano na końcu. Tutaj wyjaśniamy kilka części kodu. Jeśli nie znasz mikrokontrolera 8051, najpierw naucz się programować mikrokontroler 8051.Poniższe linie kodu służą do integracji przekaźnika i czujnika dotyku z mikrokontrolerem 8051. REGX52 to plik nagłówkowy jednostki mikrokontrolera AT89S52. Deklarowana jest również funkcja opóźnienia.
#zawierać
Dotyk i przekaźnik są inicjalizowane jako 0. Czujnik dotyku zmienia logikę z 0 na 1. Jeśli stwierdzenie jest prawdziwe, gdy czujnik dotyku jest aktywowany, z tego powodu stan przekaźnika zostaje zmieniony. Jednak aby dokładnie wykryć dotknięcie, używane jest opóźnienie odbicia.
// Główna funkcja void main (void) { RELAY = 0; Dotyk = 0; while (1) { if (Touch == 1) { opóźnienie (15); // opóźnienie odbicia if (Touch == 1) { RELAY =! RELAY; // Przełącz opóźnienie PIN RELAY (30); } } } }
Poniżej opisano funkcję opóźnienia. Funkcja pobiera dane wejściowe w formacie milisekund i generuje opóźnienie przy użyciu dwóch pętli for . To opóźnienie nie jest zbyt dokładne, ale jest akceptowalne i zależy głównie od taktowania cyklu zegara.
/ * Funkcja związana z opóźnieniem * / void delay (char ms) {int a, b; for (a = 0; a <1295; a ++) {for (b = 0; b
Ten obwód światła sterowany dotykowo jest testowany na płytce stykowej z podłączoną do niej żarówką o niskiej mocy. Kompletny szkic z filmu demonstracyjnego jest załączony poniżej. Więcej projektów automatyki domowej możesz sprawdzić tutaj.