Znaleziono 3 wyniki

autor: tuxcnc
15 paź 2012, 18:32
Forum: Elektronika CNC
Temat: servo gubi pozycje
Odpowiedzi: 7
Odsłony: 1683

Wiesz co, jakoś zechciało mi się narysować.
A i B to sygnały enkodera, INT sygnał przerwania do procka, a ACK to ten sygnał, którego stan procedura obsługi przerwania zmienia na przeciwny.
Czyli zmiana stanu INT oznacza dowolną zmianę wyjść enkodera, zanegowanie ACK przywraca poprzedni stan INT, a A i B są wczytywane, żeby sprawdzić co się zmieniło od poprzedniego razu.
Trudno sobie wyobrazić coś prostszego i bardziej niezawodnego.
Ten układ reaguje na każde zbocze i jak niczego nie popieprzysz w programie, to nie masz prawa zgubić nawet jednego impulsu.
To jest pełna kwadratura i możesz sobie kręcić w tę i nazad milion razy, a nie stracisz informacji o położeniu.
Obrazek
A na układ który sygnały z enkodera zlicza w liczniku jednokierunkowym szkoda życia.

.
autor: tuxcnc
15 paź 2012, 16:54
Forum: Elektronika CNC
Temat: servo gubi pozycje
Odpowiedzi: 7
Odsłony: 1683

Wiesz, niektórzy mają małe wymagania, a inni żyją w błogiej nieświadomości że coś jest nie tak.
Ten układ już w założeniu jest wadliwy, skoda życia na jego uruchamianie.
Jeśli czujesz się na siłach, to przerób wejście tak jak opisałem i napisz własny program.
Jeśli nie, to zamiast rzeźbić w gównie idź do jakiejś pracy i za zarobione pieniądze kup gotowy sterownik przyzwoitej firmy.
autor: tuxcnc
15 paź 2012, 00:06
Forum: Elektronika CNC
Temat: servo gubi pozycje
Odpowiedzi: 7
Odsłony: 1683

Ten układ jest jakiś popieprzony.
Na wejściu z enkodera są komparatory, a powinny być bramki Schmidta.
Sygnał STEP idzie na INT0 i prawidłowo, ale INT1 jest niewykorzystany, a powinien być wejściem wykrywania zboczy enkodera.
To taki prosty układ na dwóch bramkach EX-OR.
Nie chce mi się rysować, ale to naprawdę nic skomplikowanego.
Wyjścia A i B z enkoderów przez bramki 74x14 idą sobie gdzieś do procka i równocześnie na wejścia pierwszej bramki 74x86.
Stan na wyjściu bramki zmienia się na przeciwny po dowolnym zboczu na dowolnym wyjściu enkodera.
Wyjście tej bramki idzie na wejście drugiej.
Wyjście drugiej idzie na wejście przerwania procka, a drugie wejście drugiej bramki na któreś wyjście procka.
Program obsługi przerwania zmienia stan na tym wyjściu, czyli odwraca sygnał na wyjściu drugiej bramki.
Działa to w sumie tak, że dowolna zmiana dowolnego wyjścia enkodera powoduje takie samo zbocze na wejściu INT procesora.
Tak więc dowolne zbocze z enkodera wyzwala przerwanie i zarówno liczenie jak i rozpoznawanie kierunku jest dziecinnie proste.
To jest pełna obsługa kwadratury z maksymalną możliwą częstotliwością.

Cóż, jak schemat jest do du**, to i pewnie program tak samo.

.

Wróć do „servo gubi pozycje”