Nie będę się kłócił, bo formalnie masz rację.drzasiek90 pisze: ↑13 maja 2023, 09:34CPR to liczba stanów na obrót (stanów kwadraturowych), PPR to liczba kresek na tarczy.
Tyle tylko że producenci na enkoderach podają liczbę kresek na tarczy.
Czyli jeśli enkoder ma 100 kresek to w oznaczeniu występuje liczba 100.
Sprawdziłem u Omrona, tam literalnie piszą P/R, czyli jeszcze inaczej, ale chodzi o liczbę kresek.
Krótko mówiąc, jeśli zamówisz enkoder 100 P/R, to przy odczycie kwadraturowym masz 400 rozróżnialnych stanów.
Podobnie z enkoderami liniowymi, gdzie w nazwie jest podana liczba kresek na cal.
Ale niech Ci będzie, na przyszłość będę pisał "kresek na obrót", żebyś się nie przypieprzał do jednej literki w zdaniu, które jest absolutnie jednoznaczne...
Dodane 33 minuty 53 sekundy:
Wątek servo jest float, a base jest int.drzasiek90 pisze: ↑13 maja 2023, 09:34Ja ustawiłem SERVO_PERIOD na 200us i nie ma kłopotów. Dlaczego miałyby być?
Jeśli można liczyć 5 razy szybciej, oznacza to, że 5 razy częściej kontroler ma obliczoną pozycję i prędkość wrzeciona.
O ile prędkość się tak nie zmienia, to pozycja owszem.
Różnicy chyba nie muszę Ci tłumaczyć.
Natomiast co do prędkości obliczeń, to powyżej pewnej wartości szybciej nie jest lepiej, bo obciążasz procesor, a mechanika i tak nie nadąży.
Planer opiera się na przewidywaniu i korygowaniu błędu, czyli zakłada się pewną prędkość i co jakiś czas sprawdza czy jesteśmy tam gdzie być powinniśmy. Załóżmy że jesteś w Warszawie i chcesz być za dwie godziny w Łodzi (136 km). Ruszasz z prędkością 68 km na godzinę. Co jakiś czas sprawdzasz ile Ci zostało kilometrów, ile minut i korygujesz prędkość tak, żeby podróż trwała dokładnie dwie godziny. Jeśli będziesz to robił co kilometr lub co minutę, to będziesz jechał dość płynnie i precyzyjnie. Jeśli będziesz liczył co sekundę, to niczego nie polepszysz...
Dodane 40 minuty 35 sekundy:
Tak sobie na spokojnie to przemyślałem i doszedłem do wniosku, że tam też piszą głupoty.
Raczej prawda jest taka, że błędem jest użycie pojęcia cpr do enkodera, bo "c" jest faktycznie od "counts", ale przecież enkoder niczego nie liczy, on tylko wystawia stany na wyjściach...
A pisanie o "elektronicznym mnożeniu przez cztery", to już kompletny debilizm.