-
1. Data: 2011-03-24 08:42:51
Temat: Nietypowy problem z nietypowym układem.
Od: "4CX250" <taunusmtv@poćta.łonet.pl>
Kiedyś słyszałem że ktoś wykorzystał silnika krokowy jako enkoder obrotowy
(impulsator) w kodzie Graya.
Zrobiłem coś takiego wykorzystując silnik krokowy ze starego flopa 1,2MB.
Cewki silnika krokowego podłączyłem do dwóch wzmacniaczy operacyjnych.
Jedne końce uzwojeń do wejść nieodwracających opampów przez dzielniki
rezystorowe i a drugie dwa końce uzwojeń połączone są razem i podłączone do
wejść odwracających opampów do których też dochodzi połowa napięcia
zasilania 5V.
Na wejściach nieodwracających oprócz dzielników rezystorowych są jeszcze
po dwie obcinające sygnał diody w przeciwnych polaryzacjach. Równolegle z
diodami połączone są kondensatory 10uF. Oba wzmacniacze mają sprzężenia
zwrotne po 100kohm do wejścia nieodwracającego.
Układ obserwowałem na oscyloskopie dwustrumieniowym i działa wyśmienicie
(przebiegi kodu Grata na oscyloskopie niemal książkowe). Nawet delikatne
ruszenie silnika o jeden krok powoduje zmianę kodu (Graya) na wyjściach
opampów. Podłączyłem wkrętarkę akumulatorową do osi silnika krokowego i przy
maksymalnych obrotach wkrętarki (około 1000obr/min) nadal przebiegi
książkowe. Maksymalne obroty przy których enkoder może prawidłowo działać
ograniczone są wartościami kondensatorów 10uF oraz rezystorów. Bez tych
kondensatorów delikatne dotykanie osi silnika lub drgania stołu powodowało
generowanie stanów nieustalonych na wyjściach opampów.
Poszedłem krok naprzód. Napisałem krótki progamik w C++ na atmegę 32. Na
LCDku wyświetlam aktualny stan położenia osi silnika (kod Graya) oraz stan
licznika którego wartość zmienia się podczas kręcenia osią silnik krokowego.
Tu działa wszystko wyśmienicie. Nie gubi żadnego, nawet najwolniejszego
kroku. Silnik ma krok co 1,8stopnia więc 200 kroków to pełny obrót.
Zaznaczyłem na osi oraz na korpusie punkt i obróciłem oś o 360stopni.
Licznik na wyświetlaczu
wskazał wartość 200. Idealnie.
Jest jednak jedno ale. Wszystko działa idealnie do czasu gdy nie zmienię
kierunku. W przypadku zmiany kierunku, nie wazne czy to szybko czy wolno.
Pierwszy krok obrotu osi silnika wyzwala mi dwa impulsy licznika
zliczającego a wyświetlany kod graya przyjmuje stany zabronione, tzn
przeskakuje jedną kombinację. Po tym jednym jedynym impulsie każdy następny
jest prawidłowy aż do ponownej zmiany kierunku obracania gdzie znowu przy
jednym kroku dostaję dwa impulsy kody graya. Gdy obracam delikatnie oś
silnika tylko o jeden impuls raz w lewo raz w prawo, licznik Na LCDku
zmienia wartość naprzemian +2 -2 . Gdy zmiany są np. o 5 kroków na osi
silnika to licznik zmienia wartość o +6 -6
Dlaczego tak się dzieje że każde przejście przez zmianę kierunku obracania
osią silnika powoduje wyzwolenie dwóch impulsów Graya na wyjściach opampów?
Marek
-
2. Data: 2011-03-24 12:43:30
Temat: Re: Nietypowy problem z nietypowym układem.
Od: "Marcin Wasilewski" <j...@a...pl>
Użytkownik "4CX250" <taunusmtv@poćta.łonet.pl> napisał w wiadomości
news:4d8b040e$0$2459$65785112@news.neostrada.pl...
> Dlaczego tak się dzieje że każde przejście przez zmianę kierunku
> obracania osią silnika powoduje wyzwolenie dwóch impulsów Graya na
> wyjściach opampów?
Bo ten typ tak ma?
Przecież możesz ten stan zabroniony używać do detekcji zmiany kierunku
ruchu.
Dlaczego uparłeś się aby rozwiązać problem po stronie silnika, jak można
obsłużyć to programowo i z tym żyć. Ba może to być nawet pożyteczne, bo
pozwala wykryć zmianę kierunku.
-
3. Data: 2011-03-24 12:46:01
Temat: Re: Nietypowy problem z nietypowym układem.
Od: "sundayman" <s...@p...onet.pl>
Może po prostu dlatego, że to silnik a nie enkoder ?
To przecież dość oczywiste, że nie jest to przystosowane do działania jako
enkoder...
Dlaczego kolega tak kombinuje ? Przecież sensowny enkoder można zapewne
kupić,
i nie mieć tych problemów ?
No, chyba że jest jakiś konkretny powód, no ale jak nie to trochę
przytykanie lewej ręki do prawego ucha...
-
4. Data: 2011-03-24 20:15:38
Temat: Re: Nietypowy problem z nietypowym układem.
Od: "4CX250" <t...@p...onet.pl>
Użytkownik "sundayman" <s...@p...onet.pl> napisał w wiadomości
news:imfee8$jt8$1@news.onet.pl...
> No, chyba że jest jakiś konkretny powód, no ale jak nie to trochę
> przytykanie lewej ręki do prawego ucha...
No właśnie... powód jest.
Enkoder z silnika krokowego ma aż 200kroków na 360stopni obrotu.
Przy obracaniu czuć precyzyjnie wuczuwalne w palcach skoki pozwalające
na dokładną nastawę pomimo tych 200 kroków. Trudno go też ruszyć
przypadkowo trącając palcem.
Dobrej jakości enkoder z takimi możliwościami kosztuje sporo a tu mam
to w cenie zdemontowanego silnika ze starego flopa. Zawieszenie osi w
tych silnikach na łożyskach tocznych powoduje że działać będzie
wiecznie.
Marek
-
5. Data: 2011-03-24 21:28:44
Temat: Re: Nietypowy problem z nietypowym układem.
Od: JK <s...@p...onet.pl>
W dniu 2011-03-24 09:42, 4CX250 pisze:
> Dlaczego tak się dzieje że każde przejście
> przez zmianę kierunku obracania osią silnika
> powoduje wyzwolenie dwóch impulsów Graya na
> wyjściach opampów?
>
Nie odpowiem dlaczego, ale usuń kondensatory i
zobacz co się będzie działo.
--
Pozdrawiam
JK
-
6. Data: 2011-03-25 08:16:46
Temat: Re: Nietypowy problem z nietypowym układem.
Od: "4CX250" <taunusmtv@poćta.łonet.pl>
Użytkownik "JK" <s...@p...onet.pl> napisał w wiadomości
news:imgd2c$jfc$1@news.onet.pl...
>W dniu 2011-03-24 09:42, 4CX250 pisze:
>
>> Dlaczego tak się dzieje że każde przejście
>> przez zmianę kierunku obracania osią silnika
>> powoduje wyzwolenie dwóch impulsów Graya na
>> wyjściach opampów?
>>
>
> Nie odpowiem dlaczego, ale usuń kondensatory i zobacz co się będzie
> działo.
Bez kondensatorów niczego sensownego na oscyloskopie nie widać gdyż
najmniejsze drgnięcie osią lub uderzenie w stół powoduje przypadkowe
występowanie chaotycznych impulsów na wyjściach opampów.
Marek