Skocz do zawartości

Projekt manipulatora 4-osiowego - Serwonapędy odmawiają współpracy


WhoAmI

Pomocna odpowiedź

Witam serdecznie innych użytkowników.

W ramach projektu na studia zaprojektowałem, wydrukowałem, oraz zaprogramowałem 4-osiowy manipulator sterowany za pomocą płytki Arduino. Niestety serwonapędy odpowiadające za ruch nie reagują na polecenia, drgają (prawdopodobnie tzw. "servo jitter'). Prosiłbym więc o pomoc w zlokalizowaniu problemu, czy jest to wina sterowania, mojego programu, zasilania bądź też inna możliwość, której nie brałem wcześniej pod uwagę.

Dziękuje wszystkim chętnym za pomóc.

Kod C#.txt

Kod Arduino.txt

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

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

Teraz to już je możesz zasilać czym chcesz, wątpię, żeby ich elektronika wytrzymała 2x większe napięcie niż wyspecyfikowane.

[ Dodano: 04-09-2017, 21:19 ]

A tak na przyszłość, to może zacznij od prostego programu machającego jednym serwem -- na przykład tego z przykładów w Arduino -- i dopiero jak to będzie działać, to podłączaj resztę. Mniej się spali.

Link do komentarza
Share on other sites

Skoro wszystko przetestowałeś tak jak piszesz, Arduino UNO jest sprawne, program używasz z przykładu, połączenia są poprawne, a zasilanie jest takie, jak napisałeś, to nie widzę żadnego innego miejsca, gdzie mógłby być błąd. Pozostaje wniosek, że te serwa są wadliwe, ale coś mi się nie chce w to wierzyć.

[ Dodano: 05-09-2017, 00:46 ]

Jeszcze o jedną rzecz się upewnię. Bo na schemacie niby masz dobrze, ale to częsty błąd przy osobnych zasilaniach. Masę zasilania serw masz połączoną z masą Arduino?

Link do komentarza
Share on other sites

Być może robisz rzeczy, które nam do głowy by nie przyszły. Pokaż dokładny i prawdziwy schemat tego układu z akumulatorem żelowym, jednym serwem i Arduino wykonującym program testowy.

Skąd zasilałeś Arduino w pierwotnym połączeniu z zasilaczem 9V? A skąd teraz, przy akumulatorze 6V? Czy mierzyłeś napięcie zasilacza 9V i teraz, akumulatora gdy serwo wariuje?

Czy możesz wyposażyć program testowy w diodę zapalaną tylko w funkcji setup() na 1 sekundę? O ile pamiętam na UNO masz taką wbudowaną na wyjściu nr 13. Jej zapalanie pokaże, czy procesor się resetuje.

Link do komentarza
Share on other sites

Arduino zasilam z gniazda USB, napięcie było mierzone i jest stałe, bez dziwnych skoków/spadków.

Korzystając z przykładowego kodu:

void setup() {
 myservo.attach(9);  // attaches the servo on pin 9 to the servo object
  pinMode(LED_BUILTIN, OUTPUT);
 digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
 delay(1000);                       // wait for a second
 digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
 delay(1000);                       // wait for a second
}

Dioda po zapaleniu się na chwilę, gaśnie i pozostaje wyłączona.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.