Skocz do zawartości

[Robot] Kilka pytań


Chiobio

Pomocna odpowiedź

Witam,

Celem jest stworzenie robota realizującego mapę otoczenia. Na początek prosta wersja - 2 silniki, czujnik odległości, komunikacja z komputerem. Wszystko w celu stworzenia dwuwymiarowej mapy otoczenia.

O ile programowo dam sobie radę, to już dobranie odpowiednich silników, czy stworzenie własnej płytki sprawia pewne trudności. Z tego powodu mam kilka pytań:

1. Jakie dobrać silniki?

Potrzebuję w miarę dokładne położenie robota, stąd chciałbym zakupić dwa silniki DC z wbudowanym enkoderem. Mogę wydać ~150 zł za silnik. Na wagę konstrukcji będą składać się: 2 silniki(?), czujnik sharpa (5g), akumulator(?), elektronika(?), mechanika(?). Czy możecie polecić jakieś silniki z wbudowanym enkoderem?

2. Jaki akumulator?

Potrzeba zasilić elektronikę, silniki, czujnik sharpa.

3. Jak komunikować się z komputerem?

Bluetooth, radiowo? Co polecacie? Może jakieś linki odnośnie elektroniki - jakie układy kupić? etc.

Prosiłbym o wyrozumiałość - jest to moja pierwsza konstrukcja. Dziękuję za wszelkie rady, linki, ogólnie wszystko, co może pomóc (rady nie muszą dotyczyć jedynie pytań🙂 )

Jeżeli brakuję jakiś informacji, to uzupełnię🙂

W celu pokazania, że projekt traktuję poważnie wypunktuję, co już mam:

- prosty framework (ukończony powiedzmy w 70%), który umożliwi wizualizację odbieranych danych (OpenGL + SDL);

- programowa obsługa silników DC, czujnika odległości, enkodera (AVR).

Pozdrawiam:)

Link do komentarza
Share on other sites

Potrzebuję w miarę dokładne położenie robota, stąd chciałbym zakupić dwa silniki DC z wbudowanym enkoderem. Mogę wydać ~150 zł za silnik. Na wagę konstrukcji będą składać się: 2 silniki(?), czujnik sharpa (5g), akumulator(?), elektronika(?), mechanika(?). Czy możecie polecić jakieś silniki z wbudowanym enkoderem?

Za takie pieniądze tylko coś używanego z allegro lub kupienie silniczka pololu z ośką wystającą z tyłu i dorabianie do tego enkodera lub kupno gotowej płytki z enkoderem magnetycznym chyba miało to być dostępne w Robodudes.

Akumulator najlepiej jakiś li-pol o niezbyt dużej pojemności tak aby waga nie wzrosła nie wiadomo ile. Robot nie będzie się poruszał raczej ze zbyt dużą prędkością.

  • Lubię! 1
Link do komentarza
Share on other sites

1. Jakie dobrać silniki?

Pololu 30:1 HP - najszybsze na rynku, małe, stosowane w najlepszych konstrukcjach (~50zł sztuka) lub serwa Tower Pro MG-995 (~30zł sztuka) - silne, wytrzymałe, metalowe tryby, powolne

2. Jaki akumulator?

Myślę, że Li-Pol 1700mAh 10C spokojnie wystarczy (~60zł) + ładowarka (~20 - 100zł)

3. Jak komunikować się z komputerem?

Najlepiej poprzez port UART w mikrokontrolerze, który będzie podpięty pod układ FT232 (konwerter UART - USB). Taka komunikacja jest niezawodna. Sprawdzi się w każdym komputerze ze względu na wykorzystanie portu USB.

Życzę powodzenia i będę uczestniczył w dyskusji 😉

  • Lubię! 1
Link do komentarza
Share on other sites

Li-Pol 1700mAh

800 mAh powinno wystarczyć, a będzie dużo lżejsze, jeśli będzie na serwach to więcej niz 400mA robot raczej nie będzie pobierał. Choć to zależy jak długo ma pracować na jednych. Pozostaje tez opcja dwa mniejsze: jeden rozładowywać, drugi ładować.

Najlepiej poprzez port UART w mikrokontrolerze, który będzie podpięty pod układ FT232 (konwerter UART - USB). Taka komunikacja jest niezawodna. Sprawdzi się w każdym komputerze ze względu na wykorzystanie portu USB.

Mam wrażenie, że chodziło o komunikacje bezprzewodową.

Na forum było kilka dyskusji na ten temat, na przykład:

https://www.forbot.pl/forum/topics20/test-recenzja-bluetooth-kamodbtm222-vt3734.htm?highlight=bluetooth+mod%F3%B3

  • Lubię! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

piotreks-89, wybacz, ale piszesz głupoty.

1. Jakie dobrać silniki?

Pololu 30:1 HP - najszybsze na rynku, małe, stosowane w najlepszych konstrukcjach (~50zł sztuka) lub serwa Tower Pro MG-995 (~30zł sztuka) - silne, wytrzymałe, metalowe tryby, powolne

Chiobio nie potrzebuje najszybszych, potrzebuje dokładnych. Jeżeli już Pololu, to proponowałbym te 50:1 z wydłużoną ośką do enkodera. Serwa odpadają, jak zamontujesz enkoder do serw.

Grabo mnie chyba zabije, ale buduje bardzo dokładnie jeżdżącego robota:

https://www.forbot.pl/forum/topics40/mozliwosci-atmegi16-vt5824.htm#48480

Możesz się go zapytać jakiego napędu użył.

3. Jak komunikować się z komputerem?

Najlepiej poprzez port UART w mikrokontrolerze, który będzie podpięty pod układ FT232 (konwerter UART - USB). Taka komunikacja jest niezawodna. Sprawdzi się w każdym komputerze ze względu na wykorzystanie portu USB.

Tak, na pewno będzie jeździł po pokoju ciągnąc przewód... To po co by mu było akku, z ATX'a by można zasilać - piszesz bez sensu. Na krótkie dystanse uważam że bluetooth byłby lepszy, moduły radiowe, szczególnie te tańsze potrafią nieźle syfić.

  • Lubię! 2
Link do komentarza
Share on other sites

Celem jest stworzenie robota realizującego mapę otoczenia. Na początek prosta wersja - 2 silniki, czujnik odległości, komunikacja z komputerem. Wszystko w celu stworzenia dwuwymiarowej mapy otoczenia.
- Mój błąd i niedoczytanie 😕 Wydawało mi się, że robot klasy minisumo, a komunikacja po to by wgrywać ewentualne poprawki programu poprzez bootloader.
Link do komentarza
Share on other sites

Chiobio nie potrzebuje najszybszych, potrzebuje dokładnych. Jeżeli już Pololu, to proponowałbym te 50:1 z wydłużoną ośką do enkodera. Serwa odpadają, jak zamontujesz enkoder do serw.

Grabo mnie chyba zabije, ale buduje bardzo dokładnie jeżdżącego robota:

https://www.forbot.pl/forum/topics40/mozliwosci-atmegi16-vt5824.htm#48480

Możesz się go zapytać jakiego napędu użył.

Grabo użył pololu 50:1 (tylko nie wiem czy HP czy normalnych) z ośką z tyłu plus do tego enkoder zrobiony z części od trackballa.

Link do komentarza
Share on other sites

Dziękuję za wszystkie odpowiedzi:) Zapoznam się z tym, co podaliście i napiszę później, co wybrałem:)

Tak, jak zauważyliście - komunikacja będzie bezprzewodowa.

Pozdrawiam 🙂

Link do komentarza
Share on other sites

piotreks-89, wybacz, ale piszesz głupoty.
1. Jakie dobrać silniki?

Pololu 30:1 HP - najszybsze na rynku, małe, stosowane w najlepszych konstrukcjach (~50zł sztuka) lub serwa Tower Pro MG-995 (~30zł sztuka) - silne, wytrzymałe, metalowe tryby, powolne

Chiobio nie potrzebuje najszybszych, potrzebuje dokładnych. Jeżeli już Pololu, to proponowałbym te 50:1 z wydłużoną ośką do enkodera. Serwa odpadają, jak zamontujesz enkoder do serw.

Open-Encoder, ten układ z Austria Micro dostaniesz jako sample, o ile się nie mylę.

  • Lubię! 1
Link do komentarza
Share on other sites

Jak już wspominali KD93 i Sabre działam na Pololu 50:1 HP z obustronną osią. Jeśli poszukujesz mocniejszego lecz większego napędu to myślę, że bez problemu można dorobić enkoder do silników Micromotors HL149.

Link do komentarza
Share on other sites

Wybrałem:

- 2x Silnik Pololu HP 50:1 obustronna oś;

- modułu KAmodBTM222 (choć cena "trochę" odstrasza).

Pojawiło się kilka pytań:

1. Czy pracował ktoś z modułem KAmodBTM222 pod Linuksem? Jeżeli tak, to czy pojawiały się jakieś znaczące problemy z komunikacją?

2. Chciałbym doprecyzować pytanie odnośnie akumulatorów - jakie wybrać?

Według danych producenta wybrany silnik Pololu pobiera 1600mA (prąd szczytowy) i 100mA (prąd biegu jałowego, 6V). W robocie będą takie dwa. Dodatkowo czujnik odległości sharpa pobiera 30mA (według dokumentacji). Dojdą też dwa enkodery i sama elektronika, której pobór prądu ciężko mi stwierdzić. Próbowałem obliczyć, jaki użyć akumulator na podstawie tego tematu:

Obliczanie baterii Li-Pol

Nie ukrywam jednak, że mi to nie wychodzi. Wiadomo, że silnik podczas pracy nie będzie pobierał 1600mA, a więc ile? Mógłby mi ktoś przybliżyć obliczenia?

Oczywiście Wasze rady odnośnie akumulatorów bardzo mi pomogły. Chciałbym jednak samodzielnie wyliczać, jaki akumulator będę potrzebował. W końcu nie mogę ciągle "żerować" na Waszej wiedzy;)

3. Postanowiłem samodzielnie wykonać enkodery, czyli użyć części z myszki kulkowej. Jak sprawdzą się takie enkodery? Będą wystarczająco dokładne, czy lepiej zainwestować w enkodery od dowolnego producenta?

Dziękuję ponownie za poświęcony czas i pozdrawiam 🙂

Link do komentarza
Share on other sites

Ad 2.

Ciężko mówić o ścisłych obliczeniach. Raczej to będą szacunki. Najpierw musisz się zastanowić na ile dobrze jesteś wstanie określi wymagania względem robota, oraz jak dobrze czujesz się z liczeniem. Jeśli ci się nie chce, albo nie czujesz się na siłach podglądasz jakie rozwiązania były i jakie miały parametry prace w podobnej konstrukcji. Ty silniki masz już dobrane więc zostają parametry pracy. W temacie Od żółtodzioba do pierwszego robota w dwa tygodnie zostało powiedziane:

Silniki Pololu HP 30:1 ciągną 600mA, max 1,6A ale to i tak za dużo jak dla tego mostka

Możesz przyjąć te dane do dalszych obliczeń. Potem podliczyć musisz resztę elektroniki i określić zużycie prądu.

Jeśli jednak nie masz dobranych silników to bardzo teoretyzując mógłbyś podejść do tego następująco:

Określasz dynamikę robota, czyli jakim siłą będzie musiał sprostać i jakich prędkości oczekujesz od niego.

Następnie z dynamiki będziesz w stanie obliczyć moc jaka jest potrzebna, aby postawione przed robotem zadania zrealizować.

Posiadając obliczoną moc oraz zakładając sprawność silnika elektrycznego jesteś wstanie obliczyć moc po stronie „elektrycznej układu” gdzie przy stałym napięciu da Ci to charakterystykę prądową.

Rozpatrując bardzo abstrakcyjny przykład:

Załóżmy, że mam robota który waży 500g. Oczekuję od niego aby jeździł z prędkością 1m/s. Co więcej chcę aby tą prędkość osiągał co najwyżej 0.2s. Opory toczenia to siła ciężkości razy współczynnik, który zakładam 0.1. Robot będzie jeździł po labiryncie i może będzie trzeba przepchnąć jakąś przeszkodę. Niezbędna do tego siła to 5N. Wiem, że mój robot będzie jeździł po labiryncie czyli zatrzymywanie się oraz ruszanie to będzie 60% czasu jego pracy 10% to przesuwanie przeszkody, a 30% to normalna jazda.

Obliczmy zatem jaką mocą potrzebujemy dysponować w każdym z etapów jazdy.

Rozpędzanie:

Jeśli nie będziemy brać oporów ruchu pod uwagę to możemy obliczyć to z faktu, że moc to wykonana praca w czasie. Natomiast praca jest to zmiana energii. Zatem ruszamy więc zmieniamy energię z zera na energię kinetyczną. W = Ek – 0 gdzie Ek = m*V^2 / 2 . P =W/t. Otrzymujemy

Ek = 0.5*1^2/2 = 0.25J daje nam to P = 0.25/0.2 = 1.25W.

Jeśli chcemy obliczyć z oporami ruchu to potrzebujemy obliczyć pracę jaką wykonamy wiedząc, że praca to iloczyn siły oraz przemieszczenia wzdłuż kierunku działania tej siły. W = F*s. Nasze przemieszczenie jest drogą w ruchu załóżmy jednostajnie przyspieszonym s= at^2/2. Natomiast przyspieszenie liczymy po prostu z zależności a = V/t. Siła F jaka będziemy działać to siła bezwładności naszej masy czyli Fb = m*a oraz siły oporów ruchu Ft = m*G*mi gdzie mi to współczynnik tarcia, a G to przyspieszenie ziemskie. Zapisujemu

P = F*s/t => P = (F*a *t^2) /(2t) => P = ((m*a + m*G*mi)*a *t^2) /(2t) Co daje nam wynik:

a = 1/0.2 = 5m/s^2

P = ((0.5*5 + 0.5*10*0.1)*5*0.2^2)/(2*0.2) = (2.5+0.5)*5*0.04/0.4 = 15*0.1 = 1.5W

Różnicę zostawię wam do oceny.

Jazda

Jest to po prostu pokonywanie oporów ruchu z zadaną nam prędkością. Moc jest to iloraz siły oraz prędkości więc możemy obliczyć Ft = m*G*mi = 0.5N. P = F*v = 0.5*1 = 0.5W

Przepychanie przeszkody

Aby tutaj utrzymać oczekiwaną prędkość musimy pokonać siły potrzebne do przepchnięcia oraz opory ruchu. F = Ft + Fp = 0.5 + 5 = 5.5N zatem P = F*v = 5.5 * 1 = 5.5W.

Widzimy, że największą moc potrzebujemy do przepchnięcia przeszkody. Dla tego pod to obliczymy minimalną moc silnika. Załóżmy, że silnik elektryczny ma sprawność 80% w takim razie Ps *80% = 5.5W zatem Ps = 6.875 => 7W. To jest minimalna moc silnika jaka potrzebuję. Jeśli będę miał 2 silniki to Ps/2 = 3.5W i tak dalej. Natomiast średnia moc to

Psrednie = 0.6 * 1.5 + 0.3 * 0.5 + 0.1 * 5.5 = 0.9 + 0.15 + 0.55 = 1.6W. Przechodząc na stronę elektryczną to uzyskujemy P = U * I zatem przy stałym napięciu 5V I = P/U co daje nam Prąd maksymalny (ciągle jadąc ) Im = 5.5/5 = 1.1A . Prąd średni to Isredni = 1.6/5 = 320mA. Oczywiście maksymalny prąd będzie przy zatrzymanym wale, a w przypadku twoich silników to 1.6A.

Wszystko co napisałem jest moim przemyśleniem na ten temat. Jest w nim wiele uproszczeń i praktycznie wszystko trzeba sobie „po zakładać”. Natomiast widzę to jako dobry punkt bazowy do stworzenia jakiegoś ciekawszego modelu. Za wszelkie błędy przepraszam, proszę o korekcje.

Pozdrawiam

Edit.

No tak zapomniałem uwzględnić sprawności przy prądach.

Mamy:

Im = 5.5/5 = 1.1A => Im/80% => 1.375A => 1.4A

Isredni = 1.6/5 = 320mA => Isredni/80% =>400mA

  • Lubię! 1
Link do komentarza
Share on other sites

Dzięki wielkie - jest się czego chwycić 🙂

Sprawdziłem analitycznie - nie ma błędów 🙂

Tak, jak napisałeś - trochę dużo niewiadomych się pojawia 🙂

@down Uogólniając, człowiek chciałby jeden prosty wzór, a tu musi szacować🙂

Link do komentarza
Share on other sites

Ciężko mówić o niewiadomych. Bardziej są to oczekiwania wobec twojego robota, wynika z tego wniosek niby oczywisty. Łatwiej się projektuje jeśli dokładnie wiemy co nasz robot będzie robił. Tak naprawdę to czego nie wiemy to sprawność silnika elektrycznego oraz współczynnik tarcia. Ciężko mówić tu o ścisłych obliczeniach. Są to szacunki.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.