Krmilnik centralne kurjave
Za krmiljenje črpalk centralnega ogrevanja sem se zaradi specifike željenega
delovanja in samega izziva lotil krmilnika.
Sama centralna je sestavljena iz dveh peči, ki načeloma ogrevata dva tokokroga.
En tokokrog je klet in pritličje, drugi pa podstreha.
Peči delujeta neodvisno ena od druge. Lahko tudi obe hkrati, vendar
to zaenkrat ni mišljeno. Prva peč je starejša in namenjena kurjenju na
trda goriva. Greje v prehodnem času, ko še ni prave zime, ali pa na koncu, ko še ni prave toplote.
Ko pričemo uporabljati drugo peč se prva preko ročnih ventilov izklopi,
in na centralno napeljavo priključi druga. Nova peč je namenjena kurjenju
plinskega olja ali plina - trenutno kurimo plinsko olje. Ima zunanji
grelnik sanitarne vode in za to potrebuje dodatno črpalko, ki poganja
vodo za gretje sanitarne vode.
Slika1: Shema centralne napeljave
Podstreha ima svojo črpalko, pritličje ter klet imata dve črpalki, vsako
za svojo peč. Črpalka stare peči se prižiga sama preko termostatskega
stikala in ni priključena na krmilnik. Obratuje ves čas če je temepratura
vode višja od 50oC.
Opis merilnih točk TP
- TP1 - meri temperaturo vode, ki pride iz peči tik pred mešalnim ventilom.
- TP2 - meri temperaturo grelne vode, ki pride direktno iz bojlerja.
- TP3 - meri temperaturo vode, ki gre proti podstrehi.
- TP4 - meri temperaturo vode, v centralni napeljavi v novi kurilnici tik pred priključkom za podstreho.
Krmilnik krmili tri črpalke, ki so označene kar z K1-K3:
- K1 - črpalka pritličje-klet
- K2 - črpalka podstreha
- K3 - črpalka grelnik sanitarne vode
Krmilnik se odloča o tem katero črpalko bo kdaj prižgal s pomočjo podatkov
o temperaturi, ki jo merijo digitalni merilniki DS1820 na posameznih
mestih centralne napeljave, ter trenutno glede na dva vhodna signala,
ki ju prispeva sobni termostat na podstrehi, ter halova sonda, ki spremlja
lokacijo ročice mešalnega ventila nove peči.
Črpalka K1 - pritličje, klet se prižge, če je temperatura TP1 > 40oC
ter če je odprt mešalni ventil
Črpalka K2 - podstreha se prižge če je temperatura TP1 >40oC, ter če je
odprt mešalni ventil in če sobni ternostat ukaže gretje(greje nova peč)ali
pa če je temperatura TP4 >40oC ter če sobni ternostat ukaže gretje in če
je mešalni ventil zaprt (greje stara peč)
Črpalka K3 - se prižge, če je temperatura vode, TP2 < TP1 - če je voda,
ki pride iz bojlerja hladnejša tiste, ki pride iz peči. Črpalka je vezana še
preko termostata samega bojlerja. Tako se črpalka prižge šele, ko sta izpolnjena
dva pogoja: Bojler sam ima nižjo temperaturo od željene, ter peč je prižgana.
Krmilnik prikazuje temperature senzorjev in stanja vklopljenih relejev
na 4 vrstičnem LCD displeju. Omogoča tudi nastavljanje nekaj parametrov,
ki so:
- Vklopna temperatura črpalk (40oC)
- Temperatura Alarma (90oC) če temperatura vode, ki gre proti podstrehi preseže
90oC se črpalka ugasne (Alu-plast cevi za razvod)
- Temperaturna razlika med vodo iz peči in vodo iz bojlerja, ki je potrebna,
da se črpalka za ogrevanje bojlerja prižge.
Krmilnik je sestavljen iz treh delov - Napajalno vezje, I/O vezje in
krmilno vezje. Več delov je predvsem zato, ker Eagle ne omogoča risanje
vezij večje velikosti.
Napajalno vezje:
Napajalno vezje ni nič posebnega. Razdelil sem ga na dva dela. Prvi skrbi za
napajanje procesorja, drugi del pa je uporabljen za napajanje relejev in
ostale periferije. Ločitev sem izvedel predvsem zato, da bi zmanjšal vpliv
najrazličnejših motenj, ki bi lahko motile delovanje procesorja. Dioda na
srednji nogici drugega regulatorja (VCCINT) je tam z namenom, da rahlo dvigne
izhodno napetost.
Vezje, ki je nastalo:
Kosovnica:
| Element |
Vrednost |
Količina |
| R1 |
1 KOhm 1206 |
1 |
| R2 |
5,1KOhm 1206 (5,6K) |
1 |
| R3, R4 |
10KOhm 1206 |
2 |
| R5 |
470KOhm 1206 |
1 |
| R6, R7, R8 |
100KOhm 1206 |
3 |
| R10, R11 |
150KOhm 1206 |
2 |
| C1 |
220uF 16V 8x11 r5 |
1 |
| C2, C3, C4, C5, C8, C9 |
0,1uF 1206 cer |
6 |
| C6 |
4,7uF 6,3V 5x11 r2,5 |
1 |
| C7 |
1nF 1206 cer |
1 |
| Mic |
kondenzatorski mikrofon |
1 |
| Rec, Play , Play1 |
tipka miniaturna 5x6,5 |
3 |
| IC1 |
ISD1420P DIL28 |
1 |
| IC2 |
7805 TO220 |
1 |
| IC3 |
TPA2005D1DRBR (8-SON) |
1 |
I/O vezje:
I/O - Input / output vezje ima štiri vhode, ter tri relejske izhode.
Vhodi so namenjeni direktnemu priklopu stikal, od katerih je en X3-2
namenjen priklpu hallovega senzorja, zato imadodatno priključno sponko.
Če priključni sponki kratko zvežemo na izhodu X3-1 -> X3-4 dobimo
nizek signal. Delovanje je prikazano z vgrajenimi LED diodami. Za zmanjševanje
porabe sem na vezje vgradil tudi jumperje, s katerimi te diode premostimo,
ko smo preprilčani, da vezje deluje. Optokolperji so uporabljeni zaradi
zmanjševanja motenj.
Izhodi so že na vezju krmilnika vezani preko optokoplerjev. Na vezju sta tudi
dve razdelilni letvi, za razpeljavo PE in N vodnikov, kar olajša priključitev
črpalk.
Vezje, ki je nastalo:
Kosovnica I/O vezje:
| Element |
Vrednost |
Količina |
| R1, R2, R16 |
4,7 KOhm 1/4W |
3 |
| R4, R3, R7, R8 |
240Ohm 1206 |
1 |
| R9-R12, R14, R13, R17 |
1KOhm 1/4W |
7 |
| LED1-4 |
fi3 zelena led |
4 |
| LED5-7 |
fi3 rdeča led |
3 |
| D1, D6, D7 |
1N4148 DO35 |
3 |
| JP3-6 |
Jumper r=2,54 |
4 |
| Q1-3 |
BC 847 SOT23 |
3 |
| OK1-4 |
4N25 |
4 |
| C1, C2 |
100nF 1206 cer |
2 |
| K1-K3 |
JW1FSN-DC6 |
3 |
| R5, R6, R18, R19 |
S14K250 |
6 |
| Y1-Y3, S1.. |
3P lestenčna R=5,08 |
6 |
| S4, S2, S3, X1, X2.. |
2P lestenčna R=5,08 |
7 |
| X3 |
IDC za TIV 10p |
1 |
Krmilnik:
Srce celotnega projekta je PIC16F876A, ki je imel ravno prav izhodno/vhodnih
priključkov. (No en je ostal)
Vezje vsebuje 5 tipk s katerimi prižgemo osvetlitev, ter se sprehajamo po enostavnem
meniju za spreminjanje nastavitev.
En vhod je uporabljen za prikllop temperaturnih senzorjev, nekja jih je uporabljenih
za krmiljenje LCD zaslona. Izhodi so vezani preko optokoplerjev, za zamanjševanje
motenj. Vezje mi je uspelo narediti samo z eno prevezavo.
In vezje, ki je nastalo:
Kosovnica Krmilnika:
| Element |
Vrednost |
Količina |
| R7-9, R4, R18 |
10 KOhm 1206 |
5 |
| R3 |
100 KOhm 1/4W |
1 |
| R1, R19 |
4,7KOhm 1206 |
2 |
| R10-13, R5, R6 |
1KOhm 1206 |
6 |
| R2 |
18Ohm 1206 |
1 |
| Kontrast |
10K multiturn pokončni |
1 |
| L1 |
47mH infineon 3513 |
1 |
| C9, C10 |
33p 1206 cer |
2 |
| Q1 |
20MHz kristal |
1 |
| C2-C7 |
100nF 1206 cer |
7 |
| C11 |
10uF 1206 cer |
1 |
| Q2 |
BC849 SOT23 |
1 |
| OK1-OK3 |
2N35 |
3 |
| C1 |
470uF 16V R=5,08 |
1 |
| Tipke |
R=6x6 |
5 |
| IC2 |
16F876A DIL28 |
1 |
| S1-S4 |
Testni pini |
6 |
| X3 |
IDC za TIV 10P |
1 |
| LCD |
IDC za TIV 16P |
1 |
| X4 |
Lestenčna 3P R=5,04 |
1 |
| X10 |
Lestenčna 2P R=5,04 |
1 |
| JP1 |
Jumper R=2,54 |
1 |
| R20 |
1M Ohm 1206 (Ni montiran) |
0 |
Za konec pa še vezje, ki sem ga uporabil za montažo hallovega senzorja:
Vezje, ki je nastalo pa lahko najdete tule:
Hall1
Kosovnica hal vezja:
| Element |
Vrednost |
Količina |
| C1 |
100n 1206 cer |
1 |
| HALL |
TLE4905L |
1 |
| X1 |
- kabel spajkan |
0 |
Izdelava vezij ni bila nič posebnega. Filme in vezja sem izdelal po
standardnem postopku, ki sem ga opisial že
tule.
Filmi za tiskana vezja:
Usmernik
Krmilnik
I/O
Hall senzor
Priklop
LCD je priključen na vezje preko 16p ploščatega kabla. Prav tako sta med sabo
povezani vezji Kontrolerja in I/O, le da je v tem primeru uporabljen 10p
flat kabel in ustrezni IDC konektorji za ploščati kabel. Napajalnik je povezan
z I/O in Krmilnikom s pomočjo parih žic.
Program
Ker ima krmilnik vgrajen kontroler krmilnik brez ustreznega programa ne bodeloval.
Ker je projekt malce večji sem se programiranja lotil kar z MikoBasicom. Projekt
je bil idealen za pričetek učenja trenutno stanje kode pa je takšno:
PDF
Ni preveč lepo priznam, ampak koda deluje kot kaže brezhibno. Imam plan
zadevo počistiti, vendar trenutno še ni pravega časa. Prevedena koda
zgleda takole:
HEX
Zaradi načina programiranja sem že imel težave z zapisovanjem vsebina
na procesor, ker ima procesor omejitev dolžine procedure, ki se lahko
zapiše v flash pomnilnih. Pomnilnik je namreč razdeljen na dve polovici.
Merjenje temperature s tem programom žal ne bo delovala nikomur razen
nekomu, ki bi uporabil senzorje za merjenje temperature z enakimi serijskimi
številkami. Ker pa ima vsak senzor svojo številko je to nemogoče. številke
senzorjev je potrebno pred prevajanjem vpisati v program.
Še nekaj utrinkov izdelave:
Jedkanje vmešanici slne kisline in vodikovega peroksida...
Vezje zjedkano, pripravljeno za vrtane lukenj.
Pred vrtanjem vezje obrežemo na predvideno velikost.
Končna oblika
Montažne luknje
Predvideno montažno mesto
Krmilnik z pritrjenim displejem.
Krmilnik s spodnje strani.
Napajalnik
I/O vezje
Vgradnja vezij v ohišje
Testni zagon. (Še ene testne verzije programa)
Izpis na dispelju med obratovanjem.
K1-K3 so črpalke, desno so izpisane temperature senzorjev.

Po daljšem pritisku na CTRL tipko vstopimo v nastavitveni meni. Dve
tipi stan namenjeni pomikanju po meniju gor-dol drugi dve levo desno.
Pritisk na CTRL tipko vstopi na željeno mesto (znak > zgine), in z tipkama
gor dol spreminjamo vrednost. Ko je prikazana željena vrednost ponovno
pritisnemo na tipko CTRL za izstop iz menija.
Po izbiri vrednosti Da Ali Ne v meniju, se vrednosti zapišejo oziroma
ne zapišejo v eeprom.
P&P 18.1.2009