Termostat ( TX-RX ) by Ja & Feko

Sve vezano za mikrokontrolere

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 ( TX-RX ) by Ja & Feko

Post by WhiteHead »

Davno početo, davno završeno i radi al' nikako da postavim konačne sličice.
A ide Nova godine pa treba podvući neke crte...

Radilo se i raspravljalo ovdje: http://www.elektronika.ba/forum/viewtop ... 26&t=16229
Evo konačnih sličica:
Prvi izradak bez dodataka
Prvi izradak bez dodataka
IMAG1152.jpg (58.86 KiB) Viewed 16260 times
Isto to samo s drugim menijem
Isto to samo s drugim menijem
IMAG1156.jpg (50.53 KiB) Viewed 16260 times
Ovdje su dodati RTC i TX predajnik
Ovdje su dodati RTC i TX predajnik
IMAG1231.jpg (106.94 KiB) Viewed 16260 times
RX pločica koja ide u kamin
RX pločica koja ide u kamin
IMAG1232.jpg (105.48 KiB) Viewed 16260 times
Strpano unutra i zašarafljeno
Strpano unutra i zašarafljeno
IMAG1234.jpg (83.45 KiB) Viewed 16260 times
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 ( TX-RX ) by Ja & Feko

Post by WhiteHead »

Idu dalje sličice:
GORIIIII VATRAAAA
GORIIIII VATRAAAA
IMAG1333.jpg (49.78 KiB) Viewed 16259 times
Zalijepljen na zidu ispod TV-a i u radu
Zalijepljen na zidu ispod TV-a i u radu
IMAG1336.jpg (94.09 KiB) Viewed 16259 times
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 ( TX-RX ) by Ja & Feko

Post by WhiteHead »

U topic-u oko gradnje i tamošnjim linkovima možete pročitati ideju i svrhu izgradnje.
Konkretno, ja sam se vodio potrebom da sebi uradim bezžični termostat sa daljinskim upravljanjem za upravljanje novougrađenog kamina za pelet.
Evo radi mi već oko mjesec dana i ja prezadovoljan.
Žao mi je što negdje sa strane nisam izveo ICSP priključak za update, zato što mi stalno nešto novo pada na pamet pa moram rastavljati kutiju.

Uglavnom kod mene to sad radi na način da u internom eepromu imam uprogramirano šest perioda u toku jednog dana i za svaki taj period mogu podesiti temperaturu palenja i gašenja kamina.
Baš sinoć sam dodao nemogućnost da se kamin ugasi (bez obzira na zadatu temperaturu) dok ne odradi barem 1 sat.
Međutim kako mi na glavu (pamet) svašta pada, a krenulo se sa PIC16F84 (Feko), potrebe su rasle pa se išlo na 16F627, 16F628A pa na kraju završilo sa 16F648 (4k fleša), njega nisam još "prepunio"

Uglavnom "ljepota" ovog uradka je u otvorenom kodu i otvorenim PCB-ima (sprint layout) da svako sebi može po potrebi šta doraditi, zatim upotreba svih pic-eva koji su pin-kompatibilni sa ovim.
Mala prepravka koda omogućava rad u sitemu hlađenja, a dodavanjem još jedne sonde na isti pin i malom izmjeno koda može se dobiti i diferencijalni termostat.
Postaviću ovdje jedan od prvih kod-ova u PBP-u i više HEX-ova, a ako nekom treba nešto konkretno rado ću mu preraditi kod za njegove potrebe.
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 ( TX-RX ) by Ja & Feko

Post by WhiteHead »

U sledećem prilogu verzija PCB-a od Feke (sprint layout).
Rađena je za 16F84 sa vanjskim kristalom.
PcbFeko.zip
Fekina pločica
(23.63 KiB) Downloaded 429 times
Dalje idu moje verzije.
Osnovna razlika je ta što sam morao pločicu prilagoditi kutijici koju sam imao i što kod mene idu PIC-onje sa internim oscilatorom.
Tu su još i izvodi za RTC ds1307, izvodi za ICSP, za TX, zatim manji relei nego u Feke.
Uglavnom obje pločice su pin to pin kompatibilne i mogu se koristiti.
Kod mene je dodata i pločica za prijemnik koji ide u kamin.
PCB.zip
Moje pločice
(66.86 KiB) Downloaded 425 times
A ovo je sličica TX/RX modula koji su korišteni
Živjeli Kinezi
Živjeli Kinezi
s-l400.jpg (55.25 KiB) Viewed 16254 times
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 ( TX-RX ) by Ja & Feko

Post by WhiteHead »

Evo i nekih HEX-ova pa probajte:
HEXovi.zip
(14.79 KiB) Downloaded 455 times
A evo i simulacija u protelu:
Simulacije.zip
(47.24 KiB) Downloaded 439 times
Evo i nekog prvobitnog (početnog) koda:

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
Ma postavio bih ja i ovaj konačni kod, ali predug je i teško da bi nekom drugom bio razumljiv, a postoji i opasnost da mi se iskusniji programeri smiju, zato što sam sigurno neke stvari rješavao "naokolo" umjesto "prečicom".
U svakom slučaju ako nekom zatreba nešto konkretno pomoći ću.
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
MHN
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 350
Joined: 11-03-2005, 22:02
Location: Sarajevo

Re: Termostat ( TX-RX ) by Ja & Feko

Post by MHN »

Odlično meni se baš sviđa. :D
Ova kutija termostata je baš super, gdje se ima nabaviti ovih kutija i koja je cijena ako nije problem?
User avatar
Feko
Stariji član
Stariji član
Posts: 4394
Joined: 23-07-2008, 06:18
Location: Hrvatska, Slavonija, Selo moje malo...

Re: Termostat ( TX-RX ) by Ja & Feko

Post by Feko »

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

Re: Termostat ( TX-RX ) by Ja & Feko

Post by WhiteHead »

@MNH
Kutija je od neke tiristorske regulacije brzine stropnih (po naški plafonskih) ventilatora.
A finu sam vidio i na e-bayu samo što bi moralo ići napajanje bez trafoa (plitka):
http://www.ebay.com/itm/171977890331?ss ... 1436.l2649

@Feko
Hvala, ako sebi uradiš kakvu verziju slobodno zatraži HEX specijal za tvoje potrebe....
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 ( TX-RX ) by Ja & Feko

Post by WhiteHead »

UH, tek sam sad vidio par greškica.
Gore na trećoj slici pored RF modula piše "RX" a u stvari treba da stoji "TX"
U petom post-u kod fajla "simulacija.zip" pominje se Protel, a u stvari je Proteus...
Ako kaniš pobijediti, ne smiješ izgubiti
Cosa
Napredujem
Napredujem
Posts: 177
Joined: 09-08-2009, 10:55
Location: Hrvatska

Re: Termostat ( TX-RX ) by Ja & Feko

Post by Cosa »

Svaka čast i respect za open source!
User avatar
niho
Pravi forumaš
Pravi forumaš
Posts: 1895
Joined: 24-09-2009, 17:26
Location: Brcko, Bosnia and Herzegovina

Re: Termostat ( TX-RX ) by Ja & Feko

Post by niho »

Bravo komšija, šta drugo reći. Hvala za vrlo lijepo urađen projekat ali i za šerovanje koda, pločica i šema. Svaka čast.
P.S.
Ovo dođe k'o novogodišnji paketić :)
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat ( TX-RX ) by Ja & Feko

Post by WhiteHead »

Hvala komšija.
Kada završiš onaj svoj home-made kotao na pelet eto ti rjesenja za upravljanje.

@Cosa
Što se otvorenog koda tiče, on je neka početna nedovršena verzija (ali radi), bez ovih daljinaca RTC-a itd.
Ovaj konačni kod (za 16F648) ću probati maximalno iskomentarisati pa ko ga želi na PM, nema problema.
Ako kaniš pobijediti, ne smiješ izgubiti
User avatar
grunf
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 286
Joined: 19-04-2008, 14:22
Location: Cvjećara

Re: Termostat ( TX-RX ) by Ja & Feko

Post by grunf »

nije lose nije lose :D...
User avatar
niho
Pravi forumaš
Pravi forumaš
Posts: 1895
Joined: 24-09-2009, 17:26
Location: Brcko, Bosnia and Herzegovina

Re: Termostat ( TX-RX ) by Ja & Feko

Post by niho »

prijemnik
prijemnik
rxiznutra.jpg (217.25 KiB) Viewed 14380 times
txterm.zip
eagle fajlovi
(155.37 KiB) Downloaded 330 times
Pozdrav, evo i moje verzije termostata. U stvari minimalne izmjene u hardveru. Predajni dio koristi smd čip 16f648 i još par smd komponeneata ostalo isto kao kod komšije. Prijemnik sam morao promijeniti zato što sam imao drugačiji rele. Sve u svemu tu su slike i eagle fajlovi pa kome se dopada neka radi kome ne neka ispravlja :)
još samo da očistim flux
još samo da očistim flux
rxvodovi.jpg (204.95 KiB) Viewed 14380 times
dobro došla kutijica od adsl splitera
dobro došla kutijica od adsl splitera
rxkutija.jpg (182.51 KiB) Viewed 14380 times
User avatar
niho
Pravi forumaš
Pravi forumaš
Posts: 1895
Joined: 24-09-2009, 17:26
Location: Brcko, Bosnia and Herzegovina

Re: Termostat ( TX-RX ) by Ja & Feko

Post by niho »

A ovo je termometar sa predajnikom:
i ovdje se ima šta čistiti
i ovdje se ima šta čistiti
txvodovi.jpg (217.33 KiB) Viewed 14379 times
koji nered :(
koji nered :(
txiznutra.jpg (214.55 KiB) Viewed 14379 times
kutijica je sa E-baya 2,5×5,5×9,5cm
kutijica je sa E-baya 2,5×5,5×9,5cm
txkutija.jpg (191.09 KiB) Viewed 14379 times
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Termostat ( TX-RX ) by Ja & Feko

Post by Black »

Niho kako su ti se pokazali ti fm predajnici\prijamnici. Ja sam nabavio jedan par al im domet 5m max
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat ( TX-RX ) by Ja & Feko

Post by WhiteHead »

Komšija samo da napomenem da sam ja morao sondu izbaciti potpuno van kutije sa 5-6 cm kabla (od IDE konektora).
Sa takvom izvedbom gdje je samo vrh sonde virio vani dolazilo je do njenog zagrijavanja-vjerovatno od trafoa ili LCD displaya.
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 ( TX-RX ) by Ja & Feko

Post by niho »

Zato sam izbacio trafo i komponente koje bi se mogle grijati. Na 5 V mi rade samo rtc i kontroler i tu sam postavio lm78L05 a predajnik ide direktno na 12V. Pratim tako što sam postavio ovaj termostat uz termometar koji sam radio ranije (takođe sa ovog foruma, PIC 16F84 i četvorostruki 7segmentni led displej).
User avatar
niho
Pravi forumaš
Pravi forumaš
Posts: 1895
Joined: 24-09-2009, 17:26
Location: Brcko, Bosnia and Herzegovina

Re: Termostat ( TX-RX ) by Ja & Feko

Post by niho »

@Black nisu loši za ovu cijenu. Napojite ih sa 12V i dodajte im male antenice od bakarne žice dužine oko 16 cm i domet je solidan. Meni fura do peći kroz 2 zida i udaljenost je gotovo 10 m.
@whitehead, imam problem sa rtc-om pokazuje tačno vrijeme nekih 5-6 sekundi nakon podešavanja i onda piše 80:80
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: Termostat ( TX-RX ) by Ja & Feko

Post by WhiteHead »

niho wrote: @whitehead, imam problem sa rtc-om pokazuje tačno vrijeme nekih 5-6 sekundi nakon podešavanja i onda piše 80:80
A nemaš više komada RTC modula da zamijeniš i vidiš jeli do njega?
Ako kaniš pobijediti, ne smiješ izgubiti
Post Reply