TRİACLI ISI KONTROL DEVRESİ

Başlatan F®T, 21 Ocak 2012, 13:32:47

F®T

       Arkadaşlar bu devrenin  programının yazılmasında ETE hocanın derslerinden faydalanılmıştır.kendisine teşekkür ediyorum.

      Devremizin eksikleri olabilir.Eksikleri hep beraber düzeltirsek ortaya güzel bir iş çıkacaktır.herkesin katkıları için şimdiden teşekkür ediyorum.
      Devrede potansiyometre aracılığı ile ısıset noktası  belirlenir.ekranda pot ayarı görülür.daha sonra ısı ile set noktası arasındaki farka göre triac ateşleme açısı ayarlanır.eger ısı set noktasından büyükse triac ateşlemesi kesilir.eger ısı set noktasından 5 fark küçük ise triac tam iletime sokulur.5 derecelik ara değerler içinde formüle göre ateşleme açısı belirlenir.ekranda sürekli olarak ısı okunur.pot ile ısıset değiştiği anda ekranda [] setayarı[] şeklinde görülür.

Device 16F88
XTAL 8
Device 16F88                      'işlemci 16F88                             
Device 16F88, WDT_OFF             'Watch Dog timer Kapatıldı.
Device 16F88, PWRT_ON             'Power on timer açık
Device 16F88, PROTECT_OFF         'Kod Protek kapalı
Device 16F88, LVP_OFF             'Low Voltage Programming kapalı
Device 16F88, BOD_ON              'Brow Out Detect açık
Device 16F88, MCLR_off            'MCLR kullanılmıyor
Device 16F88, FCMEN_OFF           'Fail Safe Clok Monitör kapalı
Device 16F88, IESO_OFF            'Internal/External Swıtch Over kapatıldı
Device 16F88, CCPMX_OFF           'CCPMX kapalı  (default)
Device 16F88, DEBUG_OFF           'Debug kapalı
Device 16F88, WRT_OFF             'Flash Write Protect kapalı
Device 16F88, CPD_OFF             'Data code Protection kapalı
Device 16F88, INTRC_OSC_NOCLKOUT  'Dahili osilatör kullanılacak

CMCON=7  'Comparatör pinleri iptal hepsi giriş çıkış

ANSEL=%00000001  ;Analog Girişler İptal

ADCON0=%11000101

ADCON1=%10000000

OSCCON=%01110110

INTCON=%10110000

OPTION_REG=%11000011  'Pull up dirençleri İPTAL- Bölme oranı 1/16

Declare ADIN_RES 10       ' 10-bit result required
Declare ADIN_TAD FRC      ' RC OSC chosen
Declare ADIN_STIME 50     ' Allow 50us sample time   

PORTA=0
TRISA=%00000001
PORTB=0
TRISB=%00000001       

      Symbol B0F  = INTCON.1 'RB0 KESME BAYRAGI
      Symbol T0F  = INTCON.2 'TMR0 KESME BAYRAGI
      Symbol B0E  = INTCON.4 'RB0 KESME YETKISI
      Symbol T0E  = INTCON.5 'TMRO KESME YETKİSİ     
      Symbol KAE  = INTCON.7 'GENEL KESME YETKISI
     
      TMR0=55
      B0F =0
      T0F =0
      KAE =0 'TUM KESMELER KAPALI
      T0E =1
      B0E =1 'RB0 KESMESİ AKTİF
      KAE =1 'TUM KESMELER AÇIK

      Dim Temp          As Word
      Dim ISI           As Word
      Dim ACI           As Float
      Dim ACII          As Float
      Dim KAT           As Word
      Dim BIR           As Byte   
      Dim ONN           As Byte 
      Dim SAY           As Byte
      Dim RAKAM         As Byte 
      Dim BUSY          As Bit
      Dim X             As Byte
      Dim ISISET        As Word
      Dim TISI          As Word
      Dim TTISI         As Word
  Dim PERYOD        As Float
      Dim G             As Word
      Dim B             As Bit
      Dim C             As Bit
      Dim D             As Bit
     
      Symbol SHCP =PORTB.7
      Symbol DS   =PORTB.6
      Symbol STCP =PORTB.5
     
      Symbol TR1  =PORTB.4
      Symbol TR2  =PORTB.3
     
      Symbol DQ   =PORTB.2
      Symbol BUZ  =PORTB.1
      Symbol TRIAC=PORTA.1
      Symbol SIRA =PORTA.2
     
On Interrupt GoTo KESME 'YAZILIMSAL KESMEYE GİT

DelayMS 500

Clear 
  GoSub ISIOKU
      TRIAC=0
      B=0
      C=0
      D=0
                                     
BASLA:     
      TTISI=ADIn 0        'POT OKUMA
      TISI=(TTISI-33)/11 'MAX POT 90 DERECE AYAR YAPACAK
           
      If TISI=ISISET  Then
      B=0
      If C=0 Then
      C=1
      GoSub FT
      EndIf             
      GoSub ISIOKU
      GoSub ISIBAK
      Else
      C=0
      If B=0 Then
      B=1
      GoSub FT
      EndIf
      ISISET=TISI
      GoSub POTBAK
      GoSub ISIOKU
      GoSub GECIKME             
      EndIf
     
      GoSub ACIVEFREKANSOKU
      GoSub BUZER
     
      GoTo  BASLA

'ACI VE FREKANSOKU

'FREKANS OKUMA

ACIVEFREKANSOKU:

      PERYOD=PulsIn PORTB.0,1
      'FREKANS=40400/PERYOD
'ACI HESAPLAMA

If    ISISET-ISI<=5  Then   
      PERYOD=PERYOD*10
      KAT=PERYOD/5
      ACII=(ISISET-ISI)*KAT
      ACI= PERYOD-ACII
EndIf                           
      Return
             
ISIOKU:

      OWrite   DQ, 1, [$CC, $44]
BEKLE:
      ORead    DQ, 4, [BUSY]    ' Busy değerini oku
If    BUSY = 0 Then BEKLE    ' hala meşgulmü? , evet ise goto Bekle..!
      OWrite   DQ, 1, [$CC, $BE]
      ORead DQ, 2,[Temp.LowByte,Temp.HighByte]
      Temp = (((Temp >>4) * 100) - 25) )/100
      Temp = (Temp/100)+1
      ISI=Temp
      Return

'7 SEGMENT YAZMA KISMI BAK ISI ,BAK1 ISISET ,BAK2 FREKANSYAZ     
     
ISIBAK:     
        SAY=ISI Dig 0
        GoSub AL:BIR=RAKAM             
        SAY=ISI Dig 1
        GoSub AL:ONN=RAKAM
        Return
POTBAK:     
        SAY=ISISET Dig 0
        GoSub AL:BIR=RAKAM             
        SAY=ISISET Dig 1
        GoSub AL:ONN=RAKAM
        Return
FT:       
        SAY=11
        GoSub AL:BIR=RAKAM             
        SAY=10
        GoSub AL:ONN=RAKAM
        GoSub GECIKME
        Return
       
AL:    LookUpL SAY,[63,6,91,79,102,109,125,7,127,111,57,15],RAKAM
       Return
       
GECIKME:
       For G=0 To 6000
       DelayUS 1
       Next
       Return
       
BUZER:
      If ISI=ISISET And D=0 Then       
      Sound BUZ,[110,2]
      D=1
      EndIf
      If ISI<>ISISET Then D=0     
      Return
     
  Disable

KESME:
   If B0F=1 Then
       B0E=0
       If ISI>ISISET Then
       GoTo SALLA
       EndIf
           
       DelayUS ACI
       TRIAC=1         
       DelayUS 50
       EndIf
         
   If T0F=1  Then
       T0E=0
       Toggle SIRA                     
       If SIRA=0 Then       
       TR2=0
       SHOut DS,SHCP,1,[BIR]
       PulsOut STCP,1
       TR1=1
       EndIf       
       If SIRA=1 Then
       TR1=0
       SHOut DS,SHCP,1,[ONN]     
       PulsOut STCP,1       
       TR2=1
       EndIf
       EndIf   
                     
SALLA:
      TRIAC=0       
       
      TMR0=55
      B0F  =0
      T0F  =0
      B0E  =1
      T0E  =1     
      Resume
      Enable
      End 'program sonu
 
   
     

Arkadaşlar bazı yanlışlar vardı rar dosyasını tekrar düzenleyip yükledim.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

Hattuşa

#1
s.a.
ferrit hocam anlaşılan sende bir ısı ayarlı havya yapma peşindesin  ;D
ben ete hocamın devresini yapacağım kartı bastımda dizmeye fırsat arıyorum.
ama sizin devrede güzel sonucu sabırla bekliyoruz

F®T

#2
selamlar.
ben havya ile ilgilenmiyorum.  :) benim amacım potu çevirince set noktasını otomatik olarak görmek.daha sonrada ortam ısısını ölçüp ufonun  ;D ortam ısısını setlediğim noktaya gelmesini saglamak ve orda regülasyon yapması.basit bir kullanımı olması için pot düşündüm.şöyle bir düşüncem var kim ne der bilmiyorum.yoruma açık.ufolar devreye girip çıkıyor.tabi rezistanslar soguyor ısınıyor.devreye girme anında rezistanslar soguk oldugu için dirençleri düşük olduğundan fazla akım geçiyor.buda pek faydalı bir tüketim değil.ben bu devre ile sogumasına engel olup fixlediğim noktada ısının sabit kalmasını saglayıp daha kullanıla bilir bir enerji tüketimi yapmayı sağlarmıyım diye düşünüyorum.neticede belki aynı enerji harcanacak ama en azından girme çıkma anında harcanan boş enerji ve telin soguyup ısınmasından kaynaklanan yıpranması engellenmiş olur ümidindeyim.yoruma açık herkes fikirlerini paylaşırsa sevinirim. ;D
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

est32

bu durumda cihazın ömrü de azalmış olmaz mı?
Tabii bunu en iyi üretici bilecektir, acaba cihazın rezistans ömrü yanma süresince mi azalıyor yoksa yanıp sönme sırasında mı yoksa her ikisinde de mi?
Tasarruflu ampuller genelde açma kapama yüzünden kısa ömürlü oluyor. Belki ısıtıcılar yanma süresi yüzünden kısa ömürlü oluyordur, çünkü ısı cihazların ömrünü azaltan en büyük etmen.

F®T

#4
Olabilirde .sıcak soğuk değişimide rezistans için daha fazla zararlıdır diye düşünüyorum.ayrıca üreticiler artık geri dönüşümden servisten daha fazla para kazanma peşinde.  ;D
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

est32

evet işte bu yüzden bu konuya cevap vermezler :)

Mucit23

@ferittt
Daha önce http://etepic.com/index.php?topic=190.0 bu başlık altında @inventor isimli arkadaşımız örnekli bir şekilde PID algooritmasını anlattı. Sende bu sistemde Bu algooritmayı kullanabilirsin. Isıyı set değerinde tutalbilmek için PID uygulamalısın. Hem PID 'in kullanımına örnekte olur. En azından PI kontrol böyle bir sistemde çok güzel çalışır.
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

F®T

evet Mucit23 arkadaşım aynı konuyu bende takip ediyorum aslında.şu hali ile devrede ya benim program yazma kapasitemden yada entegrenin kapasitesinden kaynaklanan sorunlar var .bu sorunlar çözülürse dediğin gibi pıd ,olmasa bile pı için iyi bir örnek çalışma olabilir. burda hem tmro hemde rb0 kesmesi kullanıyorum.50 hz de saniyede 100 defa rb0 kesmesi oluyor.triac ı her iki alternansta tetiklemek için.bide 7segment için tmro kesmesi işin içine giriyor.ama benim pc hızındanmı ne tam simülasyon sonucunu iyi göremiyorum.simüle ederseniz paylaşırsanız sevinirim. cpu %100 full çalışıyor kasıyor pc.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

F®T

Alıntı yapılan: est32 - 22 Ocak 2012, 22:10:57
evet işte bu yüzden bu konuya cevap vermezler :)

;D burda zaten üreticilerden bir cevap bekleme gibi bir beklentimiz yok.ben kendi kendime konuşuyorum. ;D
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

Mucit23

Alıntı yapılan: ferittt - 22 Ocak 2012, 22:32:20
evet Mucit23 arkadaşım aynı konuyu bende takip ediyorum aslında.şu hali ile devrede ya benim program yazma kapasitemden yada entegrenin kapasitesinden kaynaklanan sorunlar var .bu sorunlar çözülürse dediğin gibi pıd ,olmasa bile pı için iyi bir örnek çalışma olabilir. burda hem tmro hemde rb0 kesmesi kullanıyorum.50 hz de saniyede 100 defa rb0 kesmesi oluyor.triac ı her iki alternansta tetiklemek için.bide 7segment için tmro kesmesi işin içine giriyor.ama benim pc hızındanmı ne tam simülasyon sonucunu iyi göremiyorum.simüle ederseniz paylaşırsanız sevinirim. cpu %100 full çalışıyor kasıyor pc.
Bende Devre güzel çalışıyor. Titreme felan yok. İşlemci %70 yoğunlukta çalışıyor.
Bir ulusu yok etmenin En iyi yolu o ulusun dilini yok etmektir.

www.arectron.com/

F®T

#10
pc cpu su %100 olunca skıntı yapıyor.sanki segmentler tektek yanıyor gibi.bide ısı 85 olarak geliyor.Mucit23 zaten programa baktıysen oransal kontrol var.sadece 5 derece ile sınırladım.5 derece üstünde %100 triac sürülüyor sonraki her derecede %20 kısma oluyor.enson set=ısı olunca triac tamamen devreden çıkıyor.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

ersangundogdu

Ferit abi bu devreyi 2x16 lcd ye göre değiştirme imkanın olursa Altınkaya'nın çok şık bir kutusu var. O kutuya göre pcb çizebilirim.

F®T

ersan şu anda çok yoğunum.ayrıca lcd ile ilgili bir değer yokki lcd bu iş için fazla.devre sürekli sıcaklığı gösteriyor eğer set ayarlarsan seti gösterip tekrar sıcaklığa dönüyor.set ayarınıda pot ile yapıyorsun kullanımı kolay olsun diye öyle düşünmüştüm.bu tip devrelerde uzaktan görünüm olması için 7 segment daha uygun.bana kalırsa sen bu şekilde düşün fazla uğraşma daha sağlıklı olur.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

ersangundogdu

Abi çizeriz çizmesinede, iş kutulamaya gelince zorlanırız. Ayrıca nokta ledleri kullanılmıyor sanırım. Kullanılsa bile tr ile sürmeye gerek yok değilmi? Displayler ortak anot olacak. 57 mm lik display büyük mü olur? Pcb yi 2 parça yapmak gerekecek. Bir tanesi ana kart olarak, diğeri display kartı olarak. Detay verirsen çizmeye başlayayım.

F®T

7 seg de nokta kullanılmıyor boşta olmasın diye çizmiştim çizsende çizmesende sorun yok.istediğin display olur çokta büyük olması gerekmez devre boşuna büyür.dediğin gibi 7 seg kartı ile pot aynı kartta olursa daha iyi olur.7seg ortak katod olacak.7 seg kartında ,buzzer ,595 entegresi, pot,18b20 olursa daha iyi olur diye düşünüyorum.diğer kartta ise besleme,pic,triac ve sürücüsü olur.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

Powered by EzPortal