Filtracja Drgań Styków: Skuteczne Metody Eliminacji

W dyskusji poruszono problem drgań styków w impulsatorze, które wprowadzają błędy do systemu mikroprocesorowego. Użytkownik poszukiwał skutecznych metod eliminacji tych drgań, zarówno programowych, jak i sprzętowych.

Każdy przycisk lub styki przekaźnika, kontaktronu, czy impulsatora stykowego (enkodera) mają tendencję do drgania w czasie zwierania i/lub rozwierania. Zjawisko to jest stricte mechaniczne i zwane jest drganiem styków (ang. Debouncing).

Problem Drgań Styków

Drgania styków to zjawisko, w którym styki elementu mechanicznego (np. przycisku, przełącznika) podczas zamykania lub otwierania obwodu elektrycznego nie stykają się od razu w sposób stabilny, lecz odbijają się, powodując szybkie, wielokrotne zmiany stanu. To zjawisko może generować fałszywe sygnały w systemach cyfrowych, co prowadzi do nieprawidłowego działania urządzeń.

Ilość drgań styków jest nieprzewidywalna. Może być jedno, ale może też ich być kilkanaście. Zależy to od samego przycisku, jego stanu oraz innych czynników, jak temperatura itp.

Metody Eliminacji Drgań Styków

Uczestnicy sugerowali zastosowanie filtrów RC, w tym rezystora w szereg i kondensatora równolegle do masy, oraz podkreślali znaczenie algorytmu testowania stanu styków w przerwaniach.

Przeczytaj także: Definicja i pomiar filtracji kłębuszkowej

Filtry RC

Jedną z najprostszych metod eliminacji drgań styków jest zastosowanie filtru RC. Filtr RC składa się z rezystora (R) i kondensatora (C) połączonych w odpowiedniej konfiguracji. Rezystor ogranicza prąd, a kondensator wygładza zmiany napięcia, eliminując krótkotrwałe zakłócenia spowodowane drganiami styków.

Jak dobrać wartości filtra RC?

Wartość rezystora i kondensatora dobiera się tak, aby stała czasowa filtru (τ = R * C) była większa niż maksymalny czas drgań styków, ale nie za duża, aby nie zablokować szybkich impulsów.

Czasowa stała filtru powinna być większa niż maksymalny czas drgań, ale nie za duża, aby nie zablokować szybkich impulsów.

Przerzutniki RS

Proste, tanie i niezawodne rozwiązanie: przerzutnik RS sterowany z przełącznika. Oczywiście kondensatory i oporniczki są duże, w układzie cyfrowym.

Przeczytaj także: Webber AP8400 - wymiana filtrów

Metody Programowe

Eliminacja drgań za pomocą programu nie jest zadaniem trudnym. Technik pozbywania się tego problemu (ang. Debouncing) jest bardzo dużo i zależą od tego, jakie peryferia masz dostępne w swoim mikrokontrolerze.

Programowo (kilkukrotne sprawdzenie, czy stan styków (przycisku, przekaźnika, itp) jest taki sam w ciągu np. 10-20ms).

Jeżeli nie znasz parametru gwarantowanego maksymalnego czasu drgań styków danego elementu (brak dokumentacji lub producent nie podał w niej tej danej) powinieneś podejść do tego problemu od drugiej strony.

Zaawansowane Bloki Peryferyjne w Mikrokontrolerach

Realizacja wszystkich funkcji systemu wbudowanego za pomocą oprogramowania jest mało efektywna, zarówno pod względem szybkości wykonywania kodu, jak i z uwagi na wymaganą pojemność pamięci programu oraz pamięci operacyjnej.

W zależności od modelu uC do dyspozycji projektantów są m.in. wzmacniacze operacyjne, ulepszone przetworniki analogowo-cyfrowe (ADC) czy też uniwersalne timery (UTMR) oraz sprzętowe generatory sygnałów PWM.

Przeczytaj także: Optymalne rozcieńczenie bimbru

Jednym z najczęstszych zastosowań CLC/CCL jest sprzętowa implementacja tłumienia drgań styków przy użyciu timera/oscylatora.

Konfigurowalne Komórki Logiczne (CLC/CCL)

Bloki peryferyjne, określane mianem CLC i CCL, to programowalne tablice typu Look-up-Table (LUT), z których każda stanowi w istocie odpowiednik pojedynczej komórki układu FPGA. Funkcja logiczna, skonfigurowana wewnątrz każdej instancji takiego peryferium, jest definiowana „w locie”. CLC/CCL może działać niezależnie od procesora, co pozwala efektywnie zastąpić zewnętrzne układy logiczne.

Przy zastosowaniu bloków CCL, dostępnych w mikrokontrolerach AVR, to samo zadanie jest jeszcze prostsze - komórki CCL oferują bowiem funkcję filtracji sygnału wejściowego, która skutecznie wykonuje tę samą dwutaktową operację.

System Obsługi Zdarzeń (EVSYS)

System zdarzeń (EVSYS) przeznaczony jest do wybierania sygnału wyjściowego z jednego peryferium i kierowania go do innych bloków, znajdujących się wewnątrz mikrokontrolera. Ta łączność może odbywać się bez udziału rdzenia procesora, co oszczędza energię w trybie uśpienia lub bezczynności i znacząco poprawia wydajność.

Blok Łączenia Sygnałów (Signal Routing, SR)

W mikrokontrolerach PIC dostępne jest natomiast peryferium określane mianem portu SR (ang. Signal Routing Port). Ma ono strukturę przypominającą standardowy port I/O, ale bez wyprowadzenia na fizyczny pin w obudowie mikrokontrolera.

Port SR współpracuje również z funkcją Peripheral Pin Select (PPS), którą można znaleźć także w mikrokontrolerach PIC. PPS zapewnia projektantowi elastyczność w przydzielaniu wejść/wyjść, umożliwiając przenoszenie cyfrowych sygnałów do różnych pinów mikrokontrolera oraz zapewniając innym blokom peryferyjnym możliwość indywidualnego wyboru bitów portu SR jako wejść.

Wyłączniki Krańcowe

Wyłączniki krańcowe to elektromechaniczne urządzenia, które działają na zasadzie mechanicznej detekcji ruchu lub położenia elementu maszyny. Ich podstawowa funkcja polega na przerwaniu lub zamknięciu obwodu elektrycznego w momencie, gdy ruchomy element urządzenia dotknie mechanizmu wyłącznika, takiego jak dźwignia, rolka czy tłok.

Wyłączniki krańcowe i czujniki krańcowe różnią się głównie zastosowaniem oraz metodą detekcji. Wyłącznik krańcowy działa poprzez fizyczny kontakt z obiektem lub maszyną, dostarczając informacje o jego położeniu końcowym.

Podsumowanie

Eliminacja drgań styków jest kluczowa dla zapewnienia niezawodnego działania systemów cyfrowych. Wybór odpowiedniej metody zależy od specyfiki aplikacji, dostępnych zasobów i wymagań dotyczących wydajności. Zarówno metody sprzętowe, jak i programowe oferują skuteczne rozwiązania tego problemu.

tags: #filtracja #drgan #stykow #metody

Popularne posty: