Skocz do zawartości

Raspberry Pi , silnik krokowy, A4988 - potrzebny program testowy


ectineraa

Pomocna odpowiedź

Dalej korzystasz z wiringPi?

Wygląda teraz że dobrze masz podłączone i powinno ci to działać. Teraz bym sprawdził program. Puść zamiast bawienia się w pętle uruchom PWM i podepnij pod sterownik i zobacz czy zacznie się obracać silnik. Jestem na 99% pewien że to wina teraz programu sterującego. Diody źle się świecą nie w takiej kolejności jak mają.

Link do komentarza
Share on other sites

Ok, więc zrobiłem tak jak piszesz. Nie wiem czy dobry program "skopiowałem" ale użyłem go

#include <stdio.h> 
#include <wiringPi.h> 

int main(int argc, char **argv) 
{ 
   //Komunikat poczatkowy 
   printf("Program testowy PWM_MS WiringPi!\n"); 

   if (wiringPiSetup() == -1) 
   { 
       printf("Nie mozna wystartowac wiringPi!\n"); 
       return 1; 
   } 

   //Ustawiamy jako wyjscie PWM 
   pinMode(1,PWM_OUTPUT); 

   //Ustawiamy tryb PWM M:S 
   pwmSetMode(PWM_MODE_MS); 

   //Ustawiamy dzielnik zegara 
   pwmSetClock(1920); 

   //Ustawiamy zakres 
   pwmSetRange(200); 

   //Ustawiamy wypenienie 
   pwmWrite(1,15); 

   //Koniec programu 
   return 0; 
}

Podłączyłem na początku diody i tu mnie nadal martwi jedna rzecz.. na 4 diody zapalają się tylko 3, mam obawy szczerze mówiąc, że sterownik znów jest walnięty ..

wrzucam filmy jak to działało

1. Film z diodami -

2. Film z silnikiem -

Silnik wykonywał krótkie ruchy - "Drgał" tak jak to widać na filmie.

Kurcze szczerze mówiąc łapie mnie frustracja, zastanawiam się nad zakupem kolejnego sterownika (zakładając, że ten jest uszkodzony) lub sterownika i silnika krokowego o niższym napięciu i amp.

Link do komentarza
Share on other sites

No już jest progres. Zaś wygląda na to że ten 4 pin nie działa lub pwm coś szwankuje. Dlatego rusza Ci się tylko wahadłowo. Obstawiam że wcześniejszy sterownik jest dobry.

Weź jeszcze ręcznie puść np 8 1 i 0 pinu step i zobacz czy silnik się obraca. Ale zrób to w konsoli za pomocą polecenia gpio

No i kwestia też czy nie uwaliłeś mostka przez złe podłączenie tej 4 diody. Bo tu może być problem.

Link do komentarza
Share on other sites

No więc tak,

zrobiłem próbę :

gpio 7 podłączyłem pod step

W konsoli wykonałem komendy

gpio -g mode 7 out

gpio -g write 7 0

gpio -g write 7 1

gpio -g write 7 0

---------------------> silnik tylko po cichu bzyczał

spróbowałem również podłączyć gpio 8 pod MS0 i wykonałem komendy w kosoli:

gpio -g mode 8 out

gpio -g write 8 1

gpio -g write 7 1

gpio -g write 7 0 ------> efekt podobny jak wyzej

Wszystko niestety ale ma efekt mizerny..

Zakładam, że znów uwaliłem sterownik.... >zbankrutuje<

zamówiłem kolejny A4988 oraz ten który aktualnie mam i nowy silnik krokowy: Silnik krokowy SM-42BYG011 200 kroków/obr 12V 0.33A 0.22Nm

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

No dobrze, dalsza część bojów z silnikiem krokowym.

Trochę powalczyliśmy z Cyryllo z układem, przeinstalowałem bibliotekę WiringPi na Pigpio i po kilku dobrych godzinach bojów doszliśmy do wniosku, że prawdopodobnie działa tylko 3 z 4 wyjść.

Dodatkowo zauważyłem, że w sterowniku jest urwany potencjometr 😐 co może jest jest powodem problemów..

Rozpaczliwie zamówiłem więc nowe elementy :

1. Nowy sterownik silnika A4988

2. Nowy sterownik silnika DRV 8834

3. Nowy silnik krokowy 12V 0,33A

dzisiaj odebrałem z poczty części i są pewne postępy oraz nowe pytania.

a) Przyłączyłem nowy silnik (12V, 0.33A) i przyłączyłem sterownik A4988.

Sterownik obsługuje silniki o napięciu do 35V i 1A na cewkę więc wszystko powinno pasować.

EFEKT: Silnik ruszył i wykonuje obroty !! 😃😃😃

Nowe pytanie: dlaczego tyle mu to zajmuje ? czy da radę przyspieszyć obrót ?

PRZEDSTAWIAM

b) Połączyłęm stary silnik (3V, 1.7A) z nowym sterownikiem DRV 8834.

Wszystko zasilone napieciem 3.3 V.

EFEKT: Silnik wykonuje szarpnięcia przód/tył 🙁

Pytanie: Co jest nie tak 😋

Przedstawiam jak to się prezentuje

[ Dodano: 09-04-2014, 19:07 ]

Dobra chyba sam sobie odpowiedziałem na pytanie dlaczego silnik w układzie "a" skacze. 😋😳

Mam więc pytanko inne jak sterować silnikiem za pomocą MS1-3?

Link do komentarza
Share on other sites

A co to jest to MS1-3?
- ok, chyba znów nie doczytałem. Piny MS 1, MS2 i MS3 służą do sterowania krokiem - ja wydedukowałem sobie "pełnym obrotem 360 stopni".

Znów mój błąd.

W takim razie jak zrobić aby silnik wykonał pełny obrót płynnie ?

Link do komentarza
Share on other sites

Wydaje mi się że musisz ustawić wszystkie na stan wysoki czyli 1/16 kroku wtedy powinno być płynniej. Wklej też kod programu bo nie pamiętam 😉 Aby szybciej się kręciło musisz zmniejszyć opóźnienie między krokami.

Spróbuj też puścić pwm-a na sterownik. Ciekawe czy będzie się obracać.

Link do komentarza
Share on other sites

#!/bin/sh
pause=0.001
pigs m 22 w
pigs m 23 w

for i in $(seq 30); do

echo round $i starts:
sleep 1
pigs w 23 1
for i in $(seq 200); do
 echo $i
 pigs w 22 1
 sleep $pause
 pigs w 22 0
 sleep $pause
done
sleep 1
pigs w 23 0 
for i in $(seq 200); do
 echo $i
 pigs w 22 1
 sleep $pause
 pigs w 22 0
 sleep $pause
done
done

Ale właśnie bawiąc się silnikiem wpadłem na pomysł "użyj komendę podaną przez Cyryllo" 🙂 i wpisałem "pigs p 22 125" i silnik kręci się non stop jak oszalały 🙂 , spróbuje zaraz z 2gim silnikiem i sterownikiem LOW VOLTAGE.

Link do komentarza
Share on other sites

No dobra, napiszę tu mały referat.

Udało mi się uruchomić 2-gi silnik (3V, 1.7A) na sterowniku DRV 8834!

Mam jednak spore uwagi i chciałbym uczulić innych na przyszłość.

Wg. mnie opisy na stronie botlandu nie są w 100% poprawne ponieważ odnoszą się do sterownika A4988 i ni jak mają się do DRV.

Opiszę możliwie krótko dlaczego.

Na stronie botlandu mamy opis podłączenia silników który wygląda tak :

"Podłączenie czteroprzewodowego silnika bipolarnego"

"Należy połączyć wyprowadzenia:

A – 1A

C – 1B

B – 2A

D – 2B"

Wszystko było by ok , ale tu należy dokładnie zwrócić uwagę na ułożenie pinów na sterowniku.

Porównam ułożenie pinów od góry do dołu:

Tak więc połączenia wyglądają tak:

Cała różnica polega na tym że w sterowniku A4988 inaczej nazywane są piny i tu łączy się 1A z 1B i 2A z 2B, zaś w DRV obwód tworzą piny o tej samej literze czyl A1 z A2 oraz B1 z B2.

Tak więc dla sterownika A4988 szkic przedstawiany przez botland jest odpowiedni ale dla DRV połączenie wygląda inaczej tzn:

B2 - D

B1 - B

A1 - A

A2 - C

Dla porównania:

Tak więc każdy kto będzie się bawił silnikami krokowymi i sterownikami niech 5razy sprawdzi jak co ma być podłączone i czy to ma sens.

Polecam chociaż w małym stopniu poznać budowę silnika krokowego i jego działanie.

Jest jeszcze kilka kwestii które chciałbym rozwiązać ale mam nadzieję, że z Waszą pomocą uda się to wszystko ogarnąć.

Jedną z zagadek które nie udało mi się jeszcze odkryć to sterownie prędkością silnika.

Ani regulacja potencjometrem, ani zmiany na PWM w zakresie 0 - 255 nie wpływają na prędkość obrotów.

Zastanawiam się więc jak napisać program aby silnik wykonał płynnie i szybko (tak jak na filmie niżej) 10 pełnych obrotów w prawo, następnie 5 obrotów w lewo itd.

Operacje na krokach są "dość łatwe" ale są powolne albo ja nie potrafię tego przyspieszyć.

Niżej prezentuje filmy z działania sterowników i silników:

1.

2.

Będę również wdzięczny za wszelkie podpowiedzi w kwestii płynnych, szybkich obrotów .

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.