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

NEMA 17 + DRV8825 + Accelstepper.h

valdek737 23 Lut 2016 13:42 1446 2
  • #1 23 Lut 2016 13:42
    valdek737
    Poziom 4  

    Witam, mam wielką prośbę o pomoc z podłączeniem silnika krokowego NEMA 17 ze sterownikiem (klonem) pololu drv8825.

    Chciałbym używać ww. z biblioteką Accelstepper ale nie udaje mi sie ruszyć silnikiem mimo, iż kombinuję z pinami i kabelkami od kilku godzin.
    Mój silnik ma przewody o kolorach czerwonym, niebieskim, zielonym i czarnym, bierze 1.7A. Na sterowniku ustawiłem VREF na 0.7V. Wg poniższego schematu

    NEMA 17 + DRV8825 + Accelstepper.h

    podłączyłem do Arduino. Jednak nie wiem czy robić zworkę między sleep a reset bo spotkałem różne schematy. I nie wiem co wpisać w kodzie dla Accelstepper. Wcześniej korzystałem ze sterownika L298N i do arduino szły 4 przewody więc defaultowo Accelstepper miał 2, 3, 4, 5. Teraz jak mam np. 2 i 3 to już nie umiem tego zaprogramować.

    Będę wdzięczny za pomoc :)

    0 2
  • Pomocny post
    #2 24 Lut 2016 06:30
    emarcus
    Poziom 35  

    valdek737 napisał:
    Witam, mam wielką prośbę o pomoc z podłączeniem silnika krokowego NEMA 17 ze sterownikiem (klonem) pololu drv8825.

    Chciałbym używać ww. z biblioteką Accelstepper ale nie udaje mi sie ruszyć silnikiem mimo, iż kombinuję z pinami i kabelkami od kilku godzin.
    Mój silnik ma przewody o kolorach czerwonym, niebieskim, zielonym i czarnym, bierze 1.7A. Na sterowniku ustawiłem VREF na 0.7V. Wg poniższego schematu


    Nie możesz używac, a nawet nie potrzebujesz stosowac tej biblioteki jezeli masz tak wyspecjalizowany driver jak drv8825 albo A4988.
    Wymieniona library tworzy w sobie kompletny przebieg komutacji wirującego pola magnetycznego oraz powolnego narastania prędkości obrotowej i jej wytracania w zalezności od zadanych parametrów pracy. Komutacja ta jest 8 stopniowa i wyglada mniej wiecej jak przykładowa animacja z tej strony:
    http://us.nanotec.com/support/tutorials/stepper-motor-and-bldc-motors-animation/
    mozesz ja stosowac w przypadku bezpośredniego sterowania komutacją cewek motora bądź to własnym ukladem mostków tranzystorowych , bądź gotowym prostym driverem opartym na mostkach H.
    W odróznieniu od tej metody, driver DRV8825 tworzy własny przebieg komutacji dla wszystkich cewek, oraz daje mozliwośc wyboru dowolnego stopnia microstepping, ponadto daje mozliwośc kontroli prądu granicznego umożliwiającego zasilanie wyższym napięciem niż oryginalnie/fabrycznie silnik był zwojony. Wymaga jedynie dostarczenia dodatniego impulsu reprezentujacego kazdy krok. Szybkośc obrotową możesz realizowac zmianą lub doborem częstotliwości w połączeniu z szerokim wyborem microstepping (trzy linie).
    Podobnie w bardzo łatwy sposób realizujesz zmianę kierunku obrotów (stanem logicznym na jeden pin).
    Odnośnie pinów SLEEP! i RESET!: - są to piny z niskim stanem aktywnym, które wewnętrznie na chip są podciągnięte przez rezystor ok 100k do GND, zatem aby uruchomic ten driver nalezy zasilic je stanem wysokim.

    Zależnie od wymaganej prędkości i masy całego napędzanego elementu; byc może nie zajdzie potrzeba 'ramping prędkości'; - może wystarczy kombinacja z różnymi ustawieniami microstepping i dobraniu optymalnej częstotliwości PWM.
    Testy przy różnych parametrach dadzą odpowiedź.
    Jakkolwiek byś to nie robił to i tak musisz generowac falę PWM i liczyc impulsy i przeliczac je na wymagany dystans przesunięcia sterowanego elementu. Musisz pamiętac że stosując microstepping te 'nowe kroki' już nie są 1.8° tak jak oryginalnie masz podane na silniku.

    e marcus

    0
  • #3 20 Mar 2016 18:00
    valdek737
    Poziom 4  

    Dzięki za odpowiedź! Udało mi się to ruszyć i działa fajnie ale skoro mówisz, że ta biblioteka nie jest potrzebna to może popróbuję bez. Jak znaleźć przykładowy program dla takiego silnika i sterownika DRV8825, żeby płynnie przyspieszał do prędkości roboczej? Chodzi o to, że na prowadnicy liniowej o długości ok. 1m wózek ma płynnie ruszać i hamować.

    0