|
Enkodery są bardzo przydatnymi elementami . Zastępują przeważnie potencjometry w różnych
aplikacjach wymagających ustawiania jakiejś wartości. Zamiast używania
przycisków np: do zmiany głośności lub jakiegoś innego
parametru lepiej jest zastosować impulsator - kręcenie pokrętłem
jest dużo wygodniejsze. Z wyglądu i obsługi
praktycznie się nie różni od potencjometru, z wyjątkiem braku
ograniczenia co do kąta obrotu. Z zasady działania jest jednak
całkowicie inny. Z punktu widzenia elektrycznego są to 2 połączone
styczniki odpowiednio przełączane w zależności od kierunku
obrotów i prędkości kręcenia ośką impulsatora. Wygląda to mniej więcej tak:
 |
 |
Impulsator generuje na swoich wyjściach 2
przesunięte w fazie przebiegi prostokątne, na ich podstawie można
określić kierunek ruchu i prędkość ośki. Należy się
dodatkowo pozbyć drgań styków jako że każdy styk po
zwarciu/rozwarciu wytwarza jeszcze paczkę impulsów zakłócających
które mogły by przekłamać dekodowanie. Można to zrobić w
sposób sprzętowy lub programowy - przeważnie robi się to pośrednio
stosując rozwiązania sprzętowe wspomagane programem. Impulsatory
pracują przeważnie w kodzie Graya - takim w którym na raz
zmienia się tylko jeden bit.
Przebieg z impulsatora wygląda tak:
 |
|
Obracając ośką poruszamy się jakby w lewą
lub prawą stronę przebiegu z krokiem co 1 pole tak jak
widać na rysunku. Przepuśćmy, że ośka znajduje się w
początkowej pozycji dającej na wyjściu A i B: 0 0, jeżeli
stan w czasie obrotu zmieni się na 0 1 to mamy obrót w
prawo, a jeżeli na 1 0 to oś obróciła się w prawo. |
Można w ten sposób rozpatrzyć wszystkie przypadki i
dekodować z dokładnością co do jednego skoku
impulsatora. Taki algorytm jest jednak stosunkowo
skomplikowany i może zajmować dużo czasu procesora
dlatego można go uprościć, rezygnując z dużej dokładności
i wykrywać tylko zmianę stanu z niskiego na wysoki i
odwrotnie. Pozwoli to raz na 4 skoki określić kierunek
obrotów. Dla zainteresowanych kod w którym działa
impulsator jest kodem Graya w którym charakterystyczną
cechą jest to, że zmienia zawsze tylko jeden bit na raz. |
|