Dimmer

maghost
Posty: 99
Rejestracja: ndz mar 27, 2016 12:30 am

Zasilany ze zasilacza stabilizowanego 12V 1A (na wyjściu stabilne 12,07V) zasilam około 1m taśmy, także dosyć spora nadwyżka mocy. Filtracja jak na schemacie. Próbowałem zapasowo "wygładzić" 12V jeszcze 470uF ale dalej to samo.
ESP strasznie mi się grzeje, zauważyłem dopiero teraz. Może to być jego wina. Wymienię w poniedziałek może wtorek, dam znać jaki efekt.

Robiłem także testy na Arduino. Wszystko było Ok.
Awatar użytkownika
pzygmunt
Posty: 18328
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Tam PWM jest ustawiony na 1Khz. Być może to za wysoka częstotliwości dla tych tranzystorów. W Arduino jest mniejsza.
maghost
Posty: 99
Rejestracja: ndz mar 27, 2016 12:30 am

Sprawdzane na innym ESP, wynik ten sam.

Możliwe, że zależy to od częstotliwości PWM. W arduino to dokładnie 490 Hz.
Przemku, czy i gdzie można tą częstotliwość zmienić?

PS. spróbuję jeszcze dziś z innym MOSFETem n-channelowym i zobaczymy, lecz jakieś nadzwyczajnej wiary nie mam, że będzie OK :P
Awatar użytkownika
pzygmunt
Posty: 18328
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

https://github.com/SUPLA/supla-core/blo ... _pwm.c#L21

Wszystko co trzeba zrobić to zmienić:
1001 -> 490

Informacyjnie:
należy pamiętać, że przy zmianie częstotliwości zmienia się możliwy zakres wypełnienia. Ma to szczególne znaczenie przy RGB gdzie nie mamy osobnego PWM-a do ściemniania i trzeba rodzić sobie wypełnieniem.

Info z dokumentacji:

"Sets duty cycle of a PWM output. Set the time that high-level signal will last, duty depends on period, the maximum value can be Period * 1000 /45. For example, 1KHz PWM, duty range is 0 ~ 22222"
Awatar użytkownika
pzygmunt
Posty: 18328
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

Wrzuciłem wersję skompilowaną dla 490Hz

https://github.com/SUPLA/ESP8266/tree/master/Dimmer
maghost
Posty: 99
Rejestracja: ndz mar 27, 2016 12:30 am

Dziękuję bardzo! Z chęcią jak najszybciej chciałbym sprawdzić ten soft, ale ciągle brakuje mi na to czasu. Mam nadzieję, że w przyszłym tygodniu się za to zabiorę, bo stara plytka mi gdzieś zaginęła.
maghost
Posty: 99
Rejestracja: ndz mar 27, 2016 12:30 am

Przyszedł czas, gdy miałem trochę wolnego i postanowiłem ponownie zgłębić ten temat.
Na wstępie dziękuję wszystkim forumowiczom, którzy chcieli pomóc mi rozwiązać ten problem.
Stałem się nieco "mądrzejszy" o kwestie tranzystorów unipolarnych.
Budując pierwszą wersję układu nie miałem pojęcia o tak ważnych z tego punktu widzenia rzeczach. Tak więc:

Tranzystory MOSFET są sterowane napięciem bramki (a nie jak w tranzystorach bipolarnych - liniowa charakterystyka i sterowanie prądem), musi być ono większe niż podane w nocie katalogowej napięcie progowe przewodzenia (Vgs). Dla serii IRF napięcie to zawiera się między 3-4 V. Musi być ono więc wyższe od 4 V a także niższe bądź równe napięciu dren-źródło. ESP zasilane jest napięciem 3,3V, także niewystarczającym, by w pełni swobodnie sterować bramką. Natomiast istnieje seria MOSFETów IRL - gdzie napięcie Vgs jest pomiędzy 1-2V. Bingo! Takiego tranzystora możemy użyć.

Kwestia druga to schemat na Majsterkowie, który wstawił Przemek, jest z elektronicznego punktu widzenia - błędny.
Chodzi mi o rezystor do bramki, który jest tam przedstawiony (1k), o ile zasadny jest w tranzystorze bipolarnym w celu ograniczenia prądu, to nie można stosować go w tranzystorach unipolarnych. Już tłumaczę dlaczego, wynika to z jego budowy:

Bramka jest oddzielona izolatorem od pozostałych złącz stanowi kondensator o znacznej pojemności. O ile dla stanów statycznych, bądź przełączanych z małą częstotliwością nie ma to większego znaczenia, to przy wyższych częstotliwościach zaczynają się problemy. Pojemność ta powoduje, że przy dużej częstotliwości lub dla wąskiego impulsu tranzystor w ogóle nie zareaguje na sterowanie.
Jeśli sterujemy tranzystor np. wąskim impulsem i obwodzie bramki damy rezystor, to on wraz z pojemnością bramki, która może wynosić nawet ~1nF, tworzy nam filtr RC, który nie pozwoli nam włączyć tranzystora, bo w pojemności bramki gromadzi się energia, tak jak w każdym kondensatorze - najpierw energię trzeba tam umieścić a następnie rozładować - a to trwa. Przy szybkim przełączaniu, kiedy występuje to ładowanie i rozładowywanie, powstają niepotrzebne straty mocy i grzeje się on. Dlatego nie stosuje się rezystorów w obwodzie bramki W OGÓLE!

W oparciu o tą wiedzę załączam poprawny schemat sterowania RGBW (także można go użyć jako ściemniacza przy dodaniu tylko jednego tranzystora) dla ESP8266:
rgbw.png
rgbw.png (38.84 KiB) Przejrzano 4740 razy
Ku mojemu zdziwieniu, po złożeniu płytki wg tego schematu problem występuje nadal, ale jest dużo mniej zauważalny, lecz dla kogoś kto pracuje przy takim świetle w dalszym ciągu lekko irytujący. Możliwe też, że jest to wina mojej taśmy LED i chodzi o charakterystykę tych diod, tego nie wiem, ale spróbuję kupić taśmę RGB i zobaczę jak tam to działa.

Edit: Problem chyba udało mi się zdiagnozować: po wgraniu wersji 490Hz nawet wieczorem wydaje się bardzo Ok, choć dalej nie perfekcyjnie, lecz jak na razie to najlepsza wersja. Patrząc na oświetloną ścianę udaje się zobaczyć lekką niestabilność (miganie o którym wspomniałem wcześniej). Więc dla testu podłączyłem drugi zasilacz. Nie miał on bowiem 12V a około 14V. Jako, że stabilizator 1117 toleruje napięcia do 18V postanowiłem spróbować. Teoretycznie myślałem, ze on rozwiąże problem - wręcz przeciwnie, po jego podpięciu jeszcze bardziej było widać migotanie, a stabilizator zaczął się jeszcze bardziej grzać. I wtedy trafiłem o co chodzi - to stabilizator na 99%! Podczas pracy przy 12V na początku układ działa poprawnie. Oczywiscie pod wpływem czasu nagrzewa się dosyć znacząco, nie dziwiło mnie to od początku, wiadomo - 12V->3,3V, nie ma nic za darmo, trzeba więc gdzieś te straty odprowadzić. I po jakiś 5 min zaczyna się lekkie migotanie - to wlasnie niestabilność ESP. Najlepiej więc mieć stabilizator w obudowie TO-220 (oczywiście koniecznie z masą na tyle) z wyprowadzonym tyłem w postaci blaszki, którą w każdej chwili można przykręcić do radiatora, lub nawet kawałka blachy, bądź metalowej obudowy. Ja niestety postawiłem na technologię SMT i dla mnie alternatywą jest obudowa typu DPAK (TO-252) i tył przylutować do rozlanej masy płytki, która bedzie pomagała odbierać to ciepło. To chwilowe pomysły, zobaczymy co z tego będzie.
gregorw
Posty: 4
Rejestracja: sob mar 05, 2016 11:10 pm

Witam wszystkich,

znalazłem problem, który powoduje to migotanie.
Nie jest to wina zastosowanych tranzystorów, testowałem na takich, których bramka już przy około 2,5V załącza.
Zbyt niskie napięcie bramki może powodować zwiększony opór złącza D-S, ale mimo to są to wielkości rzędu kilku miliomów.
Opornik na bramce powinien być taki jak jest zapisane w specyfikacji tranzystora, od kilku do kilkudziesięciu omów. I nie można dowolnie go zmieniać. Czas ładowania i rozładowania bramki jest zależny od prądu płynącego. Zbyt duży prąd może spowodować przeciążenie wyjścia esp.

Problem tkwi w innym miejscu, a mianowicie w sofcie, a jeszcze dokładniej w bibliotece PWM.
Podłączyłem oscyloskop do wyjścia esp i regulowałem z telefonu jasność.
Co mnie zdziwiło? Przy 100% na telefonie oscyloskop pokazywał wypełnienie około 98%.

Testowałem inny program napisany z tą biblioteką i jest to samo :-(

Jedyny sposób to wyeliminować standardową bibliotekę i zastąpić inną.
I taka jest moja prośba do TWÓRCY oprogramowania.

Pozdrawiam
Grzegorz
Enc
Posty: 41
Rejestracja: śr kwie 27, 2016 3:02 pm

Problemem PWM na ESP jest implementacja w sofcie a nie HW, co prowadzi to sytuacji, że PWM przestaje zupełnie działać, gdy zapisuję coś na FLASHu (np. zawartość pseudo EEPROMu). W tym przypadku ATMegi wygrywają dlatego planuję nowy dimmer zrobić z ATMegiem albo jakimś ATTiny (jeszcze się nie zastanawiałem) jako sterownik LEDów do którego ESP będzie podawał ustawienia.
Lechu_
Posty: 204
Rejestracja: wt paź 11, 2016 5:41 pm

Witajcie
Chce zlozyc sobie dimmera wg tego schematu ale mam kilka pytan.
1. Soft daje sterowanie z GPIO4 , chce użyć tak jak w schemacie ESP01 , czy wg smchematu zadziala dla tego softu GPIO02?

2. W instrukcji softu dimmera Config odywa sie poprzez zwarcie GPIO0 do masy, wg informacji z tego tematu w sofcie zwarcie GPIO0 (i wg poniższego foto) ma działać jako opcja on/off. Jak to jest w rzeczywistości :)

3. Czy w samej aplikacji jest opcja on off?

Obrazek
ODPOWIEDZ

Wróć do „Pomoc”