Termostat by ME (& Feko)

Projekti naših članova foruma koji su još uvijek u fazi izrade.

Moderators: pedja089, stojke369, [eDo], trax

User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Termostat by ME (& Feko)

Post by WhiteHead »

Vezano za:
http://www.elektronika.ba/forum/viewtop ... 49#p145445
http://www.elektronika.ba/forum/viewtop ... =1&t=16210
http://www.elektronika.ba/forum/viewtop ... =3&t=16225

Započeh i ja nešto za svoje potrebe (kamin na pelet) a i za širu publiku i korisnike.
U prilogu je pločica koju je uradio Feko i HEX za PIC16F628.
Posebno se podešavaju temperature palenja i gašenja relea (režim grijanja), a pošto postoje dva relea drugi bi mogao biti za režim hlađenja (nije implementirano u HEX-u), a takođe se može i programski uraditi da se bira režim.
Pisao sam već da ću u budućnosti probati uraditi bežičnu komunikaciju.
Evo trenutnog kod-a:

Code: Select all

#CONFIG
__config _INTRC_OSC_NOCLKOUT & _WDTE_ON & _PWRTE_ON & _MCLRE_OFF & _LVP_OFF
#ENDCONFIG
CMCON=7         'iskljuceni analogni komparatori - DIGITALNI I/O 

DEFINE OSC 4
include "modedefs.bas"   ' za serin i serout naredbu
'konfiguracija LCD
DEFINE LCD_BITS		4		'LCD radi u 4-bitnom modu
DEFINE LCD_DREG		PORTB	'port na koji su zakaceni data biti displeja d4-d7
DEFINE LCD_DBIT		4	'pocetni bit data porta na koji se veze d4 displeja
DEFINE LCD_RSREG	PORTA	'port na koji je zakacena linija RS
DEFINE LCD_RSBIT	1	'bit porta na kome je zakacena linija RS
DEFINE LCD_EREG		PORTA	'port na kome je zakacena E linija displeja
DEFINE LCD_EBIT		0		'bit porta na kome je zakacena E linija
DEFINE LCD_LINES	2		'LCD sa dva reda     

TRISB=%00000111
TRISA=%11010000

symbol TastUP=portb.0
symbol TastDN=portb.1
symbol TastSET=portb.2
symbol PozOs=portb.3'pozadinsko osvjetlenje
symbol Out1=porta.2 'ili TX ili rele
symbol Out2=porta.3'samo rele
symbol DQ=porta.4'temp sonda
 
'promjenjive za izracun temperature
Deg  CON 223 'konstanta za iscrtavanje oznake stepena
Temperature  Var Word      
TempC        Var Word
Float        Var Word     
Twist        Var Bit 

sST var bit
nST var bit         
SetON var word
SetOF var word
seton=220:setof=235'default zadanih vrijednosti u slucaju da ne procita eeprom
'citanje zadatih vrijednosti iz internog eeproma
read 1,seton.lowbyte
pause 10
read 2,seton.highbyte
pause 10
read 3,setof.lowbyte
pause 10
read 4,setof.highbyte
pause 10

LCDOUT $FE, 1 ;briše sve sa LCD-a i inicijelizira ga 
LCDOUT $FE, 2,"Termostat by:"
LCDOUT $FE, $C0, "ELEKTRONIKA.BA" 
pause 2000' ostavi natpis 2 sekunde
Out2=0:PozOS=0
Main:
gosub mjerenje'izmjeri temperaturu
'prikaz
LCDOUT $FE, 1
LcdOut $FE,$80,"Temp: ",DEC (Temperature / 10),".",dec1 (Temperature),deg,"C"
lcdout $fe,$c0, "ON=",dec seton/10,".",dec1 seton," ","OFF=",dec setof/10,".",dec1 setof
PAUSE 500
if Out2=1 then PozOS=1    'ako je ugasen izlaz onda je i pozadinsko osvjetlenje
if temperature<=seton then   'uslov za palenje
  out2=1
  pozos=1
endif
if temperature>=setof then     'uslov za gasenje
  out2=0
  pozos=0
endif    
if TastSET=0 then 
 pozos=1'upali pozadinsko
 goto set1   'idi na podesavanje
endif 
  
goto Main ' Ponovi sve
'---------------------------------------------------------------------
SeT1:    'podesavanje temp palenja
 nst=tastset
 if nst<sst then ' prije izlaza iz funkcije upisi u interni eeprom
   write 1,seton.lowbyte
   pause 12
   write 2, seton.highbyte
   pause 12
   sst=nst
   goto set2'ide na podesavanje temp gasenja
 endif
 Lcdout $FE, 1,  "Podesavanje:"
 LcdOut $FE, $C0,"Temp. ON=",dec seton/10,".",dec1 seton,deg,"C "
 PAUSE 100 
 if TASTup  = 0 then 'dodavanje u promenjivu setON
    seton  = seton + 1  
 ENDIF
 if tastdn = 0 then 'oduzimanje iz promenjive setON 
    seton = seton - 1
 endif
'granicne vrijednosti temperature
 if seton > 600 then SetON = 600
 if seton < 150 then seton =  150      
 pause 50
 sst=nst
goto set1 
'----------------------------------------------------------------------
SeT2:'podesavanje temperature gasenja
nst=tastset
 if nst<sst then ' prije izlaza iz funkcije upisi u interni eeprom
   write 3,setof.lowbyte
   pause 12
   write 4, setof.highbyte
   pause 12
   sst=nst
   pozos=0'pozadinsko
   goto main'ponovo na program
 endif
 Lcdout $FE, 1,  "Podesavanje:"
 LcdOut $FE, $C0,"Temp. OFF=",dec setof/10,".",dec1 setof,deg,"C "
 PAUSE 100   
 if TASTup  = 0 then 'dodavanje u promenjivu set_temp
    setof  = setof + 1  
 ENDIF
 if tastdn = 0 then 'oduzimanje iz promenjive set_temp 
    setof = setof - 1
 endif
'granicne vrijednosti temperature
 if setof > 600 then setof = 600
 if setof  < 150 then setof =  150      
 pause 50
 sst=nst
GOTO Set2 
'---------------------------------------------------------------------
 Mjerenje: 'mjerenje temperature s jednom decimalom
  OWOut DQ, 1, [$CC, $44 ]          
  OWOUT   DQ, 1, [$CC, $BE ]    
  pause 100                                                        
  OWIN    DQ, 2, [Temperature.Lowbyte, Temperature.Highbyte]
  TempC =  ( Temperature & $7FF ) >> 4                           
  Float = ((Temperature.Lowbyte & $0F ) * 25/10 )>> 2    
  Temperature = TempC*10 + Float 
  return   
End ' Kraj programa
Feko, ili neko drugi ako ima ovu pločicu urađenu, volio bih da probate.
Ako nekom treba skraćena verzija za 16F84 neka zatraži HEX, čini mi se da je dovoljno izbaciti početni natpis.
p.s.
Uradio sam i ja svoju verziju pločice, ali ne bih da je stavljam dok ne sastavim sklop i probam...
Attachments
TermoTX628.zip
Fekina plocica i moj HEX
(25.79 KiB) Downloaded 489 times
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
Feko
Stariji član
Stariji član
Posts: 4394
Joined: 23-07-2008, 06:18
Location: Hrvatska, Slavonija, Selo moje malo...

Re: Termostat by ME (& Feko)

Post by Feko »

@WhiteHead, samo napred!
Nažalost nemam pcb kod sebe da isprobam...vratio sam je @78L05 da popravi hex no očito je izgubio volju za time pa to nije nikad dovršeno.
Pričekat ćemo mi da ti to na miru sklopiš i isprobaš...i uzeti sve zdravo za gotovo :lol:
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Važi, ja sam, kao što rekoh, uradio drugu verziju pločice, nešto manju i sa manjim releima, ali pin-out je potpuno isti. Iduće sedmice planiram završetak.
Na njoj još imam ISCP konektor, zatim konektor za RTC1307. U proteusu radi sve OK.
Ukoliko se sjećaš reci mi u čemu je bio problem sa tim koji si radio sa @78L05, da i ja ne previđam nešto...
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
Feko
Stariji član
Stariji član
Posts: 4394
Joined: 23-07-2008, 06:18
Location: Hrvatska, Slavonija, Selo moje malo...

Re: Termostat by ME (& Feko)

Post by Feko »

WhiteHead wrote:..Ukoliko se sjećaš reci mi u čemu je bio problem sa tim koji si radio sa @78L05, da i ja ne previđam nešto...
To sam ti poslao na PM sat vremena prije nego si napisao ovaj post..al koliko vidim nisi pogledao PM :?
User avatar
trax
Administrator sajta
Administrator sajta
Posts: 3509
Joined: 08-01-2005, 18:04
Location: 75k, BA
Contact:

Re: Termostat by ME (& Feko)

Post by trax »

Da li ste razmisljali da koristite ESP8266 za bezicno podesavanje?
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Ta stvarčica mi je kasnije došla pred oči. Ne bi bilo loše probati šta i s njom.
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Evo ga izrađen isproban. Nisam baš zadovoljan ni dizajnom pločice ni kako je "ispala", ali funkcioniše.
Uradio sam drugu verziju programa gdje se podešava temperatura palenja i hystereza - to je radi lakšeg rukovanja, ako se često mijenja željena temperatura a hystereza ostaje ista.
Napominjem da se i dalje radi o termostatu samo za režim zagrijavanja.
U prilogu PCB u SprintLayout-u (pin kompatibilan s Fekinim) i nova verzija HEX-a
IMAG1151.jpg
IMAG1151.jpg (53.91 KiB) Viewed 14046 times
IMAG1152.jpg
IMAG1152.jpg (58.86 KiB) Viewed 14046 times
IMAG1156.jpg
IMAG1156.jpg (50.53 KiB) Viewed 14046 times
Kasnije kada dođu oni moduli idem dalje sa probama
Attachments
TermoTX628_2.zip
PCB i novi HEX
(41.39 KiB) Downloaded 463 times
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
trax
Administrator sajta
Administrator sajta
Posts: 3509
Joined: 08-01-2005, 18:04
Location: 75k, BA
Contact:

Re: Termostat by ME (& Feko)

Post by trax »

Super izgleda :D
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Ma nije baš, ovdje je super samo kutijica radi koje sam i pravio PCB ovih dimenzija.
Juče sam se sjetio i da imam LCD 20x4, e to bi onda već bilo nešto, dodao bih i RTC...
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
niho
Pravi forumaš
Pravi forumaš
Posts: 1895
Joined: 24-09-2009, 17:26
Location: Brcko, Bosnia and Herzegovina

Re: Termostat by ME (& Feko)

Post by niho »

Svaka čast komšija, dobro ti je ovo. Hajd završi pa da prepišemo :)
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Mora se ovo još doraditi.
Ovi LCD-ovi (barem ovi kod mene) su neupotrebljivi bez pozadiskog osvjetlenja, pa ću morati uraditi neke preinake s druge strane pločice, npr. da imam dva nivoa osvjetlenja. Zatim trebale su tu ići i LED-ice redno s baznim otpornicima tranzistora za okidanje relea. Da se ima indikacija šta je uklučeno.
Pošto se koristi interni oscilator na RA6 i RA7 sam spojio SCL i SDA linije RTC1307 modula i to lijepo radi samo je malo "gužva" na LCD-u, ali moći će se podešavaju različite temperature za periode u toku dana ili za različite dane u sedmici.
Što god budem dorađivao postavljaću ovdje, biće tu svašta pa valjda i šta korisno.
Inače, ako već nisam pomenuo, od ove godine grijem se sa kaminom na pelet, pa želim sobni termostat za upravljanje.
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
niho
Pravi forumaš
Pravi forumaš
Posts: 1895
Joined: 24-09-2009, 17:26
Location: Brcko, Bosnia and Herzegovina

Re: Termostat by ME (& Feko)

Post by niho »

Ja koristim centralno i ložim briket a namjeravam polako preći na pelet. Najveći problem mi je onaj puž za transport peleta, ostalo ću već zgembati nekako, manja mi je briga.
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Jeli to misliš nešto home-made složiti?
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
niho
Pravi forumaš
Pravi forumaš
Posts: 1895
Joined: 24-09-2009, 17:26
Location: Brcko, Bosnia and Herzegovina

Re: Termostat by ME (& Feko)

Post by niho »

Da baš tako, elektronika mi nije problem, problem je u mehanici. Čak sam "skontao" kako ću napraviti "ložište".
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Malo bolji majstor bravar trebao bi moći uradidit puž. Ako ništa probaj u Gračanici (KOVAN) od nekog servisera dobiti njihov....
Što se tiče elektronike i upravljanja, ja sam ovim svojim malo razočaran, mada ne mogu reći da je loše dok ne "udare" minusi.
Po forumima sam čitao o raznim senzorima, lambda-sondama itd. Ovo kod mene ima dvije sonde PT100 (dim i voda) i čitav proces palenja, rada i gašenja se odvija na osnovu te dvije informacije.
Upravljanje je rađeno sa LCD 2x16 i 4 tastera, unutra šta je ne znam.
LP i srećno sa radom.
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
tandrkalo
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 336
Joined: 18-01-2013, 00:06
Location: Srbobran
Contact:

Re: Termostat by ME (& Feko)

Post by tandrkalo »

A taj puz sam video na par mesta da su uradili sa masinom za mlevenje mesa :)
Sada kako radis stvarno ne znam, ali mi se nisu ljudi zalili.
User avatar
bob4
Stariji član
Stariji član
Posts: 2572
Joined: 31-01-2010, 16:12
Location: Kutina

Re: Termostat by ME (& Feko)

Post by bob4 »

Evo; na ovim stranicama, nekoliko menija kao primjeri.....radovi su to ljudi (dajc i AKG) na forum.hr; podstranici, koju sam ja otvorio prije nekoliko godina: http://www.forum.hr/showthread.php?t=708500

1. https://drive.google.com/file/d/0B08-WL ... RqVWM/view
2. https://www.youtube.com/watch?v=RGcGm4I4UhQ
3. https://www.youtube.com/watch?v=ANZHGuDhJds
4. https://www.youtube.com/watch?v=P0-Bzg6 ... s7&index=1
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Ubacio RTC1307, napravio i podešavanje sata, počeo sa programiranjem više dnevnih perioda, i PIC (16F628) već pun.
Pošto moram nabaviti "komotniji" pic (4k), treba mi pomoć nekog PIC-znalca.
Planiram poručiti više komada pa šta mi je od ovih najbolje imati za nešto buduće (za ovaj termostat i nije bitno) - PIC 16F648, PIC 16F88, PIC 16F1827 ili možda neki drugi prijedlog.ali da je pin-kompatibilan s ovim 16F628.
Ajde molim vas da ne čitam masu datašitova.....glava mi puna...
Ako kaniš pobijediti, ne smiješ izgubiti
lab1722tec
Napredujem
Napredujem
Posts: 123
Joined: 26-12-2010, 12:12
Location: sad_tu_sad_tamo

Re: Termostat by ME (& Feko)

Post by lab1722tec »

Tu ima nekoliko ponuđenih izvedbi...
http://s-o.webnode.cz/ds-termostat/
Ekvitermalni je valjda najnovija verzija. Od svakud po neka ideja može pomoći...
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat by ME (& Feko)

Post by WhiteHead »

Došli mi ovi RX i TX moduli iz kine http://www.ebay.com/itm/261041100836?_t ... EBIDX%3AIT
Ja sam očekivao da šta pošaljem TX-om da to dobijem na RX-u, međutim ovo g***o ima već neki predefinisani niz-kod koji šalje.
Ovako "na oko" pošalje jednu "jedinicu" u trajanju od cca 0,3 s, pa onda neke nedefinisane podatke, a nakon prekida komande na TX-u pošalje jednu "jedinicu" u trajanju cca 1s.
Izgleda da ću morati zakačiti osciloskop da vidim šta je to.
Na sajtu nema nikakvog objašnjenja a piše da je za ARDUINO, pa ako ima kakav arduino-vac koji zna o čemu se radi, molim da pomogne.
LP

EDIT: Eh sad vidjoh dole na dnu da ima neka i dokumentacija za down, valja to izčitat.
Ako kaniš pobijediti, ne smiješ izgubiti
Post Reply