|

Czujnik APDS-9960 wszystko, co musisz wiedzieć o czujniku gestów i światła

Czujnik APDS-9960 wszystko, co musisz wiedzieć o czujniku gestów i światła

Czujnik APDS-9960 to zaawansowany, wielofunkcyjny moduł elektroniczny zdolny do wykrywania gestów dłoni, pomiaru natężenia światła otoczenia oraz koloru RGB, a także detekcji zbliżeniowej obecności obiektu w pobliżu sensora. Ten niewielki komponent wykorzystywany m.in. w smartfonie Samsung Galaxy S5 wnosi do projektów DIY nowoczesne funkcje sterowania bezdotykowego i automatycznego dostosowywania oświetlenia. Dzięki komunikacji poprzez magistralę I2C integracja czujnika z popularnymi mikrokontrolerami, takimi jak Arduino czy Raspberry Pi, jest bardzo prosta. W tym artykule przedstawimy najważniejsze cechy APDS-9960, wyjaśnimy, jak działa wykrywanie gestów i pomiar koloru, podpowiemy jak podłączyć moduł do Arduino oraz omówimy przykładowe zastosowania. Jeżeli chcesz dowiedzieć się, jak dodać do swoich projektów sterowanie gestami lub inteligentne czujniki światła, ten poradnik jest dla Ciebie.

Co to jest czujnik APDS-9960?

Czujnik APDS-9960 to niewielki układ scalony, który łączy w sobie cztery funkcje: wykrywanie gestów, pomiar światła RGB, pomiar natężenia światła otoczenia oraz detekcję zbliżeniową. Mówiąc prościej, jeden moduł pozwala naszej elektronice widzieć kolory, odczuwać jasność otoczenia, a nawet reagować na ruch ręki w pobliżu, bez dotykania żadnych elementów. Dzięki temu możemy tworzyć interfejsy sterowane machnięciem dłoni lub automatycznie regulować np. jasność wyświetlacza w zależności od oświetlenia pokoju.

APDS-9960 komunikuje się z mikrokontrolerami przez magistralę I2C popularny interfejs wymagający tylko dwóch linii danych SDA i SCL, co upraszcza podłączenie i ogranicza liczbę potrzebnych pinów. Czujnik zasilany jest napięciem 3,3 V i charakteryzuje się niskim poborem mocy, dzięki czemu świetnie nadaje się do urządzeń zasilanych bateryjnie. Jego niewielkie wymiary około 20 x 15 mm w przypadku modułu umożliwiają montaż nawet w małych obudowach czy gadżetach wearables.

W praktyce APDS-9960 znalazł zastosowanie w nowoczesnych urządzeniach. Samsung Galaxy S5 był wyposażony w ten czujnik, umożliwiając m.in. sterowanie telefonem gestami bez dotyku ekranu. To dowód na niezawodność i precyzję działania tego modułu. Dziś APDS-9960 jest dostępny dla każdego hobbysty elektroniki w postaci tanich modułów kompatybilnych z Arduino i Raspberry Pi, co otwiera drzwi do projektowania własnych bezkontaktowych interfejsów i inteligentnych czujników oświetlenia.

Najważniejsze parametry techniczne czujnika APDS-9960

APDS-9960 oferuje imponujące możliwości jak na tak mały czujnik. Poniżej zestawiamy jego kluczowe parametry techniczne i cechy:

  • Zakres wykrywania gestów: około 5–15 cm nad powierzchnią czujnika efektywnie do ok. 10 cm dla pewnego rozpoznawania. Czujnik rozpoznaje proste ruchy dłoni w czterech kierunkach: w lewo, w prawo, w górę i w dół bez kontaktu fizycznego.
  • Detekcja zbliżeniowa: wykrywa obecność obiektu w odległości do ~10–20 cm od czujnika. Pozwala to stwierdzić, czy np. ręka zbliżyła się do urządzenia bez określania dokładnej odległości, raczej jako wykrycie blisko/daleko.
  • Czujnik koloru i światła: mierzy składowe koloru RGB czerwony, zielony, niebieski oraz jasność otoczenia kanał clear. Umożliwia to np. pomiar natężenia światła w luksach lub określenie barwy światła padającego na czujnik. Pomiary te uwzględniają filtr blokujący światło podczerwone, co zwiększa dokładność pomiaru barw.
  • Interfejs komunikacyjny: I2C adres 0x39 standardowa dwukierunkowa magistrala używana w elektronice, umożliwiająca łatwe podłączenie do Arduino/ESP/Raspberry Pi. Czujnik posiada też pin INT przerwanie, który może sygnalizować wykrycie gestu lub przekroczenie progów pomiarowych to opcjonalne ułatwienie, które można wykorzystać w programie.
  • Zasilanie: 3,0–3,6 V typowo 3,3 V. Należy zachować ostrożność przy podłączaniu do mikrokontrolerów 5 V np. Arduino Uno/Nano – wymagany jest konwerter poziomów logicznych dla linii I2C lub moduł z wbudowanym ograniczeniem napięcia.
  • Wymiary modułu: około 20,4 x 15,3 mm, waga ok. 1,4 g. Moduł jest wyposażony w wyprowadzenia goldpiny do samodzielnego przylutowania, co ułatwia prototypowanie na płytce stykowej lub montaż w urządzeniu.
  • Inne cechy: Czujnik posiada wbudowaną diodę IR (podczerwoną) jako źródło światła dla pomiarów gestów i zbliżeniowych, cztery niezależne fotodiody kierunkowe do detekcji ruchu, a także wbudowane układy przetwarzające sygnały w tym 8-bitowe konwertery A/C i filtry oraz bufor FIFO na dane gestów. Dzięki temu sporo wstępnej analizy odbywa się na samym czujniku, odciążając mikrokontroler.

Jak działa czujnik APDS-9960?

Jak czujnik “widzi” gesty? APDS-9960 wykorzystuje podczerwień (IR) do śledzenia ruchu obiektów nad czujnikiem. W module zintegrowano diodę IR emitującą niewidzialne światło oraz cztery fotodiody ułożone kierunkowo. Gdy przesuwamy rękę nad czujnikiem, odbite promienie podczerwone trafiają na te fotodiody z różną intensywnością i w różnym czasie. Na przykład ruch dłoni z lewej na prawą spowoduje najpierw większy sygnał z fotodiody po lewej, potem po prawej, dzięki takiej różnicy czasowej i natężeniowej układ jest w stanie rozpoznać kierunek gestu. Podobnie rozróżniane są gesty góra/dół. Cały proces jest realizowany przez wewnętrzny “silnik gestów” czujnika, który przetwarza sygnały z fotodiod i udostępnia informację o wykrytym ruchu lub braku gestu mikrokontrolerowi.

Warto dodać, że czujnik ignoruje wolne zmiany otoczenia np. światło dzienne i reaguje głównie na dynamiczny ruch w polu widzenia, co zapobiega fałszywym alarmom. Zakres działania gestów to typowo od ok. 5 cm do 15 cm nad czujnikiem należy machać ręką dość blisko i w miarę energicznie, aby ruch został wykryty.

Jak mierzony jest kolor i światło? Oprócz fotodiod IR do gestów, APDS-9960 zawiera także fotodiody z filtrem czerwonym, zielonym, niebieskim oraz bez filtra clear. Pozwala to zmierzyć, ile światła w danych barwach dociera do czujnika. Na tej podstawie można określić kolor obiektu oświetlonego np. barwę kartki trzymanej przed czujnikiem lub po prostu zmierzyć ogólną jasność. Funkcja ta bywa wykorzystywana np. do automatycznej regulacji jasności ekranu czujnik wykrywa, że w pokoju zrobiło się ciemniej i może posłużyć do przyciemnienia podświetlenia wyświetlacza, by nie raził w oczy.

Detekcja zbliżeniowa natomiast to prostszy mechanizm wykorzystuje ten sam emiter IR co gesty, ale mierzy łączną ilość odbitego światła podczerwonego. Jeśli jakiś obiekt np. nasza ręka lub twarz zbliży się do czujnika, ilość odbitej podczerwieni rośnie. APDS-9960 porównuje ten sygnał z ustawionym progiem i może zgłosić “obecność obiektu”. Tę funkcję wykorzystują np. smartfony do wykrywania, że telefon jest przy uchu co gasi ekran podczas rozmowy.

Wszystkie te funkcje działają równolegle, ale z ograniczeniami zazwyczaj nie używa się jednocześnie trybu gestów i odczytu koloru, ponieważ tryb gestów intensywnie korzysta z diody IR i czterech fotodiod kierunkowych. Na szczęście biblioteki programistyczne zarządzają tym automatycznie: można włączyć lub wyłączyć poszczególne “silniki” gesty, ALS, zbliżeniowy w zależności od potrzeby, aby czujnik wykonywał odpowiednie pomiary w danym momencie.

Podłączanie czujnika APDS-9960 do Arduino – krok po kroku

Podłączenie modułu APDS-9960 do Arduino jest dość proste, ponieważ wykorzystuje on interfejs I2C. Poniżej znajdziesz podstawowe kroki, jak to zrobić prawidłowo:

  1. Zasilanie: Podłącz pin VCC czujnika do 3.3 V na Arduino np. pin 3.3V w Arduino Uno. Uwaga: Nie podłączaj do 5 V ten czujnik wymaga niższego napięcia i podanie 5 V mogłoby go uszkodzić. Pin GND czujnika połącz z masą GND Arduino.
  2. Linie danych I2C: Połącz pin SDA modułu APDS-9960 z pinem SDA mikrokontrolera oraz pin SCL z pinem SCL mikrokontrolera. W Arduino Uno/Nano są to odpowiednio analogowe piny A4 (SDA) i A5 (SCL). W Arduino Mega to piny 20 (SDA) i 21 (SCL). Upewnij się, że Twoja płytka mikrokontrolera jest zgodna z logiką 3.3 V na tych liniach – jeśli nie np. standardowe Arduino Uno działa na 5 V, zastosuj konwerter poziomów logicznych 5V/3.3V na liniach SDA i SCL.
  3. Pin przerwania INT – opcjonalnie: Moduły APDS-9960 posiadają pin INT. Nie jest on wymagany do działania czujnika, ale możesz go podłączyć do dowolnego cyfrowego pinu Arduino, jeśli planujesz korzystać z przerwań np. czujnik sam powiadomi Arduino, gdy wykryje gest lub przekroczenie progu zbliżeniowego, zamiast ciągłego odpytywania w pętli. W prostych projektach można ten pin zostawić niepodłączony.
  4. Sprawdzenie połączeń: Po wykonaniu powyższych kroków warto dwa razy sprawdzić, czy na pewno każdy przewód trafił we właściwe miejsce, szczególnie że moduł jest mały i opis może być drobny. Częstym błędem jest zamiana SDA i SCL lub pomylenie 3.3 V z 5 V, co może skutkować brakiem komunikacji lub uszkodzeniem czujnika.
  5. Uruchomienie komunikacji: Gdy hardware jest już podłączony, podłącz Arduino do komputera i upewnij się, że w kodzie inicjujesz komunikację I2C Wire.begin(); w Arduino IDE oraz prawidłowo wykrywasz czujnik pod adresem 0x39. Pierwszym testem może być użycie przykładowego kodu z biblioteki lub skanera I2C, aby potwierdzić, że układ odpowiada. Jeśli skaner I2C wyświetli urządzenie pod adresem 0x39 – połączenia są poprawne.

Zastosowanie APDS-9960 w praktycznych projektach DIY

Moduł APDS-9960 otwiera przed majsterkowiczami wiele ciekawych możliwości. Poniżej kilka inspirujących zastosowań tego czujnika w projektach elektronicznych:

  • Bezdotykowe sterowanie urządzeniami: Dzięki wykrywaniu gestów można zbudować np. sterownik odtwarzacza muzyki machnięcie w prawo/lewo przełącza utwory, gest góra/dół reguluje głośność, bezdotykowy włącznik światła wystarczy machnąć ręką obok lampy, by ją zapalić lub zgasić czy panel sterujący do urządzeń domowych reagujący na gesty zamiast przycisków. Takie rozwiązania są nie tylko efektowne, ale i higieniczne oraz bardziej odporne na zużycie brak części mechanicznych.
  • Inteligentne oświetlenie i wyświetlacze: Czujnik światła w APDS-9960 umożliwia wykonanie automatycznej lampki nocnej lub systemu, który dostosowuje jasność oświetlenia LED w pomieszczeniu w zależności od pory dnia. Możesz też skonstruować wyświetlacz lub zegarek LED, który przyciemnia się w ciemności, a rozjaśnia przy silnym świetle dziennym. Co więcej, pomiar koloru pozwoli np. reagować na barwę światła wyobraź sobie elektroniczną lampę, która świeci na biało w dzień, a ciepłym żółtym wieczorem, “widząc” zmianę temperatury barwowej otoczenia.
  • Robotyka i interakcja: W robotach i pojazdach DIY APDS-9960 może służyć jako prosty “czujnik gestów sterujących” np. machnięciem ręki w lewo każemy robotowi skręcić, a gestem w górę przyspieszyć. Choć precyzja takiego sterowania jest ograniczona, może to być ciekawy interaktywny dodatek. Również w projektach typu ramię robotyczne można wykorzystać gesty do wskazywania kierunku ruchu ramienia.
  • Urządzenia noszone i interfejsy przyszłości: Ze względu na mały rozmiar, APDS-9960 nadaje się do integracji w ubraniach lub akcesoriach. Można pokusić się o inteligentne okulary lub czapkę reagującą na gesty ręką przed twarzą np. przełączanie utworów muzycznych machnięciem obok głowy. W samochodach luksusowych pojawiają się już rozwiązania sterowania radiem gestami Ty również możesz zbudować prototyp takiego interfejsu przyszłości na własnym biurku.
  • Eksperymenty i nauka: Dla osób uczących się elektroniki, APDS-9960 jest świetnym przykładem zaawansowanego czujnika łączącego różne zjawiska światło widzialne, podczerwień, komunikacja I2C. Można go wykorzystać w szkolnych projektach do demonstracji jak działają czujniki zbliżenia np. porównując go z prostym czujnikiem ultradźwiękowym HC-SR04 albo jak realizowane jest wykrywanie barwy porównując odczyty z czujnika w różnych warunkach oświetleniowych. To doskonały element do budowy mini stacji badawczej analizującej otoczenie.

dlaczego warto wybrać czujnik APDS-9960?

APDS-9960 to niezwykle wszechstronny czujnik, który w jednym niedużym układzie oferuje funkcje dostępne zazwyczaj w kilku oddzielnych modułach. Dzięki niemu możemy nadać naszym projektom ”zmysł” wzroku i gestów. Elektronika może nie tylko odczytać barwy i jasność otoczenia, ale też reagować na machnięcia ręką, zupełnie jak w futurystycznych filmach sci-fi. Dla majsterkowiczów oznacza to możliwość tworzenia bardziej intuicyjnych i efektownych interfejsów użytkownika oraz automatyki domowej, która dostosowuje się do otoczenia.

Warto wybrać APDS-9960, ponieważ jest: sprawdzony stosowany w milionach smartfonów, a więc dopracowany pod względem niezawodności, stosunkowo prosty w użyciu dostępne biblioteki i I2C czynią go przyjaznym dla początkujących, a jednocześnie niedrogi jego cena jest atrakcyjna biorąc pod uwagę oferowane możliwości. Jeśli planujesz projekt z Arduino lub Raspberry Pi, w którym chcesz zaimplementować np. bezdotykowe sterowanie, automatyczną regulację podświetlenia czy prostą detekcję obecności, ten czujnik będzie strzałem w dziesiątkę.

Podsumowując

Czujnik APDS-9960 to doskonały wybór dla tych, którzy chcą tchnąć w swoje projekty odrobinę inteligencji i magii sprawiając, że urządzenia zaczną reagować na gesty i otaczające je światło. Zachęcamy do eksperymentowania z tym modułem i odkrywania nowych, kreatywnych zastosowań – możliwości są naprawdę szerokie, a ogranicza nas właściwie tylko wyobraźnia. Powodzenia w realizacji własnych projektów z APDS-9960!


Prezentowaną w artykule elektronikę znajdziesz oczywiście w naszym sklepie 👉 sklep.msalamon.pl 👈Zapraszamy również na nasze social media, gdzie na bieżąco informujemy o nowych produktach oraz o najciekawszych promocjach 😎👇


Podobne wpisy

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *