Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Własny robot - sześcioosiowe ramię

sibislaw 29 Oct 2014 20:42 15876 14
IGE-XAO
  • Własny robot - sześcioosiowe ramię

    Witam! To mój pierwszy wpis w dziale DIY. Konstrukcja, którą przedstawiam powstała już jakiś czas temu, tzn. w 2011 roku kiedy byłem studentem na 3. roku (automatyka i robotyka). Teraz, kiedy studia mam już za sobą, ze łzą w oku wracam do tamtych czasów i oglądam stare projekty, przez co pomyślałem, że warto się pochwalić. A więc mój "wynalazek" to sześcioosiowe ramię robota, wykonane z plastiku, sterowane modelarskimi serwomechanizmami i połączone z komputerem za pomocą portu szeregowego z elektroniką opartą o mikroprocesor atmega8. Konstrukcja jest w 100% zrobiona dla siebie, nie jest to żaden projekt na studiach ani zamówienie. Inspiracją, bardzo luźno nawiązującą do konstrukcji, był robot Mitsubishi Movemaster ex. Zdjęcie poniżej:

    Własny robot - sześcioosiowe ramię

    Zastosowanie konstrukcji jest czysto dydaktyczne - frajda przy tworzeniu i użytkowaniu w celach zabawy. Warto nadmienić, że konstrukcja nie została skończona - brakuje chwytaka. Nie jestem pewien, czy zostanie on dodany, ponieważ znacząca obciąża ostatni człon robota.

    Własny robot - sześcioosiowe ramię Własny robot - sześcioosiowe ramię Własny robot - sześcioosiowe ramię

    Poniżej film prezentujący robota w obecnym stanie:



    Film prezentujący "początki":



    I jeszcze jeden film - ruch ze stałą orientacją końcówki względem ziemi:



    Przepraszam, że mało zdjęć, a dużo filmów, ale powstawanie robota dokumentowałem za pomocą właśnie filmów, a nie zdjęć. Nie zakładałem że kiedyś wyląduje w temacie DIY na elektrodzie. Kiedy będę miał chwilę czasu, zrobię lepsze zdjęcia (póki co, jak wracam z pracy, jest ciemno).

    Informacje techniczne:

    1. Konstrukcja mechaniczna została wykonana z około 4mm grubości podkładki pod kartkę A4. Skręcona śrubkami z OBI, pierwsza oś obrotu posiada łożysko z jakiejś małej maszyny. Praktycznie konstrukcja mechaniczna była największym problemem.
    2. Napęd stanowią serwomechanizmy modelarskie. Większość z nich kupiłem na przecenie po 15 zł, są dość silne - moment 4kg/cm, coś takiego. TowerPro SG5010. W dalszych członach są słabsze serwa, ale musiałbym rozebrać robota, żeby zobaczyć model. Serwomechanizmy są sterowane sygnałem czasowo-proporcjonalnym. Nie mają sprzężenia zwrotnego, co stanowi problem.
    3. Elektronika jest dość prosta. Składa się z 2 płytek. Jedna zawiera układ max232 i łącz się z komputerem (jest w podstawie robota), i łączy się 2 kabelkami z płytką mikrokontrolera atmega8 (oczywiście w sumie to 4 kabelki bo jest też zasilanie) która jest w wystającym tyle robota, już na osi obrotu. Rozwiązanie takie pozwoliło na ograniczenie liczby kabelków w miejscu obrotu osi głównej robota. Niestety nie rysowałem schematów, więc ich nie pokażę, ale jest to podstawowa aplikacja max232 i podstawowa aplikacja atmega8. Całość jest zasilana 5V (serwa też) z dowolnego zasilacza. Ja wykorzystałem komputerowy.
    4. Program na mikrokontroler jest napisany w Bascomie i załączam go do tematu, program na komputer jest napisany w Borland Builder C++ (darmowa wersja z KŚ Ekspert, dziś już nie wydawane pismo komputerowe).

    Schemat:


    Własny robot - sześcioosiowe ramię



    Edit

    Screenshot z programu kontroli robota:

    Własny robot - sześcioosiowe ramię

    Załączniki:
    sterownik.txt - plik źródłowy w BASCOMIE sterownika robota, należy zmienić na .bas rozszerzenie (nie wiem czemu - elektroda go nie akceptuje).

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    sibislaw
    Level 12  
    Offline 
    sibislaw wrote 165 posts with rating 59, helped 2 times. Live in city warszawa. Been with us since 2007 year.
  • IGE-XAO
  • #2
    Marcin14444
    Level 9  
    Bardzo fajny pomysł. :D Dla mnie tym bardziej dlatego, że też jestem studentem automatyki i robotyki z tym, że na drugim roku dopiero. ;) Od pewnego czasu chodzi mi po głowie zrobienie takiego robota lub czegoś innego, w czym mógłbym wykorzystać swoje umiejętności programistyczne, więc może Twój pomysł będzie inspiracją. ;)

    Pozdrawiam. :D
  • #3
    dondu
    Moderator on vacation ...
    Śmiga ładnie :)

    Szkoda, że:

    sibislaw wrote:
    Niestety nie rysowałem schematów, więc ich nie pokaże, ...


    Mam nadzieję, że oprócz BASCOM na studiach:
    sibislaw wrote:
    Konstrukcja którą przedstawiam powstała już jakiś czas temu, tzn. w 2011 roku kiedy byłem studentem na 3 roku (automatyka i robotyka). Teraz, kiedy studia mam już za sobą ...

    poznałeś także C na GCC? :)

    Masz jakieś zdjęcia konstrukcji od środka?
  • #4
    sibislaw
    Level 12  
    dondu wrote:
    Śmiga ładnie :)

    Szkoda, że:

    sibislaw wrote:
    Niestety nie rysowałem schematów, więc ich nie pokaże, ...


    Mam nadzieję, że oprócz BASCOM na studiach:
    sibislaw wrote:
    Konstrukcja którą przedstawiam powstała już jakiś czas temu, tzn. w 2011 roku kiedy byłem studentem na 3 roku (automatyka i robotyka). Teraz, kiedy studia mam już za sobą ...

    poznałeś także C na GCC? :)

    Masz jakieś zdjęcia konstrukcji od środka?


    Na studiach wogóle nie miałem BASCOM'a, nie miałem też języka C na mikrokontrolery. Miałem przedmiot "programowanie w języku C" który był ogólny. Zajęcia z mikrokontrolerów sprowadzały się do programowania 8051 w jego asemblerze. Język C poznałem sam, dużo wcześniej (gimnazjum) kiedy pisałem różne gierki z wykorzystaniem OpenGL. Programowanie mikrokontrolerów AVR zacząłem samemu w 2 klasie liceum, oczywiście od języka C i asemblera.

    W przypadku tego robota zastosowałem BASCOM ze wzlędu:
    - logika kontroli jest bardzo prosta
    - nie chciałem bawić się timerami aby z pozoru prosty program stał się skomplikowany
    - BASCOM ma już gotowe funkcje do obsługi serw, więc czemu z nich nie skorzystać

    Rozważałem napisanie programu w C, ale definitywnie zwyciężyła prostota czyli BASCOM. Język C stosowałem w innych moich konstrukcjach, typu zdalne sterowanie którymi być może się pochwale.

    Zdjęcia konstrukcji od środka mogę wykonać i umieścić. Postaram się również narysować schemat elektroniki robota. Umieszczę również zdjęcia płytek.

    Dziękuje za miłe słowa :-)
  • IGE-XAO
  • #6
    sibislaw
    Level 12  
    Jeszcze nie wiem, w końcu coś musi być moją tajemnicą :-) Na pewno dziś lub jutro umieszczę zdjęcia wnętrza, głównie płytek, serw - mam jedno zapasowe takie samo jak jest w robocie i narysuję schemat.

    Dodano po 36 [minuty]:


    Własny robot - sześcioosiowe ramię



    Edit

    Schemat - rysowany z głowy więc mógł wkraść się błąd, ale nie różni się on od oryginalnego. Jest to podstawowy schemat aplikacyjny układów MAX232 i Atmega8. Warto dodać że na atmedze jest wgrany bootloader MegaLoad.net i za pomocą przycisku S1 dostępnego z zewnątrz można zrestartować procka i wgrać nowy program przez RS232 - nic nie trzeba rozbierać i nie trzeba posiadać programatora.

    Zauważyłem 2 błędy: - poprawione
    - w max232 oczywiście masa ma być podłączona
    - użyty kwarc to 16 MHz
  • #7
    treker
    Level 25  
    Mógłbyś powiedzieć coś więcej o obudowie robota, z jakiej "podkładki" robiłeś elementy nośne? Całość prezentuje się doskonale! Gratulacje :)
  • #8
    bbbno1
    Level 10  
    Quote:
    Jeszcze nie wiem, w końcu coś musi być moją tajemnicą


    A to niby czemu?

    To po co w ogóle sie tu chwalisz swoim projektem? Forum miało za zadanie wspierać i rozwijać wiedzę a to co się tu obserwuje zniechęca do jakiejkolwiek dzialalności i rozwijania zainteresowań. Parę dni temu jakiś kolega napisał że kiedyś było po kilka projektów dziennie gdzie każdy prezentował swoje realizacje od początku do końca, bez tajemnic, a teraz, dwa projekty na tydzień z działu agrotechnika, a jak się trafi technika mikroprocesorowa albo program raz na miesiąc, to nawet listingu nie uświadczysz. Wyobrażacie sobie czasopismo Commodore&Amiga bez listingow programów albo EdW z programami tylko w hexie? Tacy 'elektronicy' jak ty psują renomę i wprowadzaja niechęć do tego niegdyś zacnego forum. Egoiści, wszędzie egoiści...
  • #9
    sibislaw
    Level 12  
    treker wrote:
    Mógłbyś powiedzieć coś więcej o obudowie robota, z jakiej "podkładki" robiłeś elementy nośne? Całość prezentuje się doskonale! Gratulacje :)


    Być może powiedzenie podkładka pod kartki A4 nie było z mojej strony przejrzyste. Ta podkładka to poprostu płyta plastikowa grubości 4mm. To na czym robot stoi, ta płyta do której jest przykręcona podstawa, to właśnie niepocięty kawałek tej "podkładki". Do wykonania konstrukcji nada się świetnie każda płaska, około 4 mm grubości płyta plastikowa. Wszystkie części robota są płaskie i skręcone śrubkami.

    bbbno1 wrote:
    A to niby czemu?

    To po co w ogóle sie tu chwalisz swoim projektem? Forum miało za zadanie wspierać i rozwijać wiedzę a to co się tu obserwuje zniechęca do jakiejkolwiek dzialalności i rozwijania zainteresowań. Parę dni temu jakiś kolega napisał że kiedyś było po kilka projektów dziennie gdzie każdy prezentował swoje realizacje od początku do końca, bez tajemnic, a teraz, dwa projekty na tydzień z działu agrotechnika, a jak się trafi technika mikroprocesorowa albo program raz na miesiąc, to nawet listingu nie uświadczysz. Wyobrażacie sobie czasopismo Commodore&Amiga bez listingow programów albo EdW z programami tylko w hexie? Tacy 'elektronicy' jak ty psują renomę i wprowadzaja niechęć do tego niegdyś zacnego forum. Egoiści, wszędzie egoiści...


    Udostępnie program, dodam go razem ze zdjęciami :D program na mikrokontroler udostępniłem. Spakuję zipem folder projektu borland buildera.
  • #10
    treker
    Level 25  
    Dzięki, teraz wszystko jasne. Jeszcze jedno pytanie, jak rozwiązałeś mocowanie kolejnych członów do serwomechanizmów po stronie, gdzie nie ma orczyka?
  • #11
    sibislaw
    Level 12  
    treker wrote:
    Dzięki, teraz wszystko jasne. Jeszcze jedno pytanie, jak rozwiązałeś mocowanie kolejnych członów do serwomechanizmów po stronie, gdzie nie ma orczyka?


    Są przymocowane śrubkami. Na zdjęciu poniżej serwomechanizm jest z jednej strony ograniczany przez obudowę robota, a z drugiej wkręcona jest śrubka. W przypadku serwa nr 2, pierwszego serwa w ramieniu jest to długo i solidna śrubka wkręcona w obudowę (ponieważ tam nie ma się o co zaprzeć). Warto dodać że orczyk serwa nie przenosi obciążeń, osie robota opierają swój ciężar na śrubkach które z jednej strony są przykręcone a z drugiej chodzą w miarę luźno w otworkach.

    Własny robot - sześcioosiowe ramię


    I reszta obiecanych zdjęć:

    Od lewej: 2 ujęcia pokazujące płytkę mikroprocesorową, tylna płyta, połączenia elektryczne i płytka do komunikacji z komputerem (układ MAX232 + kondensatory), serwomechanizm obrotu całego robota z łożyskiem, i zapasowy serwomechanizm jaki posiadam, taki sam jak te które obracają trzema pierwszymi osiami robota.

    Własny robot - sześcioosiowe ramię Własny robot - sześcioosiowe ramię Własny robot - sześcioosiowe ramię Własny robot - sześcioosiowe ramię Własny robot - sześcioosiowe ramię Własny robot - sześcioosiowe ramię

    W załącznikach program do kontroli robota na komputer PC. Aby go skompilować i uruchomić będzie potrzebny Borland builder C++ w wersji 6.

    Tutaj link do kompilatora C++ (nie sprawdzałem tego linka):

    http://download.komputerswiat.pl/programowani...istyczne/borland-cplusplus-builder-6-personal

    Kompilator wymaga klucza po instalacji, jak się poszpera to jest w necie. Ja mam swój klucz z KS Eksperta. Kiedyś na stronie Borlanda po darmowej rejestracji można było otrzymać klucz, jako że Borland przestał wspierać buildera trzeba poszukać go na necie.

    Nie ponoszę konsekwencji za nieprawidłowe użycie programu / program nie jest szkodliwy ale używasz go na własną odpowiedzialność.
    Attachments:
  • #12
    waleryfw
    Level 14  
    Dziękuję za program na PC . A czy było by wielkim problemem zamieścić ten program już skompilowany *.exe . Bo po co zmieniać coś co już działa , a jeżeli ktoś chce coś zmienić to wtedy OK . Mam jeszcze pytanie jak będzie działał na Win7 z zainstalowaną przejściówką USB/RS232
  • #13
    sibislaw
    Level 12  
    Działa bez problemu z zainstalowaną przejściówką, sam z niej korzystam i nie zauważyłem problemów. Specjalnie nie zamieściłem programu skompilowanego w formacie exe, aby nikt nie miał do mnie pretensji o uszkodzenia i wirusy. Program należy skompilować samodzielnie. Oprócz Borland buildera jest potrzebne DX SDK w wersji 8, jeśli chce się korzystać z gamepada, a jeśli nie kod należy wykomentować.
  • #14
    irsob
    Level 11  
    Jestem pod wrazeniem wykonania projektu, programowałem już roboty - ABB - ale do głowy by mi nie przyszło, aby wykonać go samemu, jaka największą wagę próbował kolega przenoscic tym ramieniem?