Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Uniwersalny Sterownik unipolarnego Silnika Krokowego

electroNICK 18 Nov 2008 12:07 16132 15
IGE-XAO
  • Uniwersalny Sterownik unipolarnego Silnika Krokowego


    Przedstawiam Uniwersalny Sterownik Unipolarnego Silnika Krokowego. Sterownik powstał już dosyć dawno jako prosty sterownik STEP/DIR do silnika. Początkowo miałem zrobić go na TTLach. Doszedłem do wniosku że przecież wystarczy AVR i prosty program napisany w Bascomie zamiast 3 układów TTL i dosyć skomplikowanej płytki. Sterownik został zbudowany z wykorzystaniem elementów SMD na dwustronnej płytce drukowanej. Druga strona płytki jest używana jako masa. Płytka została zaprojektowana w KiCAD i wykonana metodą termotransferu z folii. Program napisany w BASCOM AVR zajmuje ok 37% pamięci ATTiny26l. W sterowniku został użyty układ MP4303. Układ ten w swojej strukturze posiada cztery jednakowe tranzystory darlingtona oraz cztery diody, więc w sam raz nadaje się do wykorzystania w takim sterowniku. Nie wiem czy można te układy kupić, ja zdobyłem kilkanaście sztuk ze starej drukarki igłowej. Schematu sterownika niestety nie posiadam ponieważ projektowałem go "z głowy" posiłkując się datasheetami. Połączenia z grubsza wygląda tak : PA.0-PA.3 sterowanie diodami LED PA.4-PA.7 podłączone przez rezystory do wejść mp4303. Wejścia to cały port B. Do tego stabilizator napięcia dla ATTiny26l. Ostatnio dodałem kilka dodatkowych funkcji sterownika. Sterownik może służyć do sterowania silnikami krokowymi np. w prostych ploterach, zabawkach , modelach i robotach. Mam świadomość że program ma kilka błędów. Jestem raczej początkującym programistą dlatego liczę na konstruktywną krytykę. Na pewno trzeba będzie zrobić opóźnienia na timerach a nie na "Waicie" :) . Niemniej jednak sterownik spisuje się bardzo dobrze.

    Cechy sterownika:

    -możliwość zasilania silnika oraz logiki sterownika z tego samego źródła lub z oddzielnych źródeł
    -max napięcie zasilające silnik ok 100V
    -max prąd silnika DC 2A
    -max napięcie zasilania logiki ok 20V
    -sygnalizacja załączenia faz silnika na 4 diodach LED

    Tryby pracy:
    -praca step/dir
    -stałe obroty w trzech zakresach (100krok/s , 50krok/s, 10krok/s)
    -wejście analogowe (0-2,56V ) do sterowania prędkością obrotową za pomocą napięcia.

    wejścia:
    PB.0 - DIR (kierunek obrotów)
    PB.1 - STEP (krok)
    PB.2 - Stała prędkość (100krok/s kierunek w zależności od wejścia DIR)
    PB.3 - Stała prędkość (50krok/s kierunek w zależności od wejścia DIR)
    PB.4 - Stała prędkość (10krok/s kierunek w zależności od wejścia DIR)
    PB.5 - ADCon(włącza sterowanie za pomocą napięcia)
    PB.6 - ADCin (wejście przetwornika A/C)
    PB.7 - RESET




    Uniwersalny Sterownik unipolarnego Silnika Krokowego
    Uniwersalny Sterownik unipolarnego Silnika Krokowego








    Koszt całości zamknął by się pewnie w ok 15-20zl.
    -Attiny ok 4zl
    -części smd ok 5zl
    -78l05 50gr
    -mp4303 nie wiem ile kosztuje. Można go zastąpić czterema darlingtonami i czterema diodami. Tylko trzeba przeprojektować płytkę.

    Posty scaliłem.
    /Faces/

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    electroNICK
    Level 14  
    Offline 
    Has specialization in: mikrokontrolery avr, stm32, c, bascom
    electroNICK wrote 159 posts with rating 12, helped 5 times. Live in city Elbląg. Been with us since 2005 year.
  • IGE-XAO
  • #2
    miernik2
    Level 12  
    Mógłbyś wytłumaczyć na czym polega to DIR/STEP?
    Czy chodzi o to że na DIR podajesz 1 albo 0, w zależności w którą stronę chcesz obracać silnik, a na STEP taką ilość impulsów jaką chcesz ilość kroków, tak?
  • #3
    electroNICK
    Level 14  
    Quote:
    Mógłbyś wytłumaczyć na czym polega to DIR/STEP?
    Czy chodzi o to że na DIR podajesz 1 albo 0, w zależności w którą stronę chcesz obracać silnik, a na STEP taką ilość impulsów jaką chcesz ilość kroków, tak?


    Zgadza się.
  • IGE-XAO
  • #4
    mati10025
    Level 12  
    W jakim trybie to pracuje? pełny krok czy jest podział?bo na filmie nie zabardzo to widze.
  • #6
    Szpanbix
    Level 15  
    Czy układ przy maksymalnym obciążeniu (2A) mocno się grzeje?
  • #7
    UlfgaR
    Level 23  
    Jestem ciekawym jak ten sterownik spisywał by się we frezarce cnc...
  • #8
    grzebuj
    Level 13  
    Czy autor postu mógłby podać z jakiej drukarki pochodzi ten driver MP4303. Mam kilka starych złomów i może akurat któraś z nich to właśnie ta.
  • #9
    electroNICK
    Level 14  
    Była to jakaś igłówka chyba firmy Panasonic modelu niestety nie pamiętam. Możliwe ze była to KX-P1150 wizualnie jest podobna.
  • #11
    electroNICK
    Level 14  
    Dodałem do załącznika mozaikę ścieżek w formacie PDF. Pisze przecież wyraźnie że płytka była zaprojektowana w KiCAD. Eagle jej nie otwiera.
  • #12
    ASZAPL
    Level 11  
    Myślałem że jest może jakiś ulp do importu do Eagla z Kicada.
    Nie myślał kolega o zrobieniu półkroku do sterownika? Zwiększyłaby się
    rozdzielczość.
    Mam taki własny pomysł żeby zastosować kolegi układ do sterowania układem SLA7026M (ma wbudowany chopper prądowy) też ze starych drukarek igłowych. Podoba mi się prostota płytki i niewielka ilość elementów przy dużych możliwościach odmiennego niż STEP ,DIR, sterowania.
    Ja "popełniłem " taki sterownik do swojej tokarki Link.
    Pozdrawiam Adam
  • #13
    electroNICK
    Level 14  
    Myślałem nad podziałem kroku. Brakuje niestety pinów portu B. Trzeba by zastosować wybór trybu pracy za pomocą odpowiedniej kombinacji stanów logicznych na porcie B co komplikuje trochę sterowanie. Sterownik ma być uniwersalny dlatego też zastosowałem wybór trybu pracy za pomocą podania stanu niskiego na odpowiednie wejście. Upraszcza to znacznie sterowanie silnikiem w konstrukcjach nie posiadających mikrokontrolera. Można by ewentualnie zrezygnować z jednej stałej prędkości i tam wrzucić podział kroku. Sterownik będzie nadal rozwijany. Zostało jeszcze 63% wolnej pamięci.
  • #14
    asura.kk
    Level 15  
    UlfgaR
    We frezarce CNC byloby niezbyt ciekawie - pelny krok to za duzo:/ Praca półkrokowa bedzie o wiele plynniejsza.
    Podobny uklad wykonawczy (MP4303, a moze ten sam) byl w drukarkach iglowych STAR FR...cos tam.
  • #15
    uzi104
    Level 10  
    Jaki zamiennik dla tego MP4303? Bo nie chcę komplikować sobie wszystkiego składając i wciskając w układ darlingtony
  • #16
    syntetyczn dran
    Level 12  
    W tym temacie, ulepszałem mój sterownik na atmega8 do sterowania silnikami krokowymi unipolarnymi. Sterownik sprawuję się nieźle. Kod, z którego korzystałem jest udostępniony w temacie. W planach miałem zbudowanie czegoś podobnego do Twojej konstrukcji.

    Niestety, muszę przyznać, że Twoja konstrukcja(tak samo jak moja na początku) nie nadaję się do sterowania silnikami frezarki. Musisz koniecznie zmienić kod na taki, który korzysta z przerwań.