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

regulator prędkości silników modelarskich na AT90s2313

ajas 29 Gru 2004 16:24 87372 275
  • #31
    Vassili Zaicev
    Poziom 12  
    Przejrzalem ten kod programu dla mikrokontrolera, i choc nie jestem specem od Bascom to widac czarno na bialym ze nie ten regulator ma bardzo skromna rozdzielczosc na wyjsciu.
    Dokladnie 10 pozycji w przod i 10 w tyl.

    Sama regulacja mimo uzycia tablicy jest praktycznie liniowa, w obie strony.

    Poza tym jest tam maly blad - w niektorych sytuacjac count moze wypasc poza skale i robic przeklamanie. Przy tej czestotliwosci blad praktycznie niewodoczny, o ile nie zaczniemy podlaczac na ten port P1 innych urzadzen na pozostale piny. Jesli beda one wyjsciowe to beda zaklocenia.
  • Relpol przekaźniki
  • #32
    ucy74
    Poziom 20  
    Zrobiłem układ na tranzystorach MOS-FET z kanałami N i P i ICL7660. N (dolne)wysterowują się ładnie, gorzej z P (górnymi), które nadal grzeją się zbyt mocno. Może ktoś coś poradzi?
  • #33
    areni2002
    Poziom 14  
    uklad z icl7660 jest skonstruowany tak aby stosowac tylko n-kanalowe mosfety!jesli stosujesz gorne jako p to sa one w tym przypadku zle wysterowane co powoduje grzanie sie,podojne napiecie jest koneczne tylko wtedy jesli stosujemy mostek H tylko na n-kanalowych mosfetach,w twoim ukladzie nie jest to niekonieczne!
  • #34
    ucy74
    Poziom 20  
    areni2002 napisał:
    ...w twoim ukladzie nie jest to niekonieczne...
    Czyli którą opcję wybrać:
    1. Zrezygnować z podwajania napięcia wogóle?
    2. Podwajać napięcie V+ tylko dla dolnych (N) MOS-FET'ów?
    3. Prześć układ na same N-MOS-FET'y i podwajanie?
  • #35
    areni2002
    Poziom 14  
    jesli chcesz miec podwojne napiecie to tylko n-fet ale prosciej wywalic uklad podwajania napiecia i powinno byc oki,nie testowalem takiego ukladu ale wg mnie bedzie wporzo
  • #36
    ucy74
    Poziom 20  
    areni2002 napisał:
    ...prosciej wywalic uklad podwajania napiecia i powinno byc oki,nie testowalem takiego ukladu ale wg mnie bedzie wporzo...
    Po odjęciu podwajacza, na tranzystorach gorąc był taki że się cyna topiła i dym poszedł :-)
  • #37
    areni2002
    Poziom 14  
    cos tam masz zle bo sprawa przedstawia sie nastepujaco: podwojne napiecie jest konieczne tylko do wysterowania gornych n-fet, poniewaz aby trazystor przewodzil miedzy drenem a zrodlem roznica, napiec bramki i zrodla musi wyniesc conajmniej jakies 5V,natomiast jesli masz u gory p-fet to nie potrzebujesz do niczego podwojnego napiecia! zalaczam schemacik mostka H z n i p kanalowymi mosfetami
  • #38
    TOMSON
    Poziom 19  
    Witam

    Do regulatora musisz zastosować trazystory na wiekszy prąd i najlepiej logiki wtedy jest mało rozbudowany stopień sterujacy.
    Zastosowanie Trazystorów typu P od zasilania i typu N od masy daje lepsze wysterowanie trazystorów .Trazystory typu P mają jedna wadę owiele wiekszą rezystancję złącza niż typu N.Czym trazystor ma mniejszą rezystancje tym mniejsza moc się na nim odłoży Moc strat trazystora w obudowie TO220 (tak żeby go można było spokojnie ręką trzymać) to jest 0.5W to sobie policz przy jakim pradzie i rezystancji ta moc się odłoży na trazystorze.
    Ja zastosowalem trazystory typu N MTD75N03HDL Id-75A Rds- 4,5mΩ i typu P IRF4905 (DROGIE) ale są super jak na typ P Id 70A Rds- 20mΩ.
    W regulatorze zastosowałem po 3 równolegle typu P i 2 typu N na galąź mostka .
    Dołaczam schemat mostka (praca tylko 2 kierunkowa bez możliwości pracy chamólcowej)
    Trazystory pracują po skosie i jak widać na schemacie nie mogą pracować jako chamulec bo 2 dolne musiały by być sterowane osobno.

    Pozdrawiam
  • #39
    areni2002
    Poziom 14  
    ucy w woim schemacie z podwajaczem moze i by zadzialalo nawet ale masz odwrotnie wstawione p-konałowe mosefty!moze juz sam do tego doszedles ale tak na wszelki pisze!pozdrwiam
  • Relpol przekaźniki
  • #40
    TOMSON
    Poziom 19  
    Witam

    Co do tych typu P to wszystko jest w najlepszym porzadku jakbym odwrotnie podłaczył to by to nie zadziałało jako trazystor tylko dioda w stanie przewodzenia i z trazystorów by już nie było .
    Ja zrobiłem taki regulator i działa całkiem dobrze.
    Ma zabespieczenie temperaturowe z termistorem NTC.
    A jako sterownik mosów poleciłbym MAX4427 Napiecie jakie uzyskujesz na bramce jest prawie takie same jak baterji zasilajacej.

    Dołaczam schemacik całego mostka z sterownikiem.

    Pozdrawiam
  • #41
    areni2002
    Poziom 14  
    to nie bylo do Ciebie TOMSON!ale co twojego ukladu to sorki ale to ma byc sterownik do modelu a nie prawdziwego samochodu elektrycznego!po co tyle mosfetow?!sorki ale mnie tu oskarzano ze moj uklad jest skaplikowany i wogole epoka komienia lupanego ale Ty troszke przesadziles!no chyba masz w modelu silnik na 50A?! ;) pozdrawiam
  • #42
    TOMSON
    Poziom 19  
    Czy ja wiem czy tak dużo w modelarskich regulatorach trazystorów nie jest mniej . A to co jest u mnie to wcale nie jest dużo.
    Po pierwsze w regulatorze trazystory są bez radiatorów i nie ma co zabardzo odprowadzać z nich wytrąconej mocy strat na rezystancji.
    A treaz troszke obliczeń.
    Moc strat P = kwadrat pradu X R rezystancja .Zakładamy że prad jaki pobiera silnik klasy 540 standard to jakieś 15A podczas pracy.Rezystancja trazystorów to jest wypadkowa rezystancja trazystorów typu N i P w jednej gałęzi (np jazda do przodu)
    W tym ukladzie co jest na zdieciu R wypadkowe(trazystory maxymalnie wysterowane przy 6 celach to daje jakieś góra 7V na bramce trazystorów) ,a pełne otwarcie tr typu P to przynajmniej 10V powiedzmy rezystancja = 15mΩ
    To moc strat na trazystorach wynosi (15Ax15A)x0.015mΩ = 3.375W
    To wydziel taką moc bez radiatorów to i tak trazystory bedą dobrze ciepłe.Wieksza część mocy wydziela sie na trazystorach typu P bo mają dużo wiekszą rezystancję dlatego jest ich aż 3(moc rozkłada sie pomiedzy trazystory.
    Przy wyrzszych napieciach mają mniejszą rezystancje np(akku 10 ogniw 12V).
    A jak zamkniesz regulator taki w łódce to nie ma jeszcze chodzenia i trzeba robić chłodzenie wodne.
  • #43
    ucy74
    Poziom 20  
    areni2002 napisał:
    ucy w woim schemacie z podwajaczem... masz odwrotnie wstawione p-konałowe mosefty...
    To tylko na schemacie. W Eaglu nie znalazłem P MOS-FET'ów z diodą i trochę "podrysowywałem" schemat. Na razie układ P-N odłożyłem trochę na bok.
    Walczę teraz z układami IR2113 i czterema MOS-FET'ami N. Teraz układ pracuje z małym silniczkiem na 12V, ale zwalnia przy maksymalnych wartościach PWM, a powinien chodzić pełną parą.
    Co ciekawe, poniżej 10V zasilania silnika do układu IR2113 potrzebny jest podwajacz dla wysterowania górnych tranzystorów :-) A miał to być taki wspaniały układ, lek na wszystkie kłopoty...
  • #44
    areni2002
    Poziom 14  
    no a moj uklad mial byc taki skaplikowany i wogole a najlepiej dziala! :D
    trzeba by tylko lepsze mosfety dac o mniejszym Rds(on) tak jak w ukladzie TOMSONA
  • #45
    TOMSON
    Poziom 19  
    Gdzieś widziałem w necie układ z podwajaczem napiecia w mostku na trazystorach typu N.Dolne trazystory miały bramki poblokowane zenerkami aby nie przekroczyć wartości napiecia sterujacego bramki.

    A jak tam z oprogramowaniem do procka sterujacego sobie poradziliscie.
  • #46
    areni2002
    Poziom 14  
    od razu mowie ze programowania prockow to sie slabo widze,mam pewnie programik, dolaczony do kontrolera z EP1/2001, ale niestety ma wady np slaba rozdzielczosc, 10 predkosci w przod i tyle samo w tyl, bylbym edzieczny za jakies propozycje modyfikacji programiku, jest w BASCOMie:
    Dim Pwmcount As Byte , Count As Byte , Vals As Word
    Config Timer0 = Timer , Gate = External , Mode = 0
    Config Timer1 = Timer , Gate = Internal , Mode = 2
    On Int1 Readint
    On Timer1 Pwm
    Load Timer1 , 75
    Set Tcon.2
    P1 = 3
    Enable Interrupts
    Enable Timer1
    Enable Int1
    Start Timer0
    Start Timer1
    Goto Main
    Main:
    If Count < 0 Then Count = 14
    If Count > 28 Then Count = 14
    If Count = 14 Then P1 = 3
    Goto Main
    Readint:
    Count = Th0 - 30
    Th0 = 0
    Return
    Pwm:
    Incr Pwmcount
    If Pwmcount > 9 Then Pwmcount = 0
    Vals = Count * 10
    Vals = Vals + Pwmcount
    P1 = Lookup(vals , Pwm_table)
    Return
    Pwm_table:



    Data 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1
    Data 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1
    Data 3 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1
    Data 3 , 3 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 '
    Data 3 , 3 , 3 , 1 , 1 , 1 , 1 , 1 , 1 , 1
    Data 3 , 3 , 3 , 3 , 1 , 1 , 1 , 1 , 1 , 1
    Data 3 , 3 , 3 , 3 , 3 , 1 , 1 , 1 , 1 , 1
    Data 3 , 3 , 3 , 3 , 3 , 3 , 1 , 1 , 1 , 1
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 1 , 1 , 1
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 1 , 1
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 1 '
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 2 '
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 2 , 2
    Data 3 , 3 , 3 , 3 , 3 , 3 , 3 , 2 , 2 , 2
    Data 3 , 3 , 3 , 3 , 3 , 3 , 2 , 2 , 2 , 2
    Data 3 , 3 , 3 , 3 , 3 , 2 , 2 , 2 , 2 , 2
    Data 3 , 3 , 3 , 3 , 2 , 2 , 2 , 2 , 2 , 2
    Data 3 , 3 , 3 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 3 , 3 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 '
    Data 3 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
    Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
  • #47
    ucy74
    Poziom 20  
    Ja mam Bascom'owy program sterowania dwoma kanałami PWM i serwem na ATmega8. Rozdzielczość PWM 8 bitów. Tyle że on nie czyta zadanych wartości z odbiornika RC gdyż takowego nie posiadam. Steruję to potencjometrami.
  • #48
    areni2002
    Poziom 14  
    ucy moglbys zapodac kod?moze na cos sie przyda!
  • #49
    ucy74
    Poziom 20  
    areni2002 napisał:
    ...moglbys zapodac kod...
    Proszę bardzo. Starałem się wszystko opisać. Serwo jest sterowane dwoma przeciwsobnymi potencjometrami. Miałem po prostu taki manipulator. Oczywiście, może być tylko jeden potencjometr dla serwa - odpada wtedy jeden kanał ADC i kod będzie ciut mniejszy.
  • #50
    areni2002
    Poziom 14  
    no coz ja bym wolal cos na 89c2051, albo jakies poprawki do tego co mam
  • #51
    ucy74
    Poziom 20  
    areni2002 napisał:
    no coz ja bym wolal cos na 89c2051...
    Hmm... Jak już miałem skończony kod na AVR to czasem go przepisywałem na 2051. Tutaj jest nieco inaczej, bo wykorzystuję to, że ATmega ma na pokładzie ADC i timer z dwoma PWM. Co konkretnie chciałbyś podrasować w tym kodzie?

    BTW Jak mocnego używasz silnika w swoim układzie z podwajaczem napięcia? Zbudowałem układ w oparciu o schemat z MOS-FET'ami P-N, który zamieściłeś i silnik klasy 540 jest dla niego zbyt mocny. MOS-FET'y, przy słabym silniczku, robią leciutkie zwarcie przy przejściu pomiędzy kierunkami, ale da się to olać. Przy większej mocy jest to już pełne zwarcie w obu kierunkach i prędkości powyżej zera.
  • #52
    areni2002
    Poziom 14  
    trudno mi powiedziec bo tego uklady jeszcze nie budowalem z braku p-fet,ale pochodzi z tego samego zrodla co uklad na samych n-fet(http://www.armory.com/~rstevew/Public/Motors/H-Bridges/Blanchard/nch-brdg.htm) i u mnie dziala oki!z tego co mowisz to wydaje mi sie ze raczej masz jakis problem ze sterowniem(program)a co do mojego programu to glownie chodziloby mi o zwiekszenie rozdzielczosci,czy to wogole mozliwe na tym malym atmelku?!
    a bym zapomnial silnik?!no wiec tu musze przyznac ze testowalem narazie na malym silniczku bo jeszcze nie mam nic wiekszego,ale wydaje mi sie ze to nie ma znaczenia!najwyzej beda sie mosfety bardziej grzaly!ja mam po dwa IRF530 gorne i dolne na oba kierunki!one nie maja RDs(on) kolo 160mΩ,to duzo i bez radiatorow przy wiekszej mocy sie nie obedzie!ale ich moc styka 100V,14A,88W
  • #53
    ucy74
    Poziom 20  
    areni2002 napisał:
    ...chodziloby mi o zwiekszenie rozdzielczosci,czy to wogole mozliwe na tym malym atmelku?!
    Jeżeli będziesz używał timera to spokojnie wyciśniesz 8 bitów rozdzielczości. Nie bawiłem się z timerami na 51, są troche inne niż w AVR, ale można na pewno znaleźć jakieś wyjście. Jeśli masz już działający H-mostek to spróbój z komendą servo sterować silniczek, jest to takie najprostsze 50Hz PWM.
    areni2002 napisał:
    ...testowalem narazie na malym silniczku bo jeszcze nie mam nic wiekszego,ale wydaje mi się ze to nie ma znaczenia...
    Niestety, z małym silniczkiem to możesz sobie darować podwajanie napięcia. Zabawa zaczyna się gdy silnik ciągnie 12V przy 9A. Mały silniczek chodzi nawet przy nie w pełni otwartym tranzystorze. Duży silnik powoduje że nie wysterowany tranzystor robi "pyk" i trzeba go wymieniać ;-)
  • #54
    areni2002
    Poziom 14  
    podwajacz napiecia jest konieczny nawet przy malym silniczku ale w ukladzie z samymi n-fet,a dlatego(powtarzam sie) zeby porawnie wysterowywac gorne mosfety!robilem uklad pierwotny bez podwajacza i tak sie grzaly(gorne) na malym silniczku ze szok!torszke poczytaj o wysterownywaniu mosfetow, moze cos Ci pomoze:http://www.armory.com/~rstevew/Public/Motors/H-Bridges/Blanchard/h-bridge.htm, to o tym ukladzie z n i p kanlowymi mosfetami
  • #55
    ucy74
    Poziom 20  
    areni2002 napisał:
    podwajacz napiecia jest konieczny...
    OK OK... nie wiedziałem jak mały jest ten silniczek...

    Załączam plik który jest wg mnie konstrukcją najbardziej dopracowaną.

    BTW Czemu nie wystarcza Ci rozdzielczość konstrukcji z EP? Mechaniczne regulatory mają raptem po dwie prędkości w każdą stronę.
  • #56
    areni2002
    Poziom 14  
    ta jak to nazwales konstrukcja po krotkim przejrzeniu jest moze i dopracowana ale zbyt skaplikowana,to musi byc prosty uklad,niedlugo mam nadzieje bede tesotwac moj na wiekszym silniku to dam znac jak poszlo.a co do rozdzielczosci to zdaje sobie sprawe ze 10 to i tak duzo w porownaniu z mechanicznymi, ale tak sie zastanawiam, no i wogole plynnosc regulacji bylaby lepsza przy wiekszej rozdzielczosci(czemu BTW?)
  • #57
    ucy74
    Poziom 20  
    areni2002 napisał:
    ...czemu BTW?...
    A tak przy okazji :-)

    Z przykrością stwierdzam, że moje uwagi co do testów różnych wersji mostków z MOS-FET'ów obarczone są pewnym błędem: PWM podawane z Timera1 "zdycha" na wyjściach. Pomimo wpisywania wartości wypełnienia 0-255 PWM rozpędza się do ok. 16 kHz przy 127, a potem zanika do zera dla 255. Muszę sprawdzić, czy nie uszkodziłem jakoś wyjścia µC, podczas prób. Wcześniej było dobrze, a kodu niezmieniałem.
  • #58
    areni2002
    Poziom 14  
    tak mi sie zdawalo ze cos jest nie tak, no ale jakos nie mialem chyba czym poprzec tej tezy......wiec sie nie odzywalem,to zreszta tlumaczy wiele rzeczy,tzn nieprawidlowosci dzialanmia twoich ukladow.A tak apropo tego BTW to nadal nie rozumiem ale juz nie chce nawet probowac zrozumiec,pozdrwaniam
  • #59
    ucy74
    Poziom 20  
    areni2002 napisał:
    ...tego BTW to nadal...
    By The Way oznacza "przy okazji". Są jeszcze inne skróty, ale ten jest całkiem niewinny :-)

    Co do układów: Sprawdziłem PWM i wszystko mam w porządku.
    Układ Blanchard'a (P-N MOS_FET) działa, ale przy większej mocy tranzystory się odlutowują - pomimo radiatorów. Więc mniemam że jednak nie otwierają się należycie.
    Chciałbym jeszcze spróbować układu z podwjaczem 7660, ale też nie wiem czy sprawdzi się przy dużych mocach.
    Driver'y IR2113, na które liczyłem najbardziej zdychają powyżej połowy PWM. Chyba nie umiem ich prawidłowo podłączyć.
  • #60
    mzielin
    Poziom 22  
    Co do IR2113 - zwiększ pojemność kondensatorów na górnej połówce. Przy wymagających MOSFETACH i małej częstotliwości gromadzą za mały ładunek, musisz mieć przynajmniej ok. 10 uF (0.1 to zdecydowanie za mało).