LinkedIn YouTube Facebook
Szukaj

Newsletter

Proszę czekać.

Dziękujemy za zgłoszenie!

Wstecz
Artykuły

Budowa kalkulatora kodu paskowego rezystorów/omomierza przy użyciu Arduino

Za zgodą Kristijana Nelkovskiego publikujemy jego projekt kalkulatora kodu paskowego zamieszczony w serwisie All About Circuits w sierpniu 2024 r.

Rkod

W ramach tego projektu, zbudowałem przenośny kalkulator kolorów rezystorów i omomierz korzystając z mikrokontrolera ATmega328 i 1,8-calowego kolorowego wyświetlacza LCD wzorowany wizualnie na popularnym Kalkulatorze Kolorów Rezystorów dostępnym online na stronie All About Circuits.

Zarys projektu

Mózgiem tego systemu jest mikrokontroler ATmega328 (Arduino UNO). Będziemy również używać:

  • Małego wyświetlacza TFT LCD.
  • Szesnastu przycisków do interakcji z prostym interfejsem graficznym.
  • Multipleksera/demultipleksera CD4051.
  • Ośmiu różnych rezystorów używanych do przełączania między zakresami pomiarowymi.

Podobnie jak w przypadku kilku moich poprzednich projektów, stworzyłem specjalną PCB z logo All About Circuits dla tego urządzenia, jednakże, można również odtworzyć ten projekt, używając płytki prototypowej lub płytki perforowanej.

Projekt pełni przede wszystkim funkcję edukacyjną. Istnieją o wiele bardziej dokładne i niezawodne metody testowania podzespołów. Nawet najtańsze multimetry prawdopodobnie dadzą lepsze wyniki. Typowe rezystory mają tolerancję 5%, a przetwornik analogowo-cyfrowy (ADC) ATmega328 ma rozdzielczość zaledwie 10 bitów. Dlatego nasza dokładność będzie niższa niż dobrej jakości omomierz.

Kolorowy kod rezystorów

Początkowo opracowany przez Radio Manufacturers Association w latach 20-tych XX wieku, system kodów kolorów rezystorów służy do zapewnienia wizualnej wskazówki na temat wartości i charakterystyki rezystorów (Rys. 1).

Kodowanie kolorów rezystorów

Rys. 1. Kodowanie kolorów rezystorów

Kalkulator kodów kolorów, który zbudujemy w ramach tego projektu, obejmuje tylko rezystory czteropaskowe. Dla tego rodzaju elementów, pierwsze kreski reprezentują dwie najbardziej znaczące cyfry wartości rezystancji, trzecia kreska reprezentuje mnożnik dziesiętny, a czwarta kreska reprezentuje tolerancję wartości w procentach.

Czym jest omomierz?

Narzędzie niezbędne na każdym stanowisku elektronika to m.in. omomierz – przyrząd przeznaczony do pomiaru oporu elektrycznego. Funkcję pomiaru rezystancji mają też multimetry. Do pomiaru wymagane jest wewnętrzne źródło napięcia wytwarzające niezbędny prąd roboczy. Miernik taki ma ponadto odpowiednie rezystory służące do wyboru zakresu pomiarowego.

Mimo istnienia różnych typów ohmmetrów, w tym projekcie korzystamy z prostego dzielnika napięcia. Dzielnik napięcia to obwód, w którym napięcie wejściowe na dwóch opornikach połączonych szeregowo jest zmniejszane proporcjonalnie do stosunku dwóch oporników.

Będziemy przełączać się między wieloma opornikami wyboru zakresu (o znanym wartości), połączonymi szeregowo z badanym opornikiem (o nieznanych wartości) i obliczymy jego wartość na podstawie zmierzonego napięcia wyjściowego i znanego napięcia wejściowego, korzystając z Prawa Ohma.

Schemat omomierza

Schemat układu został pokazany na rys. 2 . Na jego podstawie będą wykonywane połączenia na płytce prototypowej lub na PCB tego projektu. Jeśli korzystasz z płytki rozwojowej, upewnij się, że elementy pasują do konfiguracji pinów.

Schemat dla kalkulatora kolorów rezystora i ohmmetru

Rys. 2. Schemat dla kalkulatora kolorów rezystora i omomierza

Ponieważ nie używam regulacji napięcia, najlepiej jest użyć tego urządzenia podłączonego do regulowanego źródła 5 V. Moja płyta PCB wykorzystuje gniazdo USB B, które można podłączyć do komputera, ładowarki telefonu lub power banku, co sprawia, że jest przenośne.

Wyświetlacz graficzny i interfejs użytkownika

Nasz system używa serii siedmiu zagnieżdżonych ekranów dla wybranych funkcji, zdolnych do pojawienia się na wyświetlaczu z matrycą TFT LCD 128×160 punktów, które służy jako graficzny interfejs użytkownika (GUI). Ilustracje dla tych ekranów są generowane poprzez bezpośrednie rysowanie znaków alfanumerycznych i podstawowych kształtów na wyświetlaczu za pomocą biblioteki GFX i ST7735 firmy Adafruit. ST7735 to układ sterownika wyświetlacza osadzony w module 1,8-calowego wyświetlacza używanego w tym projekcie.

Uwaga: Łączenie kształtów jako grafikę jest wykonywane, ponieważ korzystanie z dużych bitmap przekonwertowanych na kod Arduino wpłynęłoby negatywnie na wydajność systemu.

Sterowanie

Każda funkcja ekranowa naszego interfejsu graficznego jest zdolna do reagowania na maksymalnie sześć przycisków. Na płytce PCB projektu, zewnętrzne dwa są oznaczone jako „Wybierz” i „Cofnij”, podczas gdy cztery wewnętrzne są oznaczone symbolami strzałek w lewo, w prawo, w górę i w dół. Przyciski te służą do nawigacji po menu, wyboru pozycji w menu oraz powrotu do poprzedniego ekranu.

Menu główne

Ekran inicjalizacji służy jako menu główne. Ta część interfejsu graficznego zachęca użytkownika do wyboru jednej z dwóch podstawowych funkcji – omomierza lub kalkulatora kolorów rezystorów (rys. 3). Dla tego menu zdecydowałem umieścić logo All About Circuits tuż nad dwoma pozycjami menu, odtwarzane z pomocą dwóch połączonych zaokrąglonych prostokątów.

Menu główne dla funkcji ohmmetra i kalkulatora kolorów rezystorów

Rys. 3. Menu główne dla funkcji omomierza i kalkulatora kolorów rezystorów

Nawigacja i wybieranie

Każdy ekran naszego systemu zawiera wiele wybieralnych pozycji menu wyświetlanych jako zaokrąglone prostokąty. Aby nawigować między tymi pozycjami, istnieje dodatkowy prostokąt obwiedni dla każdego menu, który można przesuwać w górę lub w dół za pomocą czterech przycisków nawigacyjnych.

Klikając przycisk „Wybierz” wewnątrz menu, nasz kod określa, która pozycja z tego menu została wybrana przez użytkownika, sprawdzając aktualną pozycję prostokąta obwiedni oraz odpowiadającą jej pozycję.

Przełączanie między menu jest wewnętrznie realizowane za pomocą zmiennej flagi, która śledzi, co powinno być wyświetlane na wyświetlaczu LCD zgodnie z wyborem użytkownika. Innymi słowy, która z siedmiu funkcji ekranowych powinna być wywoływana w kolejnej iteracji pętli kodu Arduino.

Omomierz App

Drugim ekranem w naszym systemie jest samodzielna aplikacja omomierza, jak pokazano na rys. 4.

W górnej części ekranu wyświetlana jest wartość mierzonego rezystora oraz wybrany zakres pomiarowy. W dolnej części ekranu wyświetlanych jest osiem wybieranych zakresów odpowiadających wartościom każdego rezystora pomiarowego podłączonego do wyjść układu CD4051.

Ohmmeter home screen

Rys, 4, Podstawowe okno i omomierza

W naszym projekcie używamy CD4051 jako demultipleksera i adresujemy go za pomocą trzech pinów z ATmega328. Pozwoli nam to cyfrowo wybrać jeden z ośmiu kanałów wyjściowych CD4051, fizycznie podłączając rezystor zakresowy do nieznanego rezystora na jego wejściu, uzupełniając w ten sposób nasz obwód dzielnika napięcia.

Po wybraniu zakresu z GUI, mikrokontroler zaadresuje demultiplekser i zmierzy napięcie wyjściowe z dzielnika napięcia na jednym z jego pinów analogowych. Następnie oblicza nieznaną rezystancję zgodnie ze wzorem omówionym wcześniej i wyświetla zmierzoną wartość na wyświetlaczu LCD systemu.

Aby zrozumieć, jak prawidłowo wybrać lub skalibrować zakresy pomiarowe, należy zapoznać się z artykułem AAC Intro Lab – Jak używać omomierza do pomiaru rezystancji.

Kalkulator kodu paskowego rezystorów

Trzecim ekranem w naszym systemie jest aplikacja Resistor Color Code Calculator (Rys. 5). Ekran ten jest podzielony na trzy sekcje i może prowadzić użytkownika do czterech dodatkowych zagnieżdżonych menu.

<em>Kalkulator kolorów rezystora kodowego ekran główny</em>

Rys,5. Kalkulator kolorów rezystora kodowego – ekran główny

Górna sekcja tego ekranu przedstawia rezystor czteropaskowy zaprojektowany na podstawie Kalkulatora KOlorowych Kodów Rezystorów ze strony All About Circuits, który został odtworzony przy użyciu serii różnych prostokątów o różnej wielkości i kolorach. Na tej grafice, cztery prostokąty reprezentujące kolory pasków rezystora są zdolne do dynamicznej zmiany swojego koloru na podstawie wprowadzonych danych użytkownika.

Dolna prawa sekcja zawiera cztery pozycje menu, jedną na ustawienie każdego z pasków koloru, które przenoszą użytkownika do dodatkowego ekranu menu, podczas gdy dolna lewa sekcja zawiera tytuł aplikacji, a także obliczone wyniki (wartość rezystancji i tolerancja) dla wybranej sekwencji kolorów pasków.

Aby ustawić kolor paska, użytkownik musi najpierw wejść na jeden z czterech dodatkowych ekranów menu. Te ekrany składają się z odpowiedniego tytułu oraz wyboru kolorów lub pozycji menu przedstawionych poniżej (jak pokazano na rys. 6). Za każdym razem, gdy użytkownik wybiera kolor z jednego z tych menu, system zapisuje go dla danego paska, wraca do poprzedniego ekranu, zmienia kolor tego paska na ilustracji rezystora i wprowadza jego wartość do formuły kalkulatora kolorów.

Kalkulator kolorów rezystora wybór koloru pierwszej cyfry pasma

Rys. 6. Kalkulator kolorów rezystora wybór koloru pierwszej cyfry pasma

Przesyłanie kodu programu

Po podłączeniu wszystkiego należy zapisać kod programu do mikrokontrolera. Jeśli używasz zwykłego Arduino lub podobnej płytki rozwojowej, proces ten jest prosty, wystarczy podłączyć złącze USB, wybrać płytkę wraz z odpowiednim portem COM i kliknąć przycisk przesyłania. Kod Arduino można pobrać z serwisu Github.

Z drugiej strony, jeśli chcesz odtworzyć ten projekt jako samodzielny system przy użyciu mojego projektu PCB, aby zaprogramować układ scalony ATmega328 będziesz potrzebował dodatkowego modułu USB na Serial. Postępuj zgodnie z artykułem Arduino’s From Arduino to a Microcontroller on a Breadboard.

Wykaz elementów i plik PCB projektu

Tab. 1 zawiera zestawienie materiałów (BOM). Można pobrać pliki płytek PCB.

Tabela 1. Wykaz elementów kalkulatora kodyu paskowego rezystorów i omomierza
Część Ilość Uwagi
ATmega328 (lub dowolna płytka rozwojowa kompatybilna z Arduino) 1 Mózg naszego projektu. Potrzebny jest moduł USB do szeregowej w celu zaprogramowania.
Przycisk 6 Sterowanie systemem.
Siatka rezystorów 6 rezystorów 6 Siatka rezystorów zewnętrznych dla 6 przycisków (4,7 kΩ i więcej).
CD4051 1 Układ mux/demux do cyfrowego przełączania zakresów pomiarowych.
Rezystor 8 Potrzebujesz ośmiu różnych rezystorów, których wartość zwiększa się w stopniu 10. Zazwyczaj używa się rezystorów o wartościach 2, 20, 200, 2k, 20k, 200k, 2M i 20M Ω; jednakże, możesz użyć innych wartości, jeśli nie znajdziesz dokładnie takich samych składników, jak ja.
Złącze kołkowe z 8 pinami 2 Jedno służy do podłączenia wyświetlacza, a drugie do włożenia nieznanego rezystora, który jest mierzony między jego pierwszym a ostatnim kontaktem.
Wyświetlacz LCD TFT 128×160 1.8-calowy 1 Do wyświetlania GUI systemu.
Gniazado USB B 1 Do zasilania.
Własna płytka PCB, złączka prototypowa, lub płyta perforowana 1 Wybierz jedną z trzech opcji.

Uwaga: Choć możesz wybrać dowolny rezystor jako zakresowy, pamiętaj, aby wprowadzić ich wartość do odpowiedniego kodu Arduino, aby móc właściwie je adresować podczas pomiaru.

Autor oryginału Kristijan Nelkovski

Artykuł opublikowany w serwisie All About Circuits: „Building a Resistor Color Code Calculator and Ohmmeter Using Arduino

Polski portal branżowy dedykowany zagadnieniom elektroniki. Przeznaczony jest dla inżynierów i konstruktorów, projektantów hardware i programistów oraz dla studentów uczelni technicznych i miłośników elektroniki. Zaglądają tu właściciele startupów, dyrektorzy działów R&D, zarządzający średniego szczebla i prezesi dużych przedsiębiorstw. Oprócz artykułów technicznych, czytelnik znajdzie tu porady i pełne kursy przedmiotowe, informacje o trendach w elektronice, a także oferty pracy. Przeczyta wywiady, przejrzy aktualności z branży w kraju i na świecie oraz zadeklaruje swój udział w wydarzeniach, szkoleniach i konferencjach. Mikrokontroler.pl pełni również rolę patrona medialnego imprez targowych, konkursów, hackathonów i seminariów. Zapraszamy do współpracy!