Informační panel + termostat

vloženo:02.09.2008    aktualizováno:30.12.2009

   Informační panel slučuje několik zařízení.
Teploměr, hodiny, kalendář, záznam MIN/MAX teploty a termostat.
   Na 4-místném displeji samozřejmě nelze zobrazit všechny hodnoty najednou, proto se v časové smyčce automaticky střídají vybrané hodnoty. Časovou smyčku si může každý sestavit podle sebe. V libovolném pořadí a počtu můžete vybírat z pěti základních hodnot: teplota, čas, den v týdnu, datum, rok. Pro každou hodnotu lze také zadat délku zobrazení na displeji, 1-9 sekund.

 

Nastavení časové smyčky.
   Po standardním nastavení se u každé z pěti základních hodnot nastavují ještě dva parametry c a n.
c = časovač 1 až 9 sekund (délka zobrazení hodnoty)
n = následující hodnota 0 až 4 (po odčasování pokračuje smyčka s touto hodnotou)

Přiřazení parametru n.

0 teplota -19.9 až 99.9°C
1 čas hodiny, minuty
2 den v týdnu pondělí až neděle
3 datum den, měsíc
4 rok max. 2099

 

   Parametr n pro teplotu, nastavte i když nechcete do časové smyčky teplotu zařadit. Časová smyčka totiž začíná (po startu, resetu) zobrazením teploty.

 

Ovládání a nastavení. (Mapa displeje)
   I. panel se ovládá třemi tlačítky. Levé S (set, nastavit), prostřední - (mínus) a pravé + (plus).
   Tlačítka +- postupně přepínají zobrazení na displeji (dopředu, dozadu).
Pokud chceme nějakou hodnotu nastavit, zobrazíme jí na displeji a podržíme tlačítko S. Okamžitě se zobrazí její nadpis a zhruba po 3 sekundách začne displej blikat. Některé údaje se nastavují po částech. Například čas, první blikají hodiny potom minuty, sekundy, parametr c a nakonec parametr n. Tlačítkem S vybereme požadovaný údaj a tlačítkem +- ho změníme. Bude-li blikat poslední údaj, tlačítkem S, nastavování ukončíme.
   Některé hodnoty ale nelze změnit, dají se jenom přečíst a tlačítkem S, zobrazíme pouze nadpis.
   Do časové smyčky se dá přejít jenom z teploty, tlačítkem mínus. Na displeji se zobrazí nadpis pro časovou smyčku [==]
   Během časové smyčky, tlačítkem S, lze také zobrazit nadpis právě zobrazované hodnoty. Jenom se nic nenastavuje, i když tlačítko držíme déle. Po uvolnění tlačítka bude nadpis zobrazen ještě 8 sekund a potom smyčka pokračuje dál.
   Z časové smyčky lze vystoupit tlačítkem mínus nebo plus. Mínus přepne rovnou na zobrazení MIN teploty. Tlačítkem plus, na zobrazení času.
   Pokud dojde k zaznamenání nové MIN/MAX (L/H) teploty, uloží se také čas a kompletní datum. Zaznamenanou teplotu MIN nebo MAX lze vymazat, v podstatě se nahradí aktuální teplotou. Tím se také změní i čas a datum záznamu.
   Při zobrazení teploty může začít blikat desetinná tečka, úplně vpravo. To je signalizace záznamu nové teploty.

Termostat.

   Teplota se porovnává s mezí. Bude-li teplota větší než mez, bude na výstupu Re log.1. V opačném případě, tedy při menší teplotě nebo stejné jako mez, bude na Re log.0. Mez je nastavitelná v plném rozsahu teploty -19.9 až 99.9°C.
   Jeden z mnoha příkladů, využití termostatu: signalizace (LED diodou) při poklesu teploty pod 0°C.

 

Schéma zapojení.

   Všechno řídí mikroprocesor PIC16F628A, taktovaný krystalem 19.6608MHz. Přesná frekvence krystalu je důležitá pro přesnost času, a doladí se kapacitním trimrem C2. Katodové rezistory R1 až R8 určují jas 4-místného LED displej. Společné anody vedou přímo na výstupy RB0,1,2 a RB4. 25x za sekundu se přes R9,10,11 načítá stav tlačítek S1,2,3. Vstup pro reset RA5/MCLR je zde konfigurován jako běžný vstup, přivádí se na něj signál z teplotního čidla SMT160-30. Port RB3 je výstup termostatu Re. Rezistor R12 je možné v této konstrukci vynechat. Na konektor SV1 jsou kromě napájení a čidla, vyvedeny také RA6 a RA7. To pro případné programování kabelem ICSP.
   Pozor, všechny vstupy a výstupy nejsou nijak chráněné, nepřekračujte max. zatížení 20mA.
   Na připojení I. panelu stačí jenom napájení a vstup pro čidlo, případně výstup termostatu.

 

konektor SV1 připojení I. panelu programování kabelem ICSP
1   RA5 signál tepl. čidla VPP
2   RB3 výstup Re -
3   VCC +5V stabilizované VCC
4   GND GND GND
5   RB7 - DATA
6   RB6 - CLK
7   GND - -
8   UT - -

 

Teplotní čidlo SMT160-30

   Čidlo pracuje v rozsahu -45 až +130°C s odchylkou pod 1,2°C a v rozsahu -30 až +100°C je odchylka menší než 0,2°C. Přímo ve výrobě se čidlo cejchuje, proto není potřeba žádná pozdější kalibrace. Výstupní signál, obdélníkového tvaru (log.1/0) je šířkově modulován v závislosti na měřené teplotě. Senzor SMT160-30 má přímou náhradu SMT172.

Výpočet teploty podle katalogového vzorce.
D.C. = 0.32+0.0047*t
kde
D.C. = Duty Cycle (střída impulsního signálu, délka log.1 / délka periody)
t = teplota [°C]

Upravený vzorec pro výpočet v assembleru, s použitím matematických podprogramů MPIC24B.
t*10 = (H*2128)/P-681
kde
H = délka impulsu log.1
P = délka periody
Jedno desetinné místo, proto t*10.

   Délka P se měří časovačem. První náběžná hrana ho spustí a druhá zastaví. Délka H se z časovače přečte při sestupné hraně. Časovač běží na co největší rychlost. Jelikož jde o poměr H ku P, nezáleží na konkrétní frekvenci. Pokud dojde k přetečení časovače, vyhodnotí se to jako porucha snímače. Pozor, I.panel potřebuje krystal 19.6608MHz. Tato frekvence se zde dělí na 1Hz pro reálný čas.
   Naměřené hodnoty se průměrují z 256-ti vzorků, až potom se provede výpočet. Aby byl výsledek opravdu stabilní, upraví se ještě digitálním filtrem. Princip filtru najdete zde, program je ale upravený.
   Přestože není potřeba čidlo kalibrovat, může se teplota upravit (+- po desetinách). Stačí jen upravit vzorec, závěrečné odečítání (-681).

 

Plošný spoj.



   Osazení součástek na spodní straně desky. Displej a tlačítka jsou z druhé strany.

 

Seznam součástek (mino zdroje).

IC1 PIC16F628A + sokl
Q1 krystal 19.6608MHz
DIS1 LED displej HD-M514RD (4-místný, společné anody)
R1-8 220 ohm SMD R0603
R9-11 1K SMD R0603
C1 100nF SMD C0603
C2 kapacitní trimr 0-30pF
C3,4 18pF SMD C0603
SV1 konektorové kolíky lámací dvouřadé 2x4 pinů
S1 teplotní čidlo SMT 160-30 (SMT172)

 

Schéma zdroje.

 

(pouze pro nekomerční účely, only for non-commercial purposes)

Soubory ke stažení.
IPT105.asm (59,1 kB) zdrojový text
IPT105.HEX (11,7 kB) program
HT09.sch (124,7 kB) schéma
HT09.brd (20 kB) deska
SCH a BRD jsou kreslené v EAGLE 4.16

Upravený program pro displej se společnou katodou.
IPT106k.asm (59,3 kB)  zdrojový text
IPT106k.HEX (11,8 kB) program
HT09k.sch (124,9 kB)  schéma
HT09k.brd (20,1 kB) deska


Pozor
, na výstupu RA4 je otevřený kolektor, proto je segment "e" zapojený jinak.

 

Přejít na úvodní stránku

Vytvořeno službou Webnode