Skocz do zawartości

Pomocna odpowiedź

Wykorzystywałeś pełną rozdzielczość tych enkoderów, nie miałeś problemów odpowiednio precyzyjnym ustawieniem magnesu?

Udostępnij ten post


Link to post
Share on other sites

Wykorzystuje pełną rozdzielczość. Błąd ustawienia magnesu jest bardzo duży (w praktyce). Błąd ustawienia nie wpływa widocznie na odczyty.

Udostępnij ten post


Link to post
Share on other sites

Program

W robocie zastosowany jest algorytm P. Wylicza on prędkości które są podawane do kolejnych regulatorów p które kontrolują prędkość silników. Silniki pracują w zamkniętej pętli sprzężenia zwrotnego wykonywanej co 1ms.

Czy mógłbyś powiedzieć coś więcej o pętli sprzężenia zwrotnego? Czym to się charakteryzuje?

Udostępnij ten post


Link to post
Share on other sites

Program

W robocie zastosowany jest algorytm P. Wylicza on prędkości które są podawane do kolejnych regulatorów p które kontrolują prędkość silników. Silniki pracują w zamkniętej pętli sprzężenia zwrotnego wykonywanej co 1ms.

Czy mógłbyś powiedzieć coś więcej o pętli sprzężenia zwrotnego? Czym to się charakteryzuje?

http://pl.wikipedia.org/wiki/Regulator_PID

https://www.forbot.pl/forum/topics20/algorytmy-pid-w-robotyce-amatorskiej-linefollower-cz1-czlon-p-vt5973.htm

Udostępnij ten post


Link to post
Share on other sites

MatManiak, tu nie chodzi o to. Sprzężenie zwrotne w tym wypadku to odczyty aktualnej prędkości z enkoderów względem tej zadanej.

Udostępnij ten post


Link to post
Share on other sites

Treker, ale sama idea jest taka sama.

Udostępnij ten post


Link to post
Share on other sites

No tak, tylko miałem wrażenie, że autor pytania nie wiedział skąd bierze się to sprzężenie.

Udostępnij ten post


Link to post
Share on other sites

Nie wiedziałem co mam rozumieć pod tym pojęciem. Doczytałem definicję a w połączeniu z Waszymi podpowiedziami już wszystko jasne. Dzięki :->

Udostępnij ten post


Link to post
Share on other sites

A nie przepełniają się te zmienne od enkoderów?

Udostępnij ten post


Link to post
Share on other sites
A nie przepełniają się te zmienne od enkoderów?

Przepełniają, ale co to zmienia? W programie i tak liczysz różnicę z poprzednim odczytem, więc wiedząc jaka jest maksymalna wartość zmiennej, nadal łatwo to policzyć. Poza tym, jak nie chcesz by się przepełniały, możesz sobie zerować zmienne. Sposobów jak zrealizować kontrolę prędkości na podstawie odczytów z enkoderów jest mnóstwo - to chyba na 5 różnych sposobów można napisać (różne podejścia).

Udostępnij ten post


Link to post
Share on other sites

Zdaję sobie z tego sprawę, jednak np. wykorzystywane typy zmiennych mogą być na tyle duże, że starcza na jeden przejazd, później i tak jest to resetowane.

Byłem po prostu ciekaw jak jest to tutaj zrealizowane.

Poza tym jest jeszcze jedna kwestia (chociaż nie wiem jak jest w tym przypadku), mianowicie prędkości mogą być ujemne, także różnica wyjdzie także ujemna, podobnie jak by to miało miejsce w przypadku przepełnienia, zatem chyba najlepiej, żeby się programista wypowiedział 🙂

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...