Termostat

vloženo:08.10.2008    aktualizováno:15.04.2012

   Moje první konstrukce termostatu je už hodně stará ale stále oblíbená.
Původní ovládací program zabíral celou paměť mikroprocesoru PIC16F84(A). Kvůli úpravám a rozšíření programu jsem to přepsal pro PIC16F628A. Tento typ je pinově kompatibilní, má větší paměť a několik dalších vylepšení a také je levnější.

Napájení +5V stabilizované (max. 20mA)
Teplotní čidlo SMT160-30 nebo SMT172 (-45 až +130°C) popis čidla, viz informační panel
Výstup RLo, Log.0/1 max. 20mA
Výstup RHi, Log.0 max. 20mA (otevřený kolektor)
Levé tlačítko (-), prostřední (+), pravé (D)
5 programů regulace

 

Zobrazení na displeji.

-19.9 až 99.9 teplota [°C]
-19.L až 99.L dolní mez (krok 1°C)
-19.H až 99.H horní mez (krok 1°C)
0.P až 5.P číslo programu regulace
00.A až FF.A časovač RLo log.0 (00=nejdelší čas jako 100Hex, 01=nejkratší čas)
00.b až FF.b časovač RLo log.1  (00=nečasuje, RLo=0)
00.C až FF.C časovač RHi log.0  (00=nejdelší čas jako 100Hex, 01=nejkratší čas)
00.d až FF.d časovač RHi log.1  (00=nečasuje, RHi=0)

Časy jsou zobrazeny v šestnáctkové soustavě. Nejkratší čas 01=asi 0.15s. 02=0.3s...

 

Nová verze ovládacího programu:
termo_a05.HEX (5,8 kB)
Po nastavení čísla programu se zobrazí položka [di.x]
x=0 displej zhasne po 40s. od posledního stisknutí tlačítka(zůstane svítit jenom desetinná tečka).
x=1 displej svítí trvale (vždy po resetu).
0/1 se vybere tlačítkem -/+


Ovládání, nastavování.

Tlačítkem D se postupně přepíná zobrazení na displeji.
Pokud chceme nastavit některou hodnotu, zobrazíme jí na displeji
a tlačítky -/+ jí změníme.
Tlačítka -/+ mají opakovací funkci, držení tlačítka způsobí rychlejší změnu.
Nastavené hodnoty se uloží při přepnutí na další zobrazení, Tl D.
Data se ukládají do EEPROM, kde jsou uchovány i při vypnutém napájení.

 


0 -žádná regulace
oba výstupy mají log.1
1 -regulace s hysterezí, pouze RHi, L=dolní mez, H=horní mez
(na výstupu RLo jsou impulsy přímoúměrné teplotě)
výstup RHi přepne na log.1 když teplota stoupne nad horní mez H
          RHi přepne na log.0 když teplota klesne pod dolní mez L
2 -regulace na dvě nezávislé meze
výstup RHi=0(imp) při t=>H
          RHi=1 při t výstup RLo=0(imp) při t=>L
          RLo=1 při t 3 -obdobná regulace jako program č.2
výstup RHi=1 při t=>H
          RHi=0(imp) při t výstup RLo=1 při t=>L
          RLo=0(imp) při t 4 -další varianta regulace na dvě nezávislé meze
výstup RHi=0(imp) při t=>H
          RHi=1 při t výstup RLo=1 při t=>L
          RLo=0(imp) při t 5 -regulace na dvě nezávislé meze s reakcí na pohyb teploty
výstup RHi=0 při t=>H
          RHi=1 při t výstup RLo=0 při t=           RLo=1 při t>L a při ustálené teplotě. Bude-li teplota klesat RLo=imp (Log.0)

 

Schéma.
  
Pozor, výstup RHi vede na port RA4 (pin 3) což je otevřený kolektor.

 

Propojky pod displejem jsou z tenkého pocínovaného drátku,
například z lankového vodiče.

Plošný spoj je možné objednat na www.bucek.name/dps/dpsnn.dat.htm
Digitální termostat  Arádio - Praktická elektronika 5/04 str.20
NN 47 vrtaná, NN 50 a050427 nevrtaná


Seznam součástek.

IO1 PIC16F628A-I/P + SOKL18 (precizní)
Q1 krystal 16 až 20MHz pouzdro HC49U/S
S1 teplotní čidlo SMT 160-30 (SMT172) pouzdro TO-92
(pozor, pouzdro TO-220 má přehozené vývody 1-3-2)
D1 displej HDSP 5521 spol. anoda
(dvojitý - vysoce svítivé od GM)
D2 displej HDSP 5501 spol. anoda
(jednoduchý - vysoce svítivé od GM)
C1, C2 18p keramický kondenzátor
C3 10M/10V tantalový (elektrolyt) kondenzátor
R1 až 7 820R
R8 až 11 1K0 (všechny odpory jsou miniaturní 0.4W)
TL1 až 3 mikrospínač 12V/0,05A např. B6819 od GES
konektory   lámací zásuvková lišta (precizní)

 

Schéma zdroje a dva způsoby připojení relé.

 

Nastavení programovacích pojistek:
CP=OFF, CPD=OFF, LVP=OFF, BOREN=ON, MCLRE=MCLR, PWRTEN=Enabled, WDTE=ON, OSC=HS

 

Soubory ke stažení. (pouze pro nekomerční účely, only for non-commercial purposes)

termo_a01.asm (29,7 kB) zdrojový kód
termo_a01.HEX (5,5 kB) program
TERMO_A.SCH (35 kB) schéma
TERMO_A.brd (26,4 kB) plošný spoj
Plošný spoj a schéma jsou kreslené v EAGLE

 


 DS Termostat old 
 starý hardware - nový software

vloženo:11.06.2022

  Teplotní čidla SMT160-30 nebo SMT172 jsou už těžko dostupná a drahá, proto jsem napsal program pro čidlo DS18B20. Není to ale přesná náhrada s možností výběru provozního režimu, nyní to jsou samostatné programy, zatím 2, zaměřené na konkrétní funkci.

Programy pro PIC16F1847.
(Pouze pro soukromé a nekomerční účely)
Programy pro PIC16F1847.
(Pouze pro soukromé a nekomerční účely)
 
 
 

Schéma.
  

  Kromě nepovinného odstranění krystalu a rezonančních kondenzátorů, je zde ještě jedna hardwarová změna, Pull-up rezistor 4k7. Ten je ale nutný při delším připojovacím kablíku k čidlu. Pro krátké vzdálenosti, zhruba do 1m není rezistor potřeba, jeho funkci zvládne Pull-up uvnitř procesoru.
   Pozor na připojení čidla, pořadí vývodů DS18B20 je jiné než u původního typu. Na fotografii ještě vidíte krystal 20MHz a 2 rezonanční kondenzátory 18pF, ty ale vůbec nemusíte osazovat. Uvolněné porty po krystalu RA6(OSC2) a RA7(OSC1) mohou být později využity, třeba jako další výstupy.

Vytvořeno službou Webnode