Spisu treści:

Arduino RGB Color Picker – Wybierz kolory z rzeczywistych obiektów: 7 kroków (ze zdjęciami)
Arduino RGB Color Picker – Wybierz kolory z rzeczywistych obiektów: 7 kroków (ze zdjęciami)

Wideo: Arduino RGB Color Picker – Wybierz kolory z rzeczywistych obiektów: 7 kroków (ze zdjęciami)

Wideo: Arduino RGB Color Picker – Wybierz kolory z rzeczywistych obiektów: 7 kroków (ze zdjęciami)
Wideo: Programowanie przez działanie. Czy robot nakarmi kota? 2024, Grudzień
Anonim
Image
Image
Podłączanie obwodu testowego próbnika kolorów RGB
Podłączanie obwodu testowego próbnika kolorów RGB

Projekty Tinkercad »

Z łatwością wybieraj kolory z obiektów fizycznych za pomocą tego próbnika kolorów RGB opartego na Arduino, co pozwala odtworzyć kolory, które widzisz w rzeczywistych obiektach na komputerze lub telefonie komórkowym. Wystarczy nacisnąć przycisk, aby zeskanować kolor obiektu za pomocą taniego modułu czujnika koloru TCS34725, a otrzymasz wartości kolorów RGB, a także wskazanie zmierzonego koloru na LED RGB.

Jeśli podoba Ci się ten Instructable, zagłosuj na niego w konkursie Make It Glow.

Zaprojektowałem prostą, wydrukowaną w 3D obudowę dla elektroniki, aby urządzenie było przenośne, wystarczy podłączyć je do portu USB, ładowarki lub power banku, aby je zasilić. Możesz także zmodyfikować projekt, aby pomieścić baterię, aby była jeszcze bardziej przenośna.

Zwykle staram się używać Arduino Uno, ponieważ jest to jedna z najczęściej używanych płyt Arduino, ale aby uczynić to urządzenie przenośnym, zostało zaprojektowane wokół płytki Arduino Pro Micro. Można go jednak łatwo dostosować do działania na większości innych płyt kompatybilnych z Arduino z wystarczającą liczbą IO, takich jak Uno, Leonardo lub Mega.

W tym przewodniku założono, że pracowałeś z mikrokontrolerem Arduino, zanim poznałeś podstawy programowania Arduino i podłączania do niego panelu LCD. Jeśli nie, postępuj zgodnie z połączonymi przewodnikami, aby uzyskać więcej informacji i szczegółowych wyjaśnień.

Kieszonkowe dzieci

  • Arduino Pro Micro (lub inny) – kup tutaj
  • Czujnik RGB TCS34725 - Kup tutaj
  • Panel LCD 16 x 2 – Kup tutaj
  • Przycisk – Kup tutaj
  • Rezystory 2 x 10 tys. – Kup tutaj
  • Rezystory 3 x 220Ω – Kup tutaj
  • Rezystor 470Ω – Kup tutaj
  • RGB LED – Kup tutaj
  • 7-pinowy żeński pasek nagłówkowy (przycięty na długość) – kup tutaj
  • Potencjometr 10K – Kup tutaj
  • Deska do krojenia chleba i swetry do testowania – kup tutaj
  • Drukarka 3D i biały/czarny żarnik (opcjonalnie do obudowy) – ten używany

Oprócz tego będziesz potrzebować podstawowych narzędzi do pracy z elektroniką, w tym lutownicy, jeśli na stałe budujesz obwód do użytku w obudowie.

Krok 1: Podłączanie obwodu testowego próbnika kolorów RGB

Podłączanie obwodu testowego próbnika kolorów RGB
Podłączanie obwodu testowego próbnika kolorów RGB
Podłączanie obwodu testowego próbnika kolorów RGB
Podłączanie obwodu testowego próbnika kolorów RGB

Zawsze dobrze jest najpierw zmontować komponenty na płytce prototypowej, aby je przetestować i upewnić się, że obwód i oprogramowanie działają poprawnie przed wykonaniem jakichkolwiek połączeń lutowanych.

Komponenty są połączone z płytką stykową, jak pokazano na schemacie obwodu.

W żadnym z tych połączeń między komponentami a Arduino nie ma nic szczególnego ani dziwnego, są to typowe podstawowe konfiguracje obwodów do podłączenia wyświetlacza LCD, przycisku i diod LED do Arduino.

Rezystory 10K są używane do podłączenia przycisku, a rezystory 220 Ω do diody LED czujnika koloru oraz czerwonej i niebieskiej nóżki diody LED RGB. Rezystor 470 Ω jest używany w zielonej nodze diody LED, aby nieco zmniejszyć jej jasność, aby uzyskać bardziej realistyczne kolory.

Czujnik koloru RGB jest podłączony do Arduino za pomocą prostego interfejsu I2C. Upewnij się, że używasz właściwych pinów dla tego interfejsu, jeśli używasz innej płyty. Jest kontrolowany za pomocą biblioteki Adafruit omówionej w sekcji kodu.

Jeśli używasz innej płytki Arduino, upewnij się, że masz taką samą funkcjonalność na każdym pinie, jak w Pro Micro. Na przykład potrzebujesz pinów z włączonym PWM do sterowania diodą LED RGB, aby symulować wybrany kolor RGB.

Krok 2: Programowanie selektora kolorów Arduino RGB

Programowanie selektora kolorów Arduino RGB
Programowanie selektora kolorów Arduino RGB
Programowanie selektora kolorów Arduino RGB
Programowanie selektora kolorów Arduino RGB
Programowanie selektora kolorów Arduino RGB
Programowanie selektora kolorów Arduino RGB
Programowanie selektora kolorów Arduino RGB
Programowanie selektora kolorów Arduino RGB

Teraz, gdy masz już zmontowane komponenty na płytce prototypowej i wykonałeś wymagane połączenia, możesz załadować kod do Arduino za pomocą komputera i sprawdzić, czy komponenty działają poprawnie.

Sprawdź ponownie wszystkie połączenia przed podłączeniem kabla USB do Arduino, aby upewnić się, że są poprawne. Kabel USB zasila płytkę i podłączone komponenty, które mogą je uszkodzić, jeśli nie zostaną prawidłowo podłączone.

Ta konkretna płyta Arduino Pro Micro działa jak Leonardo po podłączeniu do komputera, więc upewnij się, że wybrałeś właściwy typ płyty w Arduino IDE, w przeciwnym razie otrzymasz błędy podczas próby przesłania kodu.

Oto link do kodu próbnika kolorów RGB: Pobierz kod próbnika kolorów RGB

Kod zawiera komentarze wyjaśniające, co robi każda sekcja. Identyfikacja kolorów i część LED są oparte na przykładowym kodzie Adafruit colorview. Jeśli chcesz spróbować napisać własny kod, to jest to przydatny przykład do pracy i rozpoczęcia.

Będziesz musiał mieć zainstalowane biblioteki Adafruit. Można to łatwo zrobić, klikając Narzędzia -> Zarządzaj bibliotekami w swoim IDE, a następnie wpisując „Adafruit TCS” w pasku wyszukiwania i instalując znalezioną bibliotekę.

Kilka rzeczy, na które należy zwrócić uwagę w kodzie:

Piny przypisane do LCD są w dziwnej kolejności (15, 14, 16, 4, 5, 8, 7). Zwykle staram się zachować kolejność pinów, ale w tym przykładzie są one nieco pomieszane z powodu dwóch rzeczy, jednej, ponieważ musiałem obejść piny PWM dla diody LED, a drugiej, ponieważ piny w Pro Micro to nie wszystkie w kolejności sekwencyjnej.

Dioda LED czujnika koloru i przycisk są podłączone do wejść analogowych Pro Micro i są używane jako cyfrowe IO, ponieważ nie było wystarczającej liczby dostępnych cyfrowych pinów IO. Są one nadal zdefiniowane w kodzie jako standardowe cyfrowe piny IO.

Istnieje krótka procedura, która powoduje, że dioda LED zmienia kolor na czerwony, zielony i niebieski podczas uruchamiania. To tylko efekt wizualny, który trwa około 1,5 sekundy i można go usunąć, jeśli chcesz, aby selektor kolorów uruchamiał się szybciej.

Program nie przejdzie poza konfigurację, jeśli nie nawiąże połączenia z czujnikiem koloru, pojawi się jako „Błąd czujnika” na wyświetlaczu LCD, jeśli nie może nawiązać połączenia. Jeśli dioda LED świeci, wskazując zasilanie czujnika, sprawdź połączenia SDA i SCL oraz czy używasz prawidłowych pinów Arduino.

Tabela gamma po prostu konwertuje zmierzone wartości RGB z czujnika na wartości, które dadzą bardziej realistyczną reprezentację LED rzeczywistego koloru, ma to na celu poprawę efektu wizualizacji LED i nie ma wpływu na wyświetlane zmierzone wartości RGB.

Następnie kod czeka, aż wejście przycisku pobierze odczyt z czujnika i wyświetli wartości na wyświetlaczu LCD i za pomocą diody LED. Trzy opóźnienia w instrukcji pętli if mają po prostu na celu uniknięcie powtarzania odczytów przed ponownym zwolnieniem przycisku, ponieważ rzeczywisty odczyt i czas cyklu wyniosłyby około 100 ms. szybciej lub wolniej.

Krok 3: Instalowanie komponentów w obudowie

Instalowanie komponentów w obudowie
Instalowanie komponentów w obudowie
Instalowanie komponentów w obudowie
Instalowanie komponentów w obudowie
Instalowanie komponentów w obudowie
Instalowanie komponentów w obudowie

Aby stworzyć użyteczne i przenośne urządzenie, postanowiłem zlutować komponenty i zamontować je w prostej obudowie wydrukowanej w 3D.

Obwód o tej złożoności prawdopodobnie powinien być zaprojektowany na PCB, ale większość ludzi nie ma dostępu do usług produkcyjnych PCB, więc utknąłem z lutowaniem komponentów razem z odcinkami kabla taśmowego.

Krok 4: Wydrukuj obudowę w 3D

Wydrukuj obudowę w 3D
Wydrukuj obudowę w 3D
Wydrukuj obudowę w 3D
Wydrukuj obudowę w 3D
Wydrukuj obudowę w 3D
Wydrukuj obudowę w 3D
Wydrukuj obudowę w 3D
Wydrukuj obudowę w 3D

Zaprojektowałem podstawową prostokątną obudowę dla próbnika kolorów, pliki do druku 3D można pobrać tutaj. Możesz także wykazać się kreatywnością i zmienić projekt, aby pasował do twoich komponentów i sposobu, w jaki będziesz używać selektora kolorów.

Czujnik koloru znajduje się z tyłu, dzięki czemu możesz trzymać urządzenie nad przedmiotem i wybrać kolor z odczytem widocznym z przodu.

Obudowę wydrukowałem za pomocą białego PLA i 20% wypełnienia, unikałbym używania kolorowego filamentu na tylnym panelu, ponieważ nie chcesz wprowadzać odbitego kolorowego światła na pobieraną powierzchnię.

Wymiary obudowy to około 110 mm (4,3 cala) x 46 mm (1,8 cala) x 20 mm (0,78 cala) po zmontowaniu obu połówek. Każda połówka ma 10 mm (0,39 cala) wysokości.

Krok 5: Przylutuj obwód

Przylutuj obwód
Przylutuj obwód
Przylutuj obwód
Przylutuj obwód
Przylutuj obwód
Przylutuj obwód

Po wydrukowaniu obudowy w 3D, będziesz miał pojęcie, gdzie są zamontowane wszystkie komponenty i jak długo należy wykonać połączenia lutowanego kabla taśmowego.

Zacznij od przylutowania każdego komponentu do Arduino podczas wyjmowania go z płytki stykowej i spróbuj usunąć komponenty, aby utworzyć pełny obwód na raz.

Na przykład zacznij od obwodu LED i przylutuj rezystory do diody LED, a następnie podłącz je do Arduino przed usunięciem elementów przycisku. W ten sposób będziesz mógł śledzić komponenty i upewnić się, że łączysz je indywidualnie z odpowiednimi wejściami i wyjściami Arduino.

Zadbaj o panel LCD i czujnik koloru, aby upewnić się, że wykonujesz połączenia z odpowiednimi portami Arduino IO.

Złącza czujnika koloru można przylutować do 7-stykowej żeńskiej listwy rozgałęźnej (przyciąć listwę 8-stykową do 7 styków), aby umożliwić jej podłączenie przez tylną część obudowy. Pozwala to tylko na prawidłowe rozdzielenie dwóch połówek, jeśli chcesz je otworzyć. Możesz również lutować bezpośrednio do czujnika koloru za pomocą odcinka kabla taśmowego, tylko upewnij się, że kabel taśmowy przechodzi przez szczelinę w obudowie przed lutowaniem połączeń.

Istnieje wiele połączeń, które należy wykonać z GND i 5V, co ułatwia lutowanie ich do większych punktów centralnych, zamiast próbować lutować je wszystkie na dwóch pinach Arduino. Podłączyłem je wszystkie do dwóch zewnętrznych nóg potencjometru LCD, ponieważ znajduje się on mniej więcej w środku obudowy i ma największą powierzchnię do wykonania połączeń.

Gdy wykonasz wszystkie połączenia i będziesz zadowolony z długości kabla taśmowego. Spróbuj ponownie zasilić obwód, aby sprawdzić, czy wszystko działa poprawnie przed zamontowaniem komponentów w obudowie. Upewnij się, że żaden z elementów lub odsłoniętych zacisków nie styka się ze sobą, co może prowadzić do zwarcia. Być może trzeba będzie dodać trochę taśmy izolacyjnej lub papieru między elementami, aby uniknąć zwarć.

Jeśli twój obwód działa poprawnie, możesz zamontować swoje komponenty w obudowie drukowanej 3D.

Krok 6: Zamontuj komponenty w obudowie

Montaż komponentów w obudowie
Montaż komponentów w obudowie
Montaż komponentów w obudowie
Montaż komponentów w obudowie
Montaż komponentów w obudowie
Montaż komponentów w obudowie

Ostatnim krokiem jest zamontowanie komponentów w obudowie. Do montażu elementów użyłem pistoletu do klejenia na gorąco, można również użyć żywicy epoksydowej lub niewielkiej ilości superglue.

Czujnik koloru można wkleić we wgłębienie z tyłu obudowy z paskiem listwy kołkowej wystającym z wnętrza obudowy. Żeński pasek nagłówka zostanie następnie użyty do podłączenia czujnika do obwodu.

Zamontuj przycisk, wyświetlacz LCD i diodę LED przez otwory w panelu przednim i przyklej je na miejsce po wewnętrznej stronie obudowy.

Twoje Arduino powinno ściśle przylegać do gniazda w podstawie i nie powinno wymagać żadnego kleju, aby utrzymać go na miejscu, ale jeśli tak, upewnij się, że nie nakładasz kleju na elementy z tyłu płyty. Lepiej nałóż klej wzdłuż krawędzi deski.

Port micro USB powinien być łatwo dostępny z boku obudowy.

Sklej ze sobą dwie połówki, używając kołków na dwóch rogach jako prowadnicy. Powinny one mocno do siebie dociskać i pomagać w trzymaniu dwóch połówek razem. Upewnij się, że żaden z twoich odsłoniętych zacisków lub przewodów na twoich rezystorach, diodach LED lub potencjometrach nie dotyka niczego innego w twoim obwodzie, jak wspomniano wcześniej, możesz użyć taśmy izolacyjnej lub papieru do oddzielenia elementów - użyłem żółtej taśmy z tyłu wyświetlacza LCD.

Krok 7: Korzystanie z próbnika kolorów RGB

Korzystanie z próbnika kolorów RGB
Korzystanie z próbnika kolorów RGB
Korzystanie z próbnika kolorów RGB
Korzystanie z próbnika kolorów RGB
Korzystanie z próbnika kolorów RGB
Korzystanie z próbnika kolorów RGB
Korzystanie z próbnika kolorów RGB
Korzystanie z próbnika kolorów RGB

Aby użyć próbnika kolorów, podłącz kabel micro USB do portu z boku próbnika kolorów, aby go włączyć.

Powinna zostać uruchomiona sekwencja startowa, a następnie będziesz mógł wybrać kolor wskazany przez Color Picker Ready.

Umieść czujnik na kolorze, który chcesz wybrać, a następnie naciśnij przycisk, aby wybrać kolor. Dioda LED na czujniku powinna zaświecić się na chwilę, po czym na wyświetlaczu LCD pojawi się odczyt RGB, a dioda LED zmieni się, odzwierciedlając wybrany kolor.

Dioda LED RGB ma na celu wskazanie zidentyfikowanego koloru. Jest to tylko szybki sposób sprawdzenia, czy czujnik wykrył właściwy kolor i nie zawsze jest dokładnym odwzorowaniem koloru ze względu na ograniczenia związane z diodą LED. Na przykład nie mogą pokazywać czerni ani szarości, ponieważ rzeczywisty materiał LED jest biały i mogą wytwarzać światło tylko w celu odtworzenia kolorów. Z tego samego powodu ciemniejsze kolory również nie są dobrze widoczne na diodach LED.

Jeśli podobał Ci się ten Instructable, zagłosuj na niego w konkursie Make It Glow.

Zajrzyj na mój blog, aby znaleźć więcej samouczków, projektów i pomysłów Arduino.

Konkurs Spraw, by świecił
Konkurs Spraw, by świecił
Konkurs Spraw, by świecił
Konkurs Spraw, by świecił

Drugie miejsce w konkursie Make it Glow

Zalecana: