Rozdílový termostat RT2DS

vloženo:27.08.2010   aktualizováno:21.10.2015

 Regulátor solárního ohřevu, 2x termostat, hodiny, datum, záznam MIN/MAX teploty, ruční provoz.

Rozsah měřených teplot: -55 ... +125°C, rozlišení 0,1°C
Přesnost: ±0,5°C v pásmu –10 ... +85°C.
Výstupy: 3x relé, přepínací kontakty AC250V/8A.
Napájení: AC230V

Program:
pro PIC16F88 RT2DS_402.HEX (15,9 kB)
pro PIC16F1847 RT2DS-1847_406.HEX (16,4 kB)

Hlavička zdrojového kódu, programovací pojistky:
RT2DS_402.asm.txt (3 kB)
RT2DS-1847_405.asm.txt (3 kB)

Základní zobrazení.
Horní řádek, vlevo teplota kolektoru T1, vpravo teplota zásobníku T2.
Dolní řádek, čas, den v týdnu, datum.

Ovládací tlačítka.
(+) Plus: další zobrazení, plus při nastavování, přepíná výstup RT1 v ručním provozu.
(-) Mínus: předchozí zobrazení, mínus při nastavování, přepíná RT2 v Ru. provozu.
(N) Next: následující hodnota při nastavování, přepíná RT3 v Ru. provozu.
(S) Set: zahájení nastavování, konec nastavování a uložení hodnot.

Kontrolní LED,  signalizace sepnutého relé.
Re1        termostat T1 (výstup RT1, kolektor) 
Re2        termostat T2 (výstup RT2, zásobník)
Re3        rozdílový termostat (výstup RT3)
Rekord   nová MIN/MAX teplota, Test senzorů.

 

Ovládání.

 Při prohlížení slouží tlačítka (+/-) k přepínání zobrazení,
(+)dopředu, (-)dozadu.

 Chceme-li nastavit některou, právě zobrazovanou hodnotu, stiskneme, případně podržíme tlačítko (S).
 Jakmile začne hodnota blikat, můžeme jí změnit (+/-), dlouhý stisk urychlí přičítání/odečítání.
 Tlačítkem (N) přejdeme na další hodnotu (vpravo), nebo zpět na začátek.
 Nastavování kdykoliv ukončíme a zároveň hodnoty uložíme tlačítkem (S). Data se zálohují v EEPROM, aby se po vypnutí napájení neztratila.
 Podsvícení displeje automaticky vypne po 256 sekundách nečinnosti tlačítek, stisknutím jakéhokoliv tlačítka se opět zapne.
 Prohlížení hodnot je omezeno na 30s. od posledního stisknutí tlačítka, potom se automaticky přejde na základní zobrazení, teploty, čas, datum. To neplatí při nastavování (bliká hodnota) a v ručním provozu. V těchto případech také nezhasíná podsvícení displeje.

 

Regulátor solárního ohřevu.

 Teplota v kolektoru T1 se porovnává s teplotou v zásobníku T2.
Bude-li teplota v kolektoru větší než v zásobníku, regulátor zapne oběhové čerpadlo/ventil, (výstup RT3) relé Re3.
 Aby výstup nereagoval i na nepatrný rozdíl teplot, lze nastavit zapínací a vypínací diference, T.Dif.ZAP a T.Dif.VYP (0 ... 25,5).

Výstup RT3 zapne když bude T1 větší než T2+T.Dif.ZAP
Výstup RT3 vypne když bude T1 menší než T2+T.Dif.VYP


(S) start nastavování.
(+/-) změna hodnoty (krok 0,1).
(N) přepnout nastavování, ZAP/VYP.
(S) konec nastavování.

 Diference ZAP nesmí být menší než VYP, při porušení této podmínky se hodnoty automaticky upravují. Např. chceme-li zvětšit diferenci VYP nad ZAP, zvětší se obě hodnoty.

 

Termostat T1 a T2.

 Teploty T1 a T2 můžeme hlídat také samostatně, pomocí dvou nezávislých termostatů.
 Rozsah referenční teploty -55 ... 125°C, hystereze 0 ... 25,5.

Ref.Teplota 1 a Hystereze pro teplotu T1, (výstup RT1) relé Re1.

Ref.Teplota 2 a Hystereze pro teplotu T2, (výstup RT2) relé Re2.

(S) start nastavování.
(+/-) změna hodnoty (krok 0,1).
(N) přepnout nastavování, teplota/hystereze.
(S) konec nastavování.

 

Hodiny, datum.
 Čas a datum je odvozený od taktovací frekvence mikroprocesoru. Přesnost hodin tedy záleží na frekvenci krystalu. Kromě sekund se všechny hodnoty ukládají do EEPROM. Po zapnutí nebo výpadku napájení nemusíme znova všechno nastavovat.


(S) start nastavování, podržet zhruba 3s. dokud nezačnou blikat hodiny.
(+/-) nastavit hodiny.
(N) přechod na minuty.
(S) konec nastavování.


(+/-) nastavit minuty.
(N) přechod na sekundy.
(S) konec nastavování.


(+) nebo (-) podržet - vynulovat a zastavit sekundy. Rozběhnou se až po uvolnění tlačítka.
(N) přechod na datum.
(S) konec nastavování.


 Den v týdnu, datum a měsíc se nastavují stejným způsobem.
(+/-) změna hodnoty.
(N) přechod na další hodnotu (z měsíce zpět na hodiny).
(S) konec nastavování.

 

Záznam MIN/MAX teploty.



 Dosažená minimální nebo maximální teplota se ukládá společně s časem a datumem. Pokud došlo k novému záznamu, rozsvítí se LED Rekord a při prohlížení, u konkrétní teploty, bliká nápis MIN/MAX Tx. Kromě záznamu při rekordní teplotě, lze hodnoty přepsat také ručně - podržením tlačítka (S), asi na 3s, vložíme aktuální teplotu, čas a datum.

 

Ruční provoz.
 Pomocí tlačítek můžeme prostřednictvím výstupů RT1, RT2, RT3, ručně ovládat silová relé Re1, Re2, Re3.


 Při zapnutí ručního provozu zůstanou stavy relé "zmrazené". Přepínat se mohou při nastavování, kdy stavy výstupů blikají. Signalizační LED vždy ukazuje sepnuté relé, logický stav příslušného výstupu může ale přitom být 1 nebo 0, záleží jak jsou nastavené zkratovací propojky. 
(S) start nastavování, podržet asi 3s, dokud nezačnou stavy blikat.
(+) přepne RT1.
(-) přepne RT2.
(N) přepne RT3.
(S) konec přepínání. Stavy výstupů přestanou blikat, regulace ale začne až po opuštění tohoto režimu, přepnutím na jiný displej.

 

Zkratovací propojky.
 Relé Re1, Re2, Re3 reagují na výstupy regulace RT1, RT2, RT3.

 Pomocí zkratovacích propojek můžeme nastavit sepnutí relé na Log.1 nebo na Log.0. V obou případech svítí kontrolní LED při sepnutém relé.
 Spínací úroveň Log.1 využijem pro ohřev, naopak Log.0 pro chlazení.


 Oba JUMPERy vlevo = Log.1, vpravo = Log.0
Spíncí úrovně se nebudou měnit často, pravděpodobně jenom jednou, před uvedením do provozu, takže místo zkratovacích propojek stačí naletovat drátky, nebo kapkou cínu propojit plošný spoj.

 

Vyhledávání identifikačních čísel senzorů​ (SEARCH ROM).
 Po každém zapnutí napájení (resetu) proběhne na jednovodičové sběrnici (DALLAS 1-Wire) identifikace senzorů DS18B20.


 Podprogram HLEDAT načte a uloží prvních 8 bitů sériového čísla. Může se stát, že koupíte 2 senzory a oba budou mít tento první bajt stejný, v takovém případě můžete použít jenom jeden z nich. Stalo se mi to u 2 z 10 senzorů. 
 

  Protože komunikace může občas selhat, ověřují se přijatá data kontrolním součtem CRC a navíc, každému čidlu je přiděleno počítadlo poruch. Chybná komunikace počítadlo inkrementuje, zatímco správná ho nuluje. Při dočasné, náhodné chybě zůstává poslední platná teplota, proto se porucha senzoru neprojeví okamžitě. Až po dosažení určité úrovně počítadla poruch, bude místo teploty zobrazena Porucha. 


 Komunikace s čidlem ale pokračuje dál, a dosáhne-li počítadlo poruch další úrovně, zapíná se testovací režim. Četnost načítání teplot je zhruba 1x za 3 sekundy, tomu také odpovídá rychlost inkrementace počítadla poruch.

 Kvalitu komunikace ovlivňuje zejména délka kabelu a úroveň rušení. Pro delší vedení je vhodnější kabel s větším průřezem drátů a stíněný při rušení, například při souběhu silového vedení. Délku kabelu lze kompenzovat Pull-Up rezistorem na 1-Wire, 4k7 až 1k. Delší kabel - menší Pull-Up.


 Testovací režim neustále vyhledává identifikační kódy připojených DS obvodů. Nalezené kódy zobrazuje displej v HEX tvaru (00 až FF). Vyhledávání doprovází blikání kontrolní LED Rekord.
 Čidlo s nižším kódem je vždy načteno jako první, potom druhé, s vyšším kódem. Pokud jsou obě čidla nová, budou v tomto pořadí také přiřazena, první T1 kolektor, druhé T2 zásobník.
 Jestliže vyměníme jedno čidlo, může být to stávající načteno v jiném pořadí než dříve. Tato změna pořadí vedla ve staré verzi programu k opačnému přiřazení, takže senzory bylo nutné fyzicky prohodit. Například čidlo pro zásobník se muselo přendat na kolektor.
 V novém programu budou čidla přiřazena podle pořadí jenom když jsou obě nová. Pokud vyměníme jedno čidlo, nové vždy zaujme jeho pozici a stávající zůstane na svém místě.

 Testovací režim můžeme kdykoliv opustit stisknutím (podržením) tlačítka (S). Nebude-li stisknuto žádné tlačítko, zhruba 4 minuty, přejde displej do základního zobrazení automaticky.

 

Vybrat znak °C (kroužek).
 Zobrazovací LCD modul BC1602A YPLEHS, má ve znakové sadě ASCII kód kroužku 178 (B2 HEX). Tento kód je v programu přednastaven. Jiný displej s jinou znakovou sadou, může mít místo kroužku jiný znak. Pomocí tohoto režimu lze vybrat jakýkoliv znak ze znakové sady konkrétního displeje.


(S+N) start výběr kroužku, v základním zobrazení stisknout (podržet) obě tlačítka (první S).
(+/-) změna znaku.
(S) konec a uložení kódu do EEPROM.

 

 Napájení teplotních senzorů DS18B20 může být externí i parazitní, nebo kombinace obou způsobů.

 Pro parazitní napájení stačí 2 vodiče, GND a datová linka (1-wire). Senzor je napájen pouze z datové linky. Pokud je linka ve stavu Log.1, nabíjí se vnitřní kondenzátor čidla, ten potom dodává napájecí proud, když je linka ve stavu Log.0. POZOR, při parazitním napájení je omezena měřená teplota, MAX 100°C.


Parazitní napájení.

 


Externí napájení.

 


Kombinace parazitního a externího napájení.

 

Schéma zapojení a plošné spoje.

Procesorová část (UniModul).
UM007.sch (151,5 kB) UM007.brd (37,2 kB)


 Reálný čas je odvozen od taktovací frekvence mikroprocesoru PIC16F88, proto musí být frekvence krystalu Q1 4194304Hz nastavena přesně. Jemně se doladí kapacitním trimrem C3. Pokud se budou hodiny předcházet, zvětšíme kapacitu. Jestliže C3 nebude stačit, zvětšíme kapacitu kondenzátorů C1 a C2.
 Načítání stavů tlačítek a komunikace s LCD displejem probíhá střídavě po 4-bitové sběrnici (RB4,5,6,7).
 Kontrast displeje nastavíme trimrem R7, dobře to jde když na displeji bliká nějaký znak, při nastavování.
 Propoj B3 - Podsvícení slouží k automatickému vypínání podsvícení LCD. Chcete-li aby displej svítil trvale, připojte na vstup Podsvícení +5V.



 Desku UniModul můžete objednat na www.bucek.name/dps/dpswebnode.dat.htm
pod označením RR72.

 

Zdrojová část.
Z1WIRE.sch (306,6 kB) Z1WIRE.brd (44,4 kB)



 Spoj pod cívkou L1 je nutné přerušit, deska je navržena pro variantu bez cívky.


 Desku zdroje prodává také www.bucek.name/dps/dpswebnode.dat.htm
pod označením Z1-WIR.

  

Konstrukce.



 Připojení čidla na telefonní kabel.

 

 6-modulová krabička na DIN lištu www.enclosures-din.com/sk
E BOX 6M.
KRYTKA 3P (4ks).
Čelní sklo kouřové PANEL 6S, nebo čiré PANEL 6C .

 


 Distanční plastové sloupky 30mm M3 (zkrácené na 28,5 mm).
Držák pojistky do plošného spoje.

 


 Deska kontrolních LED.

 


 Potisk panelu, papír (fotopapír) pod čelní sklo. Rozměry š. 9,8cm, v. 3,8cm.

 

Seznam součástek.

Procesorová část (UniModul)

IO1 PIC16F88-I/P +sokl 18pinů precizní
Q1 krystal 4194304Hz
Displej LCD 2x16 znaků BC1602A YPLEHS
LCD.pdf (380,1 kB)
T1 KC238 (BC548 a pod)
C1,2 33p keramický
C3 0-33p kapacitní trimr
C4 100n keramický
R1,2,3,4 1K
R6 8K2
R7 2k2 trimr (rozteč 5-2,5)
R8 10K
TL1,2,3,4 mikrospínač 6x6x17mm 12V/0.05A
Konektor konektorové kolíky lámací 10pinů
Konektor LCD patice precizní jednořadá 16pinů

 

Zdroj.

(T1,2) DS18B20 teplotní čidlo DALLAS, pouzdro TO-92
IC1 7805 stabilizátor 5V/1A
Opto1,2,3 PC815 optočlen
U1 můstkový usměrňovač 400V/1A pouzdro DIP
D1,2,3 1N4007 1000V/1A
D4 BZV 06-15B 18V TRANSIL 18V
D5,6 BZV 06-5V8B TRANSIL 5,8V
LED1,2,3,4 LED dioda 3mm/2mA
C1 1000uF/25V
C2,3 100uF/25V
C4,5 M1 keramika
R1,2,3 820
R4 1K
(R Pull-Up) 4K7
L1 10mH cívka
Re1,2,3 relé, cívka DC12V kontakty 2x přepínací AC250V/8A
TR1 transformátor do DPS AC230V/9V 1,9VA
CON1 dutinková lišta jednořadá 10pinů
Pojistka 0,1A + 2x držák pojistky do plošného spoje
Svorkovnice řadová, rozteč 5mm, 4x 3póly, 1x 2póly
Zkratovací propojky konektorové kolíky lámací 3x 5pinů + 6x zkraty (JUMPER)