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

Kolejne wykorzystanie Echostara DSB-717

gimbus 17 Dec 2021 12:45 7617 3
  • Wpadł mi w ręce uszkodzony tuner TV-Sat Echostar DSB-717 i postanowiłem jakoś go wykorzystać. A właściwie nie cały, tylko płytkę z wyświetlaczami i mikrokontrolerem ATTiny2313.

    Układ mierzy temperaturę w 6 punktach z wykorzystaniem czujników Dallas DS18B20 przy rozdzielaczu co na podłogówkę i grzejniki.
    Mierzę temperatury:
    - zasilania i powrotu z podłogówki
    - zasilania i powrotu z grzejników
    - zewnętrzną i wewnętrzną w pomieszczeniu


    Dodatkowo spełnia role prostej automatyki:
    - załącza pompę obiegową podłogówki, kiedy różnica temperatur zasilania i powrotu jest większa od zadanego progu załączenia oraz wyłącza ją, gdy różnica spadnie poniżej
    zadanego progu wyłączenia (zawsze wkurzało mnie, że ta pompa chodzi 24h przez 7 dni w tygodniu pompując bezdurno wodę, która niczego nie grzeje)
    - załącza na żądanie pompę obiegową cw na wybrany czas - ta chodząca 24h pompa też mnie wkurzała, bo cw krążące w obiegu stygnie w pomieszczeniach rzadko używanych
    a więc słabiej grzanych i kocioł włącza się kilkanaście razy na dobę, aby ją podgrzać. Kiedyś dorobiłem wyłącznik, ale jak to zwykle bywa - o włączeniu to się pamięta, o wyłączeniu już jakby rzadziej.

    Schemat płytki wyświetlacza znalazłem na stronie www.grylewicz.pl - już ktoś kiedyś wpadł na podobny pomysł.
    Podobny temat to: https://www.elektroda.pl/rtvforum/topic1761227.html

    Z tej pierwszej strony pobrałem kod programu - wykorzystałem go jako punkt startowy i znacznie przerobiłem.
    Opis dotyczy co prawda płytki z tunera DSB-616, ale w 717 jest ona praktycznie identyczna, tylko przyciski, diody LED i odbiornik IR są na tej samej płytce, a nie oddzielnej.
    Przeróbka płytki - opisana na w/w stronie. Dodatkowo wylutowałem odbiornik IR i rezystory polaryzujące,
    zostawiłem tylko rezystor 4k7 podciągający do VCC - wykorzystałem go do podciągnięcia linii 1wire do plusa.
    Wylutowałem też kondensatory gaszące przyciski - w założeniu miały stanowić element filtrujący stan przycisku,
    ale w przyjętym sposobie sterowanie we/wy powodowały tylko problemy.
    Wlutowałem drugą diodę LED (w oryginale jest 1 dwukolorowa, dioda SIGNAL nie została wlutowana z oszczędności).
    Diody LED mają wspólne anody na VCC, katody są wyprowadzone na dłuższe złącze. Na to samo złącze wyprowadzone
    są przyciski - wspólna masa i oddzielne piny dla każdego. Schemat podłączenia przycisków i diod do pinów we/wy
    mikrokontrolera jest tak prosty, że nie warto go rysować:
    - na anodę diody podane VCC, katoda przez rezystor 3k3 podana na gorący koniec przycisku i pin we/wy
    mikrokontrolera, zimny koniec przycisku na GND.

    Taki sposób podłączenia jest trochę niebezpieczny - zabronione jest ustawienie pinu jako wyjścia w stanie 1,
    bo wtedy naciśnięcie przycisku zwiera plus do masy przez wyjście mikrokontrolera.
    Sterowanie diodą trzeba zrealizować inaczej:
    - na samym początku ustawić kierunek pinu jako wyjście
    - ustawić pin wyjściowy w stan 0 i zapomnieć o jakichkolwiek zmianach stanu
    - przestawić kierunek pinu w stan high-z czyli jako wejście.

    W tym stanie dioda jest zgaszona, można czytać stan przycisku. Przy zwolnionym wejście jest podciągnięte do VCC
    przez rezystor 3k3 i diodę led, naciśnięcie przycisku podaje 0 na pin mikrokontrolera i dodatkowo zapala diodę
    - to efekt uboczny.
    Aby zapalic diodę, trzeba ustawić kierunek pinu ponownie jako wyjście - ponieważ wyjście jest w stanie 0,
    dioda zapali się. W tym stanie naciśnięcie przycisku niczego nie zmienia i niczym nie grozi (zwieramy mase do masy).

    Funkcje:
    - pomiar i wyświetlanie temperatury z kontrolą crc
    - cykliczne lub ręczne przełączanie czujnika
    - wygaszanie ekranu po predefiniowanym czasie z możliwością wyłączenia
    - ustawianie czasu timera i załączanie pompy cyrkulacji cw z możliwością przerwania odliczania w dowolnym momencie
    - ustawianie progów zał i wył rożnicy temperatur do załączania pompy obiegowej podłogówki

    Załączanie cyrkulacji powinno być uproszczone do minimum - po naciśnięciu przycisku ON timer ustawia się na
    predefiniowany czas 20minut i przez kilkanaście sekund czeka na zmianę tego czasu. Kolejne naciśnięcia dodają
    10 minut do czasu timera, po przekroczeniu 90 minut timer ustawia się na 0 itd. Brak naciśięcia klawisza przez
    kilkanaście sekund uruchamia wyjście i odliczanie timera. Naciśniecie przycisku ON wyłacza wyjście i zeruje timer.

    Sterowane układy zasilane są z sieci energetycznej - do załączania wykorzystałem przekaźniki półprzewodnikowe. Całość w oryginalnej obudowie, zasilacz to typowy zasilacz impulsowy 5V.


    Szczegóły i co jeszcze - w załączonym kodzie programu - starałem się go obkomentować dość szczegółowo.
    Program kompilowany pod Eclipse z parametrem -Os (optymalizacja rozmiaru) zajmuje pełne 2048bajtów flasha,

    Niestety nie mogę zrobić fotek - telefon mi poległ :-(

    Dołączę jak kupię nowy lub naprawię ten.
    Pozdrawiam
    Kod programu w załączeniu

    echo717.7z Download (11.21 kB)

    EDIT:
    Załączam fotki, które w międzyczasie udało mi się zrobić:
    Kolejne wykorzystanie Echostara DSB-717 Kolejne wykorzystanie Echostara DSB-717 Kolejne wykorzystanie Echostara DSB-717

    Do podłączenia czujników użyłem gniazdek telefonicznych, wklejonych na epidian w obudowę. Przy pierwszym podejściu epidian wlał mi się do wnętrza gniazdkek i zablokował ruch sprężynowych styków, musiałem wkleić nowe.


    Kolejne wykorzystanie Echostara DSB-717 Kolejne wykorzystanie Echostara DSB-717
    Pierwsza fotka - ustawianie timera, druga - praca timera.

    Kolejne wykorzystanie Echostara DSB-717 Kolejne wykorzystanie Echostara DSB-717 Kolejne wykorzystanie Echostara DSB-717
    Na pierwszym wyświetlaczu pokazuję nr czujnika - biegający w kółko segment a, b, c, d, e, f.
    Na pierwszej fotce widać sygnalizację błędu crc wybranego czujnika, druga - normalne wskazanie termometru, trzecia - wskazanie temperatury > 100 stopni -
    wygaszona najstarsza cyfra, znak "=" na ostatnim wyświetlaczu oznacza przekroczenie 100 stopni, czyli sensor zmierzył 113 stopni.

    Jak to zwykle bywa, z "laboratorium" wszystko działało jak należy, po podłączeniu czujników na długich przewodach zaczęły pojawiać się błędy crc.
    Pomogło dodanie rezystora 15k równolegle z istniejącym 4k7 pomiędzy linię 1wire a VCC.
    Przy okazji wyszły błędy w programie - błąd crc na czujniku 0 lub 1 powodował niekontrolowane załączanie/wyłączanie wyjścia pompy cyrkulacji co.
    I drugi - ustawienie stałego wyświetlania temperatury z jednego czujnika blokowało automat załączania pompy.
    Program zmieniony, błędy poprawione, nowa wersja w załączniku.

    echo717_po...rawiony.7z Download (11.26 kB)

    Cool? Ranking DIY
    About Author
    gimbus
    Level 12  
    Offline 
    gimbus wrote 38 posts with rating 128, helped 2 times. Live in city Poznań. Been with us since 2006 year.
  • #2
    SylwekK
    Level 32  
    Nie wiedzieć czemu te moduły mimo dość dobrego udokumentowania i łatwego oprogramiwania nie cieszą się na elektrodzie zbyt dużą popularnością, a zdobyć je stosunkowo łatwo :) Ciekawe dlaczego...
  • #3
    Jarzabek666
    Level 37  
    SylwekK wrote:
    Ciekawe dlaczego...


    Cena czyni cuda... Oryginalny dallas kosztuje 30zł szt bo chyba nie mówisz o malowankach za 5zł z którymi są same problemy??

    No i drga sprawa 1wire licencja.
  • #4
    SylwekK
    Level 32  
    @Jarzabek666, że niby dlatego że są tanie ogólnodostępne z przestarzałych tunerów i jakaś licencja to elektronicy w swoich DIY nie mogą z nich korzystać? Jakie problemy??
    Wybacz, albo to wpływ świat albo nie wiem co, ale nie rozumiem twojej wypowiedzi :)