Skocz do zawartości
ethanak

Zbignaś Kopłapow - następny z rodu

Pomocna odpowiedź

Podoba Ci się ten projekt? Zostaw pozytywny komentarz i daj znać autorowi, że zbudował coś fajnego!

Masz uwagi? Napisz kulturalnie co warto zmienić. Doceń pracę autora nad konstrukcją oraz opisem.

Fajne, ale co tam jest takie głośne? 

Udostępnij ten post


Link to post
Share on other sites

Nic nie jest głośne - po prostu nie masz skali odniesienia bo nie ma innych dźwięków. Poza tym tu akurat robot jeździ po panelach pod którymi jest pusto i robi się z tego klasyczny rezonator 🙂

 

  • Lubię! 2

Udostępnij ten post


Link to post
Share on other sites

Fajny robocik.
Interesuje mnie problem utrzymania kierunku i skrętów.
Czy to funkcja readGyro() i wyliczenie "mikro" rotacji jest za to odpowiedzialna ?

    float delta=(rotspeed = (gyro.g.z - 5.8)) * (ms - gyrotime) * 8.75E-9;
    rotation += delta;

 

 

Udostępnij ten post


Link to post
Share on other sites

A gdzie obrotowe szczotki czyszczące podłogę i spryskiwacz płynu dezynfekującego?? ehhh..

Udostępnij ten post


Link to post
Share on other sites
8 godzin temu, Przemek1967 napisał:

Interesuje mnie problem utrzymania kierunku i skrętów.

Zastosowałem tu bardzo uproszczoną wersję. Zmienna "rotation" (trochę niefortunnie dobrana nazwa, ale to pozostałości po pierwszych testach) zawiera aktualny kierunek jazdy robota. Przy jeździe prosto odchylenie od zera o zbyt dużą wartość powoduje, że robot zaczyna skręcać próbując utrzymać kierunek jazdy. Przy skręcie (jedno koło napędzane) lub obrocie w miejscu(oba koła napędzane przeciwbieżnie) robot kończy skręt kiedy wartość rotation osiągnie zadaną wartość. Co prawda bezwładność układu napędowego powoduje, że w rzeczywistości skręt jest zbyt mocny, ale nadrabiane jest to w następującym po skręcie ruchu do przodu (rotation na początku przyjmuje wartość odchylenia od żądanego kierunku), a w przypadku obrotu o 180° po prostu zadana wartość jest nieco mniejsza, aby uwzględnić i w pewnym stopniu skorygować ową bezwładność. Również przy pomiarach kątów uwzględniona jest rzeczywista pozycja robota.

Oczywiście coś takiego nie nadaje się do poważniejszych celów, ale w przypadku robota który nie musi być precyzyjny co do milimetra (przecież to jeździ po podłodze, a nie polu minowym) wystarcza.

7 godzin temu, atMegaTona napisał:

A gdzie obrotowe szczotki czyszczące podłogę i spryskiwacz płynu dezynfekującego??

To nie ta wersja - na razie to o czym piszesz jest w fazie bardzo wstępnych projektów (próbuję pogodzić ze sobą wymagania co do kształtu i rozmiarów robota z rozmieszczeniem szczotek i ogólnie problemami wynikającymi z braku możliwości wykonania bardziej precyzyjnych elementów). Patrz - wnioski na końcu pierwszego posta.

Poza tym nakrętki i śrubki nie wymagają szczotek ani płynu 🙂

 

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

@ethanak Dzięki za słowny opis. Tak przypuszczałem że to działa choć nie pomyślałem o bezwładności silników podczas skrętu i korekcie dopiero podczas kolejnego ruchu. Pewnie bym próbował od razu skorygować pozycję co doprowadziłoby do ciągłego "dygotania" robota bo nigdy by się precyzyjnie nie ustawił. Ewentualnie bawił bym się jeszcze regulacją prędkości przez PID.

Widać na przykładzie że Gyroscope jest wystarczająco dokładne dla domowych czy zabawowych zastosowań, a zwłaszcza prostsze niż montaż enkoderów.

Dzięki za inspirację 🙂

Edytowano przez Przemek1967

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...