Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Arduino - Program do sterowania silnikiem krokowym z napędu DVD

pu5z3k 19 Gru 2012 10:53 17151 19
  • #1 19 Gru 2012 10:53
    pu5z3k
    Poziom 9  

    Witam,
    od jakiegoś czasu jestem posiadaczem Arduino Uno, do tego dokupiłem dwa moduły/shield'y
    1. http://allegro.pl/dual-stepper-motor-driver-shield-for-arduino-a3976-i2858524718.html

    2. http://allegro.pl/shield-arduino-16-2-lcd-klawiatura-i2861435496.html

    Silniczek mam z napędu DVD, wygląda to tak:
    http://www.youtube.com/watch?v=--BhEHm_KX0

    naoglądałem się pełno filmików sterowania tym cudeńkiem za pomocą arduino, ale na patrzeniu się zakończyło, bo nie znam się na tym i nie wiem jak to ugryźć.

    Układ ten chciałbym stosować do fotografii mikro, zależy mi na ruchach rzędu 1mm do 0,01mm

    chciałbym mieć program, który będzie regulował dokładność/krok, przód tył,
    no i np naciskam przesuwa się o zadaną wartość robie zdjęcie, przesuwa się i tak dalej.

    Byłby ktoś tak uprzejmy i pomógł mi w tym ?
    bardzo proszę

    0 19
  • #3 19 Gru 2012 14:43
    pu5z3k
    Poziom 9  

    ale ja nie posiadam silnika BLDC ?

    0
  • #4 19 Gru 2012 16:12
    tmf
    Moderator Mikrokontrolery Projektowanie

    A którego używasz? Główny z napędu to BLDC, z kolei ten, który przesuwa sanki to zwykły silnik szczotkowy. Sterowanie przez jeden tranzystor, lub mostek H jeśli chcesz zmieniać kierunek.

    0
  • #5 19 Gru 2012 16:14
    pu5z3k
    Poziom 9  

    nie wiem czy oglądałeś filmik :)
    ten który przesuwa sanki to silnik krokowy bipolarny tak bynajmniej piszą na YT,
    chce zmieniać kierunek jak i regulować jego krok w celu uzyskania jak najwyższej dokładności.

    0
  • #6 19 Gru 2012 16:23
    kisielos12
    Poziom 26  

    Wiesz jaka jest zasada działania takiego silnika ? Taki sterownik na ardurino czy innym to banał, sprowadza się do otwierania 4 tranzystorów w odpowiedniej kolejności.

    Pozdrawiam

    0
  • #7 19 Gru 2012 16:25
    daniel6662
    Poziom 20  

    W cd-romach, dvd-romach itp, stosuje się dwufazowe bipolarne silniki krokowe do przesuwania głowicy, natomiast zwykłe szczotkowe stosuje się w sprzętach nie "komputerowych" jak na przykład odtwarzacze płyt dvd podłączane do tv bądź odtwarzacze CD-Audio/mp3 w wszelakich wieżach, radiach samochodowych itd.
    Na tym silniczku nie osiągniesz dużych dokładności bez odpowiedniej przekładni i sterowania mikrokrokowego ponieważ same w sobie mają bardzo niską rozdzielczość(15-30 stopni na krok).
    Pozdrawiam

    0
  • #8 19 Gru 2012 16:54
    pu5z3k
    Poziom 9  

    kisielos12 napisał:
    Wiesz jaka jest zasada działania takiego silnika ? Taki sterownik na ardurino czy innym to banał, sprowadza się do otwierania 4 tranzystorów w odpowiedniej kolejności.

    Pozdrawiam


    ciesze się, że dla ciebie sterowanie takim silnikiem to banał, jednak dla jednych coś co jest sufitem dla drugich jest podłogą prosiłem o pomoc a nie wymądrzaniem się, gdyby dla mnie był to banał nie pytałbym.

    daniel6662 - dokładnie taki mam dwufazowy bipolarny i posiadam do niego mikrokontroler, który jest w pierwszym poście, pytanie jak to wszystko ładnie napisać i oprogramować by ładnie śmigało ?

    0
  • #9 19 Gru 2012 17:10
    tmf
    Moderator Mikrokontrolery Projektowanie

    daniel6662 napisał:
    W cd-romach, dvd-romach itp, stosuje się dwufazowe bipolarne silniki krokowe do przesuwania głowicy, natomiast zwykłe szczotkowe stosuje się w sprzętach nie "komputerowych" jak na przykład odtwarzacze płyt dvd podłączane do tv bądź odtwarzacze CD-Audio/mp3 w wszelakich wieżach, radiach samochodowych itd.
    Na tym silniczku nie osiągniesz dużych dokładności bez odpowiedniej przekładni i sterowania mikrokrokowego ponieważ same w sobie mają bardzo niską rozdzielczość(15-30 stopni na krok).
    Pozdrawiam


    Niekoniecznie, np. u mnie w zdemontowanej nagrywarce komputerowej DVD LiteOn jest silnik FF-050SK, który jest zwykłym silnikiem szczotkowym, rusza to głowicą poprzez przekładnie ślimakową. Tak jest po prostu prościej skonstruować ten mechanizm. Niewykluczone, że autor ma jakiś krokowiec, tak jak to dawniej bywało w stacjach FDD, warto by było aby autor określił co to za silnik, a przynajmniej ile ma doprowadzeń. Tak czy siak, sterowanie proste - wystarczy w google wpisać typ silnika jaki się ma i gotowców są setki o ile nie tysiące.

    0
  • #10 19 Gru 2012 17:35
    pu5z3k
    Poziom 9  

    silniczek ma 4 wyprowadzenia,
    sprawa się robi o tyle skomplikowana dla mnie, że chciałbym to oprogramować w taki sposób aby za pomocą guziczków które mam na górnym shield'zie regulować sobie przód/tył i ilość kroków albo dokładność

    http://www.youtube.com/watch?feature=endscreen&v=TMXY0gYxJVM&NR=1

    dokłądnie taki silniczek mam

    0
  • Pomocny post
    #11 19 Gru 2012 17:46
    daniel6662
    Poziom 20  

    w Datasheet do tych układów masz opisane jak się tym steruje, co do oprogramowania to w sieci jest cała masa przykładów.
    Mierzyłeś jaki prąd pobierają twoje silniki na fazę? Bo te silniki mają niską rezystancje uzwojeń i najprawdopodobniej będziesz musiał ograniczyć im prąd albo zastosować bardzo małe napięcie zasilania, w przeciwnym wypadku układy/silniki mogą pójść z dymem.
    Pozdrawiam

    0
  • Pomocny post
    #12 19 Gru 2012 17:50
    Domanoid
    Poziom 9  

    Tutaj znajdziesz opis co i jak podłączyć, na czym to polega i kod do sterowania:
    http://www.arduino.cc/en/Tutorial/Stepper
    http://arduino.cc/en/Tutorial/StepperUnipolar (pewnie masz ten)
    http://arduino.cc/en/Reference/StepperBipolarCircuit

    spis bibliotek z opisem:
    http://arduino.cc/en/Reference/Stepper

    oczywiście można też zastosować mostki H, ja o wiele większymi silnikami sterowałem przez M54644BL wymontowanymi ze starego wideo.

    1
  • #13 19 Gru 2012 17:52
    pu5z3k
    Poziom 9  

    http://arduinosolutions.com/download/Dual%20S...Driver%20Shield/Dual_step_motor_shield_DS.pdf

    http://arduinosolutions.com/download/Dual%20Stepper%20Motor%20Driver%20Shield/A3967.pdf

    tu mam datasheet do tego mikrokontrolera, nie mierzyłem jaki prąd pobierają.

    Mógłby ktoś spojrzeć na te datasheet'y i podpowiedzieć jak to ugryźć ?
    Dla mnie to czarna magia, błąkam się na razie i nie wiem co robić

    0
  • #14 19 Gru 2012 17:57
    kisielos12
    Poziom 26  

    Najprościej to 4 tranzystory, po jednym na każde uzwojenie, podawać stan wysoki na porty i z nich wysterować tranzystory, one się otwierają.
    Otwierasz 1, 2, 3, 4, masz pełny krok, wtedy resetujesz ustawienia pinów i znowu to samo.

    Pozdrawiam

    0
  • #15 19 Gru 2012 17:58
    pu5z3k
    Poziom 9  

    kisielos12 napisał:
    Najprościej to 4 tranzystory, po jednym na każde uzwojenie, podawać stan wysoki na porty i z nich wysterować tranzystory, one się otwierają.
    Otwierasz 1, 2, 3, 4, masz pełny krok, wtedy resetujesz ustawienia pinów i znowu to samo.

    Pozdrawiam


    ale ja już mam sterownik i chce użyć tego co posiadam, gdyż jak kolega wcześniej nadmienił krokowiec, który posiadam ma niską rozdzielczość a ja nabyłem mikrokontroler, który pozwoli mi dokładniej nim sterować, tylko chce dobrze ugryźć temat, tak by mi to służyło ;)

    0
  • #16 19 Gru 2012 18:08
    Domanoid
    Poziom 9  

    W pierwszym Twoim pdf jest tabela jak podłączyć do UNO, który pin z UNO do którego na sterowniku silnika.
    Do tego sterowanie jest proste. Aby jeden silnik zrobił jeden kroczek podajesz na piny:
    X:
    MS 1: low
    MS 2: low (tabela w instalation)
    Direction: low albo high - to już zobaczysz w którą stronę się kręci silnik
    i krótko X STEP - wtedy wykonuje krok (czy tez 1/2 1/4 albo 1/8 kroku wg. MS1/2).

    A jak podpiąć sam silnik do sterownika to dałem wyżej linki.

    0
  • #17 19 Gru 2012 20:38
    daniel6662
    Poziom 20  

    Domanoid napisał:
    oczywiście można też zastosować mostki H, ja o wiele większymi silnikami sterowałem przez M54644BL wymontowanymi ze starego wideo.

    większe nie oznacza wcale że pobierały więcej prądu. Te małe od napędu lasera potrafią nawet 2A na fazę przy 5V, i do tego bardzo grzać, więc radze najpierw sprawdzić czy sterownik podoła i ewentualnie zastosować ogranicznik prądu o ile twój sterownik takiego nie posiada.
    kisielos12 napisał:
    Najprościej to 4 tranzystory, po jednym na każde uzwojenie, podawać stan wysoki na porty i z nich wysterować tranzystory, one się otwierają.
    Otwierasz 1, 2, 3, 4, masz pełny krok, wtedy resetujesz ustawienia pinów i znowu to samo.

    Pozdrawiam


    Autor posiada silnik bipolarny, a do takiego potrzeba 8 tranzystorów.

    0
  • #18 19 Gru 2012 20:53
    kisielos12
    Poziom 26  

    daniel6662 napisał:

    Autor posiada silnik bipolarny, a do takiego potrzeba 8 tranzystorów.


    Z tego co wiem to silnik bipolarny ma 4 wyprowadzenia więc nie rozumiem po co aż 8 tranzystorów?

    0
  • #19 19 Gru 2012 21:04
    landy13
    Poziom 29  

    kisielos12 napisał:
    nie rozumiem po co aż 8 tranzystorów?
    To zobacz jak wyglądają dwa mostki H.

    0
  • #20 19 Gru 2012 21:08
    kisielos12
    Poziom 26  

    Faktycznie, mój błąd ;) człowiek się całe życie uczy.

    Pozdrawiam

    0