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

Sterowanie Mosfetem - PWM - stały prąd - w teorii OK, ale nie działa

marti_ns 10 Sty 2015 10:18 3138 34
  • #1 10 Sty 2015 10:18
    marti_ns
    Poziom 16  

    Witam
    w tym temacie szukałem mosfet'a który możne być sterowany z Arduino (atmega), w układzie sterownika do taśm LED. Wykorzystany układ TLC5940 do rozszerzenia ilości kanałów i tranzystory IRLZ44N (logic level), aby można było na wyciu uciągnąć max ok 4A.

    W sterowniku wykorzystuję bibliotekę TLC5940 -> Basic animations -> AnimatorCreator

    Skrypt zmienia obraz (mapa bitowa X*16 Pixeli) na wartość wypełnienia PWM, gdzie X to długośc sekwencji a 16 to ilość kanałów - doświadczalnie ustaliłem że max długość dla Atmega 328P to 1200 z uwag na pojemność pamięci.

    wszystko działa ładnie na pojedynczych diodach podłączonych do TLC5940
    Sterowanie Mosfetem - PWM - stały prąd - w teorii OK, ale nie działa
    Jest rezystor 10K pull-up przy BLANK (wyłącza wyjścia przy resecie), jest rezystor 2K pull-down przy IREF który ogranicza prąd na wyjscia TLC5940 do ok 20mA ( I=39.06/R). Pięknie to wszystko działa, ale na pojedynczych diodach.

    Tutaj są wszystkie moje filmy pokazujące jak to działa.

    Problem zaczyna się gdy podłącze IRLZ44N, wówczas diody nie gasną.

    Nie wiem czy winna jest biblioteka, czy skrypt AnimatorCreator ale nie działa to jak powinno, a teoria mówi ze musi to działać.

    Tutaj z tego co rozumiem angielski, jest podobny problem, bramka jest ładowana przez rezystor pull-up (mosfet właczony) , a sygnał PWM powoduje rozładowanie (wyłaczenie) tranzystora. To by się zgadzało bo z tego co zauważyłem na kanałach gdzie stosowałem mosfet, diody przygasały wraz ze zwiększeniem PWM. Dostałem od autora skryptu, zmieniony program który odwraca wartości i znów na pojedynczych diodach wszystko ładnie, ale na odwrót ale na mosfetach znów nie gaśnie.

    Texas Instruments proponuje inne podłączenie Link

    I teraz już porostu jestem głupi w teorii powinno to działać, po sieci krąży wiele opisów w oparciu o ten sam schemat, więc dlaczego mam problemy przy sterowaniu mosfetem.

    Ja chce podłączyć do każdego kanału do 3-4 metrów taśmy, takiej co ma np 15W/metr. z tego co umiem liczyć 15W/12V=1.25 A * 3 metry = 3,75A.
    Bez Mosfeta tego nie osiągnę.

    w testach korzystałem z żarówek P21W i mofety wytrzymały.

    Proszę Was koledzy pomóżcie. Dlaczego to nie działa jak powinno działać?

    Zakładając że winna jest biblioteka BasicAnimations

    Kod: c
    Zaloguj się, aby zobaczyć kod


    plik ani_arduino.h
    Kod: c
    Zaloguj się, aby zobaczyć kod


    to mam dwa wyjścia albo poszukać czegoś innego, albo pisać ręcznie podając kolejne wartości wypełnienia. Ale dlaczego podłączenie Mosfeta psuje cały efekt?

    Ktoś pomoże?

    0 29
  • #2 10 Sty 2015 11:09
    W.P.
    Specjalista - zasilacze komputerowe

    Schemat sterowania tranzystorami MOS jak najbardziej poprawny. W takiej sytuacji włączyłbym oscyloskop na wyjście TLC5940.
    Coś pobudza MOS-y do przewodzenia jeśli świecą diody.

    0
  • #3 10 Sty 2015 11:18
    marti_ns
    Poziom 16  

    niestety nie mam oscyloskopu :(

    0
  • #4 10 Sty 2015 11:18
    W.P.
    Specjalista - zasilacze komputerowe

    Przyglądam się mozaice druku na jednym ze zdjęć z odsyłacza:

    https://www.elektroda.pl/rtvforum/viewtopic.php?p=14313394#14313394

    Dlaczego środkowe nóżki tranzystorów są na tym samym potencjale? Przecież to dreny a nie źródła.

    Chyba trzeba przeprojektować płytkę i problem zniknie. :)

    Przepraszam. To łączówki. Chyba dalej oscyloskop. Może są jakieś szpilki.

    0
  • #6 10 Sty 2015 11:25
    marti_ns
    Poziom 16  

    W.P. napisał:
    Przyglądam się mozaice druku na jednym ze zdjęć z odsyłacza:

    https://www.elektroda.pl/rtvforum/viewtopic.php?p=14313394#14313394

    Dlaczego środkowe nóżki tranzystorów są na tym samym potencjale? Przecież to dreny a nie źródła.

    Chyba trzeba przeprojektować płytkę i problem zniknie. :)

    Przepraszam. To łączówki. Chyba dalej oscyloskop. Może są jakieś szpilki.


    dokładnie na złaczach zrobiłem tak ze jest - + - żeby uniknąć plątaniny kabli wtedy jeden + jest na dwa kanały.

    projektując ten układ bazowałem na projekcie Anatola Ogórka
    Link.

    On pomógł mi w paru kwestiach i teraz gdy wrzuciłem jego wsad do mojego układu to wszystko działa prawidłowo.

    Tak jak przypuszczałem Mosfet odwraca logikę układu, bo z tego co pamiętam domyślnie dostaje 5V na bramkę, dopiero zwiększenie stanu na wyjściu z TLC zmniejsza to napięcie, więc przyciemnia diody.

    zastanawia mnie tylko czy gdybym zastosował inwerter logiczny Link to wówczas układ z mosfetami działał by jak zwykły TLC z pojedynczymi diodami. jełśi tak to było by to rozwiązanie mojego problemu. jednak Inwerter musiałby wytrzymywać do 4A i być na 12V bo musiałby być dołożony za mosfetem o ile dobrze rozumiem, a to znacząco podniosło by koszty.

    czyli chyba się wyjaśniło, nie mogę korzystać z biblioteki AnimatroCreator. musze coś innego wymysłic

    na tym filmie wszystko widać Link

    0
  • #7 10 Sty 2015 11:47
    jdubowski
    Specjalista - urządzenia lampowe

    marti_ns napisał:
    W.P. napisał:
    Przyglądam się mozaice druku na jednym ze zdjęć z odsyłacza:

    https://www.elektroda.pl/rtvforum/viewtopic.php?p=14313394#14313394

    Dlaczego środkowe nóżki tranzystorów są na tym samym potencjale? Przecież to dreny a nie źródła.

    Chyba trzeba przeprojektować płytkę i problem zniknie. :)

    Przepraszam. To łączówki. Chyba dalej oscyloskop. Może są jakieś szpilki.


    dokładnie na złaczach zrobiłem tak ze jest - + - żeby uniknąć plątaniny kabli wtedy jeden + jest na dwa kanały


    Kolejna prośba o schemat, nadto realizacja kluczy jako wtórniki źródłowe nie jest właściwa.

    0
  • #8 10 Sty 2015 11:54
    marti_ns
    Poziom 16  

    bardzo przepraszam z tego wszystkiego zapomniałem wrzucić. jest tam razem z filmami na gdrive, ale wrzucam załącznik.

    Jak pisałem wyżej. układ działa, tylko logika jest odwrócona dlatego programy głupieją.

    czy pomogą koledzy to wyprostować?

    0
  • #9 10 Sty 2015 11:57
    W.P.
    Specjalista - zasilacze komputerowe

    marti_ns napisał:
    Pięknie to wszystko działa, ale na pojedynczych diodach.
    Czy diody były podłączone anodą do wyjścia TLC5940 a katodą (plus rezystor) do masy? Słowem - czy miały świecić przy "1"?
    Co prawda sam w to nie wierzę ale gdyby założyć, że logiczne 0 to nie 0V a trochę więcej (0,5 może 1V) to na pojedynczej diodzie będzie dobrze - zaświeci przy "1" na wyjściu i zgaśnie przy "0".
    Jednak tranzystor może już być w stanie aktywnym i niewielkim prądem zapalić diody w obwodzie drenu.

    Podaj wartość napięcia na wyjściu TLC dla stanów logicznych "0" i "1".

    0
  • #10 10 Sty 2015 12:01
    Krzysio74
    Poziom 16  

    Problemem jest to, że TLC5940 ma na wyjściach "źródła" prądowe, które ciągną prąd do siebie.
    łatwiejszym byłoby użycie tranzystora typu P. A u Ciebie teraz konwerter na tranzystorze pnp , tranzystor wpięty bazą przez R do wyjscia PWM, emiter do +5V, a kolektor do R przy MOSfecie.

    A tak podczas sterowania, w 1. fazie jest ustawione źródła, w 2. fazie jest odpięte.
    I tak w 1. fazie cały prąd idzie przez drabinkę czyli potencjał na bramce twojego T wykonawczego jest bliski zeru.
    W 2. fazie, potencjał jest podniesiony. Ten sam rezystor w drabince tworząc dzielnik z rezystorami powoduje załączenie pełne lub niepełne mosfeta.

    Może, żeby zgasły należałoby max prąd ustawić na jakąś wyższą wartość niż 5mA.

    0
  • #11 10 Sty 2015 12:03
    W.P.
    Specjalista - zasilacze komputerowe

    Jeśli chcesz odwrócić logikę na wyjściu to wystarczą inwertery pomiędzy wyjściami z TLC a stopniem końcowym na MOS-ach.

    0
  • #12 10 Sty 2015 12:20
    marti_ns
    Poziom 16  

    W.P. napisał:
    Jeśli chcesz odwrócić logikę na wyjściu to wystarczą inwertery pomiędzy wyjściami z TLC a stopniem końcowym na MOS-ach.


    Ale wtedy Mosfety mogą się nie otworzyć bo one są zasilane z Pull-up 5V

    W.P. napisał:
    Podaj wartość napięcia na wyjściu TLC dla stanów logicznych "0" i "1".


    Przy "0" 3.65V dla samej LED i 6.9 dla żarówki po Mosfet, dla "1" 3.11V LED i 11.5V dla żarówki.

    LED podpięty bezpośrednio do TLC a żarówka P21W podpięta przez IRLZ44N.

    Ogólnie tak jak już wcześniej pisałem układ dział poprawnie, jednak o ile LED podłączony bezpośrednio do TLC5940 przy wypełnieniu PWM = 0 nie świeci, to żarówka lub LED podłączony przez Mosfet przy takim samym wypełnieniu świeci maksymalną jasnością. Natomiast LED przy TLC jeśli PWM=4095 siwci na maxa to żarówka po mosfecie przy takim wypełnieniu gaśnie.

    0
  • #13 10 Sty 2015 12:21
    W.P.
    Specjalista - zasilacze komputerowe

    Chyba Kolega Krzysio74 rzucił właściwe światło na sprawę.

    Krzysio74 napisał:
    Problemem jest to, że TLC5940 ma na wyjściach "źródła" prądowe
    . Trzeba przyjrzeć się stopniowi końcowemu TLC5940. Poszukam pdf-a.

    0
  • #15 10 Sty 2015 12:26
    W.P.
    Specjalista - zasilacze komputerowe

    ...chyba dopiero późnym wieczorem - teraz muszę wyjść :(

    0
  • #16 10 Sty 2015 12:46
    Krzysio74
    Poziom 16  

    to z slva280, to jest pomocne, kiedy masz wyższe napięcie zasilania niż dopuszczalne dla scalaka. Ty chcesz mieć prąd, tym rozwiązaniem tego nie osiągniesz.
    Prawdopodobnie rzeczywiście wystarczyłyby inwertery cyfrowe, pullup jest wtedy potrzebny scalakowi (PWM), a MOSFETy są sterowane prosto z wyjścia push-pull inwertera.

    Co do źródeł prądowych, to one nie są podstawą działania, one korygują prąd w gałęzi istotny przy bezpośrednim podłączeniu LED w kilku gałęziach.
    Ważne jest to, że wypełnienie jest aktywne w stanie niskim, a aby wysterować żarówkę po mosfecie musisz podać na niego stan "wysoki". Więc zastosujesz negator na linii, albo programowo to załatasz, ale jednym programem nie posterujesz dwóch odmiennych konstrukcji.

    1
  • #17 10 Sty 2015 13:04
    marti_ns
    Poziom 16  

    Krzysio74 napisał:
    Prawdopodobnie rzeczywiście wystarczyłyby inwertery cyfrowe.

    no tak myślę ale stosowane po mosfetach na pewno będą drogie z uwagi na wymagane parametry, a stosowane przed mosfetem zakłócą działanie rezystora pull-up.

    wg mnie taniej jest zostawić bibliotekę AnimatroCreator i klepać linie kodu ręcznie regulując wypełnieniem.

    tak przynajmniej wychodzi z mojej bardzo skromnej wiedzy elektronicznej.

    dzięki za wytłumaczenie o co chodzi z tym slva280.

    No chyba że wzmocnienie zrobić w inny sposób, ale to są dodatkowe koszty

    0
  • #18 10 Sty 2015 13:17
    jarek_lnx
    Poziom 43  

    Cytat:
    jest jeszcze plik TI który proponuje jak podłaczyć LED przez MOSFET ale nie wiem dlaczego nie dział mi to połaczenie
    Bo to kaskoda prąd nadal reguluje układ scalony tranzystor pozwala tylko podnieść napiecie zasilania.

    Inwersję oraz zwiększenie prądu do wartości wymaganaj dla szybkiego przełaczania MOSFET'a można zrobić tak:

    Sterowanie Mosfetem - PWM - stały prąd - w teorii OK, ale nie działa

    rezystory oznaczone jako x można wstawić jeśli ktoś zastosuje zasilanie 12V i chciał bcy zmniejszyc straty mocy w układzie scalonym - moc wydzieli sie w rezystorach.

    0
  • #19 10 Sty 2015 13:21
    marti_ns
    Poziom 16  

    w tym połączeniu Mosfet nie musi być Logic Level bo może być sterowany z 12V?

    czy to może być każda dioda 30V 0.2A bo wolałbym, nie bawić się w smd

    0
  • #20 10 Sty 2015 13:33
    jarek_lnx
    Poziom 43  

    Cytat:
    w tym połączeniu Mosfet nie musi być Logic Level bo może być sterowany z 12V?
    Nie musi, a nawet taki który nie jest ma pewne zalety, łatwiej (szybciej) da sie wyłączyć przez ściaganie bramki rezystorem do masy.

    Cytat:
    czy to może być każda dioda 30V 0.2A bo wolałbym, nie bawić się w smd
    Każda szybka dioda ja wziąłem jakąś diodę Shottky'ego.

    0
  • #21 10 Sty 2015 13:36
    marti_ns
    Poziom 16  

    no to nie potrzebnie sprzedałem 100 szt. IRFZ44N i kupiłem 50 szt IRLZ44N, no ale trudno te się zużyje to się kupi inne, człowiek całe życie się uczy.

    przy takim układzie wyjścia z TLC jak proponujesz wszytko podpięte do Mosfeta powinno się zachowywać jak dioda podpięta bezpośrednio do TLC? czyli logika powinna zostać zachowana i wypełnienie 0 powinno gasić żarówkę na mosfecie?

    to było by cudownie bo mógłbym wtedy stosować bibliotekę AnimatorCreator

    jarek_lnx napisał:
    Nie musi, a nawet taki który nie jest ma pewne zalety, łatwiej (szybciej) da sie wyłączyć przez ściaganie bramki rezystorem do masy.

    mógłbyś zaproponować jakiś niedrogi Mosfet z obciążalnością 3-5 A przy 12V, oprócz IRFZ44N

    0
  • #22 10 Sty 2015 14:18
    _jta_
    Specjalista elektronik

    Nie widzę wyjaśnienia, w czym jest problem - jakoś to jest zagmatwane. Jeśli na bramkę MOSFET-a z kanałem N podajesz stan niski, to on jest wyłączony i żarówka/dioda podłączona do jego drenu nie świeci; jeśli podajesz stan wysoki, to on jest włączony i żarówka/dioda świeci. Jeśli LED-a włączysz między wyjście TLC5940 sterujące bramką, a plus zasilania (tak podłączałeś?), to on świeci odwrotnie, niż przy podłączeniu do drenu MOSFET-a - mam wrażenie, że to "odwrotnie" ciebie zdziwiło i pisałeś o tym w #12.

    Co właściwie chcesz uzyskać? Czy to, żeby sterować 16 taśm LED i dla każdej niezależnie zmieniać jasność?

    0
  • #23 10 Sty 2015 14:35
    jarek_lnx
    Poziom 43  

    Cytat:
    mógłbyś zaproponować jakiś niedrogi Mosfet z obciążalnością 3-5 A przy 12V, oprócz IRFZ44N
    Zajrzał bym na stronę jakiegoś sklepu co ma wyszukiwarkę po parametrach i wybrał wartości Rds(on) ok 20mΩ (co da 0,5W strat przy 5A) a później sortowanie po cenie.

    IRLZ44N nie jest zły IRFZ44 miał by może ze dwa razy krótszy czas wyłaczania w przypadku z rezystorem, nawet dla IRLZ44N i prostszego układu tranzystor w ciągu kilkunastu µs zdąży sie wyłaczyć, a wiec praca na do kilku kHz ma sens, a przy LED'ach nie widzę potrzeby wiecej. Przy IRLZ to lepiej tranzystory PNP zasilić z 5V, podnoszenie nic nie da a zwiększa straty mocy.

    0
  • #24 10 Sty 2015 15:02
    marti_ns
    Poziom 16  

    _jta_ napisał:
    Nie widzę wyjaśnienia, w czym jest problem - jakoś to jest zagmatwane. Jeśli na bramkę MOSFET-a z kanałem N podajesz stan niski, to on jest wyłączony i żarówka/dioda podłączona do jego drenu nie świeci; jeśli podajesz stan wysoki, to on jest włączony i żarówka/dioda świeci. Jeśli LED-a włączysz między wyjście TLC5940 sterujące bramką, a plus zasilania (tak podłączałeś?), to on świeci odwrotnie, niż przy podłączeniu do drenu MOSFET-a - mam wrażenie, że to "odwrotnie" ciebie zdziwiło i pisałeś o tym w #12.

    Co właściwie chcesz uzyskać? Czy to, żeby sterować 16 taśm LED i dla każdej niezależnie zmieniać jasność?


    Chcę aby taśmy bądź żarówki po Mosfetach zachowywały się tak jak Led wpięte bezpośrednio do TLC tak jak to jest w przykładach. A ogólnie chcę sobie zrobić animacje na taśmach ze ściemnianiem która będzie leciała w pętli. Chce wykorzystać bibliotekę z arduino skrypt animator creator.

    jarek dzięki za wyjaśnienie

    0
  • #25 10 Sty 2015 15:15
    jarek_lnx
    Poziom 43  

    Cytat:
    Nie widzę wyjaśnienia, w czym jest problem
    Bo nie ma, też sie zastanawiałem o co tu chodzi, nie ma nigdzie jasno zadanego pytania, ani opisu problemu, ten temat to świetny przykłąd co zrobić żęby nie uzyskać odpowiedzi.

    Mogło chodzić o inwersję, lub za małe prądy do wysterowania bramek lub niewłaściwe poziomy napięć, to dałem taka odpowiedź żeby pasowała niezależnie od tego o co chodzi :)

    P.S. Niektórzy twierdzą że nabijamy sobie posty - to jest mój post nr 4444 :)

    0
  • #26 10 Sty 2015 15:22
    marti_ns
    Poziom 16  

    Chodzi mi o to że korzystam z biblioteki która ładnie steruje diodami podłączonym bezpośrednio do układu TLC5940 jak na ilustracji w pierwszym poście. Problem zaczyna czy na się gdy chce wzmocnić wyjście z układu abym mógł podlaczyc do kanału taśmy LED, zastosowanie Mosfet N odwraca mi zachowanie LED w zależności od stopnia wypełnienia. Świeci gdy 0 anie świeci gdy 4095. Proszę o pomoc w rozbudowaniu układu tak aby odbiorniki na Mosfet zachowywały się tak jak pojedyncze diody przy układzie TLC5940, prezez co będę mógł stosować skrypty z biblioteki a nie klepać linie kodu wypełnienia ręcznie.

    To oczywiście ręcznie da się napisać ale wolał bym układ który będzie się zachowywał jak ten pierwszego rysunku a pozwoli na obciążenie każdego kanału do 4A. Bawiłem się już tymi skryptami i naprawdę ładnie to wygląda w pierwszym poście jest link do GDrive gdzie są moje filmy. Chodzi tylko o możliwość podłączenia większego obciążenia w postaci Taśm Led.

    0
  • #27 10 Sty 2015 15:40
    W.P.
    Specjalista - zasilacze komputerowe

    marti_ns napisał:
    Proszę o pomoc w rozbudowaniu układu tak aby odbiorniki na Mosfet zachowywały się tak jak pojedyncze diody przy układzie TLC5940
    Przeczytaj jeszcze raz post #16. Nic więcej nie trzeba.

    Myślałem o #18. Za mało dioptrii na nosie... Teraz zauważyłem błąd.

    0
  • #28 11 Sty 2015 10:52
    marti_ns
    Poziom 16  

    A możecie koledzy podać dokładnie jaki inwerter lub jakie parametry musi mieć?
    Bo moja wiedza elektroniczna jest na etapie piaskownicy, nie wiem czy muszę na każdy kanał oddzielnie, czy są inwertery wielokanałowe?

    no i żeby nie był za mały bo jeszcze nie nauczyłem się lutować "Włosów".

    czy np taki może być
    Link

    albo taki 2 kanałowy

    Link

    Tylko żaden nie ma wyjścia push - pull

    0
  • #29 11 Sty 2015 12:37
    _jta_
    Specjalista elektronik

    TLC5490 jest sterownikiem LED-ów, a nie MOSFET-ów, więc nie należy się dziwić, że to nie działało dobrze. Można do jego wyjść dołączyć jakieś ULN280*, to jest 8-kanałowy inwerter, albo zrobić inwertery z tranzystorów BC337 - chyba lepiej z tranzystorów (niższe napięcie nasycenia), ale tak czy siak, na każdy kanał będą potrzebne 2 oporniki. A może jakieś inwertery TTL (np. SN7406), czy CMOS (CD4049)? Tylko one mają niską wydajność prądową, i tylko po 6 kanałów, ale za to np. CD4049 nie potrzebuje oporników na wyjściu (ma wyjście push-pull), a SN7406 na wejściu (ma tam pull-up) - jakkolwiek każdy gdzieś potrzebuje. Jeszcze 8 kanałów ma 74HC240 (potrzebuje oporników na wejściu, wyjście push-pull).

    0
  • #30 11 Sty 2015 14:00
    marti_ns
    Poziom 16  

    No to chyba faktycznie lepiej zrobić jak mi kolega Jarek i Ty proponujecie zrobić układ na tranzystorach BC. Bo wtedy można inne mosfety zastosować, sterowane z 12v z niższym ładunkiem bramki. A cenowo nie będzie to zabijać bo te elementy są po parę groszy. Spróbuję złożyć ten schemat co mi proponował kolega Jarek.

    Tylko które tranzystory w końcu dać bo Jarek proponuje Bc327-25, a ty BC337

    0