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.

Sterowanie silnikiem krokowym ULN2803 a ULN2064B zagadka

hawryszka 23 Mar 2011 11:46 4835 20
  • #1 23 Mar 2011 11:46
    hawryszka
    Poziom 11  

    Nie wiem czy piszę w dobrym dziale.Więc w razie czego proszę o przeniesienie.

    Mam do zrealizowania pewien mały projekt:
    Proste sterowanie dwoma silnikami krokowymi przez mikrokontroler.
    Dużo szukałem i czytałem na ten temat i pierwszy krok polegał na uruchomieniu silnika Mitsumi M55SP-1 ; 5 wyprowadzeń. Z poszukiwań okazało się że jest to silnik krokowy unipolarny. Napisałem prosty program dla Atmega16 w C, wgrałem na uC. Jako sterownik użyłem układu ULN2803. Działa!

    Drugi silnik to Sanyo Denki 103-771-1242 ; 1.35A; 1.8deg - tutaj dużo szukania, przeglądania wielu forów, artykułów itd po ciężkich poszukiwaniach znalazłem notę katalogową serii 103 - wywnioskowałem że to silnik unipolarny ( 6 przewodów , dwa odczepy na parę cewek). Odpowiednie podłączenie , odpalam uC w z tym samym programem silnik zrobił dwa kroki i ULN2804 poszedł z dymem - rzecz jasna i oczywista układ max 500mA a silnik chciał 1.35A.

    Zabrałem się za poszukiwanie zamiennika dla drugiego silnika. Po wielu poszukiwaniach znalazłem układ ULN2064B o max I=1.5A.
    Porównałem schematy wewnętrzne o dziwo są "identyczne".
    Zakupiłem jeden takowy układzik odpowiednio podłączyłem, analogicznie jak ULN2803.. podłączam do uC , ten sam wsad co wcześniej a silnik robi dwa kroki w przód dwa w tył, w pewnym położeniu stoi robiąc jakby poł kroku do przodu pół do tyłu....
    Początkowo myślałem że złe podłączenie wyprowadzeń do układu, przetestowałem każda możliwa kombinacje aby to wykluczyć .... następnie zabrałem się za analize trywialnego programu .. no może gdzieś jakiś błąd ... okazuje się że jest ok...

    Proszę o pomoc co przeoczyłem , gdzie popełniłem błąd ?? może do układu muszę dostawić jakieś rezystorki ...
    Nigdzie nie znalazłem podobnego projektu na ULN2064, ale z noty katalogowej wynika że ten układ ma takie przeznaczenie ...(tak mi się wydaje )

    Dodam że zasilacz którym zasilałem silniki U=15V, I=1.5A, - do układów , + na odczepy cewek.

    Do posta załączam notki katalogowe obu ULN..

    Proszę o pomoc.

    Dziękuję.

    Pozdrawiam.

    0 20
  • #2 23 Mar 2011 12:27
    Marczeli_P
    Poziom 20  

    Możesz zmostkować układ 2803 łącząc po dwa kanały równolegle, spowoduje to możliwość obciążenia układu dwukrotnie większym prądem. Można w ten sposób uzyskać prąd równy 1A lub większy przy krótkich przeciążeniach z dobrym chłodzeniem układu. Połącz nóżki wejściowe 1 i 2 oraz stosownie 17 i 18 dla wyjścia. Może wytrzyma obciążenie tym silnikiem. Oczywiście resztę należy połączyć analogicznie jak podałem w przykładzie.

    0
  • #3 23 Mar 2011 13:29
    hawryszka
    Poziom 11  

    Nie mogę łączyć kilku układów ponieważ w dalszej części projektu muszę zachować jako taką estetykę wykonania.

    Poniżej schematy połączeń układów jakie wykonałem :
    (po lewej ULN2064B po prawej ULN2803)

    Sterowanie silnikiem krokowym ULN2803 a ULN2064B zagadka Sterowanie silnikiem krokowym ULN2803 a ULN2064B zagadka


    Może przy podłączeniu ULN2064 mam błąd.

    p.s Rysunki mało profesjonalne wykonane "na kolanie"

    0
  • #4 23 Mar 2011 13:45
    Marczeli_P
    Poziom 20  

    Twój schemat wygląda nawet dobrze tylko miałbym jedno spostrzeżenie, mianowicie należało by nogi 1 i 8 układu 2064 dać do + zasilania, z uwagi na indukcyjny charakter obciążenia.

    0
  • #5 23 Mar 2011 14:07
    hawryszka
    Poziom 11  

    Marczeli_P napisał:
    Twój schemat wygląda nawet dobrze tylko miałbym jedno spostrzeżenie, mianowicie należało by nogi 1 i 8 układu 2064 dać do + zasilania, z uwagi na indukcyjny charakter obciążenia.

    Wykonałem przed chwilą test i tak jak mówiłeś podpiełem wyprowadzenie 1 i 8 do zasilania. Nie wprowadza to nic znaczącego do działania , silnik nadal wykonuje pół kroku przód ,pół w tył.

    0
  • #6 23 Mar 2011 14:27
    Marczeli_P
    Poziom 20  

    Zgadza się, ta modyfikacja nie miała na celu ożywienia układu lecz zabezpiecza klucze tranzystorów znajdujące się w układzie przed przedwczesnym uszkodzeniem. również taki zabieg powinno sie wykonać z układem 2803 - nóżka 10 do +. Ja bym na twoim miejscu wziął do ręki zasilacz i spróbował wysterować ręcznie podając napięcie na poszczególne cewki. Dało by to pewność że silnik jest sprawny i na tej podstawie można dokonać prawidłowego połączenia.

    0
  • #7 23 Mar 2011 14:29
    janbernat
    Poziom 38  

    Zmierz oporność uzwojenia silnika- na podstawie tej oporności i prądu nominalnego wylicz napięcie zasilania.
    Spadek napięcia na ULN przy prądzie 1.5A będzie ok. 1.5V.
    Według mnie ULN tego nie wytrzyma- moc dopuszczalna 1W.

    0
  • #8 23 Mar 2011 14:34
    hawryszka
    Poziom 11  

    Panowie chodzi o to ( szybki skrót) że gdy podłączam silnik na uln2803 to działa , podłączam ten sam silnik na uln2064B i już nie działa ( tak jak opisałem na początku). A ULN2064 potrzebny mi jest aby sterować mocniejszym silnikiem( w sensie poboru prądu ). Testy cały czas przeprowadzam na silniku mniejszym aby zbytnio nie obciążać układu ( nie dość że kosztował 11zl to mają jeszcze 2 szt w najbliższym mi sklepie).

    Między uzwojeniem a odczepem mam 36ohm, miedzy uzwojeniami 72ohm

    0
  • #9 23 Mar 2011 17:01
    janbernat
    Poziom 38  

    Jedyna różnica- oprócz oczywiście innych wyprowadzeń i innej wytrzymałości prądowej- jest taka że ULN2803 ma opornik 2.7kOhm na wejściu a ULN2064B 350Ohm.
    Ale to nie powinno robić wielkiej różnicy.
    Druga sprawa to silnik raczej nie może mieć oporności uzwojenia 36 Ohm i prądu 1.5A.
    Bo to by oznaczało zasilanie 54V- nie spotkałem takiego silnika.

    0
  • #10 23 Mar 2011 19:59
    hawryszka
    Poziom 11  

    Mitsumi(nazwijmy go "słabszym" silnikiem) który opisałem w pierwszym na początku tematu ma 36ohm (około 500mA)- ten chodzi na uln2803 , ale Sanyo-denki (patrz pierwszy post, nazwijmy go "mocniejszym" silnikiem) potrzebuje 1.35A i do tego właśnie potrzebuje ULN2064. Po podłączeniu "mocniejszego" silnika do ULN2803 układ poszedł z dymem.
    Więc do testów założyłem że najpierw poprawnie "odpalę" "słabszy" silnik a następnie podłącze ten "mocniejszy".Obrazowo:
    ULN2803->"słabszy silnik" = poprawna praca
    ULN2064->"słabszy silnik" = nie działa poprawnie ( pół kroku wprzód, pół w tył)

    Po południu zaczełem od nowa z tym że zamiast silnika wpiełem diody w szeregu z opornikiem, wyniki tego doświadczenia są dziwne:

    sekwencja zapalania diod na ULN2803:

    D1 D2 D3 D4
    krok 1 : 1 0 0 0
    krok 2 : 0 1 0 0
    krok 3 : 0 0 1 0
    krok 4 : 0 0 0 1

    sekwencja zapalania diod na ULN2064:

    D1 D2 D3 D4
    krok 1 : 1 0 1 1
    krok 2 : 0 1 1 1
    krok 3 : 0 0 1 1
    krok 4 : 0 0 1 1

    1- oznacza zapalenie diody, 0- dioda zgaszona
    (test wykonuję cały czas na tym samym wsadzie w uC! )

    Zastanawiam się czy kupiłem już uszkodzony układ ze sklepu ?

    0
  • #11 23 Mar 2011 20:04
    janbernat
    Poziom 38  

    No może być uszkodzony- tam gdzie jest D3 i D4.
    Sprawdź jeszcze czy coś zmienia się na wejściu.

    0
  • #12 23 Mar 2011 20:43
    hawryszka
    Poziom 11  

    Za około 15-20 min napiszę jakie pojawia się tam napięcie

    Dodano po 31 [minuty]:

    Na D3 i D4 jest cały czas takie samo napięcie jak podczas zapalenia diody D1 lub D2.

    0
  • #13 23 Mar 2011 22:10
    janbernat
    Poziom 38  

    Na wejściu ULN sprawdź- bo to że na diodach to wiadomo- jak by się miały świecić.

    0
  • #14 23 Mar 2011 23:07
    hawryszka
    Poziom 11  

    Po pierwsze: nastąpiła mała pomyłka gdyż od początku piszę że układy zasilam 15V 1.5 A a chyba z roztargnienia nie sprawdziłem i w rzeczywistości mam zasilacz 12 V 1.5 A( nie wiem czy to dużo zmieni w temacie). Za błąd przepraszam.

    Po drugie : Sprawdziłem na sucho układy bez obciążenia i zgłupiałem do końca

    Dla uln2064:

    D1,D2 12.7V dla stanu 0 , 11.5V dla stanu 1
    D3,D4 12.7V niezależnie od stanu podanego na wej


    Analogicznie dla uln2803 :

    D1,D2,D3,D4 12.7V dla stanu 0 11.5V dla stanu 1

    0
  • #15 24 Mar 2011 08:10
    94075
    Użytkownik usunął konto  
  • #16 24 Mar 2011 20:14
    hawryszka
    Poziom 11  

    Struktura wewnętrzna układu ULN2064.
    Sterowanie silnikiem krokowym ULN2803 a ULN2064B zagadka

    Z mojego połączenia wynika że wejście mam na wyprowadzenie B które poprzez rezystor połączone jest z baza 1 tranzystora w układzie darlingtona zawartego w wewnętrznej strukturze układu ULN2064, następnie wyjście biorę z wyprowadzenia C(kolektor drugiego tranzystora) - do wyprowadzenia podłączam obciążenie ( w tym wypadku jest to jedna cewka silnika krokowego) dalej w szeregu mam + (dodatni) biegun zasilania a -(ujemny ) doprowadzony jest do masy układu - Gdzie jest błąd kolego ?
    Wydaje mi się że podłączenie jest poprawne..

    0
  • #17 24 Mar 2011 21:04
    janbernat
    Poziom 38  

    A masy ULN z procesorem to są wogóle podłączone?

    0
  • #18 24 Mar 2011 21:09
    94075
    Użytkownik usunął konto  
  • #19 24 Mar 2011 21:30
    ^Rachel
    Poziom 21  

    Robiłem kiedyś taki sterownik i powinno to być tak podłączone:

    Sterowanie silnikiem krokowym ULN2803 a ULN2064B zagadka

    Sory za rysunek, ale nie było mnie w szkole wtedy jak uczyli rysować w Paincie :(

    0
  • #20 24 Mar 2011 22:46
    janbernat
    Poziom 38  

    No nie wiem- może jestem szczęściarzem a może po prostu wiem co robię.
    Ale każdy silnik krokowy który uruchamiałem kręcił sie tak jak chciałem.

    0
  • #21 24 Mar 2011 23:51
    hawryszka
    Poziom 11  

    Kolego o jaki dokładnie symbol ci chodzi ?

    Proponujesz podłączenie wyjścia przez diodę czy dodatkowe podpięcie jej do zasilania ?

    0