Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Kontroler/monitor temperatury do pieca gastronomicznego.

poorchava 02 Jan 2012 17:45 3703 0
Eltrox Hurton
  • Kontroler/monitor temperatury do pieca gastronomicznego.

    Wstęp
    Witam,
    projekt nie jest jeszcze zakończony, ale już w zasadzie działa, toteż postanowiłem go tutaj zamieścić. Zaczęło się od tego, że mój dobry kolega otworzył swoją pizzerię. Niestety pośród wielu problemów, jakie sie przytrafiły okazało się, że zakupiony używany piec do wypieku pizzy nie reguluje temperatury. Mimo posiadania schematów do pieca nie udało się go naprawić ze względu na przeróbki jakich dokonali amerykańcy. Wszystko w środku zostało zamontowane na "ślinę i smarki" bez żadnego pomyślunku (przykład na schemacie jest 1 transformator sieciowy, w środku są 4 :) ). Żeby było zabawniej kontrola temperatury nie była scentralizowana. Osobno był analogowy termostat z termoparą (prawdopodobnie typu K albo J) a osobno wyświetlacz temperatury, który jako elementu sensorycznego używał prawdopodobnie wysokotemperaturowej wersji PT1000 (dokładnie nie wiadomo, ponieważ czujnik był uszkodzony, a do miernika temperatury nie ma żadnej dokumentacji). Rozbiórka wyświetlacza temperatury/kontrolera taśmy ukazała dziadowskiej jakości pcb i kostkę z firmwarem anno domini 1986 + las układów ttl. Wszystko wygląda jakby montowano całe kity prosto ze sklepu bez zastanowienia. Zapadła decyzja o stworzeniu od podstaw urządzenia, które będzie kontrolować cały piec.

    Funkcjonalność urządzenia
    Cała regulacja działania pieca polega na utrzymywaniu temperatury w środku na zadanym poziomie. Maksymalna odchyłka do około 5 *C. Elementy grzewcze mają łacznie 27 kW (zasilanie trójfazowe). Sterowanie grzałkami jest zrealizowane na przekaźnikach elektromechanicznych więc możliwe jest sterowanie tylko on/off, wymiana elementów wykonawczych odpada ze względu na koszta np. SSR wymaganej mocy.

    Wymagana jest kontrola prędkości przesuwu taśmy, na której jedzie pizza (piec jest tunelowy, nie komorowy). Napędem taśmy jest silnik krokowy o na razie jeszcze nieznanych parametrach (nie było czasu na wymontowanie).

    Konieczne było zrealizowanie zabezpieczenia termicznego. Oryginalnie był to zwykły termostat bimetaliczny na 400 *C przymocowany do aluminiowego elementu znajdującego się w komorze z grzałkami. Niestety kupno części zamiennej okazało się niepraktyczne, ze względu na cenę elementu ($200 część + $100 przesyłka).

    Rozwiązanie (ogólnie)
    Postanowiłem podzielić układ na trzy osobne części: sterownik/miernik, panel sterowniczy i moduł wykonawczy. Zadaniem sterownika jest pomiar temperatury, wyświetlanie jej oraz interakcja z użytkownikiem, a także w przyszłości cała logika odpowiadająca za sterowanie. Komunikacja z modułem wykonawczym będzie się odbywała przez optoizolowany UART.

    Panel zawiera dwa poczwórne wyświetlacze siedmiosegmentowe ze wspólną katodą, 5 diód led oraz 4 przyciski.

    Moduł wykonawczy będzie zawierał logikę konieczną do komunikacje ze sterownikiem przez UART oraz elementy wykonawcze (przekaźniki elektromechaniczne, półprzewodnikowe, ewentualnie MOSFETy, triaki itp. ).

    Kontroler/sterownik
    Mózgiem układu jest 16-bitowy mikrokontroler dsPIC33FJ128MC804 firmy Microchip w obudowie QFP44. MCU (tak ja cały układ) pracuje na napięciu 3.3V z częstotliwością taktowania 80MHz co przekłada się na 40MIPS. Pojemność i moc obliczeniowa MCU jest znacznie na wyrost, ale po pierwsze miałem go z 10 sztuk zapasie kupionych dawno temu, a po drugie umożliwi to w przyszłości zaimplementowanie praktycznie dowolnej funkcjonalności. Programowanie odbywa się przez ICSP przy pomocy Pickita 2.

    Za sterowanie wyświetlaczami odpowiada chip AS1107 firmy Austria Microsystems. Umożliwia on bardzo proste sterowanie 8 cyframi ze wspólną katodą za pośrednictwem SPI. Cena układu jest nieco wysoka (~30zł w Farnellu) ale rekompensuje to wygoda programowania i odciążenie procesora.

    Zapis ustawień umożliwia zewnętrzna pamięć flash 25LC1024 firmy Microchip. 1Mbit to bardzo dużo, ale akurat miałem takie w zapasie. Poza tym umożliwia to podwójne/potrójne zapisy w celu wyeliminowania problemów z żywotnością pamięci. Pamięć ta również jest obsługiwana przez SPI.

    Układ zawiera interface RS-232 zrealizowany na znanym chipie MAX3232 Maxima (wersja 3.3V, kondensatory 100n zamiast 1u). Umożliwia to podłączenie do komputera w celu diagnostyki,kalibracji itd.

    Drugi port komunikacyjny jest optoizolowany przez podwójny fototranzystor ILD206 zapewniający izolację do 2.5 kV. Umożliwia to komunikację z modułem wykonawczym, który może być zasilany z osobnego transformatora, a nawet osobnej fazy. Konieczne jest doprowadzenie zasilania i masy z modułu wykonawczego.

    Załączenie zabezpieczenia termicznego jest realizowane przez podwójny przekaźnik półprzewodnikowy LH1513 firmy Vishay. Jego zadaniem jest załączenie zasilania całego pieca (pośrednio, przez przekaźnik średniej mocy). Przekaźnik jest załączany przez tranzystor podłączony do pasmowoprzepustowego filtru RC, który zapewnia wyłaczenie zasilania w razie uszkodzenia/zawieszenia sterownika.

    Zasilanie zrealizowałem metodą klasyczną. Napięcie zasilające jest prostowane przez mostek DB153S firmy Diodes Inc, a następnie filtrowany przez kondensator elektrolityczny 220uF/35V firmy Samwha. Tak odfiltrowane napięcie jest regulowane przez regulator LF33CDT firmy ST Microelectronics. Uklad ten jest w obudowie DPAK, a płytka jest zaprojektowana tak, że cały groundplane po obu stronach płytki służy za radiator. Taki zabieg pozwala na zasilanie układu całkiem sporym napięciem (praktycznie do tylu, na ile pozwala elektrolit filtrujący), ponieważ pobór prądu nie przekracza 100mA. Dla testów układ pracował całą noc zasilany z 25V i płytka nie zrobiła tylko lekko cieplejsza. Za stabilizatorem napiecie rozdzielone jest na gałąź cyfrową i analogową. Cyfrowa jest filtrowana przez dławik 0.47 uH i kondensator 100n. Analogowa gałąź jest filtrowana przez dławik 0.47 uH oraz kondensatory 100nF i 6.8nF.

    Najcięższą sprawą był pomiar temperatur w piecu. Zdecydowałem się na zastosowanie termopar typu K, ponieważ wytrzymują wysokie temperatury a także są stosunkowo tanie i łatwo dostępne. Minusem jest jednak konieczność bardzo silnego wzmacniania sygnału i stosowania bardzo dokładnych przetworników AC. Ponadto konieczne jest kompensowanie temperatury zimnego złącza (tzw. CJC) dodatkowym czujnikiem. Dokładność termopar nie należy do najwyższych, ale wymagane 5 *C da się spokojnie osiągnąć. Tutaj z pomocą przyszedł układ LMP90099 firmy National Semiconductor (teraz już w sumie TI). Należy on do rodziny AFE (analog front-end). Udostępnia on 8 wejść, które można dowolnie konfigurować w pary różnicowe tworząc do 7 kanałów, wzmacniacz o wzmocnieniu programowalnym w zakresie 1-128 V/V, 24-bitowy przetwornik sigma-delta oraz interface SPI. Układ połączono w konfiguracji z karty katalogowej. Dostępne są 3 wejścia różnicowe, do których można podłączyć termopary. Czwarte wejście służy do pomiaru temperatury zimnego złącza czujnikiem TC1047 Microchipa. Płytka zaprojektowana jest w taki sposób, aby maksymalnie ujednolicić temperaturę zimnych złącz jednocześnie ograniczając wpływ temperatury pozostałych układów na płytce i ograniczając szumy/zakłócenia. Offset, jaki się udało osiągnąć bez kalibracji jest na poziomie <100 uV co przekłada się na około 2*C

    Napięcie referencyjne 2.5V dla LMP90099 generowane jest przez uklad MCP1525 Microchipa. Obserwując napięcie referencyjne oscyloskopem praktycznie nie da się zauważyć szumów (okolo 1.5 mV na oscyloskopie ATTEN ADS1022C). Do lepszego sprzętu pomiarowego chwilowo nie ma dostępu.


    Panel
    Panel zostanie zbudowany na bazie aluminiowej obudowy BX13B-2 firmy Gainta. Aktualnie projekt panelu jest rysowany w CADzie. Wycięcie otworów albo zostanie zlecone jakiejś firmie zajmującej się obróbką CNC albo metodą azjatycko-partyzancką (wiertarka+pilnik+dremel). Panel będzie całkowicie hermetyczny, uszczelniany żywicą epoksydową. Czoło panelu (albo przynajmniej wyświetlacze) będą przykryte poliwęglanem, co uodporni konstrukcję i ułatwi umieszczenie opisów.

    Moduł wykonawczy
    Generalnie tutaj sprawa jest dalej otwarta. Moduł zostanie zaprojektowany po dokonaniu odpowiednich pomiarów. Jest to o tyle problematyczne, ze wymaga całkiem sporej rozbiórki pieca, a piec działa praktycznie na okrągło (termostat analogowy wyregulowany na oko, pomiar temperatury multimetrem za 20zł, zabezpieczenie termiczne spięte na krótko :)). Jak coś sie w tej sprawie ruszy, to napiszę.

    Software
    Program dla mikrokontrolera został napisany w języku C przy użyciu MPLABa 8.53 i kompilatora C30. Chwilowo program wyświetla cyklicznie na górnym wyświetlaczu numer czujnika, na dolnym temperaturę. Głowna funkcjonalność będzie oprogramowana na dniach. Aktualnie napisane są drivery do wyświetlacza, zewnętrznego flasha i front-endu analogowego, a także obsługa przycisków i debugowanie przez RS-232. Co ciekawe AS1107 i 25LC1024 korzystają z jednego SPI przełącznego pomiędzy różnymi pinami wyjściowymi procka (dsPIC33F i E i PIC24H i E mają taką mozliwość). Kalkulacja temperatury termopary odbywa się przy pomocy tablicy wygenerowanej w excelu na podstawie wielomianów 9-tego stopnia obliczonych przez NIST. Tablica zawiera wartości napięcia od 0 do 20.5 mV co 50uV. W wolnej chwili dorobię jeszcze do tego interpolację liniową.

    Filmik z działania:




    editL filmik coś za szybko leci, nie wiem w sumie czemu. Później wrzucę na YT.

    Kod, schematy, pcb
    Chwilowo nie planuję udostępniania kodu, schematów itd z uwagi na to, że projekt nie jest zasadniczo dla mnie, tylko dla kolegi. Niemniej jednak chętnie odpowiem na wszystkie pytania i sugestie. Poza tym nie bardzo wierzę, że ktoś będzie chciał skopiować ten układ (już pomijając fakt, że jeszcze nie jest skończony).

    Jeżeli chodzi o koszt to jest w sumie trudny do ocenienia. MCU miałem, LMP zamówiłem sample, 25LC1024 chyba było z czegoś wydłubane. AS1107 to ~30zł. Wyswietlacze po 3.5 sztuka. Płytka w GAMA s.c. 74zł z przesyłką. Obudowa na panel to 22zł. Drobnica, przewody, konektory ~20zł. Termopary 3szt kupione na Aliexpress za $6.20.


    Update:
    -dodałem tablicę dla temperatur poniżej temperatury złącza referencyjnego
    -wyciąłem otwory w panelu. Metoda klasyczna czyli wiertarka + pilnik ale to aluminium obrabia się zadziwiająco łatwo.
    -włączyłem wbudowany mechanizm kalibracji w tle w AFE. Obserwowalnych efektów nie zauważyłem.

    Muszę natomiast powalczyć z kalibracją, ponieważ przy czujnikach przyklejonych do powierzchni PCB można zaobserwować stały offset napięcia. Prawdopodobnie jest to efekt nieznacznego grzania się PCB z powodu zastosowanego regulatora liniowego (wiec temperatura faktycznie może byc o ten stopień czy 2 inna).

    Przeprowadziłem dodatkowe testy zasilania. Przy zasilaniu napięciem stałym 15V (czyli 13V na regulatorze ze względu na mostek prostowniczy) przy poborze prądu 100mA powinno sie wydzielać <1W mocy. Efekt jest o tyle dziwny, że w temperaturze otoczenia 20*C płytka osiąga nawet do 28*C. W sumie nie ma to wiekszego wpływu na działanie układu ale myslałem, ze efekt strat mocy w regulatorze będzie mniej zauważalny.

    Zastanawiam sie nad zaimplementowaniem korekcji wskazania ze względu na dryft napięcia odniesienia z temperaturą. Przy konwersji 200uV ze wzmocnieniem 128 V/V (25.6mV) i źródła referencyjnego 2.5V o 50pmm/*C błąd wynosi 0.5uV. z jednej strony nie jest to dużo, z drugiej jednak zawsze to jakis sposób na poprawienie dokładności. Offset samego wzmacniacza (wejscie zwarte drutem) wynosi od 2 do 4 uV w zalezności od wejścia

    Update:
    -skończony panel (wyświetlacze i diody wklejone na żywicę epoksydową)
    -rozpoczecie pisania właściwego programu z użyciem przerwań i timerów
    -wreszcie przyszły termopary z chin

    Kilka zdjęć:
    Kontroler/monitor temperatury do pieca gastronomicznego.Kontroler/monitor temperatury do pieca gastronomicznego. Kontroler/monitor temperatury do pieca gastronomicznego. Kontroler/monitor temperatury do pieca gastronomicznego. Kontroler/monitor temperatury do pieca gastronomicznego.

    Cool? Ranking DIY
    About Author
    poorchava
    Level 18  
    Offline 
    Has specialization in: projekty na zlecenie, bez zlecenia zresztą też
    poorchava wrote 392 posts with rating 21, helped 14 times. Live in city Wrocław. Been with us since 2009 year.
  • Eltrox Hurton