Znaleziono 2 wyniki

autor: cosimo
17 wrz 2011, 23:21
Forum: Automatyka przemysłowa
Temat: Enkoder kwadraturowy - szybki "algorytm odczytu"
Odpowiedzi: 18
Odsłony: 6356

zgadza się, ale w przykładzie, w linku, enkoder obracany jest ręcznie. Sprawdziłem i wtedy nie ma pomyłki, natomiast przy silniku myly się bardzo.
Myli się bo procesor prawdopodobnie się nie wyrabia. W Twoim przypadku jedyne wyjście to wykorzystywać tylko jedno przerwanie (drugie koniecznie wyłączyć). W przerwaniu zostawić tylko inc/dec licznika. Jeżeli i to okaże się za mało - to tylko wstawki w asemblerze o ile bascom na to pozwala (bo tego nie wiem).

Jest jeszcze możliwość występowania jakichś zakłóceń. Jeżeli kręcąc ręcznie enkoderem - nie myli się, a kręcąc z taką samą prędkością (ten sam enkoder) silnikiem jest nie tak - to znaczy coś tutaj jest na rzeczy.
autor: cosimo
17 wrz 2011, 15:06
Forum: Automatyka przemysłowa
Temat: Enkoder kwadraturowy - szybki "algorytm odczytu"
Odpowiedzi: 18
Odsłony: 6356

Przy częstotliwości z jednego kanału ok 12khz i jednym przerwaniu jako tako wychodziły - w najlepszym przypadku mylił się o 10imp. Czy jest jakiś "standardowy" algorytm i sposób odczytu?
A po co Ci dwa kanały na przerwaniach? Takie rozwiązanie stosuje się jak chcesz podwoić dokładność enkodera. W twoim wypadku to chyba już przesada jak masz normalnie 2500 imp/obr. W takim układzie ukłądzie uP musi obsłużyć dwa razy więcej przerwań niż normalnie.

Poza tym zobacz w tym podanym przykładzie w przerwaniu jest tylko zwiększany lub zmniejszany licznik i nic więcej - reszta w pętli głównej.

Wróć do „Enkoder kwadraturowy - szybki "algorytm odczytu"”