Enkoder a debounce v preruseni

tomas mainzer t.mainzer na gmail.com
Čtvrtek Říjen 22 16:02:56 CEST 2015


obavam se ze u preruseni muze nastat ta potiz ze v okamziku obsluhy
preruseni se take muze zmenit stav coz uz preruseni nechytne a ztratite
informaci. Lepe asi resit pravidelnim casovym interruptem (rychlost dle
max.poctu zmen) a tam si napsat ten stavovy automat.
S pozdravem T.M.

Dne 22. října 2015 14:57 Pavel Kutina <hw na prelude.cz> napsal(a):

> Zdravim,
>
> nemate nekdo nejaky vhodny algoritmus na likvidaci zakmitu pro enkoder?
> Mam STM32F103, na nem na pinu PORT.B0 a B1 laciny, osklivy cinsky enkoder
> (pull-upy 10k na 3V3, pull-upy zapnute i na procesoru, abych aspon trochu
> zvetsil proud skrz kontakty), preruseni obe obe hrany na B0.
>
> Zatim zkousim ten nejjednodussi algoritmus - hrana mi vygeneruje na B0
> preruseni, ja se podivam, jaky je stav na druhem pinu a podle toho se
> rozhodnu, jestli prictu nebo odectu z nejake globalni promenne.
>
> V idealnim svete by to stacilo - samozrejme binec delaji ruzne zakmity.
> Enkoder produkuje spoustu smeti, zatim jsem to "vyresil" tak, ze po
> spusteni preruseni nactu stav pinu, pockam nejakou dobu (cca 300us), nactu
> stav znovu, a pokud se stavy nelisi, popojedu ve zpracovani o kus dal.
> Totez u druheho pinu. Idealni to neni, ty nejvetsi hruzy to sice
> odfiltruje, ale prinasi to dalsi problemy, treba ze pri rychlem protoceni
> enkoderu to diky zpozdeni misto pricteni zacne odecitat.
>
> Nemate nekdo nejaky vyzkouseny algoritmus? (Nemluvim o kodu, protoze
> nepredpokladam, ze by tu STM32 pod MikroE Pascalem krome me jeste nekdo
> pouzival) Idealne nejak zdokumentovany, aby to pochopil i idiot?
>
> S titmtez enkoderem na Arduinu (ovsem s pouzitim cizi knihovny - ze ktrere
> to ovsem nejsem schopen pochopit a opsat - tusim, ze je to ona:
> http://www.buxtronix.net/2011/10/rotary-encoders-done-properly.html)
> nemam problem, co se tyka generovani falesnych pulsu ani rychlosti toceni -
> evidentne to tedy odfiltrovat jde... V te zminene knihovne autor pozuiva
> nejake stavove tabulky, ale evidentne nejsem "technologicky na vysi" a
> nechapu to (pravda je, ze uz jsem taky tri dny prakticky nespal).
>
> Diky za pomoc.
>
> Pavel Kutina
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20151022/c91149d6/attachment.html>


Další informace o konferenci Hw-list