Dimmer de kesme içerisinde triyakınj ateşlenememesi

Başlatan gogoce, 20 Ocak 2020, 12:53:57

gogoce

Merhabalar,
Ekte proteus çizimi ve pbp dosyalarını verdiğim dimmer devresinde programı sanırım kesmeye sokamıyorum. Yardımcı olabilir misiniz?
Ne ukalayı affederim nede yapılan haksızlığı ...
Ya sus adam sansınlar , yada adam gibi kouş ilham alsınlar

gogoce

Ne ukalayı affederim nede yapılan haksızlığı ...
Ya sus adam sansınlar , yada adam gibi kouş ilham alsınlar

ete

Bir kesmenin aktive edilmesi genellikle onu ifade eden bit'in set edilmesi ile olur.
Örneğin 12F675 işlemcisinde INT kesmesi için INTCON.4=1 yapılmalı. Bu o işe ait kesmeyi aktive eder.
Programın kesme oluştuğunda bir program etiketine gitmesi için ise ek bir  iki iş daha yapmak gerekiyor;
- birincisi Global kesmeleri aktif etmek gerekir. Bu INTCON.7=1 ile yapılıyor (yada direk INTCON registerine değer vererek de yapılabilir. INTCON=%10010000 komutu hem INT kesemsini hemde global kesmeleri aktive eder.
- Kesme oluştuğunda bir alt programa gidebilmesi için ON INTERRUPT GOTO ETIKET şeklinde bir komut satırına ihtiyaç var ki bu satır sende kapalı sebebini bilmiyorum. Açman gerek.
ETIKET burada alt program ismini temsil ediyor sende bu KESME adını taşıyor.
Kesme altprogramı DISABLE ile başlamalı. Bu, programın kesmeye girmesi durumunda global kesmeleri kapatarak yeniden kesme oluşumunu önlemiş olur. DISABLE bir yerde INTCON.7=0 komutuna karşılık gelir ki pek çok kişi bu komutuda oraya ekliyor halbuki disable bu işi yapıyor zaten.

Programında yanlış olarak ioc = %00000100  komutu bulunuyor. Bu komut pinlerde değişiklik kesmesinde hangi pinin bu kesmeyi yaratacağını belirler. Bu komutta GPIO.2 yi bu amaçla ayarlamış gözüküyorsun. Sen ise INT kesmesi kullanacağına göre bu komutu silmen gerekiyor.
Sonuç olarak ,
Fazlalıkların IOC = %00000100  komutu bunu sil.
Eksiğin ON INTERRUPT GOTO KESME komut satırı ki aslında orada duruyor ama kapatılmış bir satır satırı açman gerek.

Ete

ersangundogdu

gogoce; sıfır geçiş noktasını pic e nasıl algılattın?

ete

Dosya içinde şema var ve orada nasıl agılatıldığı görülüyor.
Tek olumsuzluk 12V luk bir AC şebeke sinyalini kullanmış. Bunun için bir trafo ile 220VAC n,n 12V ta düşürülmesi gerekir.
Ete

gogoce

Alıntı yapılan: ete - 21 Ocak 2020, 11:14:10Dosya içinde şema var ve orada nasıl agılatıldığı görülüyor.
Tek olumsuzluk 12V luk bir AC şebeke sinyalini kullanmış. Bunun için bir trafo ile 220VAC n,n 12V ta düşürülmesi gerekir.
Ete

orjinal devrede bunun için trafo var hocam
Ne ukalayı affederim nede yapılan haksızlığı ...
Ya sus adam sansınlar , yada adam gibi kouş ilham alsınlar

gogoce

ioc yi silip on interrupt satırını açınca düzeldi hocam teşekkürler
Ne ukalayı affederim nede yapılan haksızlığı ...
Ya sus adam sansınlar , yada adam gibi kouş ilham alsınlar

ersangundogdu

1 megaohm luk direnç ile 220 voltu direk pice girerek sıfır noktası algılama olayını internette görmüştüm.
Bu konu hakkında görüşleriniz nedir?

ete

Direk 1Mohm AC den alınır ise INT girişinde düzgün bir sıfır geçiş kare dalga sinyali elde edemezsin. Bu ise dimmerin düzgün çalışmamasına sebep olur. INT girişindeki sıfır geçiş kare dalga sinyali mümkün olduğunca peryodu kısa ve düzgün kenarlı olması gerekir. Aksi halde sıfır geçiş tam olarak sıfır geçiş noktasında algılanamaz ve buda dim işleminde kaymalara sebep olur zamanlaman tutmaz buna bağlı bir çok fazladan olumsuzluklar görülebilir. Kullanamazsın demiyorum ama devrenin kalitesi çok fazla düşer. Daha da önemlisi izolasyon sorunarı çıkabilir. Bir nedenle o direnç yanar ise Pic pinine direk 220VAC ulaşır ve devrende bir çok eleman yanar. Bence bu hepsinden önemli.

Ete


Powered by EzPortal