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

ATmega8 -sterowanie silnikiem krokowym

dabek_93 10 Sty 2016 13:46 1065 12
  • #1 10 Sty 2016 13:46
    dabek_93
    Poziom 7  

    ATmega8 -sterowanie silnikiem krokowym

    Witam!
    Mam pytanie, bo potrzebuję sterować silnikiem krokowym, potrzebuję mieć możliwość wyboru obrotów w prawo, lewo szybciej wolniej i stop. Mianowicie pytanie brzmi: jakiego programu użyć do tego, dodam, że nigdy nie bawiłem się w programowanie.

    0 12
  • Sklep HeluKabel
  • Sklep HeluKabel
  • #3 10 Sty 2016 14:25
    dabek_93
    Poziom 7  

    Schemat robiłem sam w eaglu, wszystko polutowałem mam połączenie miedzy komputerem a płytka, tylko nie mam zielonego pojęcia o programowaniu i chce się dowiedzieć w czym najłatwiej napisać ten program

    Dodano po 2 [minuty]:

    ATmega8 -sterowanie silnikiem krokowym

    0
  • #5 10 Sty 2016 16:30
    dabek_93
    Poziom 7  

    Kod: vbnet
    Zaloguj się, aby zobaczyć kod



    Powyżej przedstawiam program napisany w BASCOM-ie, na początku chce osiągnąć tylko, żeby silnik kręcił się w prawo i w lewo, ale coś jest nie tak

    0
  • #7 10 Sty 2016 17:25
    landy13
    Poziom 29  

    Artur k. napisał:
    Przede wszystkim brak konfiguracji portów. Najpierw musisz zdefiniować czy port ma być wejściem, czy wyjściem.
    Jak to nie ma? A to:
    Code:

    ddrc =&B11111100
    ........
    ddrd =&B11111111

    0
  • #8 10 Sty 2016 17:29
    dabek_93
    Poziom 7  

    Tak jak kolega wyżej napisał zadeklarowałem, że port c wej a d wyj

    0
  • #9 10 Sty 2016 17:59
    excray
    Poziom 39  

    Kolego jeśli zaczynasz dopiero się uczyć to od razu zacznij pisać w C i użyj do tego Atmel Studio.

    1
  • #10 10 Sty 2016 18:47
    landy13
    Poziom 29  

    Zwłaszcza że pewne inklinacje do C już posiada. Cały program w nawiasach klamrowych.
    Baskom nie burzył się o to?

    1
  • #11 11 Sty 2016 19:49
    dabek_93
    Poziom 7  

    Nie właśnie, z tymi nawiasami kolega mi podpowiedział

    0
  • Pomocny post
    #12 11 Sty 2016 21:26
    emarcus
    Poziom 35  

    landy13 napisał:
    Zwłaszcza że pewne inklinacje do C już posiada. Cały program w nawiasach klamrowych.
    Baskom nie burzył się o to?

    I co wniosłeś do tej dyskusji oprócz złośliwego sarkazmu???

    Do autora watku:
    Zakładam że posiadasz Silnik jak na schemacie z 1-go postu, razen z płytką ULN połączone ze sobą wtyczką bez zmian w konfiguracji połączenia.
    Korzystając do pewnego stopnia analogii....
    Porównaj ten stepper (unipolar) do silnika spalinowego 4-cyl. Aby silnik mógł się kręcic, każdy z cylindów musi otrzymac zapłon - czyli iskrę z rozdzielacza.
    Tym rozdzielaczem u ciebie jest układ ULN, już z podpiętymi przewodami o poprawnej kolejności, użyjmy tu słowa 'zapłonu' albo bardziej poprawnie komutacji.
    Zadaniem processora jest dostarczyc na wejścia sygnał do załączania kanałów układu ULN i wywołac rotację, podobnie jak to jest w aparacie zapłonowym silnika.
    Twój program nie spełnia w całości tych wymogów, więc masz problemy z jego uruchomieniem.
    przeanaliuzuj ten przykład

    Kod: vbnet
    Zaloguj się, aby zobaczyć kod



    Ten przykład (gdzie zasilana jest tylko jedna cewka w danym momencie), jest naiprostszą i najbardziej prymitywną formą sterowania/ 'obrócenia wałkiem' steppera, przydatny raczej dla demonstracji niż praktycznego zastosowania.
    Lepsza już jest metoda również 4-stopnie w seq., w której zawsze zasilane są dwie cewki (oczywiscie nie tejsamej gałęzi).
    Dla innych metod spróbuj skorzystac z tej tabeli:
    ATmega8 -sterowanie silnikiem krokowym

    e marcus

    0
  • #13 11 Sty 2016 21:31
    dabek_93
    Poziom 7  

    Dzięki wielkie, jak bd miał trochę wolnego czasu to zastosuje Twoich porad i dam znać jak mi poszło ;)

    0