Skocz do zawartości
juras5

Robot balansujący - odwrócone wahadło

Pomocna odpowiedź

Enkodery te miał w ofercie któryś ze sklepów reklamujących się na forum(na pewno któryś może ściągnąć)

Udostępnij ten post


Link to post
Share on other sites

Te silniki mam na magazynie (nie ma ich jeszcze na stronie, cena 50zł/szt).

Mam też w przygotowaniu enkodery magnetyczne - moduły są już wytestowane i działają, muszę tylko dograć kilka drobiazgów i wyprodukować większą serię. W kwietniu moduły enkoderów też będą w sklepie.

Udostępnij ten post


Link to post
Share on other sites

jaka jest dokładność takiego enkodera magnetycznego? jaka przewidywana cena?

Udostępnij ten post


Link to post
Share on other sites

wstępny schemat:

czy są jakieś rażące błędy w w/w schemacie?

Udostępnij ten post


Link to post
Share on other sites

Tak na szybko:

1.Brak dużego kondensatora przy L298 od strony zasilania silników (low-esr)

2.Od strony procesora na liniach I2C nie ma rezystorów podciągających.

3. W sumie obyłoby się pewnie bez tranzystora na tych liniach, bo atmega168P rozpoznaje stan wysoki od 0,6VCC->3V, więc miałbyś 0,3V zapasu co powinno starczyć o ile nie masz długich kabli, albo innych dziwnych kombinacji.

4.AREF i AVCC nie powinny być podłączone na stałe. AREF powinien mieć tylko kondensator 100nF do GND i nic więcej.

Udostępnij ten post


Link to post
Share on other sites

@MirekCz

1. jakiej wartości ten kodensator?

2. dzięki, poprawiłem te rezystory podciągające, za to nie muszą być od strony IMU_6DOF (bo są już 2 rezystory 4k7 na liniach SDA i SCL)

3. ale na forum sparkfun piszą, że lepiej używać tą konwersję napięć

4. poprawiłem zasilanie:

Udostępnij ten post


Link to post
Share on other sites

Hej.

Jak sprawa z projektem??

Zbudowałem prototyp czegoś takiego i utknąłem na sofcie.

Filtr kalmana to dla mnie zbyt trudna sprawa. chciałbym to jakoś prościej zrobić.

Ja mam zyro ITG3200 oraz acc do wyboru ADXL345 lub LIS3LV02, proc Mega328P

Próbowałem całkować ale po kilku ruchach całka się rozjeżdża, próbowałem nie całkowiac tylko sygnał prędkości z żyr zmiksować z sygnałem acc i bezpośrednio na regulator dać. za każdym razem porażka.

Na elce ktoś pisał ze sam segwaya zrobił i sygnał bierze z żyr a acc stosuje tylko w celu kompensacji dryftu tylko nie wiadomo jak to zrobił.

Jak mógłby ktoś coś podpowiedzieć jak się za to zabrać z właściwej strony to byłbym bardzo wdzięczny.

Pozdrawiam

Sławek

WESOŁYCH ŚWIAT

Udostępnij ten post


Link to post
Share on other sites

Wow jestem pod wrażeniem działającej konstrukcji!

Wydaje mi się, że bez usunięcia luzów z przekładni i regulacji prędkości silnika ze sprzężeniem zwrotnym nie uda się wyeliminować oscylacji.

Mam takie pytanie, jeżeli cały kod napisany jest w bascomie masz kontrolę nad czasem trwania jednego cyklu regulacji i filtracji kalmana, ile on wynosi?

Udostępnij ten post


Link to post
Share on other sites

Przy takiej konstrukcji warto by było chyba zainteresować się stabilizacją napięcia dla silników - właśnie po to aby między innymi PID się nie rozwalał.

Udostępnij ten post


Link to post
Share on other sites

Napięcie zasilania silnika nie powinno mieć dużego wpływu na działanie układu regulacji prędkości obrotowej silnika ze sprzężeniem zwrotnym od prędkości.

EDIT:

Regulator PID czy sam PI powinien poradzić sobie ze zmianami napięcia zasilania. Zmiana napięcia zasilania może mieć duży wpływ jedynie przy maksymalnych wartościach prędkości czy momentu osiąganego przez silnik w układzie regulacji.

Udostępnij ten post


Link to post
Share on other sites

No ze stabilizacją obrotów powinien sie troche uniezależnić od rozładowywania baterii ale jakaś minimalna różnica może zostać bo przecież odpowiedź silnika będzie inna z innym napięciem. Owszem osiągnie obroty ale może to więcej czasu zająć.

Filtr + regulator robię w przerwaniu obecnie z częstotliwością 100Hz.

Sam kalman trwa 1,5ms bo obliczeń jest dużo, regulator to kilka linijek.

Procek M328 16MHz

Udostępnij ten post


Link to post
Share on other sites

A jak z obliczeniami - mnożenie double itp? Starałeś się jakoś ograniczać lub w ogóle wyeliminować?

Udostępnij ten post


Link to post
Share on other sites

Kod przepisałem z tego dokumentu konaru. nie znam się zupełnie na C. było tam float więc w bascomie dałem single i wszystkie operacje na nim wykonuje. PID również. Tylko wiadomo ze w bascomie mozna tylko jedno działanie zrobić w operacji przypisania wiec musiałem na kilak linijek nieraz rozbijać i ze 3 temp'y uzyć.

Nic nie skracałem ani nie wydłużałem bo i tak ten KF nie chciał dobrze działac z tymi parametrami które były podane w dokumencie.

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!

Gość
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...