Spisu treści:

1KG Sumobot Build: 6 kroków
1KG Sumobot Build: 6 kroków

Wideo: 1KG Sumobot Build: 6 kroków

Wideo: 1KG Sumobot Build: 6 kroków
Wideo: Sumo Robot 1kg Petrosains RBTX Final 2022 | Ultimate Battle of Robot Titans 2024, Czerwiec
Anonim
1 kg Sumobot Build
1 kg Sumobot Build

Ta instrukcja poprowadzi Cię przez proces projektowania i budowy jednokilogramowego sumobota.

Ale najpierw trochę tła, dlaczego zdecydowałem się to napisać. Miałem właśnie naprawić mojego starego sumobota na zawody, kiedy zdałem sobie sprawę, że nigdy nie stworzyłem instrukcji, jak zrobić sumobota. Przez ostatni rok milczałem w Instructables, więc zdecydowałem, że wrócę z tym Instructable, jak zbudować sumobota 1KG.

Po pierwsze, wielu z was zastanawiałoby się: czym jest sumobot?

Zasadniczo sumobot to rodzaj robota używanego w zawodach sumobot lub robot-sumo. Jak sama nazwa wskazuje, celem jest wypychanie się nawzajem z ringu, podobnie jak w zapasach sumo. Sam sumobot został zaprojektowany wyłącznie w celu wypchnięcia innego sumobota z ringu. Sumobot w tym Instructable to 1 kilogram. Istnieją jednak inne klasy wagowe, takie jak 500 gramów i 3 kilogramy.

Wymagane umiejętności:

  • Znajomość CAD (projektowanie wspomagane komputerowo)
  • Lutowanie
  • Programowanie w Arduino

Do tego projektu nie potrzeba wiele umiejętności. Samo bycie wygodnym z CAD, lutowaniem i programowaniem to długa droga. Nie zrażaj się tym, jak skomplikowane brzmi projektowanie wspomagane komputerowo. Autodesk zapewnia bezpłatne, kompleksowe samouczki dotyczące własnego oprogramowania (sam używam Fusion 360) i jest niezwykle pomocne dla początkujących, którzy uczą się podstaw. Dla mnie ważniejsza jest chęć i gotowość do nauki, no i oczywiście do dobrej zabawy po drodze.

Z tym zacznijmy.

PS Biorę udział w tym Instructable w konkursie Make it Move. Jeśli uważasz, że ten Instructable jest niesamowity, zagłosuj również na mnie. (Chcę koszulkę; wygląda naprawdę fajnie:))

Krok 1: Lista części

Lista części:

Blacha aluminiowa 0,090” 6061 - 12” x 12” (lub dowolna blacha aluminiowa 0,090”/2,2 mm, która może być obrabiana CNC. Wybrałem 6061, ponieważ będzie on używany do głównego korpusu, a 6061 ma sporo wytrzymałości)

Blacha aluminiowa 0,5 mm - 12” x 12” (Każdy stop będzie działał; to tylko górna pokrywa i ostrze. Użyłem zapasowych skrawków aluminium)

Blacha aluminiowa 5 mm (znowu każdy stop zadziała. Mój miał 7075 skrawków aluminium.)

Silnik o wysokim momencie obrotowym 2 x 12 V DC (działa każdy silnik o wysokim momencie obrotowym, taki jak ten z Amazon).

2 x felga (ponownie, każda felga będzie działać, w zależności od silnika. Jeśli masz wał silnika 5 mm, te koła będą działać ładnie. Moje to w rzeczywistości stare silikonowe koła, które miałem)

4 czujniki odległości IR (ja używam czujników odległości IR Sharp, które można kupić w wielu sklepach, np. ten w Pololu i ten w Sparkfun.)

2 czujniki IR (znowu mam tu trochę od Sparkfun.)

1 płytka mikrokontrolera (używam ATX2 tylko dlatego, że jest to wymagane. Zwykłe Arduino Uno byłoby lepsze ze względu na łatwość obsługi).

1 bateria litowo-polimerowa 3S (LiPo. 3S LiPos to 12 V. Wydajność od 800 do 1400 mAh będzie działać.)

1 sterownik silnika (ponownie, zależy to od tego, ile mocy może pobierać twój silnik. To idzie bezpośrednio na Arduino Uno i może zapewnić do 5A prądu.)

Przewody, kable i złącza (do podłączenia czujników do płyty i połączenia z laptopem).

Śruby i nakrętki M3

epoksydowe

Karton

Laptop (do programowania płytki)

Narzędzia takie jak nożyczki, ściągacze izolacji i lutownica.

Krok 2: Montaż podwozia

Montaż podwozia
Montaż podwozia
Montaż podwozia
Montaż podwozia
Montaż podwozia
Montaż podwozia
Montaż podwozia
Montaż podwozia

Do zaprojektowania obudowy użyłem Fusion 360, oprogramowania 3D CAD/CAM opartego na chmurze typu „wszystko w jednym”. Autodesk udostępnia tutaj piękne samouczki. Nauczyłem się głównie oglądając filmy, a następnie próbując je zrobić samemu. Nie będę próbował Cię uczyć, jak korzystać z Fusion 360; Pozwolę profesjonalistom robić swoje.

Sam projekt składa się z jednej głównej podstawy, jednego ostrza, jednej górnej pokrywy, dwóch wsporników silnika i dwóch (lub czterech) klamer drukowanych w 3D. Główna podstawa wykonana jest z aluminium o grubości 2,2 mm, wsporniki silnika z aluminium o grubości 5 mm, ostrze z aluminium o grubości 0,5 mm, a górna pokrywa może być wykonana z aluminium o grubości 0,5 mm lub zwykłego kartonu. Użyłem tektury, ponieważ aluminium waży kilka gramów więcej i przekroczyłem limit 1 kilograma o 10 gramów. Z drugiej strony, szelki drukowane w 3D są drukowane z ABS, z wypełnieniem 50%.

Projekty wymagające aluminium zostały wyeksportowane do plików.dxf i wysłane do lokalnej firmy zajmującej się cięciem laserowym na Filipinach. W międzyczasie wydrukowane części 3D zostały wyeksportowane do STL i ponownie wysłane do lokalnej firmy drukującej 3D.

Zastrzeżenie: Ponownie użyłem mojego starego sumobota, który już nie działa, ale wykorzystuje ten projekt, więc niektóre części są już zmontowane na zdjęciach. Przeprowadzę Cię jednak przez proces składania wszystkich elementów w całość.

Po wycięciu części możesz zacząć od górnej pokrywy, klamry i ostrza lub wspornika silnika.

Górna pokrywa w projekcie wykonana jest z aluminium, ale ze względu na ograniczenia wagowe użyłem kartonu. Wycinam tekturę w takich samych specyfikacjach jak w projekcie.

Wydrukowana w 3D klamra jest mocowana z przodu za pomocą śrub i służy do dosłownie usztywnienia ostrza. Ostrze jest przyklejone do podstawy za pomocą żywicy epoksydowej. Otwory na śruby w ostrzu i głównej podstawie służą do kierowania pozycjonowaniem i upewnienia się, że są one dokładnie połączone. W podstawie głównej znajdują się okrągłe otwory, które można wypełnić żywicą epoksydową, aby przykleić ostrze do podstawy głównej. Duża powierzchnia otworów pozwala żywicy epoksydowej lepiej chwytać ostrze i zapobiega jego odrywaniu się od podstawy. Czujnik podczerwieni można również przykleić do spodu ostrza za pomocą żywicy epoksydowej, tak jak na zdjęciach. Upewnij się, że dół czujnika jest prostopadły do podłogi.

Aby zamontować silnik na podstawie, najpierw przykręć silnik do wspornika silnika. Należy jednak najpierw przylutować przewody do silnika, ponieważ wyprowadzenia znajdują się z tyłu silnika i trudno byłoby do nich dotrzeć po przymocowaniu ich do podstawy. Silnik jest wyrównany ze wspornikiem silnika i jest podtrzymywany przez śruby. To znaczy, jeśli masz silnik, który umieściłem na liście części. Jeśli nie, możesz zmodyfikować projekt, aby pasował do twojego silnika. W tym momencie możesz również przymocować obręcz koła do silnika. Wspornik silnika następnie przykręca się do tylnych otworów podstawy głównej.

Jeśli używasz sterownika silnika, który nie może być umieszczony na Arduino lub z jakiegokolwiek powodu sterownik silnika musi mieć własny obszar, między silnikami a ostrzem jest przestrzeń. Ta przestrzeń jest przeznaczona na akumulator lipo i sterownik silnika, na wypadek, gdybyś potrzebował dodatkowej przestrzeni. Ponieważ pracujemy już również nad dolną częścią robota i trudno będzie uzyskać do niej później dostęp po przymocowaniu górnej pokrywy, możesz umieścić sterownik silnika pomiędzy ostrzem a silnikami, tak jak na zdjęciach. W przymocowaniu do podstawy może pomóc taśma dwustronna.

Krok 3: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Następna w kolejności jest elektronika, taka jak czujniki, sterownik silnika i płytka.

Jeśli ponownie używasz sterownika silnika, który nie pasuje do Arduino, zacznij podłączać przewody potrzebne do połączenia go z mikrokontrolerem. Dla mojego sterownika silnika wszystko czego potrzebuję to przewód sygnałowy (niebieski) i uziemiający (czarny). To zależy od samego kierowcy. To, czego potrzebują wszyscy kierowcy, to przewody do podłączenia do akumulatora lub źródła zasilania. Przewody podłączone do mojego XT-60 (ta sama wtyczka w większości baterii lipo) były zbyt grube, więc musiałem je przyciąć, aby pasowały do wąskich bloków złączy.

Mój mikrokontroler również korzysta z tego samego źródła zasilania, co sterowniki silników, więc musiałem przylutować przewody bezpośrednio do wyprowadzeń złącza XT-60 w sterownikach silników.

Same czujniki odległości IR mogą wymagać przylutowania do nich pinów nagłówka, w zależności od tego, jaki czujnik otrzymasz. Zwykle zawierają je w pakiecie, jeśli je kupisz, więc po prostu przylutuj je w razie potrzeby.

Być może będziesz musiał również zlutować przewody, aby połączyć mikrokontroler z czujnikami, tak jak ja. Czujnik posiada własne złącze; niektórzy używają JST, a niektórzy używają nagłówków serwo. Przy zwykłym Arduino można wpiąć kable połączeniowe do Arduino, a następnie przylutować drugi koniec kabla do kabla wychodzącego z czujnika. Proces działa w ten sam sposób z innymi mikrokontrolerami. Przewody wychodzące z mikrokontrolera są przylutowane do przewodów wychodzących z czujnika.

Krok 4: Łączenie wszystkich części

Składanie wszystkich części razem
Składanie wszystkich części razem
Składanie wszystkich części razem
Składanie wszystkich części razem
Składanie wszystkich części razem
Składanie wszystkich części razem
Składanie wszystkich części razem
Składanie wszystkich części razem

Czujniki i mikrokontroler trafiają na górną płytę. Czujniki odległości IR zamontowałem na wiązce tektury, aby podnieść ją nad mikrokontroler, ponieważ przewody za czujnikiem kolidują z mikrokontrolerem. Zwróć uwagę, że na zdjęciu są tylko trzy czujniki. Dopiero w ostatniej chwili zdecydowałem się dodać czwarty czujnik odległości z tyłu robota. Niestety nie było już miejsca, więc musiałem go zamontować na samej podstawie głównej, tuż za silnikami.

Mikrokontroler jest następnie mocowany do górnej płyty. Nic trudnego; Po prostu zrobiłem kilka dziur w kartonie i przykręciłem całą płytę do górnej płyty. Jeśli używasz aluminium, niezbędna będzie wiertarka ręczna.

Po przymocowaniu wszystkiego do górnej płyty, użyj taśmy dwustronnej, aby przykleić ją do górnej części silników.

W tym momencie możesz zacząć łączyć ze sobą całą elektronikę, np. podłączyć czujniki i sterownik silnika do mikrokontrolera. Jeśli używasz sterownika silnika, który po prostu przykleja się do Arduino, nie ma dla ciebie problemu. Jeśli nie, to będziesz musiał podłączyć go zgodnie ze specyfikacją sterownika do płytki, tak jak to zrobiłem.

Gdy wszystko jest już połączone, umieść lipo w dolnej przestrzeni między silnikami a ostrzem, a następnie włącz mikrokontroler i sterowniki, aby zobaczyć, jak zapala się po raz pierwszy.

Krok 5: Programowanie

Gdy wszystko jest już zmontowane, pozostaje ostatnia rzecz do zrobienia: zaprogramowanie robota.

Programowanie robota zależy od wybranej strategii. Zakładam tutaj, że jesteś kompetentny w programowaniu, ponieważ mój sterownik silników korzysta z komunikacji szeregowej (UART), a co za tym idzie mój program nie będzie działał z innymi sterownikami silników. W końcu w programowaniu nie ma jednego uniwersalnego rozmiaru.

Aby Ci pomóc, oto podstawowy schemat blokowy mojego programu.

jeśli ktoś jest bardzo blisko z przodu, idź pełną mocąjeśli lewy lub prawy czujnik koloru wykryje białą linię, cofnij się, a następnie odwróćjeśli lewy lub prawy czujnik odległości wykryje coś, skręć w tym kierunkujeśli tylny czujnik coś wykryje, skręć w tym kierunku,jeśli ktoś jest daleko z przodu, idź do przodu, idź dalej do przodu

Oto cały program, jeśli jesteś ciekawy:

#włączać

// A5 - lewy czujnik koloru // A4 - prawy czujnik koloru // A6 - tylny czujnik odległości // A2 - lewy czujnik odległości // A3 - prawy czujnik odległości // A1 - przedni czujnik odległości // silnik 1 - prawy // motor 2 - left void setup() { uart1_set_baud(9600); Serial1.write(64);Serial1.write(192); OK(); sygnał dźwiękowy(2); setTextColor(GLCD_BLUE); glcd(1, 0, "Zainicjowane"); opóźnienie(4900); }

pusta pętla () {

int frontDistanceValue = analogRead (A1); int leftDistanceValue = odczyt analogowy (A2); int rightDistanceValue = analogRead (A3); int rearDistanceValue = analogRead (A6); int leftColorValue = digitalRead (A5); int rightColorValue = digitalRead (A4); if (frontDistanceValue > 250) { // ktoś z przodu, max moc Serial1.write(127); Serial1.zapis(128); } else if (leftColorValue == 0) { // dotknięta krawędź // odwrócona Serial1.write(1); Serial1.zapis(255); opóźnienie(400); Serial1.zapis(1); Serial1.zapis(128); opóźnienie(300); } else if (rightColorValue == 0) { // dotknięta krawędź // odwrócona Serial1.write(1); Serial1.zapis(255); opóźnienie(400); Serial1.zapis(127); Serial1.zapis(255); opóźnienie(300); } else if (frontDistanceValue > 230) { // trochę daleko od frontu Serial1.write(127); Serial1.zapis(128); } else if (leftDistanceValue > 250) { // skręć w lewo Serial1.write(127); Serial1.zapis(255); opóźnienie(450); } else if (rightDistanceValue > 250) { // skręć w prawo Serial1.write(1); Serial1.zapis(128); opóźnienie(450); } else if (rearDistanceValue > 150) { // blisko tyłu Serial1.write(1); Serial1.zapis(128); opóźnienie(1050); } else if (frontDistanceValue > 180) { // daleko z przodu Serial1.write(127); Serial1.zapis(128); } else { Serial1.write(100); Serial1.zapis(155); } }

Krok 6: Zdjęcia

Zdjęcia
Zdjęcia
Zdjęcia
Zdjęcia
Zdjęcia
Zdjęcia
Zdjęcia
Zdjęcia

Pokazano kilka zdjęć gotowego sumobota.

Mam nadzieję, że nauczyłeś się czegoś z tej instrukcji. Jeśli podoba Ci się ten przewodnik, zagłosuj na mnie w konkursie Make it Move. Jeśli nie, z przyjemnością poprawię wszystko, co może ulepszyć ten przewodnik.

Miłej nauki!

Zalecana: