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

Sterownik do pieca C.O. z dostępem przez internet

michcz 19 Feb 2015 22:16 21453 24
Buderus
  • Sterownik do pieca C.O. z dostępem przez internet

    Witajcie!

    Sterowników do pieców C.O. przewinęła się przez Elektrodę cała masa. Chciałbym Wam przedstawić swój autorski, swobodnie programowalny sterownik z miniserwerem http i możliwością obsługi i odczytu parametrów przez przeglądarkę/smartfona z ciepłej kanapy.

    Co mnie skłoniło do budowy sterownika? Potrzeba i wrodzona oszczędność.

    W ponad 100-letnim poniemieckim domu, w którym mieszkam, funkcję jednostki grzewczej spełnia piec (docelowo na miał), wyposażony w wentylator i pompę obiegową, który zaopatruje dom w ciepłą wodę użytkową trafiającą do kaloryferów i bojlera.
    Piec od nowości zaopatrzony był w elektroniczny sterownik, który przez wiele lat spełniał swoją funkcję.
    Obecnie rosnące ceny surowców powodują, że człowiek szuka oszczędności. Wiadomo, można podkładać mniej do pieca, chodzić po domu w swetrze i kąpać się w zimnej wodzie.
    Można również szukać oszczędności w sposobie generacji energii, jaką niewątpliwie jest ciepło i w odpowiednim, świadomym i inteligentnym sposobie sterowania procesem spalania węgla.


    Na czym mi zależało?

    1. Na możliwości sterowania temperaturą, przy której załączona zostanie pompa obiegowa. W mojej instalacji c.o. woda krąży po systemie w sposób grawitacyjny i nie wymaga dodatkowego "dopalacza". Odpowiednie jednak sterowanie pracą pompy pozwala zarówno zapobiec zagotowaniu się wody, jak i nadmiernemu wychłodzeniu kotła.
    2. Na możliwości sterowania pracą sterownika w zależności od godziny. W nocy nie ma potrzeby utrzymywania wysokiej temperatury. Nad ranem, w godzinach migracji do szkół i pracy, komfortową sytuacją jest to, że sterownik się sam załącza, podnosi temperaturę, następne w godzinach, gdy nikogo nie ma w domu, ponownie przechodzi w stan czuwania, ponieważ nieekonomiczne staje się ogrzewanie całego czy nawet części domu, gdy nikogo w nim nie ma.[/td]
    3. Na łatwej możliwości konfigurowania różnych trybów pracy, bez konieczności przeprogramowywania sterownika (w moim przypadku wystarczają dwa tryby: normalny i weekendowy, gdyż podczas weekendu zmieniają się preferencje grzewcze).
    4. Na obsłudze przez internet. Aby nie musieć co 30-60min schodzić do piwnicy w celu kontroli temperatury i aby będąc poza domem, móc zdalnie kontrolować temperaturę i móc przedsięwziąć jakieś działania, np. zmienić tryb pracy, załączyć pompę, wentylator.
    5. Na możliwości regulacji temperatury granicznej/alarmowej.


    I mój sterownik oprócz zadań podstawowych, które powinien spełniać każdy sterownik, spełnia również te powyższe, na których mi zależało.

    Zapewne są na rynku dostępne urządzenia robiące to samo, może nawet i lepiej, ale ich koszt na pewno przekracza 300-400zł.

    Całkowity koszt mojego sterownika, bez tworzenia dokładnych kosztorysów, wliczając nawet elementy, które posiadałem, z grubsza to może troszkę ponad 150zł + trochę czasu, chęci i umiejętności.



    Koniec gadaniny. Czas przejść do technicznych konkretów.

    Jednostka centralna sterownika to mikrokontroler Atmega1284. Dlaczego akurat taki, a nie Atmega32? Program, który napisałem (w C) jest nieco rozbudowany, głównie przez "Menu konfiguracyjne", które zżarło znaczne ilości miejsca, co spowodowało, że przestałem się mieścić na Atmedze32.

    Do tego RTC PCF8583p, podtrzymanie bateryjne zegara w przypadku zaniku zasilania.

    Czujnik temperatury – oczywiście DS18b20.

    Wyświetlacz 4x20 zgodny z HD44780, co również zapewne nie jest zaskoczeniem.

    Załączanie dmuchawy i pompy - na przekaźnikach.

    Sterowanie i konfiguracja - za pomocą czterech przycisków umieszczonych bezpośrednio pod wyświetlaczem.

    Druga część sterownika to moduł Ethernet ENC28j60 połączony z Atmegą32, na której "postawiony jest" miniserwerek obsługujący sprawę z obsługą przez internet związaną.
    Drugi mikrokontroler tylko do obsługi internetu zastosowałem dlatego, że moduł ENC28j60 nie zawsze pracuje stabilnie i czasami lubi powodować zawieszenie procesora. Niedopuszczalnym zatem byłoby takie niechciane zawieszenie procesora obsługującego piec, zwłaszcza gdy nikogo nie ma w domu.
    Spowodowane było to również tym, że nie chciałem obciążać głównego mikroprocesora. To jego stabilność pracy jest kluczowa.

    Interfejs serwera jest bardzo prosty (aby nie obciążać Atmegi). Ważna jest użyteczność. :)

    Sterownik do pieca C.O. z dostępem przez internet

    Napisałem również do tego prostą aplikację na smartfona.

    Sterownik do pieca C.O. z dostępem przez internet Sterownik do pieca C.O. z dostępem przez internet


    Z racji tego, że ENC28j60 jest zasilany napięciem 3,3V, zdecydowałem się takim samym napięciem zasilić Atmegę 32, dzięki czemu uniknąłem buforów na liniach ISP.

    Oba mikrokontrolery (1284 i 32) komunikują się ze sobą za pomocą UARTa. Tu oczywiście musiałem zastosować bufor. W moim przypadku padło na 74HC125.

    Soft własnoręcznie pisany w C. Oczywiście korzystałem z gotowych, ogólnodostępnych bibliotek do obsługi wyświetlacza, I2C oraz stosu http.

    I tak to sobie jakoś działa. Pierwsze testy mamy już za sobą. Drobne niedociągnięcia zostały wyeliminowane. Teraz tylko czekam na przeciągnięcie skrętki komputerowej w okolice pieca i będziemy zaczynać pracę na tym sterowniku. Wtedy to postaram się nagrać jakiś filmik prezentujący działanie sterownika "na żywo".

    Dobra, starczy tego monologu. W załączeniu wrzucam kilka zdjęć. Zapraszam do dzielenia się opiniami i zadawania pytań. Cześć!

    Sterownik do pieca C.O. z dostępem przez internet Sterownik do pieca C.O. z dostępem przez internet Sterownik do pieca C.O. z dostępem przez internet Sterownik do pieca C.O. z dostępem przez internet Sterownik do pieca C.O. z dostępem przez internet Sterownik do pieca C.O. z dostępem przez internet Sterownik do pieca C.O. z dostępem przez internet Sterownik do pieca C.O. z dostępem przez internet

    Cool? Ranking DIY
    About Author
    michcz
    Level 11  
    Offline 
    michcz wrote 40 posts with rating 35, helped 1 times. Live in city Nowa Ruda. Been with us since 2007 year.
  • Buderus
  • #2
    maystero
    Level 24  
    Bardzo fajny projekt. Czy udostępnisz schemat i źródło?

    Swoją drogą, pomysł załączania dmuchawy z przekaźnika nie jest dobry. Dmuchawa powinna mieć możliwość sterowania prędkością, aby móc kontrolować dopływ powietrza do kotła.
  • #3
    michcz
    Level 11  
    Quote:
    Czy udostępnisz schemat i źródło?


    Na razie nie planuję. Ale służę merytoryczną pomocą i praktycznymi poradami osobom, które chciałyby coś podobnego zrobić.

    Quote:
    Dmuchawa powinna mieć możliwość sterowania prędkością,


    Co do tej dmuchawy i regulacji prędkości to i tak i nie. W moim przypadku nie ma takiej potrzeby, żeby regulować prędkość obrotów silnika. Dmuchawa załącza się generalnie w dwóch przypadkach: gdy temperatura < temp. nastawy. I co pewien czas (np. 15 min) na 5s, gdy temperatura>=temp. nastawy.

    Przydatną rzeczą byłaby natomiast możliwość zmiany biegów pompy obiegowej, która ma taką możliwość. Można by wtedy lepiej stabilizować temperaturę.

    Jak widać takie rzeczy wychodzą zwykle już po zakończeniu prodżektu. Jak będę konstruować kolejny sterownik, to to uwzględnię, pewnie regulację wiatraka też dodam. :)
  • #4
    maystero
    Level 24  
    michcz wrote:
    Przydatną rzeczą byłaby natomiast możliwość zmiany biegów pompy obiegowej, która ma taką możliwość. Można by wtedy lepiej stabilizować temperaturę.


    To, tez nie jest dobry pomysł. W takich instalacjach zakłada się zawór trójdrożny z siłownikiem i steruje sie przepływem cieczy przez układ (więcej lub mniej ciepłej wody w układ) Pompa ma pompować cały czas z ta sama "siłą".

    Chętnie wykonał bym kopie, twojego urządzenia... jeśli udostępnisz dokumentacje:)
  • Buderus
  • #5
    michcz
    Level 11  
    Dobrze wiedzieć! Dzięki wielkie!
  • #6
    przemo2147
    Level 12  
    Witam

    Bardzo ładny sterownik.
    Słaby ze mnie konstruktor więc nie powinienem się czepiać ale mam kilka pytań odnośnie bezpieczeństwa:
    Co się stanie gdy temperatura w kotle wzrośnie w okolicach wrzenia np uszkodzi się czujnik temperatury, skleją się styki przekaźnika dmuchawy,...
    Niby czarnowictwo ale widuję oryginalne sterowniki, i nowe kotły które w takich sytuacjach wypalają cały zasyp kotła i większość uszczelnień w kotłowni.
    Polecam przemyślenie montażu termostatu bezpieczeństwa STB w obwodzie dmuchawy.
    Płynna regulacja obrotów dmuchawy napewno wydłużyła by stałopalność i zmniejszyła zużycie paliwa i częstotliwość odwiedzin kotła
  • #7
    michcz
    Level 11  
    Quote:
    Co się stanie gdy temperatura w kotle wzrośnie w okolicach wrzenia


    Wtedy sterownik przechodzi w tryb alarmu. Wyłączona zostaje dmuchawa, załączona pompa, uruchamia się sygnał dźwiękowy. Taki stan trwa aż do czyjejś interwencji, gdy ktoś naciśnie dowolny przycisk na sterowniku.

    Gdy czujnik się w jakiś sposób uszkodzi, sterownik po prostu nie podejmie pracy.

    No a na zlepienie styków nie ma rady. Taka uroda przekaźników. Na szczęście dmuchawa jest małej mocy, zatem może się uda uniknąć tego zjawiska. Trzeba przeprowadzać regularne przeglądy.

    Tak na prawdę nawet najlepszy sterownik nie zwalnia Nas z myślenia i z rozsądnego, przemyślanego podkładania do pieca.

    Quote:
    Polecam przemyślenie montażu termostatu bezpieczeństwa STB w obwodzie dmuchawy.


    Zawsze to dodatkowe zabezpieczenie. Trzeba będzie przemyśleć.


    Dziękuję za wszystkie konstruktywne uwagi!
  • #8
    sstasinek
    Level 13  
    Zdecydowanie brakuje triaka, przekaźnik musi być jako zabezpieczenie przed uszkodzeniem triaka, za to triak daje możliwość regulacji która zapewnia trwałość przekaźnika. Norma nawet dla prymitywnych regulatorów!
    Nie musisz kontrolować płynnie dmuchawy i robić falownika bo regulacja napiecia przecież nic nie da, ale wystarczy zrobić cykliczne pwm np. w cyklu 20sekund proporcjonalnie do różnicy temperatur zadana-aktualna.
    Termostat jak proponuje przemo to również dobra opcja na wypadek uszkodzenia czujnika lub co gorsza hakowania ci sterownika - bo whatchdog albo drugi czujnik nie zadziała na sieciowego intruza :D
    Poczytaj raz jeszcze prawa Murphyego...

    Poza tym super, również planuje zrobić sterownik w Twój deseń zamiast dorabiania wygibaśnych dedykowanych kontrolerów z lcd umieszczanych w pokoju - zwyczajna kontrola w sieci na dowolnym smarcie. Ale właśnie z jej powodu dobre zabezpieczenie przed hakowaniem musi być. Przyda sie również kontrola działania pompy tak by niezależnie od sterowania przy określonej temperaturze awaryjnie wymusić obieg wody.

    http://www.dobreprogramy.pl/Zagrozenia-nie-tylko-wirtualne-cyberatak-zniszczyl-niemiecka-hute-stali,News,59927.html
  • #9
    michcz
    Level 11  
    Kolejna konstrukcja będzie na triakach! :)

    Quote:
    Norma nawet dla prymitywnych regulatorów!


    Musicie wybaczyć - nie zagłębiałem się. :) Teraz będę wiedział. :)


    Quote:
    planuje zrobić sterownik w Twój deseń zamiast dorabiania wygibaśnych dedykowanych kontrolerów z lcd umieszczanych w pokoju - zwyczajna kontrola w sieci na dowolnym smarcie. Ale właśnie z jej powodu dobre zabezpieczenie przed hakowaniem musi być.


    No niestety trudno o jakiekolwiek dobre zabezpieczenia stawiając serwerek na atmedze + ENC.

    Ale jeśli kolega @sstasinek o czymś takim myśli, to polecam wykorzystać Raspberry PI. Sam teraz żałuję, że nie oparłem całego projektu na tym. Ale cóż. Będzie pretekst do zrobienia kolejnego sterownika. :)
  • #10
    maliniak80
    Level 17  
    Gratuluje fajnego i funkcjonalnego urzadzenia, mam pytanie co do apki na smarta, w jaki sposob pobiera dane czy bezposrednio ze strony czy kozystasz z ssh, moglbys troche opisac jak to wyglada, w czym robiles apke, jakies linki itd.o ile to nie tajemnica. Moze dalo by sie cos takiego zrobic w formie widgeta ktore pobieral by dane okresowo co jakis czas i wyswietlal podobnie jak widget pogody info o temperaturze.
  • #11
    michcz
    Level 11  
    Aplikacja na smartfona nie jest żadną tajemnicą. :)

    Zrobiłem ją w tym oto zacnym i prostym kreatorze:

    http://ai2.appinventor.mit.edu/

    Zbudowana jest tak, że zagnieżdżona jest w niej (w tej aplikacji) przeglądarka internetowa, która łączy mi się z odpowiednią, dedykowaną do wyświetlenia w tej apce podstroną na serwerku.

    A całą akcję pobierania informacji zrealizowałem następująco: Gdy naciskam przycisk np. "Pobierz temperaturę" z serwera zostaje wysłany po RS232 do głównego procesora odpowiedni ciąg znaków/kod np. 111T. Główna atmega wie, że jak coś takiego otrzyma, ma wysłać temperaturę Więc wysyła powiedzmy: 551T. I na serwerze zostaje to dekodowane do 55.1 st.C. Z innymi parametrami- podobnie.

    Co do widgetu, oczywiście, pewnie dałoby się zrobić. Nie wiem czy ten appinventor ma taką możliwość, bo jeszcze nie miałem czasu się nim pobawić, a na Androida w zasadzie jeszcze nic poważnego nie kodowałem.
  • #13
    mklos1
    Level 25  
    michcz wrote:
    No a na zlepienie styków nie ma rady. Taka uroda przekaźników. Na szczęście dmuchawa jest małej mocy, zatem może się uda uniknąć tego zjawiska. Trzeba przeprowadzać regularne przeglądy.


    Nie do końca. Polecam hasło "relay snubber" (w polskim tłumaczeniu "gasik"). Taki układ znacznie wydłuża żywotność przekaźników. Iskrzenie styków występuje nawet przy małych obciążeniach, tym bardziej jeżeli obciążenie ma charakter indukcyjny.
  • #14
    michcz
    Level 11  
    Dzięki za porady. Nie jestem specjalistą od zabezpieczeń, a tym bardziej od instalacji centralnego ogrzewania, stąd może pewne rzeczy mogą u fachowców z branży powodować palpitacje. :) Studiuję Elektrotechnikę. 3. rok PWr. Dopiero zdobywam skilla. :)

    Sterownik ma budowę modułową, więc w każdej chwili mogę zaprojektować nową płytkę do przekaźników i wstawić w miejsce istniejącej.
  • #15
    Wieslaw-W5
    Level 11  
    Witam - sterowanie nawiewu w sposób sekwencyjny jest dość niebezpieczny gdyż przy przygaszonym piecu np miałowym bez podajnika zbyt duża dawka powietrza może spowodować wybuch. Jak pamiętam w moim starym piecu ze sterowaniem termostatem było to częste . Aktualnie w nowym piecu korzystam z eCoal i jak zauważyłem przy uruchamianiu dmuchawy po dłuższej przerwie podaje paliwo i stopniowo zwiększa moc - jeżeli temperatura spalin po określonym czasie nie wzrośnie - nastąpi awaryjne wygaszenie pieca. Przy tego typu projektach najważniejsze jest bezpieczeństwo bo piec c.o. ma ogromną siłę w razie awarii. Na pozór piec węglowy jest bardziej niebezpieczny niż gazowy - ciężej nim sterować i kontrolować .
  • #16
    Anonymous
    Anonymous  
  • #17
    sstasinek
    Level 13  
    michcz wrote:

    Ale jeśli kolega @sstasinek o czymś takim myśli, to polecam wykorzystać Raspberry PI. Sam teraz żałuję, że nie oparłem całego projektu na tym. Ale cóż. Będzie pretekst do zrobienia kolejnego sterownika. :)


    Nie planuje, poza tym - używać kilofa do wbijania gwoździa?
    Rozbudowanie funkcji sieciowo-serwerowej w sterowniku pieca nie jest konieczne, ani TCP/IP ani HTTP ani nie wymaga przecież od razu ethernetowego medium. Można zrobić system dwuetapowo i wykorzystać jedynie HTTP do przekazania uproszczonej informacji a rozbudować czymś w rodzaju tunelu do sieci który przerobi prezentacje na lepsze, który doda informacje pogodowe na ich podstawie wpłynie na parametry sterownika pieca. Nie potrzeba pakować we wszystkie dziury Rabsberry tylko dlatego ze ma GPIO, linuxa i gniazdo LAN na pokładzie. Do sterownika rolet, do sterowania oświetleniem do licznika zużycia energii jest mase elementów których w życiu bym nie podpinał bezposrednio do sieci z drugiej strony wolałbym poczatkowo dać takie możliwości. Jesteś na dobrej drodze ;) Zwyczajny tani router z OpenWRT (nawet AP Planete za 10zl) jest lepszy i 10x tańszy niż Rabsberry. Jest linux z telnetem jest https, ma opcje serwerowania z przetwarzaniem prezentacji, opcje przekierowania portów bezpośrednio co tylko chcesz skoro transmisja po LAN to po co GPIO? Wykorzystaj to że masz ethernet w sterowniku zamiast robić sterownik nty raz...

    AVR nie jest na tyle drogi żeby żałować pakowania do piwnicy i zastepowania Rabsberry na miejscu i można skomunikować z Twoim sterownikiem przy pomocy Ethernetu bez dopinania do publicznej domowej sieci.. drugim ENJ zapodanym na GPIO Rabsberry ;) Zyskujesz niezawodność i dodatkowe opcje(np. https) i można zrobić Rabsberry Router do kolejnych sterowników a sterownik pieca zostawić w spokoju! Obecność ethernetu daje Ci modularność bardziej niż system z dedykowanymi magistralami i dedykowanym protokołem. Jesteś na dobrej drodze niezależnie co wybierzesz. Twój projekt jest dobry, poza brakiem triaka który można by dorobić bez psucia ;)
    Nie rozbieraj go czasem? Nie rób kolejnego moim zdaniem szkoda czasu. Uzupełnienie o braki też jest wyzwaniem myślowym a myśli o kolejnej wersji skupić na budowaniu systemu z innych sterowników.

    Jak widać opcja ethernetowa może być tańsza w realizacji niż montowanie na ścianach dedykowanych paneli z LCD, może uprościć okablowanie i być bardziej modularna ot i cały sens. Można ustawić tani telefon z WiFi jako panelik na ścianie i wuala.... W przypadku prac nad przetwornikiem można sterownik dopinać rezerwowo i wykorzystać podstawowe GUI a po aktualizacji ulepszyć. Modularność jak marzenie ale nie uważam ethernetu za konieczność jeśli elementem systemu ma być coś w stylu Rabsberry z licznymi GPIO. Podobnie nie uważam za konieczne pakowanie Rabsberry do kotłowni i w każdej dziurze. Za to za koniecznie w sterowniku uważam - RTC i logowanie informacji na karcie SD(podstrony z datami w nazwie), niezawodność i samodzielność bez wodotrysków ale transmisje HTTP. Takie same mam wymogi co do centrali pogodowej, każdego jednego czujniczka temperatury gdziekolwiek by nie był musi mieć sd i rtc. Niekoniecznie w tcp/ip to juz rola mostka który może przyporzadkowywać IP pod dedykowane IO. Http puścić nawet morsem...kto zabroni? Kwestia wyboru i gustu która daje klarowne i łatwe w zdekodowaniu formaty transmisji, format który wymaga raptem kilku kB eepromu

    Natomiast co do detali i gustu - za lepsze medium uważam coś co jest przeważnie puszczane w kominach wentylacyjnych, przeważnie trafia do salonu i ma możliwość zasilania elementów swej sieci. Kabel antenowy. Jestem na na etapie koncepcji i szukania taniej realizacji z pogranicza elektroniki analogowej-radiowej(po kablu) swoistego routerka, bo nie znalazlem gotowca. Zależy by to zrobić w miare softwarowo z filtrami DTMF czyli możliwie tanio. Niestety poza LM576 (które można by puścić protokolem 1wire) nie znajduje prostych scalaków. Może nie ma sensu ale taki mam koncept wyjściowy zamiast ethernetowego. Kabel jest trwalszy i daje zasilanie. HTTP jest w miare proste bo można przechowywać info w dowolnie dużym eepromie czy szeregowym sram(dip8, spi, 32kB, 3.5zł) i przefiltrowywać na żywo to wystarczy. TCP/IP nie do końca bo ramka jest dość obszerna a stosowanie mostka marki Microchip to jak proteza. Ekonomia nie ma znaczenia hobbystycznie, ma znaczenie zarobkowo, może w tym celu tkwi moja "nienawiść" do marnotrawienia zasobów?
    Cortex M0-3 w stm32 może ale żeby od razu A7? Po co?
  • #18
    gorko
    Level 1  
    Witajcie
    Sterownik bardzo fajny!
    Ja też zabieram się do podobnego projektu, ale mam zamiar zastosować jeszcze czujnik temperatury spalin, który w połączeniu z regulacją siły nadmuchu daje nam stabilność spalania, nie trzeba się martwić że z powodu bezwładności pieca, palenisko nam się zbyt "rozbucha" i duża część energii pójdzie w dym... lub spowoduje niekontrolowanie spalanie np. w wietrzny dzień.

    Sam mieszkam w starym domu, i trochę już ze swoim piecem przeżyłem, wiem że jak go "nieodpowiednio przygotuje na noc", to różnica w temperaturze spalania i ilości spalonego węgla jest znacząca (~30%) pomimo że jest on wyposażony w fabryczny sterownik (bez takiego czujnika).

    Myślę że zastosowanie tego mechanizmu znacząco wpłynie na ekonomie i komfort użytkowania pieca :)
  • #19
    Milek79
    Level 15  
    michcz wrote:
    Jednostka centralna sterownika to mikrokontroler Atmega1284. Dlaczego akurat taki, a nie Atmega32? Program, który napisałem (w C) jest nieco rozbudowany, głównie przez "Menu konfiguracyjne", które zżarło znaczne ilości miejsca, co spowodowało, że przestałem się mieścić na Atmedze32.

    O ile dobrze przeczytałem, to ta ATmega ma 128KB flasha!? 128KB flasha do prostego sterownika!? Zwłaszcza, że obsługa sieci jest na osobnym uC...
    michcz wrote:
    Druga część sterownika to moduł Ethernet ENC28j60 połączony z Atmegą32, na której "postawiony jest" miniserwerek obsługujący sprawę z obsługą przez internet związaną.
    Drugi mikrokontroler tylko do obsługi internetu zastosowałem dlatego, że moduł ENC28j60 nie zawsze pracuje stabilnie i czasami lubi powodować zawieszenie procesora.

    Problemy z komunikacją z modułem w żaden sposób nie powinny wpływać na zawieszanie uC. A nawet, jeżeli by się coś zawiesiło, to od tego jest watchdog.
    michcz wrote:
    Oba mikrokontrolery (1284 i 32) komunikują się ze sobą za pomocą UARTa. Tu oczywiście musiałem zastosować bufor. W moim przypadku padło na 74HC125.
    Nie mogłeś zasilić wszystkich z 3.3V?
    michcz wrote:
    Do tego RTC PCF8583p, podtrzymanie bateryjne zegara w przypadku zaniku zasilania.
    To też można zrobić na uC.

    Prawdopodobnie wszystko można było zrobić na jednej M32. (a na takiej kobyle jak M1284 to już bez wątpliwości)
  • #20
    michcz
    Level 11  
    Quote:
    A dlaczego nie zegar w atmega?

    No bo w PCF. Taki miałem pod ręką, taki dałem na stykówkę i taki na płytkę. Gdybym użył RTC w Atmedze, to byście się pytali dlaczego nie RTC w osobnym układzie :)

    Quote:
    To raczej błąd biblioteki lub programu. Ja takich problemów nie miałem a zrobiłem kilka projektów na ENC, w tym jeden pracujący 24/h w ilości blisko 500szt.


    Rzeczywiście. Na 99% mam problem z zakłóceniami elektromagnetycznymi, które indukują mi niedobre rzeczy, prowadzące do zwiechy ENC. Ale tylko ENC. Reszta pracuje poprawnie.


    Quote:
    Poczytaj notę ENC! Po co bufory? ENC akceptuje napięcia na liniach SPI (a nie ISP!) 5V choć sam jest zasilany z 3V3.

    Czytałem. Nie chciało to coś u mnie funkcjonować. Brak komunikacji zupełny. Mam podejrzenia, że trafiłem chyba na jakiś felerny egzemplarz ENC.


    Quote:
    Nie mogłeś zasilić wszystkich z 3.3V?

    Nie mogłem. Wtedy pojawia się problem z wyświetlaczem, który jest na 5,0V.

    Quote:
    O ile dobrze przeczytałem, to ta ATmega ma 128KB flasha!? 128KB flasha do prostego sterownika!? Zwłaszcza, że obsługa sieci jest na osobnym uC...


    Nigdzie nie napisałem że te 128kB jest wykorzystane maksymalnie. ATM1284 kupiłem nową, na Alledrogo za 15 zł. Czyli tyle co nowa 32 a nawet mniej. Teraz po optymalizacji kodu, pewnie bym się zmieścił na 32.


    Quote:
    Prawdopodobnie wszystko można było zrobić na jednej M32. (a na takiej kobyle jak M1284 to już bez wątpliwości)


    Prawdopodobnie można to zrobić na kwadrylion różnych sposobów.
  • #21
    zielon_y
    Level 11  
    Świetny projekt ale jeżeli jest internet to wydaje mi się, że nie ma potrzeby stosowania zewnętrznego zegara czasu rzeczywistego.

    Robiąc cokolwiek na netduino korzystam z zegara, który jest w mikrokontrolerze i pobieram czas z internetu. Jeśli zegara w procesorze jest niedokładny to tylko kwestia częstotliwości aktualizowania czasu z internetu.

    tu przykładowy algorytm pobierania czasu (w .net C#)
    Link

    ale w C napewno też można to zrobić.
  • #22
    trance123
    Level 21  
    Jak wygląda u Ciebie sprawa wygaszania?Skąd sterownik wie aby nie dmuchać dmuchawą na full i wywiewać resztek ciepła z pieca ? Kupiłem ostatnio Techa 28 zPID i akurat czujnik temp spalin to dobre rozwiązanie, ale szczerze za tyle kasy 400 PLN z wysyłką spodziewałem jakiś możliwości, które ty masz z tym trybem nocnym itp. Pomyśl czy nie rozwijać projektu komercyjnie naprawdę. Tak na noc muszę iść i obniżyć zadaną temp masakra. Kupiłem termostat na grzejnik z lidla za 60 pln elektroniczny i mogę nastawić sobie temperatura godzina po godzinie każdy dzień w tyg nawet jak by mi się chciało a tutaj nic. Są wyświetlacze ma 3v3 jedyne co trzeba to dolutować 1 rezystor i 2 zwory na wyświetlaczu jak by miało Ci się przydać. Super projekt i chętnie bym zamówił u Ciebie taki sterownik gdym potrzebował następny sterownik gdyby był dalej rozwijany.
  • #23
    michcz
    Level 11  
    Quote:
    Jak wygląda u Ciebie sprawa wygaszania?Skąd sterownik wie aby nie dmuchać dmuchawą na full i wywiewać resztek ciepła z pieca ?


    Sprawa wygaszania wygląda tak, że mogę ustawić sobie temperaturę minimalną, poniżej której sterownik przestanie dmuchać i będzie czekać aż ktoś nie podejdzie i nie rozpali lub nie dołoży do pieca. Jednak z tym się wiąże ten problem, że jak "usypiam" piec na noc, to temperatura w kotle potrafi spaść poniżej tej temperatury minimalnej (pomimo tego, że zasyp jest i żar również). Wtedy to sterownik budząc się automatycznie o danej godzinie nie podejmował żadnej akcji, bo temperatura była poniżej minimalnej.
    W ten weekend rozwiązałem to tak, że gdy podczas nocnego czuwania temp. spadnie poniżej minimalnej to po przebudzeniu ma mimo wszystko dmuchać. Jeśli temperatura wzrośnie - to ok - przejdzie do normalnego trybu, natomiast jeśli spadnie o 2 stopnie - ponownie się wyłączy i przestanie dmuchać.

    Quote:
    Są wyświetlacze ma 3v3 jedyne co trzeba to dolutować 1 rezystor i 2 zwory na wyświetlaczu jak by miało Ci się przydać.


    O tych wyświetlaczach na 3,3V wiem, ale akurat taki 4x20 na 5,0V miałem, bo kupiłem kilka lat temu i leżał nieużywany.

    Quote:
    Super projekt i chętnie bym zamówił u Ciebie taki sterownik gdym potrzebował następny sterownik gdyby był dalej rozwijany.


    Na razie nie planuję komercjalizacji, bo trochę biorę odpowiedzialność za to, że przez mały błąd w programie może komuś wysadzić piec w powietrze. :)
    Lada dzień muszę stanąć przed wyborem tematu pracy inżynierskiej i tak coś myślę, czy by nie pójść w tę mańkę. Byłby pretekst do solidnego rozwoju projektu :)
  • #24
    boguslaw robak
    Level 21  
    Witam nie baw się z piecem jak nie masz pojęcia od tego są ludzie i homokogacja pozdrawiam.
  • #25
    nietomek
    Level 13  
    Witam,

    Na wstępie gratulacje - bardzo fajny projekt.
    W kwestii zawieszania się modułu enc28j60 podaj konfigurację w jakiej pracuje, a w szczególności prędkość SPI jakiej używasz bo zgodnie z dokumentacją przy częstotliwości sygnału SCK poniżej 8MHz zalecana jest synchronizacja zegara modułu i procesora.
    Drugie źródło zawieszania się tego modułu może leżeć w niedostatecznym filtrowaniu zasilania - kondensatory odsprzęgające (np. 100nF ceramiczny) powinny być montowane do każdego pinu zasilania modułu enc.

    Pozdrawiam T.