Blog (30)
Komentarze (1.1k)
Recenzje (0)

Jak skuteczniej ogrzewać stół, drukarki

@KaworuJak skuteczniej ogrzewać stół, drukarki20.11.2016 00:44

I to znów nie będzie kotatsu. Jakiś czas temu popełniłem wpis o zmaganiach starego człowieka z upływającym czasem, ewentualnie o potężnych (jak na drukarkowe standardy) grzałkach do ogrzewania platform. Potężnych, skracają czas potrzebny do rozgrzania platformy z nieskończoności (lub około 20 minut, ale to to samo) do ~2 minut w Megalodonie i do 40 sekund w mojej Prusie. Dziś prezentuję państwu kolejną zabawkę, sterownik do tych grzałek. I nie, poprzedni się nie zepsuł, ot ten ma nowe, a właściwie nową funkcję a przy okazji nie wygląda jak wydziergany szydełkiem.

Ale pierwej, teoria

Oryginalna* wersja grzałki na prąd stały, posiada funkcję regulacji mocy. Regulacji za pomocą PWM. Funkcja pozwala na utrzymywanie temperatury stołu w bardzo wąskim korytarzu. Niestety, wraz z konwersją na prąd zmienny funkcja wyszła. Aktualnie platforma może być tylko włączona na pełnej mocy albo wyłączona, żadnych stanów pośrednich. Szczęśliwie, dokładna kontrola temperatury dla stołu nie jest tak ważna jak dla hotendu, ale i tak miło by było ją kiedyś przywrócić.

Prąd zmienny, co raczej wiadomo, wygląda tak:

Sygnał PWM, prezentuje się jakoś tak:

Pierwszym pomysłem ludzi (w sumie, moim też) byłoby zaaplikowanie sygnału PWM o wielokrotnie wyższej częstotliwości niż 50 Hz do powyższego sygnału, by uzyskać coś takiego:

I to by nawet mogło się udać, jeśli tylko dałoby się znaleźć przekaźnik będący w stanie wyciągnąć sporo ponad 1 kHz w częstotliwości przełączania. Tyle, że takich przekaźników nie ma. Są za to triaki i takie tam**, ale z nimi jest ten mały problem, że działają, powiedzmy, niezupełnie tak jakbyśmy tego od nich oczekiwali. Jeśli zaaplikujemy sygnał PWM wysokiej częstotliwości na bramkę triaka, to zamiast oczekiwanego wyżej efektu, dostaniemy jeden z takich efektów:

Który z nich - zależy od sterownika triaka. Jeśli ma układ wykrywania przejścia przez zero - jakąś wariację na temat dolnego, jeśli nie ma, to wariant górny. Wszystko dlatego, że triaki (a także diaki i olbrzymia większość SSRów), niestety, raz uruchomione nie przestaną przewodzić póki napięcie nie spadnie do zera. To nie jest jakimś gigantycznym problemem, prąd zmienny jak nazwa wskazuje, jest zmienny, do zera spada 100 razy na sekundę (albo 120). Na szczęście, aby w ogóle zacząć przewodzić muszą być wyzwolone odpowiednim napięciem na bramce. Wyzwolić można je w dowolnym momencie. I dziś właśnie będziemy je wyzwalać w dowolnym momencie, dążąc do uzyskania jakiejś wariacji na temat takiego wykresu:

Podnoszenie ciężarów, czyli układ wykonawczy

Sprawa z układem, który wykona zadanie cięcia prądu zmiennego jest raczej prosta, w aktualnie używanych urządzeniach mam dwa triaki BTA24**** potrafiące maksymalnie przesłać 25 A każdy. Razem dawało by to 11 kW dostępnej mocy maksymalnej, ale są ograniczenia - triaki, jak chyba wszystkie półprzewodniki grzeją się coraz mocniej wraz z coraz większym przepływającym przez nie prądem. A ja wcale nie chcę im dawać radiatorów i co gorsza aktywnego chłodzenia. Identyczny problem dotyczy przewodników, miedź na PCB może się przegrzać jeśli przesadzimy. Z obliczeń wyszło, że zakładając wzrost o 20 stopni temperatury samego PCB, płytka jest w stanie wytrzymać około 8 A, to daje 1,8 kW maksimum i po 4 A na jeden triak. Wszystko razem zapewnia im spokojny żywot, we względnie (jak na ich możliwości) chłodnym otoczeniu, a mnie możliwość opakowania ich w zamknięta obudowę bez szczególnej wentylacji. Poza tym triaki serii BTA mają izolowany tab (tę blaszkę na górze), przez co jak ją jakimś cudem macniemy to nie poliże nas prąd.

Triaki wymagają sterowania, w poprzednim modelu zainstalowane są optotriaki MOC3043, które mają całe 5 mA potrzebnego prądu dla diod i układ przełączania w zerze. Układ przydatny, albo nie. W wypadku nie PWM-owych sygnałów sterujących - przydatny, nie pozwala na włączenie w dowolnej fazie cyklu, a tylko gdy akurat napięcie przechodzi przez zero. W naszym wypadku całkowicie przeszkadzający, bo my chcemy je uruchamiać w dowolnym momencie. Także zostaną tu zastąpione układami MOC3023, które są tego układu pozbawione. A gdyby się ktoś zastanawiał, albo w sklepie nie było, optotriaki MOC30xy mają różne to "y" w zależności od prądu potrzebnego dla uruchomienia diody, 3 – 5 mA, 2 – 10 mA, 1 – 15 mA, 0 – 30 mA. Nam wystarczy wersja 3, po co marnować prąd. Tym bardziej, że całość zasilana jest liniowym stabilizatorem AMS1117, a liniowe stabilizatory to nie są najoszczędniejsze urządzenia na świecie. Choć tak na prawdę chodzi o temperaturę tego AMS.

Ten myślący, czyli układ wejściowy

Mamy układ podnoszący ciężary, czas na część która pozwoli mu działać zgodnie z przeznaczeniem. Pewnie dałoby się zbudować układ analogowy realizujący taką funkcję, ale coś czuję, że nie zmieściłby się na płytce. A płytka, na której to siedzi musiałaby być mała, bo byłaby tylko towarzystwem do czegoś większego, szkoda marnować miejsce. No, ale do rzeczy. Sercem układu jest mikrokontroler ATtiny13. Jak nazwa wskazuje (albo i nie bo tiny2313 na którym zrobiłem sumator PPM jest większy niż mega8 :D) jest malutki. Cały 1 kB pamięci flash i 64 B pamięci RAM. Oryginalny program na niego zamknął się jedynie w 2 kB. Szczęśliwie, człowiek ma skilla w optymalizacji i po zastąpieniu 32-bit matematyki wersja 8-bit + trochę operacji na 16 bitach i sztuczkach z rodziny "zamiast mnożenia/dzielenia przesunięcie bitowe", program wcisnął się w 948 B i to nie tracąc na oryginalnej funkcjonalności. Jego zadaniem jest odczytanie wejściowego sygnału PWM, przeznaczonego dla niskonapięciowych grzałek, stwierdzenie jakie ma wypełnienie i na podstawie tegoż - pocięcie sinusoidy dostarczonej z gniazdka. Ciąć może w zakresie 6-bit, tj. - na 64 poziomy. Okres trwa 20 ms, połowa 10 ms. Wiedząc kiedy wystąpiło zero w sieci przesyłowej, wystarczy opóźnić wyzwolenie triaka o 0-63 pętli o czasie wykonania ~155 us. uC podaje 30 uS impuls na diody MOC3023, te uruchamiają triaki, tymczasem uC robi sobie inne rzeczy, gdy pomiar wypełnienia PWM. A właśnie, pomiar wypełnienia możliwy jest w zakresie od około 2 Hz do 125 Hz - niby mało, ale domyślnie repetier używa bodajże 4 Hz a Smoothie 20 Hz. Gdyby ktoś jednaj chciał marudzić, że timery pracują przecież z częstotliwością sporo wyższą, to spieszę tylko donieść iż owszem, dla 4 Hz sygnału, który ma rozdzielczość 8-bit, timer pracuje z częstotliwością ~1 kHz. Więc przy 8 bitach rozdzielczości PWM, dozwolona podstawowa częstotliwość timerów to jakieś 512 Hz-32 kHz. Wystarczy prawdopodobnie dla wszystkich istniejących kontrolerów. Częstotliwość PWM, o ile mieści się w wyznaczonym przedziale - nie ma znaczenia dla pomiaru wypełnienia. Program ma timeout 0,5 s, jeśli sygnał zaniknie (albo wejdzie na 100% wypełnienie) to zauważy to właśnie po około 0,5 s. Tutaj uwaga, wejście sygnału działa poprawnie tylko dla sygnału sterowanego od strony niskiej. Jeśli ktoś miałby, jakimś cudem, sterowanie grzałką oparte na P-MOSFET-ach (czyli po plusie), to nie będzie działać. Wymaga N-MOSFET-ów. Choć to nie powinien być problem, bo jeszcze się nie spotkałem aby jakaś płytka miała coś innego niż N-MOSFET-y do sterowania wysokoprądowymi elementami. Pozostaje jeszcze kwestia wykrywania gdzie to zero właściwie jest. Można by dać prosty dzielnik napięcia, ale jak to nieizolowane pomysły mają w zwyczaju, gdyby się któryś rezystor z jakiegoś powodu spalił, to moglibyśmy dostać 230 V na CPU (co by posłało go do krainy wiecznego dzielenia przez zero), a potem na sterowanie grzałką. I tak dalej, doprowadzając do spalenia płyty głównej drukarki (a także, opcjonalnie, małego porażenia). Izolowane pomysły są lepsze, a z tych pomysłów, najwygodniejszy wydaje mi się (niech mnie ktoś poprawi?) optoizolator. 7 kV izolacji chyba wystarczy. H11AA1M podłączony jest diodą do 230 V, tam ma ograniczenie prądu do około 1 mA za pomocą 2x100k 0,2W rezystorów. Z drugiej strony, wyjście ma podciągnięte do zasilania części niskonapięciowej. Kiedy dioda świeci, tj. mamy górkę sinusoidy, napięcie na wyjściu spada do zera, gdy nie świeci - rośnie do poziomu napięcia zasilania CPU. Działa, ale może powodować mały problem, jeśli zasilanie nie jest podłączone to może interpretować to jako wieczne zero, ale w sumie rozwiązanie banalne - sprawdzać wcześniej czy była jakaś górka. ;)

A zwycięzcą jest...

Albo raczej efektem końcowym, taka oto zabawka:

Kompaktowa, z optyczną izolacją od wszystkiego co złe albo wysoko napięciowe, mało grzejąca się i pokazująca z jaką mocą aktualnie pracuje. No, z grubsza. Do tego dzięki mocy drukarek 3D, zapakowana w małą obudowę wykonaną z ABS, uniemożliwiającą przypadkowe pomacanie wszystkich niebezpiecznych złącz. Całość skręcona 4 wkrętami do drewna 3x16mm.

Układ do poprawnej pracy wymaga 4 przewodów od strony wejścia:

  • +5 do 12 V
  • Masy (i to nie tej z grzałki, bo to sygnał sterujący)
  • +3.3 do +24 V na wejściu sygnału grzałki
  • Masy grzałki, która tak na prawdę jest właściwym sygnałem sterującym

Wszystkie muszą być podłączone i pochodzić z systemu, który ma wspólną masę. To akurat nie powinien być problem, chyba, że ktoś miałby dwa zasilacze z niepołączonymi masami. W którym to wypadku układ zachowywałby się nieprzewidywalnie. Z drugiej strony zasilanie musi być podłączone do górnego zestawu złącz (zaskakująco podpisanego "IN"), a grzałka do dolnego (znów zaskoczenie, "OUT"). Triakom (za bardzo) różnicy nie robi w która stronę przewodzą, ale układ wykrywania przejścia przez zero jest na stałe podłączony do górnego zestawu złącz, a bez niego... no może trochę nie działać.

I tak oto mamy SSR potrafiący robić PWM na prądzie zmiennym***, sterowany akurat sygnałem o takiej polaryzacji jaka używana jest w drukarkach. Swoją drogą, chciałem dać optoizolator na wejście, ale jakoś nie bardzo miejsce nań było. A że i tak płytki sterujące drukarkami mają na wyjściu low-side-switch... mosfet się wcisnął. Nieco upierdliwe było tylko przeprowadzenie analizy tego czy działa poprawnie, brak oscyloskopu daje się we znaki. Ale wydaje mi się, że watomierz umieszczony na wejściu i żarówka halogenowa spełniły swoje zadanie. W sumie prosty układ na 2 triakach z tiny13, znów nie zrobiłem schematu.

* - A te grzałki na prąd stały to są, tak poza tym, takie sobie, duże straty na samych przewodach, niskie napięcie a prądy duże, Edison się na tym już przejechał kiedyś. ** - A także diaki i osobliwe SSRy na IGBT i izolatorach fotowoltaicznych, ale że osobliwe, to widujemy je w stanie dzikim dość rzadko. To może Tyratrony ? Wyglądałoby ciekawie. *** - sterowanie fazowe, czy jakoś tak temu było w zasadzie. **** - Kuszące jest zrobienie całości w wersji SMD, wyszło by mniejsze. Ale z jakiegoś powodu (pewnie popytu) triak T2535 (DDPAK) będący odpowiednikiem BTA24 kosztuje o rząd wielkości więcej. To ja sobie z tymi BTA poradzę.

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.