pic c ile yazılmış ac dimmer devresi

Başlatan i3uz, 13 Haziran 2018, 16:33:07

i3uz

Arkadaşlar merhaba, Pic C ile yazılmış Ac dimmer devresi örnekleri lazım.. devre şemasındaki gibi zero noktası olayını codelarla anlayabileceğim,  örnek C kodları varsa elinizde burda yayınlarsanız sevinirim.. Adamlar code yazmışlar ama hepsi kendi kütüphanelerini kullanmışlar. dolasıyla hangi komutla sistem çalışmış çözemedim.. burdaki amaç 220v lambanın parlaklığını değiştirebilecek bir devre kodları...
aşağıdaki devredeki gibi olabilir. olmazsada diğer piclerle 12f683,12f675, 12f629 gibi herhangi bir pic için yazılmış Pic C kodu lazım.. elinizde örnek kodlarınız varsa burda yayınlarsanız sevinirim..
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

Furkan KELEŞOĞLU

Sistemin calışmasını kısaca özetliyeyim bende bunu görünce bir calışma yaptım. fakat elimde MCO isimli opto serisi olmadığı icin deneme kartındaki butonla ve led ile gözlemledim calışıyor ama AC de ne yapar bilemiyorum.

Şimdi sistem şöyle calışıyor Triyakı sürebilmek icin pwm ile , 0 anındaki noktayı yakalayıp 0 anında PWM serip Yumuşak yol verdirmeye calışıyoruz.    Bunun icin 0 geçiş dedektörü ile Sinüs eğrisinde 0 geçişleri algılıyoruz bu algılamayıda opta ile yapıp optonun cıkışını Kullandığımız mikro denetleycinin HARİCİ KESME PİNİNE veriyoruz. böylelikle her 0 noktasında Kesme pinine tetik vererek 0 geçişe denk geldiğini bildirecek.

Program kısmında'da Kesme alt programı kurulup Tüm kesmelere izin verilip Harici kesmeyi başlatmak gerekiyor. birde onun OPTION REGİSTERİNDE YÜKSELEN VE DÜŞEN KENAR BİTLERİNİN SECİMİN YAPILMASI GEREKİYOR GELEN TETİK SİNYALİNE GÖRE.
Daha sonra PWM kurulup Ana program sonsuz döngü icinde Analog kanaldan 10Kohmlk potu devamlı okuyup pwm degerini ayarlamaya calışıyoruz (1024(okunan Adc değer)/4=255(PWM değerimiz)) Her kesme anında kesme alt programına gittiğinde Tirayağa yine MCO serisi opto üstünden PWM verilerek sürülmeye başlanır.pwm verdikten sonra Kesme bayrağını 0 layıp tekrardan kurarızki bir dahaki geçiş noktasında yine pwm verebilelim.
Mekatronik Teknikeri. <br />Elektrik-Elektronik Teknisyeni.

i3uz

#2
Alıntı yapılan: Furkan41 - 14 Haziran 2018, 04:08:32Sistemin calışmasını kısaca özetliyeyim bende bunu görünce bir calışma yaptım. fakat elimde MCO isimli opto serisi olmadığı icin deneme kartındaki butonla ve led ile gözlemledim calışıyor ama AC de ne yapar bilemiyorum.

Şimdi sistem şöyle calışıyor Triyakı sürebilmek icin pwm ile , 0 anındaki noktayı yakalayıp 0 anında PWM serip Yumuşak yol verdirmeye calışıyoruz.    Bunun icin 0 geçiş dedektörü ile Sinüs eğrisinde 0 geçişleri algılıyoruz bu algılamayıda opta ile yapıp optonun cıkışını Kullandığımız mikro denetleycinin HARİCİ KESME PİNİNE veriyoruz. böylelikle her 0 noktasında Kesme pinine tetik vererek 0 geçişe denk geldiğini bildirecek.

Program kısmında'da Kesme alt programı kurulup Tüm kesmelere izin verilip Harici kesmeyi başlatmak gerekiyor. birde onun OPTION REGİSTERİNDE YÜKSELEN VE DÜŞEN KENAR BİTLERİNİN SECİMİN YAPILMASI GEREKİYOR GELEN TETİK SİNYALİNE GÖRE.
Daha sonra PWM kurulup Ana program sonsuz döngü icinde Analog kanaldan 10Kohmlk potu devamlı okuyup pwm degerini ayarlamaya calışıyoruz (1024(okunan Adc değer)/4=255(PWM değerimiz)) Her kesme anında kesme alt programına gittiğinde Tirayağa yine MCO serisi opto üstünden PWM verilerek sürülmeye başlanır.pwm verdikten sonra Kesme bayrağını 0 layıp tekrardan kurarızki bir dahaki geçiş noktasında yine pwm verebilelim.
Cok guzel anlamisin furkan kardeş, ama bi örnek kodla gorebilsem bu olayi.. hazir kodlarda dogru durust bisey yokk.. cok iyide programliyamiyorum.. hazir kodlari karistirarak biseyler yapiyorum..
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

seron

Konudan zerre kadar anlamıyorum ama boş durmak istemedim. Kalabalık yaptığım için özür dileyerek bir iki link atıp kaçayım:

Acele etmeyip sayfayı teeee aşağılara kadar en azından gözatmak gerekiyor:
http://www.instructables.com/id/Arduino-controlled-light-dimmer-The-circuit/

İşini görürmü görmezmi bilmiyorum görmezse linke bağlı siteyi de gezebilirsin:
https://elektrokod.wordpress.com/2013/12/22/dijital-ac-dimmer/

Aramayı ingilizce yaptığım için 320voltun ingilizce veriyonu karşıma çıktı ama içerik hakkında bilgim yok linkin sakladığı dosya zengin olabilir:
https://320volt.com/en/mikroislemciler-ile-dimer-devreleri/

Kolay gelsin benden bu kadar.

i3uz

Alıntı yapılan: seron - 14 Haziran 2018, 15:52:56Konudan zerre kadar anlamıyorum ama boş durmak istemedim. Kalabalık yaptığım için özür dileyerek bir iki link atıp kaçayım:

Acele etmeyip sayfayı teeee aşağılara kadar en azından gözatmak gerekiyor:
http://www.instructables.com/id/Arduino-controlled-light-dimmer-The-circuit/

İşini görürmü görmezmi bilmiyorum görmezse linke bağlı siteyi de gezebilirsin:
https://elektrokod.wordpress.com/2013/12/22/dijital-ac-dimmer/

Aramayı ingilizce yaptığım için 320voltun ingilizce veriyonu karşıma çıktı ama içerik hakkında bilgim yok linkin sakladığı dosya zengin olabilir:
https://320volt.com/en/mikroislemciler-ile-dimer-devreleri/

Kolay gelsin benden bu kadar.
teşekürler seronda bunlar değil adam lcdyi koymuş kodları karıştırmış.. örnek devredeki gibi sade C de yazılmış kodlar lazım...
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

i3uz

#5
arkadaşlar internette bi kod buldum.. bunun devre şeması sizce nasıldır..?


#fuses INTRC_IO, NOWDT, NOMCLR, PROTECT, NOBROWNOUT
#include <math.h>
#use delay(clock=4000000)
#define timer 1
int16 adc;
int i=0;

#int_timer0
void zero_crossing()
{
set_timer0(timer);
set_adc_channel(0);
adc=read_adc();

if(input(pin_a1)==0)
{
i++;
while(input(pin_a1)==0)
{i=i;}
delay_us(adc*50);
output_high(pin_a2);
delay_us(11);
output_low(pin_a2);
}}
void main()
{
setup_adc(ADC_CLOCK_INTERNAL );
setup_adc_ports( AN0_analog);
delay_ms(1);
set_adc_channel(0);
setup_timer_0(RTCC_INTERNAL | RTCC_DIV_1);
set_timer0(timer);

enable_interrupts(INT_TIMER0);
enable_interrupts(GLOBAL);
while(1);}
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

Furkan KELEŞOĞLU

#6
Bu kod yanlis ve eksik , suan atolyede degilim ve yarin atolyeye gidecegim. Ama EtePic sayfasina goz atmanizi veya konu acmanizi oneririm erol  tahir hoca iyi bir sekilde aciklar daha once cok acilmis konu var forumun ara kismindanda arastirabilirsiniz.
Mekatronik Teknikeri. <br />Elektrik-Elektronik Teknisyeni.

Furkan KELEŞOĞLU

Bu kod yanlis ve eksik , suan atolyede degilim ve yarin atolyeye gidecegim. Ama EtePic sayfasina goz atmanizi veya konu acmanizi oneririm erom tahir hoca iyi bir sekilde aciklar daha once cok acilmis konu var forumun ara kismindanda arastirabilirsiniz.
Mekatronik Teknikeri. <br />Elektrik-Elektronik Teknisyeni.

i3uz

#8
Alıntı yapılan: Furkan41 - 19 Haziran 2018, 19:39:01Bu kod yanlis ve eksik , suan atolyede degilim ve yarin atolyeye gidecegim. Ama EtePic sayfasina goz atmanizi veya konu acmanizi oneririm erom tahir hoca iyi bir sekilde aciklar daha once cok acilmis konu var forumun ara kismindanda arastirabilirsiniz.
siteye üye oldum. Cok guzel ornekler var tatmin edici tesekkurlerr
Teori gerçek verileri vermez, pratikte yaptıkların doğru verilerdir.
Tanrı Türk'ü korusun
        TA1OME

Hızlı Yanıt

Not: Bu konu bir moderatör tarafından onaylanmadan görüntülenmeyecektir.

Adı:
E-Posta:
Doğrulama:
Lütfen bu kutuyu boş bırakın:
IRFP250 Nedir:
kısayollar: göndermek için alt+s veya önizleme yapmak için alt+p'ye basın