- wyświetlanie liczby zarejestrowanych impulsów,
- maksymalna pojemność licznika: 9999,
- wbudowany rezystor podciągający do obsługi elementów stykowych,
- możliwość wyboru reakcji na zbocze opadające i/lub narastające,
- obsługa przepełnienia licznika: sygnalizacja lub zerowanie,
- maksymalna częstotliwość impulsów: 10 Hz,
- czytelny, czterocyfrowy wyświetlacz siedmiosegmentowy LED,
- możliwość ręcznego wyzerowania wskazań,
- pobór prądu 30…70 mA,
- zasilanie napięciem stałym 9…18 V.
Liczenie kolejnych zwojów nawiniętych na karkas transformatora czy obrotów wału podnośnika – po co robić to ręcznie? Można się rozproszyć, pomylić, zapomnieć i... cały wysiłek na marne. Po to mamy elektronikę, aby oddawać jej tak mozolne i nudne czynności, jak zwykłe liczenie kolejno powtarzających się czynności.
Opisywany układ jest prosty pod tym względem, że nie ma wielu rozbudowanych funkcji, które mogą zwykłego „zjadacza kajzerek” przyprawić o zawrót głowy. Wyświetlacz, wejście zerowania i przycisk, wejście impulsów, wejście zasilania. Dodałem też trzy zworki z tyłu, które przestawia się lutownicą, a które diametralnie rozszerzają możliwości tego układu. Dwie dotyczą wyboru zbocza, na którym następuje reakcja, a trzecia umożliwia pracę licznika w pętli lub sygnalizację jego przepełnienia. Proste, łatwe i – co najważniejsze – skuteczne.
Budowa
Schemat ideowy omawianego układu znajduje się na rysunku 1. Sercem urządzenia jest mikrokontroler typu ATmega8A z 8-bitowym rdzeniem AVR taktowanym sygnałem o częstotliwości 8 MHz, którego wzorcem jest wbudowany oscylator RC. Nie ma potrzeby stabilizacji częstotliwości sygnału zegarowego np. rezonatorem kwarcowym, ponieważ układ nie robi nic, co byłoby istotne z punktu widzenia dokładności w dziedzinie czasu. Użytkownik ma do dyspozycji trzy zworki SMD, które służą do wyboru sposobu zliczania impulsów i obsługi przepełnienia. Wbudowane w mikrokontroler rezystory podciągające zapewniają wysoki stan logiczny po rozwarciu tychże zworek.
Użyty wyświetlacz ma cztery cyfry, z których każda jest złożona z siedmiu segmentów oraz kropki. Do jego pełnego wysterowania w trybie multipeksowym potrzeba zatem dwunastu wyprowadzeń mikrokontrolera, których ten ma aż nadto. Dzięki nadmiarowym liniom GPIO można było pominąć dodatkowe układy rozszerzające liczbę wyjść, które zwiększałyby ilość miejsca zajmowanego przez układ na powierzchni laminatu. Prąd pojedynczego segmentu wynosi około 10 mA, co zapewnia wysoką jasność świecenia wyświetlacza i jego dobrą czytelność nawet w niekorzystnych warunkach (zabrudzenie szybki obudowy, refleksy, silne oświetlenie itp.). Segmenty są sterowane bezpośrednio z wyprowadzeń mikrokontrolera, lecz całe cyfry muszą być obsługiwane przez klucze tranzystorowe T1…T4, ponieważ ich sumaryczny prąd może sięgać 80 mA, co jest wartością zbyt wysoką dla pojedynczego wyprowadzenia układu z serii ATmega.
Zaprogramowanie pamięci Flash montowanego powierzchniowo mikrokontrolera ułatwia złącze J2, do którego zostały doprowadzone linie sygnałowe służące do programowania w systemie. Linie te zostały dodatkowo podciągnięte do dodatniego potencjału zasilającego przez zewnętrzne rezystory o wartości 10 kΩ, aby układ był bardziej odporny za pochodzące z zewnątrz zakłócenia elektromagnetyczne, których w środowisku przemysłowym jest przecież niemało.
Mikrokontroler zasilany jest stabilizowanym napięciem 5 V ze stabilizatora US2. Pobór prądu jest na tyle niski, że prosty układ scalony w obudowie TO220 poradzi sobie z odprowadzeniem ciepła nawet przy wysokiej różnicy napięć między wejściem a wyjściem. Jeżeli układ nie będzie wciśnięty w wyjątkowo ciasną obudowę z niebywale słabą wentylacją, to stabilizator będzie mógł się obyć bez radiatora. Dioda D1 zabezpiecza układ przed uszkodzeniem w razie pomyłki przy wyborze polaryzacji przewodów zasilających.
Wejściem impulsów jest złącze J3. Ponieważ układ jest przystosowany do pracy z elementami stykowymi, jeden z zacisków tego złącza podciągnięto do zasilania 5 V przez rezystor o wartości 1,2 kΩ, co wymusza przepływ prądu o natężeniu około 4 mA przez nadzorowane styki. Filtr RC, składający się z rezystora R18 i kondensatora C7, ma stałą czasową wynoszącą 1 ms, zaś jego zadaniem jest usunięcie z zerojedynkowego sygnału (styki zwarte – stan niski, styki rozwarte – stan wysoki) niepożądanych impulsów wywołanych iskrzeniem tychże styków. Jest to także ochrona wejścia mikrokontrolera przed możliwymi przepięciami wywołanymi przez ładunki elektrostatyczne oraz zewnętrzne zakłócenia elektromagnetyczne. Stosunkowo niska wartość R17 powoduje, że układ nie jest czuły na zakłócenia zbierane przez długie przewody łączące płytkę z przyciskiem.
Rezystor R19 stanowi dodatkową barierę dla potencjalnie podwyższonego napięcia odłożonego na kondensatorze C7, ponieważ ogranicza prąd wewnętrznych diod zabezpieczających wejście mikrokontrolera. Gdyby ten układ miał zliczać szybkie impulsy, wówczas zasadne byłoby pytanie o sens dodawania kolejnego członu opóźniającego (rezystancja R19 i pojemność wejścia mikrokontrolera), lecz opisywana konstrukcja od początku była projektowana do rejestrowania impulsów występujących kilka razy w ciągu sekundy, więc – jak na elektronikę – bardzo rzadko. Zewnętrzne wejście zerujące (złącze J4) zostało opatrzone podobnym zabezpieczeniem, z tą różnicą, że nie ma filtrującego członu RC, ponieważ iskrzenie styków przycisku zerującego nie zrobi tutaj nikomu różnicy. Licznik zeruje się po wykryciu jakiegokolwiek stanu niskiego na tym wejściu.
Montaż i uruchomienie
Układ został zmontowany na dwustronnej płytce drukowanej o wymiarach 90 mm × 30 mm. Jej wzór ścieżek oraz schemat montażowy pokazano na rysunku 2. Otwory montażowe mają średnicę 3,2 mm i znajdują się w odległości 3 mm od krawędzi płytki.
Montaż proponuję rozpocząć od elementów montowanych powierzchniowo, umieszczonych wyłącznie na spodniej stronie płytki. Po dokonaniu ewentualnych poprawek warto wlutować kondensator elektrolityczny C3, przyciąć jego wyprowadzenia i dopiero wtedy przejść do lutowania pozostałych podzespołów: złączy J1…J4, przycisku S1, kondensatora C6, stabilizatora US2 i wyświetlacza LED1 na końcu. Taka kolejność jest zalecana z racji zakrywania części pól lutowniczych przez wyświetlacz. Zmontowany układ można zobaczyć na fotografii tytułowej oraz fotografii 1. Nic nie stoi na przeszkodzie, by przycisk wlutować od drugiej strony laminatu (co czyni go niedostępnym od strony płyty czołowej obudowy licznika) bądź nie montować go w ogóle.
Na etapie uruchamiania jest konieczne zaprogramowanie pamięci Flash mikrokontrolera dostarczonym wsadem oraz zmiana jego bitów zabezpieczających. Oto ich nowe wartości:
High Fuse = 0xD9
Szczegóły są widoczne na rysunku 3, który zawiera widok okna konfiguracji tychże bitów z programu BitBurner. Nowe ustawienia uruchomią wbudowany generator RC o częstotliwości 8 MHz oraz Brown-Out Detector, który wprowadzi mikrokontroler w stan zerowania, jeżeli napięcie zasilające spadnie poniżej 4 V, co znacznie zmniejszy ryzyko zawieszenia się mikrokontrolera podczas uruchamiania.
Poprawnie zaprogramowany układ jest gotowy do działania po podłączeniu zasilania do zacisków złącza J1. Powinno to być napięcie stałe, dobrze filtrowane, niekoniecznie stabilizowane. Pobór prądu jest zależny od zawartości wyświetlacza i typowo nie przekracza 70 mA. Akceptowane napięcie zasilające powinno zawierać się w przedziale 9…18 V, z uwagi na konieczność zapewnienia prawidłowych warunków pracy stabilizatora US2. Gdyby US2 wymienić na miniaturową przetwornicę impulsową, wówczas dopuszczalny zakres mógłby być szerszy – trzeba jednak pamiętać o zastosowaniu kondensatora C3 o odpowiednio wysokim napięciu dopuszczalnym.
Eksploatacja
Przed włączeniem zasilania należy również dokonać wyboru trybu pracy układu poprzez zwarcie kroplą spoiwa lutowniczego wybranych zworek SMD:
- ZW1: reakcja na zbocze narastające (RISE),
- ZW2: reakcja na zbocze opadające (FALL),
- ZW3: sygnalizacja przepełnienia (OVF).
Do zacisków złącza J3 można doprowadzić sygnał napięciowy o wartości minimalnej 0 V (lub nieco niższej) oraz maksymalnej 5 V (lub niewiele wyższej). Układ będzie zliczał zbocza, które zostaną wskazane zworkami ZW1 i ZW2, można też zewrzeć obie jednocześnie i rejestrować każde zbocze.
Gdyby jednak użytkownik zdecydował się na podłączenie elementu stykowego, takiego jak kontaktron czy wyłącznik krańcowy, wówczas – z uwagi na wbudowany rezystor podciągający – zliczenie przy aktywowanym zboczu narastającym (RISE) następowałoby w momencie rozwierania styków, zaś przy wybranym zboczu opadającym (FALL) – tuż po zwarciu styków tegoż elementu. W praktyce częściej używa się zbocza opadającego do zliczania impulsów z elementów stykowych, ponieważ jest ono szybsze (wymuszane niższą rezystancją) od narastającego.
Pozostała jeszcze zworka ZW3. Jeżeli pozostanie rozwarta, wówczas licznik przepełnia się i zeruje samoczynnie, czyli kolejne jego wskazania będą wynosiły 9998, 9999, 0000, 0001 i tak w kółko. Z kolei po zwarciu tejże zworki, kolejny impuls przy stanie bieżącym wynoszącym 9999 przepełni licznik, co zostanie pokazane czterema kreskami ----. Dalsze impulsy nie będą przez układ rejestrowane – konieczne będzie wyzerowanie jego wskazań poprzez krótkotrwałe zwarcie przycisku S1 lub zacisków złącza J4. Można też odłączyć napięcie zasilające na więcej niż kilka sekund, bowiem opisywany układ nie zapamiętuje stanu licznika w momencie zaniku zasilania.
Michał Kurzela, EP
- R1…R8: 330 Ω (SMD, 1206)
- R9…R12, R17, R20: 1,2 kΩ (SMD, 1206)
- R13…R16, R18, R19, R21: 10 kΩ (SMD, 1206)
- C1, C2, C4, C5, C7: 100 nF (SMD, 1206)
- C3: 1000 μF/25 V (raster 5 mm, opis w tekście)
- C6: 47 μF/35 V (raster 2,5 mm)
- D1: SS14
- LED1: KW4-563ASA Luckylight
- T1…T4: BC856 (SOT23)
- US1: ATmega8A (TQFP32)
- US2: 7805 (TO220, opis w tekście)
- J1, J3, J4: ARK2/500
- J2: goldpin 5 pin (męski, 2,54 mm, THT)
- S1: mikroprzełącznik 6×6 mm (h=1,5 mm)