beargrylls 3 Napisano 29 listopada Cześć, jakiś czas temu postanowiłem zaprojektować robota, którego mógłby zbudować każdy z dostępem do drukarki 3d i dość skromnym budżetem. Rozwiązania konstrukcyjne częściowo opierałem na BCN3D MOVEO i innych podobnych konstrukcjach, jednak chciałem żeby manipulator był bardziej precyzyjny w czym miało pomóc zastosowanie łożysk w każdej z osi. Przekładnie w pierwszej i czwartej osi to wydrukowane koła zębate, przełożenia kolejno 1:7 i 1:6, w osiach 3 i 5 zastosowano przekładnie pasowe zębate, przełożenia kolejno 1:8,435 i 1:6.125. Jak widać manipulator jest jeszcze nie skończony, brak mu osi drugiej. Początkowo oś 2 i 3 miały być takie same, jednak ze względu na większe obciążenia, musiałem przeprojektować drugą oś, zastosować większy pasek (T5x10 zamiast gt2x6mm) oraz dodatkową przekładnię planetarną. Oś druga jest jeszcze w fazie projektowej. Koszt (bez kosztów przesyłki): "mechanika": silniki krokowe używane z allegro: około 40zł łożyska: około 60 zł śruby/nakrętki: około 50 zł filament do drukarki ABS 2x 1kg: 120 zł serwomechanizm do chwytaka (wziąłem jaki miałem pod ręka, ale można użyć tańszy): 50 zł co daje około 320 zł elektronika: Płytka zgodna z Arduino Mega: 40 zł RAMPS 1.4: 20 zł StepSticki : 30 zł Zasilacz 250W: 48 zł = 138 + przewody czyli powiedzmy 160 zł W sumie wyszło około 480 zł czyli trochę drożej niż planowałem jednak można przyoszczędzić np. nie kupując nowego zasilacza itp. Obecnie planuję: skończyć projekt osi drugiej i zrobić prototyp oraz przetestować go razem z całym robotem wydrukować i zamontować przekładnie planetarną do osi trzeciej dokończyć komunikację robota z ROSem przez bibliotekę rosserial arduino 2 Cytuj Udostępnij ten post Link to post Share on other sites
atMegaTona 88 30 listopada Fajny design! Dnia 29.11.2019 o 11:09, beargrylls napisał: serwomechanizm do chwytaka (wziąłem jaki miałem pod ręka, ale można użyć tańszy): 50 zł Można też zastosować silnik bldc w roli serwa jak w tym wątku: Oprogramowanie autorskie czy gotowiec? Ogólnie fajna konstrukcja, gratuluję. 1 Cytuj Udostępnij ten post Link to post Share on other sites
beargrylls 3 w niedzielę o 03:12 Dzięki! Jak na razie to mam w planie zrobić chwytak na silniku szczotkowym z przekładnią. Całość kosztowała koło 2,50 na allegro. Co do pozostałych napędów to fajnie by było użyć silników bezszczotkowych jednak są znacznie droższe. Oprogramowanie bazuje na bibliotekach arduino AccelStepper i Multistepper których używam do sterowania silnikami krokowymi, wykorzystałem gotowy przykład dodając tylko liczbę silników i współczynniki do przeliczania obrotów na kroki oraz prostą komunikację przez port szeregowy. Teraz planuję zrobić żeby robot powtarzał trajektorię wygenerowaną w symulacji. Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 990 w niedzielę o 10:05 6 godzin temu, beargrylls napisał: Jak na razie to mam w planie zrobić chwytak na silniku szczotkowym z przekładnią. Całość kosztowała koło 2,50 na allegro. Podejrzewam, że biorąc pod uwagę koszt drivera serwo wyjdzie taniej... pokaż ten silnik za 2.50 bo aż sie wierzyć nie chce 1 Cytuj Udostępnij ten post Link to post Share on other sites
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Szukasz producenta PCB?Sprawdź przetestowaną firmę JLCPCB. Dlaczego warto? • Prototypy PCB za 2$ (gotowe w 24 godziny) • Kody zniżkowe dla nowych klientów (po rejestracji) • Produkcja w profesjonalnej fabryce (zobacz film) Sprawdź też » Jak powstaje PCB? Wycieczka po fabryce
atMegaTona 88 w niedzielę o 12:09 Mam cały karton (naście szt.) takich silników z drukarek różnej mocy, czasami ktoś sprzedaje za parę zł. jeśli działa, mogę oddać darmo jak się komu przydadzą. 1 Cytuj Udostępnij ten post Link to post Share on other sites
beargrylls 3 w niedzielę o 12:09 Coś takiego: https://allegro.pl/oferta/silnik-20-03419-24-v-dc-z-przekladnia-8577966174 całość jest trochę duża, ale dość lekka Cytuj Udostępnij ten post Link to post Share on other sites
ethanak 990 w niedzielę o 12:32 Fajny silniczek, ale chyba za duże przełożenie... Podrzuciłem link kumplowi, bo ostatnio płakał że 5 RPM to trochę za dużo i musi zejść z 24 na 6 V - może mu się przyda Cytuj Udostępnij ten post Link to post Share on other sites
beargrylls 3 w poniedziałek o 21:06 Po wielu podejściach udało mi się wreszcie sterować robotem wykorzystując do uproszczony model 3d robota. Najpierw próbowałem wykorzystać RPi 3B+ z zainstalowanym ubuntu, jednak okazało się za słabe i po odpaleniu okna symulacji system działał bardzo powoli a potem się zawieszał. Do stworzenia modelu robota w ROSie (Robot Operating System) potrzebny jest plik w formacie URDF (Universal Robot Description Format), jest to właściwie plik w języku znaczników XML opisujący każdy człon oraz przegub robota a także ich wzajemne położenie. Można napisać taki plik samemu, tutaj przykładowy fragment opisujący "robota" z jednym członem w formie walca: 1 <?xml version="1.0"?> 2 <robot name="myfirst"> 3 <link name="base_link"> 4 <visual> 5 <geometry> 6 <cylinder length="0.6" radius="0.2"/> 7 </geometry> 8 </visual> 9 </link> 10 </robot> Dla bardziej złożonych geometrii można podać ścieżkę do pliku .dae lub .stl tak jak tu: <link name="right_tip"> 210 <visual> 211 <origin rpy="-3.1415 0 0" xyz="0.09137 0.00495 0"/> 212 <geometry> 213 <mesh filename="package://urdf_tutorial/meshes/l_finger_tip.dae"/> 214 </geometry> 215 </visual> 216 </link> Jeśli ktoś byłby ciekawy jak stworzyć taki plik to odsyłam do pełnego tutoriala: http://wiki.ros.org/urdf/Tutorials/Building a Visual Robot Model with URDF from Scratch Jako że jestem leniwy, do wygenerowania pliku URDF użyłem programu Autodesk Fusion 360 i skryptu fusion2urdf. Gdyby ktoś potrzebował to tu jest link: https://github.com/syuntoku14/fusion2urdf Jest tam wszystko opisane jak przygotować model 3d, jak stworzyć plik URDF a następnie otworzyć w ROSie. Tutak podaję link do tutoriala, opisującego jak zacząć zabawę z ROSem i MoveIt! czyli oprogramowaniem służącym do planowania trajektorii robota. http://docs.ros.org/melodic/api/moveit_tutorials/html/doc/getting_started/getting_started.html Kolejnym krokiem jest utworzenie konfiguracji robota w MoveIt! W tym celu wystarczy odpalić kreatora konfiguracji MoveIt! Setup Assistant wpisując w terminal: roslaunch moveit_setup_assistant setup_assistant.launch Jak korzystać z kreatora konfiguracji jest opisane w tutorialu: http://docs.ros.org/melodic/api/moveit_tutorials/html/doc/setup_assistant/setup_assistant_tutorial.html Jest to stosunkowo proste, najpierw należy podać ścieżkę do naszego pliku URDF jeśli chcemy stworzyć nową konfigurację lub do konfiguracji którą chcemy zmodyfikować. W następnych krokach stworzona jest między innymi macierz zwana "Self-Collision Matrix" czyli na tym etapie sprawdzane jest które człony nie mogą fizycznie się ze sobą zderzyć, co później wykorzystane jest do skrócenia czasu planowania trajektorii. Na końcu tworzone są pliki konfiguracyjne niezbędne do rozpoczęcia zabawy z MoveIt! Potem, żeby uruchomić wizualizację robota należy użyć polecenia gdzie jako pierwszy argument, wpisujemy nazwę którą podaliśmy przy tworzeniu plików konfiguracyjnych: roslaunch panda_moveit_config demo.launch Wizualizacja otworzy się w środowisku RViz czyli głównym narzędziu ROSa służącym właśnie do wizualizacji robotów. Następnie korzystając z biblioteki rosserial arduino przerobiłem kod programu na arduino tak, żeby odbierał z ROSa informacje o współrzędnych przegubowych (joint_states), przeliczał na liczbę kroków i sterował silnikami krokowymi. Bazowałem między innymi na tym tutorialu: http://wiki.ros.org/rosserial_arduino/Tutorials/Servo Controller A oto efekt: 1 Cytuj Udostępnij ten post Link to post Share on other sites
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. 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