16f877a çıkışı ilk enerjide aktif oluyor

Başlatan F®T, 01 Ekim 2011, 18:38:27

F®T

#15
ETE hocam selamlar.bu ilk açılışta sadece görsellik olsun diye yaptığım bişi.benim dediğim sorun bu 3 led ve trip çıkışının ilk enerjide aktif olmaları.bu 3 ledin aktif olması çokta sorun olmaz ama trip çıkışının aktif olması istemediğim bir durum oluşturuyor.
hocam tüm dosyaları yüklüyorum.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

ete

#16
PortB.7 pinine bağlı olan TRIPOUT (Symbol TRIPOUT      = PORTB.7) bir çıkış pinimidir giriş pinimidir. Programda Giriş pini olarak ayarlanmış.!!!!!!

Bir defa programı yeniden bir incele istersen. Bana iki adet hex dosyası yollamışsın. Birinin PBP dosyasıda mevcut.
Yalnızca Hex olarak yolladığında çıkışlar söylediğin gibi ilk açılışta aktif oluyorlar. Ama ikinci hex dosyası ile her şey doğru çalışıyor!!!.

Ancak PORTB.7 pinini çıkış yaparsam ilk açılışta bir HIGH olup LOW'a dönüyor. Seni rahatsız eden husus bu sanırım.
Bu durumda şunu yapmanı öneririm.
PORTA=0:TRISA=%xxxxxxxxx
PORTB=0:TRISB=%01111111
PORTC=0:TRISC=şeklinde yap Tris tanımlamalarını

Bu şekilde düzenlersen PORTB.7 doğru çalışıyor. Diğerleride doğru çalışacaktır.

Ete

F®T

#17
ETE hocam kusura bakmayın farklı port çıkışı ile denemek için yapmıştım  portb.7 ve portd.7 yi ondan karışıklık olmuş.yukarda mesaj ekini düzenledim php olarak sorun devam ediyor.

ETE hocam en son değişiklikleri yaptım açılışta portlar normal.ama adc ler bu sefer tam çalışmıyor.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

ete

Adc okuma define ayarlarını aşağıdaki şekilde yap.
DEFINE ADC_BITS 10     ' ADCIN resolution  (Bits)
DEFINE ADC_CLOCK 2     ' ADC clock source  (Fosc/32)
DEFINE ADC_SAMPLEUS 11 ' ADC sampling time (uSec)

Analog girişlerde bağlamış olduğun bütün 100nf kondansatörleri kaldır.

İki ADC okuma arasına mutlaka 20us lik bir gecikme koy.
Sonra bak bakalım ADC ler çalışıyormu?

Ete



F®T

ETE hocam adc değişikliklerini yaptım fakat 11us okuma dan dolayı hata verdi bende 50us yaptım hatayı kesti.şu anda sorun görünmüyor.ama asıl karta yükleme yapınca kesinleşir.ayrıca 100nf lar sadece proteuse çalışması içinmi kaldırılmalı yoksa gerçektende kartta kullanmada sıkıntı yaparmı.ben onları adc lerin daha stabil kalması için koymuştum.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

ete

Normalde ADC hattına kondansatör bağlamak sakıncalı (bence). Zira ADC okuması içeride bulunan kondansatörün şarj edilip deşarj süresini ölçerek yapılıyor. Aynı hatta sende kondansatör bağlarsan okuma hızı düşüyor. Satabil olmasının sebebide bu zaten.
En iyisi okuma adedini artırıp ortalama almaktır.
Gerçek devrende de kullanmasan iyi olur. Ama denemeni yaparsın bozulma yada gecikme yoksa kullanırsın.
Ben genelde kondansatör kullanmıyorum ne isisde nede gerçek devrede.

Ete



F®T

anladım Ete hocam.
her türlü yardımınız için teşekkür ediyorum.geriye gerçek devrede denemek kalıyor.
iyi günler diliyorum.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

F®T

ETE hocam programda her şey normal. analog girişlere dc voltaj seviyesi verdiğimde çıkış portuda kararlı çıkış veriyor.ama ac voltaj verince çıkış aktif oluyor veya sıfır oluyor rastgele durum oluşuyor.analogları filtre etmiştim 50 okuma ile ortalama almıştım .acaba okuma sayısını 50 hz lik bir ac voltajda kaç yapmak uygun olur.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

ete

Çok tecrübem yok ama bildiğim kadarı ile ADC girişlerine AC sinyal vermemen gerekir. En azından sinyali bir diyottan geçirip 5V seviyesinide gerekirse gerilim bölücü ile ayarladıktan sonra ADC girişine vermeli ve o şekilde ADC ölçümü yapmalısın.

Ete

inventor

ADC girişine koyup sonradan kaldırdığın 100 nf ları trimpot dan önce diyot grubunun çıkışına koyman gerekiyor.  Bu şekilde bir deneme yapıp sonucu bildirirsin. Eğer olmazsa başka bir yöntem daha var. Ama olacaktır
İlmin en büyük düşmanı, sabırsızlıktır. (Şems-i Tırmizi)

F®T

Alıntı yapılan: ete - 10 Ekim 2011, 23:24:20
Çok tecrübem yok ama bildiğim kadarı ile ADC girişlerine AC sinyal vermemen gerekir. En azından sinyali bir diyottan geçirip 5V seviyesinide gerekirse gerilim bölücü ile ayarladıktan sonra ADC girişine vermeli ve o şekilde ADC ölçümü yapmalısın.

Ete
Selamlar.ETE hocam ben eksik sordum heralde.aslında ac volt daha önce vermiş olduğum şekilde köprü ile dogrultuluyor.

Alıntı yapılan: inventor - 11 Ekim 2011, 08:06:33
ADC girişine koyup sonradan kaldırdığın 100 nf ları trimpot dan önce diyot grubunun çıkışına koyman gerekiyor.  Bu şekilde bir deneme yapıp sonucu bildirirsin. Eğer olmazsa başka bir yöntem daha var. Ama olacaktır

İnventor hocam dediğiniz gibi de denedim yine aynı sorun oluşuyor.programdan her adc den 40 okuma yapıyordum 100 okumaya çıkardım.biraz stabil oldu.ama bu seferde kesme süresi uzadı.aşırı akım kontrolü yapacağım için hız önemli hale geliyor.60hz olan frekansta 1 peryod 16ms de oluşuyor ben en azından kesmeyi 8 ms de bitirmek istiyorum.dediğiniz diğer yöntemleride denemek isterim.iyi çalışmalar.(prog ve şema ilk mesajlarda mevcut.)
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

ete

Dimmer devrlerinde sıklıkla gördüğüm gibi AC voltajı köprü ile doğrultsan bile doğrulmuş voltaja bir kondansatör bağlamaz isen orada 100 hzlik yarım sinüs işaretini görürsün.  Devreni görmediğim için uyarmak istiyorum. Bu durumda ADC okumaları sinüsün muhtelif konumlarına denk gelirse voltajda inme çıkma olacaktır. Bundan olmasın. Dorğulmadan sonra birde 10 Mf kondansatör bağlarsan sorun çözülür gibime geliyor.  Devrende kondansatörde var ise sözümü geri alırım!!.

Ete


F®T

#27
hocam köprü çıkışlarına 100nf kondansatör eklemiştim.sanırım değeri biraz yükseltmem gerekiyor.ama ölçmede gecikme oluşurmu diye tereddüt ediyorum.zira zaman önemli.sizce ilk sayfadaki vermiş olduğum  programda kesme ayarlarında veya programda değişiklik yapılıp dahada hızlı ölçme durumu oluşturulabilirmi?
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

inventor

ferittt,
burada ilk halletmen gereken konu adc girişine tam doğru akım vermen konusu olmalı. adc girişine darbeli sinyal geldiği sürece sorun yaşayacaksın. Senin köprü diyot çıkışına bağlayacağın kondansatör adc ölçümünü etkilemez,sadece AC girişteki sinyalin inip çıkmalarında bir geceikmeye neden olur. Senin programda yaptığın ortalama alma işini AC girişe göre orada kondansatör yapmış gibi kabul et. Kondansatörü diyotun çıkışına takacaksın en yakın noktaya.
Taktığın kondansatör yeterli gelmezse çıkışa seri bir bobin atman yeterli olacaktır. 50 HZ lik sinyali filtrelemek çok sorun değildir. Bobin mutlaka kesecektir.
İlmin en büyük düşmanı, sabırsızlıktır. (Şems-i Tırmizi)

ete

Aslında bir skop olsa bakabilesen sorunu orada göreceksin büyük ihtimal ile. Inventorun belirtmeye çalıştığı gibi iki türlü sorun var orada. Birincisi senin sinyalinin filtre edilmemiş darbeleri ayrıca çevreden gelebilecek 50 Hzlik darbeler. Bunlar gürültü sünyalidir ve ADC okumasını çok hemde çok etkiler. İlk alınacak tedbirlerin başında köprü ile doğrultmuş olduğun sinyalin filtre edilmesi. Bunun için en azından bir 10-47-100mF dan birisi köprü çıkışının hemen dibine atılmalı.
Daha sonra yeniden ölçüm yaptırıp bakılmalıdır.

Ete

Powered by EzPortal