Skocz do zawartości

Budowa robota humanoidalnego, manipulatora i pojazdu gąsienicowego


Pomocna odpowiedź

Napisano

Witam wszystkich zapalonych elektronków1 🙂

Ponieważ nadeszły święta, puźniej jeszcze ferie a do wakacji chciałbym stworzyć robota bo ręce same palą sie do roboty 😃

Są trzy opcje :

a) pojazd gąsienicowy

b) manipulator sterowany ręcznie

c) robot humanoidalny.

Już wszystko objaśniam:

a) wiadomo wszystko - pojazd na gąsienicach (chciałbym na łąńcuchu rowerowym ale nie wiem jak wybijać nity wiec jakby ktoś mi mógł powiedzieć to ok.)

b) chciałbym stworzyć taki manipulator :

Próbowałem to robić na podstawie testerów serw (http://www.elektroda.pl/rtvforum/topic871257.html ) ale były drgania i tylko 90* a mi by pasowało min 120* a najlepiej 180* Nie umiem zaprogramować mikroprocesora aby odczytywał pozycje potencjometru i przekazywał na serwo (jeśli ktoś wie lub ma kod to może mi przesłać/wkleić)

c) tu już najtrudniej chciałbym zrobić coś takiego ((mniej wiecej) http://robothumanoid.blogspot.com/ )

Ale tylko mógłbym użyć serw za max 15 zł i ewentualnie 4 takie droższe po 25 zł max.

Mógłbym na te projekty przeznaczyć max 700 zł (na któryś z tych wyżej wymienionych)

Prosze o pomoc 😕

Można sterować z komputera.

Taki by sterować potencjometrem można bardzo łatwo napisać na atmege.

wiem że można napisać atmege ale ja nie wiem jak 🙁 wszyscy mówia że łatwo i tu i na elektrodzie a nikt nie pomoże i nie poda kodu 🙁 niektórzy mówili że to max 10 linijek kodu ale nikt mi nie napisała a ja nie umiem bo z programowoania to ja znam podstawy : if,petle while, in, out-y, tablice, tablice 2 wymiarowe

Dopiero sie ucze

To proponuje Arduino, są najtańsze od 14zł(Arduino pro mini) plus usb->RS232 30zł albo za 30zł Arduino z wbudowanym USB(Arduino R3 uno).

Arduino ma bardzo fajne opisy co i jak zrobić.

Przykład robiący to co ty chcesz (napisałem w kilka sekund):

#include <Servo.h>

Servo serwo;

void setup() {
 serwo.attach(0);//pwm output pin
}

void loop() {
 serwo.write(analogRead(A0)/6);//odczyt potencjometru(zakres od 0-1023) przejście na 0-180 i zapis do pwm'u
}
  • Pomogłeś! 1

Dzieki wielkie!

O to mi chodziło!!!

ale ja mam jeszcze pytanie (sorry że Cię tak meczę 🙂 ) czy można to wgrać programatorem np na atmega 8 ? bo ja np chciałbym z 6 potencjometrów i wtedy miałbym 6 atmeg a z każdej osobno by pobierało info (wiem ciężko) chyba że dałoby się podpiąć 6 serw i 6 potencjometrów dla jakiegoś Arduino (może mógłbyś zaproponować) i wtedy by grało 🙂

Wtedy chyba trzeba by było dać 6 razy ten sam kod określając piny wejścia i wyjścia tak ?

dominik1226, jesteś całkiem pewny, że chcesz się brać za jakieś układy wieloserwowe, skoro nie masz zielonego pojęcia o tym, jak się steruje serwem, jak się programuje mikrokontroler?

Nie chcę Cię pochopnie oceniać, bo być może masz duże umiejętności mechaniczne i nie będziesz miał problemu ze zbudowaniem takiego manipulatora od strony mechanicznej, ale po tym co tutaj napisałeś, to polecałbym zacząć od jakiegoś podstawowego kursu programowania. Jeśli pytasz czy mógłbyś podpiąć 6 potencjometrów i 6 serw pod jeden mikrokontroler i piszesz o robieniu tego na 6 atmegach, to wybacz, ale nie poradzisz sobie na tą chwilę.

Jeśli natomiast potrafisz zbudować manipulator, ale nie potrafisz wysterować tych serw (a po tym co piszesz, to nie potrafisz), to najprościej będzie Ci kupić gotowy serwokontroler, np. Pololu Maestro, ma prosty intuicyjną aplikację i można sterować serwami przy pomocy suwaków i myszki. Tyle, że wtedy dalej nic nie będziesz potrafił w temacie sterowania serwami i programowania mikrokontrolerów.

  • Lubię! 1
Dzieki wielkie!

O to mi chodziło!!!

ale ja mam jeszcze pytanie (sorry że Cię tak meczę 🙂 ) czy można to wgrać programatorem np na atmega 8 ? bo ja np chciałbym z 6 potencjometrów i wtedy miałbym 6 atmeg a z każdej osobno by pobierało info (wiem ciężko) chyba że dałoby się podpiąć 6 serw i 6 potencjometrów dla jakiegoś Arduino (może mógłbyś zaproponować) i wtedy by grało 🙂

Wtedy chyba trzeba by było dać 6 razy ten sam kod określając piny wejścia i wyjścia tak ?

Jak już masz atmege8 to możesz bezpośrednio wgrać za pomocą oprogramowania z arduino.

Na stronie arduino.cc jest obrazkowo przedstawione co i jak. Ale przy twoim doświadczeniu lepiej kup sobie Arduino R3 Uno za 30zł na allegro. Arduino posiada 6 analogów i 6 pwm portów czyli na jednym możesz 6 serw obsłużyć i 6 potencjometrów.

Najlepiej zacznij sobie przykłady przerabiać po kolei i eksperymentować:

http://arduino.cc/en/Tutorial/HomePage

Poza tym mój pierwszy projekt to było ramie robotyczne, działało tak jak te na twoim filmiku, czyli tragicznie 😋.

Na jakim moim filmiku?

Tak wiem mam słabe pojęcie o programowaniu jednak zdolności manualne są 🙂 programowania dopiero uczę się więc droga przedemna

Co do sterowania seriami patrzyłem juz dużo wczesniej ( np ne41)ale ja nie chce kupić żeby sterować przez komputer bo ono (rqmie) ma być sterowane w czasie rzeczywistym. Tak jak na filmiku który dałem nq początku taki jak ja zrobię ruch swoją ręką to ono go powtórzy.

To co ja wysłałęm to jest sterowany ręcznie a ty tam wysłałeś twój jakiś o tergo ci chodzi ?

bo napisałeś że działało tak jak na moim filmiku a ja nie dawałem 😋

[ Dodano: 20-12-2014, 17:35 ]

ja chciałbym robic manipulator który dział by tak jak tu :

(ogladajcie od 12:35 )Często mówie o atmedze 8 bo jej lubie używac i z nią pracuje trochę 🙂

dlatego potrzebuje sterowac serwem przez potencjometr.

A ponieważ kod jest prosty to wgrałbym ten kod na atmege w takiej postaci :

#include <Servo.h>

Servo serwo;

void setup() {
 serwo.attach(PB1);
}

void loop() {
 serwo.write(analogRead(A0)/6);
}

[ Dodano: 20-12-2014, 17:38 ]

Ale chyba kupie tego Arduino

[ Dodano: 20-12-2014, 17:50 ]

i nawet dziś puszcze zamówienie na niego bo płytkę stykową mam a zasilacz też trzeba ?

http://allegro.pl/promocja-arduino-uno-r3-atmel-atmega328-klon-avr-i4891842973.html

Czy zdajesz sobie sprawę, że Arduino a zwykła ATmega ze sklepu to nie jest to samo pod kątem programowania? W jakim środowisku będziesz pisał?

a zasilacz też trzeba

Zasadniczo, jak coś jest zasilane, to lepiej działa. Same arduino może być pewnie zasilane z USB, ale potrzebujesz czegoś do zasilania serw.

Często mówie o atmedze 8 bo jej lubie urzywac i z nią pracuje trochę 🙂

Po tym, co tutaj piszesz, to mam wrażenie, że w ogóle z nią nie pracujesz. Albo bezmyślnie przeklepujesz kody z gotowych projektów. Ot choćby, nie widzisz nic złego we wgrywaniu kodu do Arduino do zwykłej megi8, nawet się nie zastanowiłeś, co robią poszczególne funkcje. Pytanie kontrolne: co się dzieje w linijce: #include ?

Takie podejście do niczego Cię nie zaprowadzi. Najprędzej się zniechęcisz do tego całego programowania i robotyki.

Można bez problemu użyć zwykłej atmegi8, przykład:

http://www.gammon.com.au/forum/?id=11635

http://majsterkowo.pl/forum/programowanie-atmega8a-oraz-atmega328p-za-pomoca-arduino-t280.html

Równie dobrze można wgrać kod z bascoma(piny są wyprowadzone by sobie człowiek wsadził wtyk 😋) do arduino, nic na przeszkodzie nie stoi.

Arduino przede wszystkim to Atmega plus USB->RS232 converter, na pokładzie jest jeszcze oprócz tego stabilizator i kilka rezystorów, diod, kondensatorów, kwarc...

skmskm, Ty to wiesz, ja to wiem, ale to dominik będzie budował i programował ten manipulator, a na tą chwilę dominik nie potrafi napisać samodzielnie obsługi jednego serwa ani w Bascomie, ani w C, ani pod Arduino. Na tą chwilę nie wiadomo nawet, na co się zdecydował. Przypuszczam nawet, że nie wie, jak się steruje takim serwem. Jeśli pisze w C, to nawet nie spróbował znaleźć gotowej biblioteki do obsługi, nie mówiąc już o jakichś poradnikach i tutorialach, o Bascomie to szkoda mówić. Na tą chwilę nadal posiłkuje się kawałkiem kodu, który napisałeś.

Co ja mogę poradzić, żeby w ogóle udało się zaprogramować te serwa:

1) Poszukać informacji jak się steruje serwem. Na dobry początek do tego projektu to zapoznanie się z ADC i timerami.

2) Poszukać gotowych rozwiązań i spróbować je zaadoptować w swoim programie do sterowania jednego serwa.

3) Jeśli zadziała, to pomyśleć jak działa, poszukać i zaimplementować sterowanie większą ilością serw.

W tym, zastanowić się, jak się chce zasilić te 6 serw, żeby nie siały zakłóceniami na mikrokontroler.

Dla mnie to się obaj bierzecie za to od d*py strony. Bez podstawowej wiedzy i umiejętności programowania, nie dość że będzie to droga przez mękę i wiele wiele następnych postów z pytaniami, to po oby szczęśliwym zwieńczeniu dzieła dominik nadal nie będzie wiedział jak co działa. Jeśli mu nie zależy na zdobyciu wiedzy i umiejętności (a zakres jest podstawowy jeśli chodzi o robotykę) przy tworzeniu tego manipulatora, to polecam mu serwokontrolery, tudzież NE555, ale tam znowu się przydają podstawowe umiejętności z elektroniki.

Nie będę się już więcej mieszał w ten temat, róbcie co chcecie, ale skoro od miesiąca nie potrafisz sobie dominik1226 poradzić z czymś, co naprawdę zajmuje 10 linijek kodu (a w Bascomie to może i 3 linijki), to zastanów się, czy na pewno idziesz w dobrym kierunku. Na upartość nie ma rady, ale jeśli myślisz dalekosiężnie o elektronice i programowaniu, to ta lekcja cię nie ominie i tracisz tylko czas na szukanie gotowców.

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...