Prosty miernik refleksu

Prosty miernik refleksu

Czas reakcji człowieka, zwany refleksem, to ważny parametr mający wpływ na nasze bezpieczeństwo. Zaprezentowany układ nie jest certyfikowanym urządzeniem służącym do pomiaru tego parametru, ale może być efektownym gadżetem przydatnym w różnych eksperymentach i grach. Kto nie chciałby być tym najszybszym?

Podstawowe parametry:
  • pomiar czasu w milisekundach pomiędzy pojawieniem się bodźca a wciśnięciem przycisku,
  • całkowicie losowo ustalany czas na pojawienie się bodźca po uruchomieniu pomiaru,
  • wbudowana dioda LED i brzęczyk piezo jako sygnał początku odliczania,
  • zakres pomiarowy: 0…999 ms,
  • sygnalizacja przekroczenia zakresu oraz falstartu,
  • wejścia na zewnętrzne przyciski START i STOP oraz wyjście sygnalizujące początek odliczania,
  • pobór prądu około 50 mA w stanie spoczynku i 80 mA podczas pomiaru,
  • zasilanie napięciem stałym 12 V.

Zaprezentowane urządzenie mierzy czas tzw. reakcji prostej, czyli od pojawienia się bodźca (zaświecenia diody LED i załączenia sygnalizatora) do zareagowania na ten bodziec, co w tym przypadku jest po prostu wciśnięciem przycisku. Im krótszy ten czas, tym szybciej reaguje nasz mózg, co oznacza, że możemy szybciej zareagować na np. zagrożenie na drodze. Urządzenie będzie również przydatne do samodzielnych ćwiczeń poprawiających refleks. Regularne treningi mogą pozytywnie wpłynąć na czas reakcji, co może przydać się, na przykład, osobom starszym.

Budowa i działanie

Schemat ideowy omawianego układu znajduje się na rysunku 1. Głównym komponentem sterującym jego pracą jest mikrokontroler typu ATmega88PA-PU z 8-bitowym rdzeniem AVR. Ma wystarczającą liczbę konfigurowalnych wyprowadzeń, więc nie zachodzi potrzeba stosowania dodatkowych układów pośredniczących. Ponieważ w grę wchodzi dokładne odmierzanie czasu, do stabilizacji częstotliwości sygnału zegarowego został użyty rezonator kwarcowy o częstotliwości 4 MHz. Do rezonatora zostały podłączone kondensatory C4 i C5, które ułatwiają jego wzbudzenie oraz stabilizują pracę.

Rysunek 1. Schemat ideowy prostego miernika refleksu

Programowanie pamięci Flash mikrokontrolera może odbywać się dwojako. Można wyjąć układ z podstawki, włożyć do programatora, po czym z powrotem wetknąć w podstawkę. Innym rozwiązaniem jest użycie złącza J1, na które zostały wyprowadzone wszystkie linie sygnałowe niezbędne do zrealizowania programowania w systemie. Część z tych linii jest współdzielona przez inne komponenty urządzenia, lecz nie ma to znaczenia dla przebiegu tego procesu. Nieużywana linia zerująca RESET została podciągnięta do dodatniego bieguna zasilania przy użyciu rezystora R1, co „wspomaga” wbudowany w mikrokontroler rezystor podciągający.

Czas do uruchomienia odliczania jest losowany z zadanego przedziału. I nie mam tutaj na myśli użycia algorytmów realizujących pseudolosowość ani odtwarzania wylosowanych wcześniej elementów z gotowej tablicy. Do wejścia przetwornika analogowo-cyfrowego mikrokontrolera został podłączony układ rezystorów R2…R4. Jak łatwo obliczyć, daje on napięcie stałe o wartości 2,5 V i rezystancji wewnętrznej aż 15 MΩ. To powoduje, że napięcie zmierzone tymże przetwornikiem jest obarczone silnym szumem termicznym, wynikającym z wysokiej rezystancji wewnętrznej jego źródła, jaką jest wspomniana sieć rezystorów. Ostatni, najmłodszy bit każdego 10-bitowego pomiaru – gdyż taką rozdzielczość ma przetwornik wbudowany w ATmega88PA-PU – ma zatem całkowicie losową wartość.

Kilka takich bitów reprezentuje dowolną liczbę z zadanego zakresu.

Takie utrudnienie było konieczne do wdrożenia po to, aby układ mógł służyć do prawdziwego pomiaru czasu reakcji. Bez tej zmiennej można po kilku pomiarach wyćwiczyć w sobie rytm odpowiedniego wciskania przycisków, co z kolei pozwala na uzyskanie naprawdę imponujących (czytaj: krótkich) wartości czasu reakcji. Ale taki „oszukany” wynik nie mówi nic o naszym prawdziwym refleksie.

Skoro o przyciskach mowa, to na płytce znajdują się dwa. Jeden służy do uruchomienia pomiaru (S1), a drugi do jego zatrzymania (S2). Rezystory R5 i R7 podciągają wejścia mikrokontrolera do linii +5 V, co zmniejsza wrażliwość za zakłócenia. Z kolei rezystory R6 i R8 chronią delikatne wejścia układu scalonego przed przepływem przez nie prądu o zbyt wysokim natężeniu, którego przyczyną może być pojawienie się silnego zakłócenia elektromagnetycznego. Jednocześnie stała czasowa filtru RC, jaką tworzą te rezystory (zwłaszcza R8) z pojemnością wejściową mikrokontrolera, jest na tyle mała, że nie ma znaczącego wpływu na wynik pomiaru czasu o rozdzielczości 1 ms. Złącza J2 i J3 umożliwiają podłączenie zewnętrznych przycisków monostabilnych.

Bodziec wzrokowo-słuchowy, czyli silne światło diody LED i dźwięk buzzera są uruchamiane za pośrednictwem tranzystora unipolarnego T1. Litera „L” w jego oznaczeniu informuje, że ma zmniejszone napięcie progowe bramki wobec swojego pierwowzoru, wobec czego nadaje się do sterowania wprost z wyjścia mikrokontrolera zasilanego napięciem 5 V. Złącze J4 umożliwia podłączenie dodatkowych podzespołów wykonawczych jak odcinka taśmy LED i/lub głośniejszej syreny. Dioda D1 chroni tranzystor T1 podczas jego zatykania, ponieważ zwiera ewentualny impuls napięcia generowany przez wyłączane obciążenie mające charakter indukcyjny.

Do prawidłowego działania układu konieczne jest napięcie o wartości 5 V, najlepiej stabilizowane. Dostarcza go bardzo dobrze znany układ typu 7805. Moc strat w nim jest jednak na tyle duża, że zastąpienie go mniejszym odpowiednikiem, czyli 78L05 w obudowie TO92, nie jest możliwe. Kondensatory C7 i C8 zmniejszają jego impedancję wyjściową oraz utrudniają mu wzbudzenie się.

Całość jest dopełniana przez trzycyfrowy, siedmiosegmentowy wyświetlacz LED. Anody poszczególnych cyfr są załączane przez tranzystory bipolarne typu BC556, zaś katody segmentów są zasilane wprost z wyjść mikrokontrolera. Rezystory 330 Ω, ograniczające prąd segmentów, wymuszają przepływ prądu o natężeniu około 10 mA. W ten sposób świecą one dostatecznie jasno, a należy pamiętać, że są sterowane multipleksowo – cyfra po cyfrze, więc średnia jasność każdej cyfry jest niższa. Wyświetlacz ten pokazuje stan pracy układu oraz zmierzony czas reakcji.

Montaż i uruchomienie

Układ został zmontowany na jednostronnej płytce drukowanej o wymiarach 120×50 mm. Jej schemat został pokazany na rysunku 2. W odległości 3 mm od krawędzi płytki znalazły się cztery otwory montażowe, każdy o średnicy 3,2 mm.

Rysunek 2. Schemat płytki PCB

Montaż proponuję rozpocząć od elementów o najmniejszej wysokości obudowy, czyli rezystorów i diod. Nie można przy tym pominąć trzech zworek z cienkiego drutu, z których jedna znajduje się pod mikrokontrolerem US1. Pod układ US1 proponuję zastosować podstawkę, aby ułatwić jego wymianę w razie uszkodzenia. Zmontowany układ można zobaczyć na fotografii tytułowej.

Na etapie uruchamiania jest konieczne zaprogramowanie pamięci Flash mikrokontrolera dostarczonym wsadem oraz zmiana jego bitów zabezpieczających. Oto ich nowe wartości:

Low Fuse = 0xFD
High Fuse = 0xDC

Szczegóły są widoczne na rysunku 3, który zawiera widok okna konfiguracji tychże bitów z programu BitBurner. W ten sposób zostanie uruchomiony generator dla rezonatora kwarcowego (o częstotliwości z przedziału 3…8 MHz) oraz Brown-Out Detector, który wprowadzi mikrokontroler w stan zerowania, jeżeli jego napięcie zasilające spadnie poniżej 4,3 V. To znacznie zmniejsza ryzyko zawieszenia się układu podczas uruchamiania.

Rysunek 3. Szczegóły ustawienia bitów zabezpieczających

Poprawnie zaprogramowany układ jest gotowy do działania po podłączeniu zasilania do zacisków złącza J5. Powinno to być napięcie stałe, dobrze filtrowane, niekoniecznie stabilizowane – służy ono do zasilania piezoelektrycznego buzzera i diody LED, które cechują się sporą tolerancją, zaś mikrokontroler ma własny stabilizator. Pobór prądu wynosi około 50 mA po załączeniu i wzrasta do nawet 80 mA podczas odmierzania – zmierzone przy napięciu 12 V. Dokładne natężenie pobieranego prądu zależy od liczby załączonych segmentów wyświetlacza LED.

Do wyjścia OUT (złącze J4) można podłączyć zewnętrzne urządzenia sygnalizujące. Z uwagi na szerokość ścieżek na płytce drukowanej zaleca się, aby natężenie pobieranego z tego wyjścia prądu nie przekraczała 1 A. To wartość w zupełności wystarczająca do podłączenia całkiem długiego łańcucha diod LED i donośniejszego sygnalizatora dźwiękowego.

Eksploatacja

Po włączeniu zasilania na wyświetlaczu wskazywane są same zera – „000”. Naciśnięcie przycisku START powoduje wygaszenie tej wartości i rozpoczęcie oczekiwania na uruchomienie odliczania. Ile to będzie trwało? Nie wiadomo, ponieważ minimalna wartość tego interwału czasowego to około 320 ms, a maksymalna około 1340 ms. Dokładna wartość czasu oczekiwania jest za każdym razem losowana z użyciem przetwornika analogowo-cyfrowego mierzącego silnie zaszumione napięcie stałe. W tym czasie układ nie daje oznak działania. Wciśnięcie przycisku STOP zatrzyma jakiekolwiek dalsze odliczanie, a na wyświetlaczu pojawią się trzy kreski „---”, co jest karą za falstart.

Po upływie wylosowanego czasu oczekiwania układ załącza diodę LED1 i sygnalizator SG1 (oraz wyjście OUT), a na wyświetlaczu widać uciekające milisekundy. Wciśnięcie STOP zatrzyma odliczanie i wyłączy elementy odpowiadające za bodźce dźwiękowo-wzrokowe.

Teraz przez dowolnie długi czas będzie pokazywał wynik, aż do wyłączenia zasilania. Jeżeli w ciągu sekundy nie zostanie wciśnięty przycisk STOP, układ uzna to za zbyt długi czas reakcji i pokaże kreski takie same, jak w przypadku falstartu oraz wyłączy piszczenie i świecenie.

Ponowne uruchomienie odliczania jest proste – wystarczy wcisnąć przycisk START, a układ zgasi wszystkie segmenty i rozpocznie oczekiwanie. Gra zaczyna się od nowa, bez potrzeby dodatkowego zerowania poprzedniego wyniku. Życzę wszystkim Czytelnikom jak najlepszych (czyli najkrótszych) wyników!

Michał Kurzela, EP

Bibliografia: https://bit.ly/3CtPkUm

Wykaz elementów:
Rezystory: (THT o mocy 0,25 W)
  • R1, R5…R9: 10 kΩ
  • R2…R4: 10 MΩ
  • R10: 1 kΩ
  • R11…R13: 2,2 kΩ
  • R14…R20: 330 Ω
Kondensatory:
  • C1, C6: 220 μF 25 V raster 2,54 mm
  • C2, C3, C7, C8: 100 nF MKT raster 5 mm
  • C4, C5: 15 pF monolityczny raster 5 mm
Półprzewodniki:
  • D1, D2: 1N5819
  • DISP1: AT5636-BMR
  • LED1: 5 mm superjasna zielona np. LED F5 G2
  • T1: IRL530N
  • T2…T4: BC556 lub podobny
  • US1: ATmega88PA-PU (DIP28)
  • US2: 7805 (TO220)
Pozostałe:
  • J1: goldpin 5 pin męski 2,54 mm THT
  • J2…J5: ARK2/500
  • Q1: 4 MHz niski
  • S1, S2: microswich 12×12 np. MIKROSW TS
  • SG1: PIEZO GEN12V
  • Jedna podstawka DIP28 wąska
Artykuł ukazał się w
Elektronika Praktyczna
wrzesień 2022
DO POBRANIA
Materiały dodatkowe

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik marzec 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio marzec - kwiecień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje marzec 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna marzec 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich kwiecień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów