Przeszukaj forum
Pokazywanie wyników dla tagów 'Nanosumo'.
Znaleziono 9 wyników
-
RoSOZaPoLas to drugi robot nanosumo, którego zrobiliśmy razem z Pojemnikiem. Aktualnie jest na przymusowej emeryturze ze względu na stan techniczny, ale miewał swoje wielkie chwile zawodach. Jak każda nasza konstrukcja i ta ma bardzo kreatywną nazwę. Tym razem jest to Robot Szukający Oponentów Za Pomocą Laserów. Główną różnicą względem poprzednika jest zmiana taktyki na pozostanie na ringu. Zamiast gry na czas, robot stara się wypchnąć przeciwnika. MECHANIKA Napęd: Po długim czasie szukania gotowych silniczków z przekładnią zdecydowaliśmy się wykonać je samemu z serwomechanizmów dziewięcio-gramowych. Do silnika przymocowaliśmy blaszkę i dwie ośki dające oparcie zębatkom. Trzecia, najmniejsza zębatka trzyma się wyłącznie na wale silnika. Dużo czasu zajęło nam precyzyjne zamocowanie osiek, aby przełożenia nie stawiały zbyt dużych oporów (początkowo silnik nawet nie był w stanie ruszyć). Miniaturowe felgi wytoczyliśmy ze stali, podobnie jak formy do odlania oponek. Silikonowe ogumienie dało nadspodziewanie dobrą przyczepność - robot był praktycznie niemożliwy do przepchnięcia, o ile nie był mocno uderzony z rozpędu lub podważony. Koło zamontowaliśmy na wcisk na najbardziej zewnętrznej zębatce i zabezpieczyliśmy przed wypadnięciem aluminiowym krążkiem przyklejonym do wału. Oba zestawy wyszły trochę krzywe, ale były sprawne i mieściły się regulaminowych wymiarach. Konstrukcja: Silniki połączyliśmy dwoma kawałkami laminatu, kolejne dwa fragmenty stały się pługiem do podważania przeciwników i podtrzymaniem prawego czujnika odległości. Lewy czujnik podparliśmy kawałkiem żeńskiego goldpina. Z uwagi na dużą ilość przewodów i zupełnie odsłonięte elementy, prawą stronę zabudowaliśmy laminatem oklejonym czarną taśmą izolacyjną. Jedyną płytkę przylutowaliśmy do diody prostowniczej aby mieć ułatwiony dostęp do wewnętrznych elementów (wystarczało odgiąć drucik zamiast odrywać klej). Z tyłu znaleźliśmy miejsce na odbiornik IR, na który przykleiliśmy akumulator. Gdy robot był już praktycznie skończony, we wszystkie wolne przestrzenie wkleiliśmy ołowiane kulki wędkarskie aby zwiększyć masę. Ostatecznie wynosiła ona około 20g. ELEKTRONIKA Czujniki: Na czujniki odległości wybraliśmy trzy układy VL53L1, wygrane wcześniej na Robocompie w 2018 roku. Pomimo niezbyt optymalnej konfiguracji, wykrywają przeciwnika z odległości 15 cm z częstotliwością 50Hz. Z przodu zamontowaliśmy dwa popularne KTIR-y do wykrywania krawędzi ringu. Ostatnim czujnikiem robota jest odbiornik IR służący do wygodnego startowania. Działa tak samo jak w poprzedniku, czyli reaguje na jakikolwiek sygnał. Zasilanie: Zastosowaliśmy akumulator Li-Pol 150mAh 1S 30C firmy JJRC produkowany z myślą o dronach. Po usunięciu wszystkich folii ochronnych i oryginalnych przewodów udało nam się go zmieścić razem z płytką zabezpieczającą. Jedno ładowanie wystarczało nawet na bardziej wyczerpujące zawody. Płytka: Z uwagi na małą ilość miejsca pozostawionego na płytkę, zmuszeni byliśmy do miniaturyzacji każdego elementu i wybierania go w najmniejszej lutowalnej ręcznie obudowie. Sercem robota byłą atmega328 (VGFN-28, 4x4mm) taktowana wewnętrznym generatorem RC. Programowana jest magistralą SPI poprzez każdorazowe przylutowanie 5 przewodów. Po kilkudziesięciu przylutowaniach, zaczęły odpadać pola lutownicze, więc musieliśmy lutować do ścieżek. Nie polecamy takiego rozwiązania, pomimo tego, że zajmuje mało miejsca. Aby móc komunikować się magistralą I2C z każdym czujnikiem odległości, zastosowaliśmy demultiplekser PCA9547 (HVQFN-24, 4x4mm), rozwiązując w ten sposób konflikt adresów. Do sterowania silnikami użyliśmy ponownie sterownika A3901 (DFN-10, 3x3mm). Wszystkie elementy pasywne i diody LED wybraliśmy w obudowach 0402. Wymiary płytki to zaledwie 12x10mm. Rozwiązywanie problemów oprogramowaniem Niestety nie wszystko wyszło tak idealnie jak to wygląda w opisie. Po pierwsze, aby robot jechał prosto, jeden silnik musiał otrzymywać tylko połowę mocy, aby zrekompensować opory powstające w przekładni drugiego silnika. Po drugie, z powodu błędów projektowych nie mogliśmy uruchomić demultipleksera magistrali I2C. Ostatecznie robot działał tylko z jednym, środkowym czujnikiem i jechał w stronę przeciwnika “wężykiem” - raz po zgubieniu go skręcał w lewo, a następnym razem w prawo. Metoda ta działała na tyle dobrze, że nie widzieliśmy potrzeby upychania kolejnej płytki w robocie, by korzystać ze wszystkich czujników. Kod został napisany w Arduino IDE, z powodu obecności gotowych bibliotek do czujników i braku czasu na pisanie po rejestrach. WNIOSKI Jak na pierwszego poważnego robota w tej kategorii jesteśmy bardzo zadowoleni z wyników na zawodach. Pierwsze miejsca na Bałtyckich Bitwach Robotów 2019 i Robocompie 2019 uważamy za duży sukces (na tych drugich nie straciliśmy nawet punktu). Niestety, na Sumo Challange 2019 w półfinale robot upadł z dużej wysokości i dosłownie rozpadł się na kawałki (ostatecznie był czwarty, sam upadek widać na ostatnim filmie). Próby reanimacji zakończyły się niepowodzeniem, więc projekt przeszedł na emeryturę. Aktualnie pracujemy nad kolejnym robotem w kategorii, który pozbawiony będzie wrodzonych błędów poprzednika i lepiej zniesie eksploatację. Filmy z zawodów:
-
Witam, tym razem chciałbym zaprezentować mojego najmniejszego do tej pory robocika klasy Nanosumo. Nazywa się „Mały”. W zasadzie wszystko w tym projekcie jest małe: µkontroler, akumulator, silniki, czujniki. Jedną wielką rzeczą była radość podczas pierwszej walki z kartonikiem, gdy to wszystko zadziałało. Idea zbudowania robota zrodziła się kilka lat temu. Od tego czasu trwało zbieranie odpowiednich elementów i informacji. Sama konstrukcja powstawała krótko, bo około 2 tygodnie. Robot mieści się w pudełku o wymiarach 15mm*15mm*15mm. Napędzany jest dwoma silnikami z wibracji Nokii 3310. Przekładnie wyjęte z małych serwomechanizmów. Sterownik silników MPC17C724 znajduje się na dwustronnej płytce PCB umieszczonej między kołami. Akumulator Li-pol 3,7V o pojemności 50mAh w zupełności wystarcza na 20min pracy. Mikrokontroler ATMEGA8L w obudowie MLF znajduje się na głównej płycie PCB pod akumulatorem. Taktowany jest z zewnętrznego generatora 12MHz, aby umożliwić programowanie, z wykorzystaniem bootloadera bezpośrednio z portu USB. Dzięki takiemu rozwiązaniu złącze programatora ma tylko 3 piny. Od spodu na przednim silniku umieszczone są 2 czujniki linii KTIR0711S. Musiały być odpowiednio zeszlifowane, aby szczelina między podłożem i czujnikami była większa od 0,9mm. Dalmierz oparty o APDS-9700 oraz HSDL-9100 idealnie nadawał się do tego robota. Największy problem podczas budowy sprawiło zablokowanie µkontrolera. Niezbędne było użycie Rezurektora AVR. Dzięki odpowiedniemu przygotowaniu innych problemów prawie nie było.
-
RozZuBeN – Robot z Zupełnie Bezsensowną Nazwą Jest to robot klasy nanosumo, który został stworzony na wiosnę 2018 roku przez Pojemnika i mnie - wtedy uczniów pierwszej klasy VIII LO w Poznaniu. Zainteresowaliśmy się tą kategorią na Robomaticonie 2018, gdzie nie było żadnego sumo w tej skali. Pomyśleliśmy, że gdybyśmy mieli akumulator z silnikiem, to byśmy łatwo zgarnęli nagrodę za ostatnie (pierwsze!) miejsce. Tak powstał ten robot. Przestudiowaliśmy regulaminy różnych zawodów i wyodrębniliśmy minimalne założenia które musi spełniać nasz robot podczas zawodów: Poruszanie się Nieporuszanie się (przed startem) Po starcie nie może się zatrzymać na dłużej niż 30 sekund Czekanie 5 sekund po starcie Fajnie by było, gdyby sam z siebie nie wypadał z ringu Udało nam się spełnić wszystkie 5 punktów. 🙃 Płytka: O ile 1, 2 i 3 punkt założeń projektowych można rozwiązać jednym przełącznikiem, to do czwartego potrzebne by było jakieś opóźnienie (układ RC lub popularny NE555 z tranzystorem). 5 punkt przekonał nas do użycia mikrokontolera. Zastosowaliśmy attiny84, które ilością pinów cyfrowych zapewniło nam dużą elastyczność w projektowaniu płytki. Taktowany jest wewnętrznym oscylatorem (miał być zewnętrzny generator kwarcowy ale nie mogliśmy go polutować). Umieściliśmy sterownik silników A3901 z którego wykorzystujemy tylko jeden z dwóch kanałów, dwa czujniki KTIR0711s jako czujniki krawędzi ringu podłączone bezpośrednio do ADC mikrokontrolera, dwa ledy sygnalizacyjne (zielony i bursztynowy, który jest w praktyce pomarańczowy 😠), przełącznik do startowania robota, dzielnik rezystorowy do mierzenia napięcia akumulatora (chyba nawet niewykorzystany), złącze do programowania (2x3 żeńskie goldpiny precyzyjne) i stabilizator napięcia na 3,3V w obudowie SOT23 (nie pamiętamy oznaczenia). W Eaglu zrobiliśmy kwadrat 25x25mm, rozmieściliśmy elementy „na oko”, połączyliśmy ścieżkami, i wysłaliśmy do OSH Parku. Zajęło nam to dwie godziny. Był to koniec marca, płytka przyszła w połowie maja. Wcześniej zamówiliśmy wszystkie elementy, ale oczywiście pomyliliśmy attiny84 z attiny88, więc złożenie potrwało trochę dłużej niż przewidywaliśmy. 😆 Płytkę lutowało się całkiem dobrze, choć do drobnych elementów chyba jednak lepsze są płytki cynowane zamiast złoconych (niby złoto lepiej przewodzi prąd ale cynę najlepiej się lutuje do innej cyny). Praktycznie od razu płytka dogadała się z programatorem (co nie było takie oczywiste w naszych poprzednich robotach). Konstrukcja mechaniczna: Mieliśmy kilka pomysłów na spełnienie pierwszego założenia projektu: silniczek wibracyjny z jakiegoś telefonu, żeby robot tylko drgał (przecież ruch to ruch) albo umieszczenie dwóch silników tak by stykały się wałami z podłożem, aby nie była potrzebna przekładnia, mechanizmy sprężynowe chyba też były... 🙃 Porządna przekładnia z zębatek odpadała, bo nie wiedzieliśmy jak ją zrobić. Ostatecznie wykorzystaliśmy przekładnię cierną. Wał silnika z nałożoną rurką termokurczliwą (dla lepszego tarcia) jest przyciśnięty do opony jedynego w robocie kółka wyciągniętego z jakiejś zabawki. Brzmi to okropnie i tak też zostało to zmontowane. „Felga” kółka trze o korpus silnika, więc to miejsce musi być często smarowane wazeliną techniczną, żeby robot nie zaciął się podczas walki. Wszystko jest zalane gorącym klejem z drucikami z goldpinów tworzącymi swego rodzaju usztywnienie. Czasem gorący klej sprawiał problemy czujnikom przeciwników (nie wiemy dlaczego). 😛 Robot o jednym kółku nie przewraca się, ponieważ na całej podstawie ma przyklejony kawałek styropianowej tektury znaleziony w szufladzie. Przed i za kołem znalazło się też trochę miejsca na ktiry. Wszystko połączyliśmy kabelkami, przykleiliśmy akumulator (Li-Po 1S 150 mAh) (oczywiście też na gorący klej) i włączyliśmy. Okazało się, że silnik jest za mocny i wywraca robota tuż po starcie, ale i tak byliśmy dumni, że robot porusza się całkiem skutecznie. Zrezygnowaliśmy też z przełącznika, który był bardzo niewygodny i zastąpiliśmy go odbiornikiem IR. Nie chcieliśmy się bawić z dekodowaniem sygnałów, więc sygnał połączyliśmy dużym kondensatorem do masy zmieniającym dane na jedną dłuuugą jedynkę odczytywaną przez procesor. Program: Po wielu próbach doszliśmy do wniosku, że najlepiej jest poruszać się metodą krótkich „skoków” polegających na szybkim włączeniu i wyłączeniu silnika (wtedy robot nigdy się nie przewracał). Po każdym „skoku” robot sprawdza czy jest na krawędzi. Jeśli tak to zaczyna poruszać się w drugą stronę i zapala bursztynowego leda. Po 10 sekundach ruchu robot zatrzymuje się na równe 10 sekund aby to przeciwnik zużywał akumulator. 🙃 Całość powtarzana jest aż do utraty zasilania. Ta technika działa zaskakująco dobrze w przypadku konfrontacji z robotem, który też jest „ślepy”. Podczas ruchu może niechcący wypchnąć przeciwnika, a kiedy stoi bardzo ciężko jest go ruszyć (chyba, że przeciwnik jest rozpędzony lub ma dobre silniki). Akumulator starcza na bardzo dużo często remisowych walk. Zwykle ładujemy go przed zawodami do 4,20V a po walkach nadal ma ponad 4,10V. Osiągnięcia: 2018: 3. miejsce Bałtyckie Bitwy Robotów 3. miejsce Robocomp 2. miejsce Sumo Challenge 2019: 4. miejsce Robotic Arena 1. miejsce Robomaticon 🤩 Robot tylko na Robotic Arena zajął ostatnie miejsce. Na każdych zawodach miał 3 przeciwników, więc na Robomaticonie wygrał ze wszystkimi! (z czego z jednym walkowerem) Wnioski: Robot spisuje się niespodziewanie dobrze, co obrazuje niestety poziom konkurencji w Polsce. Aktualnie kończymy prace nad kolejną konstrukcją, która tym razem będzie miała dwa kółka i będzie widzieć przeciwnika, co pozwoli liczyć na walkę a nie tylko łut szczęścia. Mamy nadzieję, że aktywnie zawalczy o pierwsze miejsca. Kilka filmów z zawodów: Chętnie odpowiemy na wszystkie pytania dotyczące robota. 🤗
-
Cześć! Jako że ostatnio na Forbocie jest opisywanych coraz mniej robotów biorących udział w zawodach postanowiłem opisać swojego robota nanosumo. Sam robot powstał już jakiś czas temu (ok 1,5 roku temu), ale do dzisiaj nieźle mu szło na zawodach i ogólnie jestem całkiem zadowolony z konstrukcji. Wyciągnąłem z niej wiele wniosków i mam nadzieję że kolejna będzie jeszcze lepsza 😉 Mechanika : Rama robocika zbudowana jest z malutkich kawałków laminatu, na których ściankach są umieszczone od środka zębatki. Wszystkie koła zebate jak i silniki pochodzą ze znanych 9 gramowych serw. Największym wyzwaniem było upchnięcie dwóch silników na sobie tak by nie podnosiły za mocno całej konstrukcji oraz były dobrze spasowane z zębatkami. Same silniki są przyklejone do siebie oraz do podstawy robota. Koła to przerobione nakrętki mosiężne, w tym momencie nie umiem powiedzieć skąd pochodziły. Wywierciłem w nich otworki i odlałem małe silikonowe oponki. Z przodu robota widoczny jest pług przymocowany na stałe jak i opadający. W sumie nie jestem pewien czy kiedykolwiek pomógł mi podważyć przeciwnika, a czasami sprawiał kłopot z postawieniem bez opadnięcia przed rozpoczęciem walki. Elektronika: Robotem steruje atmega8 taktowana 8mhz z zewnętrznego kwarcu. Ma wgrany bootloader, by oszczędzić pinów na płytce. Oczami są 4 czujniki, z czego jeden jest nieaktywny, gdyż nie miałem miejsca na moduł startowy i musiałem pozbyć się diod ir. Czujniki to, jak w każdej mojej konstrukcji, tsopy i diodki ir smd. Są naprawdę fajne pod względem zasięgu (który da się regulować), jednak zajmują sporo miejsca na pcb. Diodki są sterowane tranzystorami, jednym na parę diod. Mostek to malutki 24 pinowy qfn od freescale - MPC17531. Czujniki linii to ktiry0711s zamocowane na samym dole robota. Moduł startowy postanowiłem umieścić w całości w robocie. Chciałem mieć pewność, że moduł za każdym razem się poprawnie zaprogramuje, a następnie bez problemu wystartuje. Oprócz tego jest trochę drobnicy, nie ma regulatora, wszystko zasilane jest bezpośrednio z li-pola 140 mAh. Program: Zawsze staram się pisać jak najprostsze programy do walczących robotów i tak też było w tym przypadku. W sumie tradycyjnie "wyifowane" warunki na czujniki i poszczególne reakcje silników - nic szczególnego. Pora na osiągnięcia: - 1 miejsce Robomaticon 2015 - 1 miejsce TTR 2015 - 1 miejsce Roboxy 2015 - 2 miejsce Sumochallenge 2015 - 1 miejsce RoboticArena 2015 - 3 miejsce Robomaticon 2016 W tym roku nanoHaker2 dostał się także do ćwierćfinałów Robotchallenge 2016. Robot jest już stary i szykuję powoli nową konstrukcję, w nadziei że w końcu uda się zdobyć podium w Wiedniu 😉 I jeszcze na koniec parę zdjęć : Jak znajdę jakieś filmiki z udziałem nanoHakera wrzucę linki. Mam nadzieję, że się podobało i czekam na pytania 😉 Pozdrawiam, Piotrek
-
Chciałbym wam przedstawić mojego nanosumo. Muszę od razu przyznać, że nie ma rewelacji, ale może ktoś coś podpatrzy i będzie większe zainteresowanie kategorią. Koszty takiego robota można spokojnie zamknąć poniżej 100 zł Cała płytka wykonana termo transferem. Ścieżki mają grubość ok 0,254 mm więc uważam że jest to osiągniecie. Dane techniczne Masa 17 g Wymiary 25x25x25 Silniki Pololu (włożone awaryjnie po spaleniu się silnika tuż przed zawodami) Elektronika Cała płytka mieści się w wymiarach 14,5 x 25 mm. Schemat i widok płytki widoczny na obrazkach poniżej. Zasilany jest z 2 Lipo 70 mAh zakupionych w hk. Do stabilizacji napięcia wykorzystuję MCP1802T-5002I/OT. Za sterowanie silnikami odpowiada mostek TB6552. Czujniki linii to standardowe KTIRy. Cała drobnica w smd 0402. Jako czujnik przeciwnika używam Sharpa cyfrowego 10 cm . Goldpiny 1,27 mm. Całością steruje Atmega88MU, która jest w obudowie MLF. Program Program jest bardzo prosty i napisany w C. Robot kręci się w kółko do momentu kiedy robot nie wykryje przeciwnika lub najedzie na linię. Mechanika Wcześniejsza wersja miała przekładnie zbudowaną z przekładni z serwa, jednak w wyniku awarii silnika (z mojej winy) tuż przed zawodami zmuszony byłem do wykonania prowizorki, która jest do dziś 😋. Ogumienie wykonane z paska gumy modelarskiej. Pług i felgi wydrukowane na drukarce 3D. Czekam na pytania i komentarze.
-
Siemka! Dziś chciałbym przedstawić Wam moją najnowszą konstrukcję - robocika nanosumo. Robot powstawał w sumie przez może półtora tygodnia, nie licząc dni przerwy, przesyłki itp. W większości został zbudowany z elementów które miałem pod ręką, więc koszt to jakieś śmieszne 30zł za serwa i li-pole z Hk. Elektronika: - Procesor to atmega8 taktowana wewnętrznym oscylatorem 8Mhz - mostki si9986cy sterowane ok 70%wypełnienia PWM - dwa czujniki linii ktir0711s - dwa czujniki przeciwnika na tsopach i diodach ir - akku li po 3,7v 240mah Co ciekawe musiałem spiłowaćdiody 3mm do ok 1mm ( prawie samych blaszek) a i tak ładnie działają ( robot obejmuje swoim zasięgiem ok 3/4 ringu. Kolejna przeróbka była przeprowadzona na tsopach ( http://www.vishay.com/ppg?81781 ). Ich soczewka za bardzo wystawała, a że nie mogłem jej zeszlifować, gdyż zrobiłaby się matowa, po prostu ją ukruszyłem, i zdjąłem blaszkę widoczną w linku powyżej. Mechanika: Są to w sumie dwa silniczki od mikro serw i dopasowana do nich przekładnia zębata, przyczepiona do laminatowych wsporniczków za pomocą osi. Chyba najlepiej zilustrują to zdjęcia : Programowanie: cały kod został napisany w C (Eclipse), jest bardzo prosty, nic odkrywczego - robot kręci się wokół własnej osi dopóki nie zauważy przeciwnika, atakuje gdy go zobaczy, a gdy najedzie na linię cofa się na środek ringu, czyli standard. Galeria i filmik : Starsza wersja robota: I nowa wersja, póki co jeszcze nie dokończona pod względem estetyki, ale jak moja siostra wróci z zagranicy to pewnie strzeli mi co,ś ładnego na zderzakach 🤣 (aha i jeszcze odlutuję złącza do programowania 😉 ) i dwa filmiki : Zakończenie: Ogólnie jestem zadowolony z robota, ładnie spycha "przeciwników", i jest całkiem szybki. Jedyne co mi się nie podoba to złącze do programowania, ale to już nie jest taki wielni problem. Mile widziane komentarze i krytyka 😉 Pozdrawiam
-
Witam Chciałbym przedstawić swojego robota klasy nano sumo. Trochę danych technicznych: Nazwa: Saper Waga: 15g Zasilanie: Li-pol 3,7V 145mAh Wymiary: 25x25x25mm Procesor: Atmega8L Napęd: dwa mikro serwa - mocno przerobione 🙂 Koła o średnicy 15mm. Dwa czujnik lini GP2S24 firmy SHARP Podwójny czujnik optyczny z przodu: dwie diody 1,8mm podczerwone i odbiornik TSOP32156 Elektronika na dwustronnym laminacie grubości 0,45mm Program napisany w C (WinAVR + AVRstudio) Robocik brał udział w pokazie walk robotów nanosumo we wrocławiu na Robotic Arena 2008, na którym wygrał walkę. Jeśli chcecie wiedzieć więcej to pytajcie. Ale zastrzegam sobie zachowanie kilku tajemnic 😋
-
http://twingo.ict.pwr.wroc.pl/~konar/infopage.php?id=28 Parametry: CPU: Atmega8L 2x czujniki koloru GP2S24 1x dalmierz podczerwieni IS471F 2x silniki 2,7-3V, 1x 3,7V 145mAh 8C HD Li-Pol Kokam. Wymiary: ~25x25x25mm Konstrukcja robota opata jest o laminat różnej grubości, główna „rama“ wykonana jest z laminatu 1.5mm, lutowanego, oraz dodatkowo wzmacnianego klejem epoksydowym. W ramie zamocowane są silniki pochodzące z „mikro - autek“, które swego czasu zalały nasz rynek. Są to silniki o napięciu nominalnym 3V i prądzie zwarcia 50mA. Współpracują z oryginalną przekładnią o stopniu przełożenia ~12:1. Koła także pochądzą z mikroautek, jednak zostały nieco oszlifowane, gdyż były zbyt duże. Do ramy zamocowane są trzy płytki z elektroniką. Z tyłu znajduje się wykonana z polerowanego laminatu szklano-epoksydowego o zwiększonej grubości warstwy miedzi płytka z końcówkami mocy dla silników. Oparta jest o scalone level-convertery 74LVC2T45, które bez trudu mogą sterować prądem do 100mA. Środkowa płytka znajdująca się pod baterią zawiera mikrokontroler Atmega8L taktowany z wewnętrznego generatora 8Mhz, znajduje się tam również dioda, dzielnik rezystorowy umożliwiający pomiar napięcia baterii, oraz złącze do programowania. Przednia płytka zawiera czujniki białej linii (sharp GP2S24) oraz dwie diody nadawcze i scalony odbiornik podczerwieni IS471F, który zawiera sterownik diody nadawczej. Zasięg dalmierza wynosi około 10cm, z możliwością określania kierunku (lewo, prawo, środek) przeszkody. Aktualnie program nie wykorzystuje wszystkich możliwości robota (nie określa kierunku przeszkody). Algorytm działania robota jest dobrze widoczny na filmikach. Na razie robot walczy z pudełkiem, ale kiedy pojawi się jakiś przeciwnik, algorytm zostanie dopracowany i wyważony (na razie robot waży 17g). Robot zasilany jest baterią litowo- polimerową firmy Kokam o pojemności 145mAh i prądzie rozładowania 8C. Jest zamontowana na stałe w robocie, do którego podłączana jest ładowarka oparta o specjalizowany układ max1555. Robot posiada mikroprzełącznik który odłącza zasilanie od układu i jednocześnie podłącza do obwodu baterii mikrozłącze do ładowania. Na spodzie robota umieszczony jest mikroswitch który stanowi jednocześnie tylnią podporę dla robota. Po przyciśnięciu przycisku robocik zatrzymuje się i za pomocą kodów błyskowych (0-5) pokazuje stan naładowania baterii. Wartości progów dobrano eksperymentalnie podłączono robota za pomocą interfejsu RS-232 do komputera i wysyłano pomiary napięcia z baterii. Dodatkowo kiedy napięcie baterii spadnie poniżej 3V robot wyłącza wszystkie czujniki oraz przechodzi w tryb uśpienia, zmniejszając pobór prądu do ~1mA. Programator oparty jest o zmodyfikowany schemat Si-proga, podpinanego pod port COM komputera. Konstrukcja robota dość długo ewoluowała, przez robota przewinęło się w sumie 6 silników, 3 komplety przekładni, trzy końcówki mocy oparte o tranzystory, dwie wersje płytki z mikrokontrolerem, oraz dwa zestawy różnych czujników. Robot aktualnie pracuje w oparciu o bardzo prosty algorytm i nie wykorzystuje wszystkich możliwości, jeździ jak na razie maksymalnie na 50% wypełnienia PWM, gdyż dość wysoko umieszczony środek ciężkości sprawia że robot przy hamowaniu wywraca się, problemy te zostaną częściowo usunięte po odpowiednim wyważeniu, jednak z racji tego że aktualnie robot nie ma przeciwnika - nie pracuję nad nim - czekam na wyzwanie 😉
-
Chciałbym zaprezentować konstrukcję malutkiego robota o nazwie Quatro. Budowa przebiegała etapami i trwała łącznie ok. 6 miesięcy. Pierwszym etapem było zbudowanie robota klasy Nanosumo. Prace w tym kierunku zakończyły się sukcesem w niespodziewanie szybkim czasie, dlatego powstał pomysł rozbudowy robota. Z racji, że robot od spodu posiada 3 optyczne czujniki odbiciowe, postanowiłem napisać program do linefollower’a. Od tej pory robot spełniał już 2 zadania. Widząc ogromny potencjał, który posiada malutka platforma, postanowiłem wykorzystać ją w jeszcze jeden sposób. Nad ogniwem zasilającym umieściłem transceiver i zbudowałem nadajnik. Za jego pomocą, dzięki wykorzystaniu potencjometrów oraz przycisków, można było zdalnie sterować robotem na kilka różnych sposobów. Miesiąc później Quatro był już sterowany z klawiatury telefonu z wybieraniem tonowym DTMF i posiadał kolejny moduł nad transceiver’em. Jego zadanie było stricte pokazowe i miało na celu przypominać pojazd uprzywilejowany. W maju br. roku do robota wprowadziłem komunikację dwukierunkową, a nadajnik radiowy został wyposażony w graficzny wyświetlacz LCD. Następnie wymieniłem silniki i dalmierze oraz płytkę PCB, na której znajduje się ogniwo zasilające. Kolejną funkcją jest sterowanie robotem za pomocą bezprzewodowej myszki optycznej. Reasumując robot posiada następujące funkcje: Nanosumo Linefollower Zdalnie sterowany za pomocą nadajnika radiowego Zdalnie sterowany z wykorzystaniem telefonu komórkowego Zdalnie sterowany przez zmodyfikowaną komputerową mysz optyczną Robot jak również pozostałe elementy są przystosowane do rozbudowy i tworzą zestaw dydaktyczny. Nanosumo Robot tej klasy musi spełniać kilka zasad. Jego wymiary nie mogą przekraczać 25mm*25mm*25mm. Quatro mieści się oczywiście w tych granicach, jednak bez PCB z modułem radiowym, który jest mu zupełnie niepotrzebny podczas walki na ringu, a jego obecność mogłaby stwarzać pewne kontrowersje. Waga robota nie powinna przekraczać 25g. Ten warunek także jest spełniony. Pozostałe zasady są takie same jak w większych klasach sumo i nie widzę potrzeby ich tu wymieniać. Orientację na ringu robotowi zapewniają trzy optyczne dalmierze. Ich elementem wykonawczym są HSDL-9100 współpracujące z układami APDS-9700. Oba te komponenty zawdzięczam firmie WObit i chcę je polecić wszystkim szukającym miniaturowego dalmierza o zasięgu nawet do 20cm . Elementy te znajdują się na PCB pod ogniwem li-ion. Od spodu umieszczone są trzy optyczne odbiciowe czujniki linii. Dwa z przodu i jeden z tyłu. Algorytm jest standardowy, tu nie wymyśliłem nic specjalnego. Linefollower Do wykrywania linii robocik wykorzystuje dwa przednie czujniki. Ze względów konstrukcyjnych robot jeździ po czarnym podłożu wzdłuż białej linii. Jest to spowodowane sposobem wykonania układu przerwań, który jest przystosowany do walk na dohyo. Oczywiście można nie wykorzystywać przerwań , jednak spowolni to przejazd po linii. Nadajnik Zdjęcie przedstawia obecną wersję nadajnika. Zielonym kolorem zaznaczone są guziki, za pomocą których można sterować robotem oraz po wybraniu odpowiedniej kombinacji, jego funkcjami. Czerwony kolor wskazuje gałki potencjometrów suwakowych. Lewy potencjometr służy do proporcjonalnego sterowania lewym kołem, prawy potencjometr analogicznie. W prawym, dolnym rogu, żółtym kolorem zaznaczony jest mikrofon, który odbiera sygnał DTMF. Diody LED zaznaczone jasnoniebieską obwódkami pokazują kierunek obrotu kół. Srebrna gałka potencjometru, na środku, służy do sterowania prędkością robota podczas używania guzików. Wartość jaką wybraliśmy za jej pomocą, można kontrolować na wyświetlaczu. Jest zaznaczona kolorem zielonym. Kolor czerwony i fioletowy pokazują odpowiednio stany czujników linii oraz dalmierza. Kolorem żółtym zaznaczone jest dwadzieścia dziewięć strzałek. Są to wskaźniki funkcji, o której wcześniej nie wspomniałem. Mianowicie robot może wykonywać cyklicznie wcześniej zaprogramowane ruchy. Ich kierunek wskazują właśnie te strzałki. Wykonywany aktualnie ruch jest negowany na wyświetlaczu. Mysz komputerowa Nie będę umieszczał jej zdjęcia, gdyż niczym się ona nie różni od zwykłej myszy komputerowej na USB. Modyfikacje polegały jedynie na usunięciu jednego z układów scalonych, umieszczeniu wewnątrz transceiver’a, akumulatora i oczywiście mikrokontrolera jakim jest ATmega8l. Do kontroli przemieszczenia użyłem sensora PAN3101. Wykorzystałem także trzy przyciski. Jeden do zatrzymania i dwa do kontroli prędkości robota. DTMF Sterowanie za pomocą telefonu odbywa się w najprostszy sposób. Należy przyłożyć słuchawkę telefonu do mikrofonu umieszczonego na nadajniku i wybrać odpowiedni klawisz. 2-przód 4-lewo 6-prawo 8-tył 1,3,7,9-po skosie *-szybciej #-wolniej 5,0-inne rzadko używane funkcje Dekodowaniem sygnału DTMF zajmuje się układ CM8870. Konstrukcja Robot zbudowany jest w formie „kanapki”. Obecnie składa się z czterech dwustronnych płytek PCB. Na dolnej płycie umieszczone są czujniki linii i napęd oraz niezbędne podzespoły takie jak sterownik silników. Płytka druga mieści procesor ATMEGA8L, złącze do programowania i komunikacji z modułem radiowym. Dalmierze, kontrola zasilania, gniazdo na ogniwo zasilające oraz układ resetu znajdują się na trzeciej płycie PCB. Ostatnia, umieszczona na samej górze płytka PCB, mieści moduł radiowy i jest przystosowana do rozbudowy robota o kolejne płytki. 1-dalmierz 2-silnik 3-złącze do programatora 4-moduł radiowy 5-ogniwo zasilające 6-czujnik linii 7-reset 8-koło i przekładnia 9-połączenie modułu radiowego z mikrokontrolerem