PBP 16F887 ile PWM üretimi

Başlatan certy, 31 Temmuz 2013, 23:17:42

certy

16F887 kullanarak donanımsal olarak PWM üretmek istiyorum. Ama 16F887'nin PWM üretme işi biraz farklıymış sanırım. 16F887 ile nasıl PWM üretebilirim?
TA1USS

XX_CİHAN_XX

Google da ilk 10 saniye içinde elde ettiğim bilgiler

http://electronicseverywhere.blogspot.com/2010/09/pic16f887877-programming-in-c-tutorial_15.html
http://www.micro-examples.com/public/microex-navig/doc/097-pwm-calculator.html

Bu konuda internet ortamında tatmin edici oranda açıklama ve kod örneği o kadar çok var ki sadece birkaç saniye içinde soruduğun sorunun cevabını bulabilirdin...
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

certy

#2
Alıntı yapılan: XX_CİHAN_XX - 01 Ağustos 2013, 03:09:02
Google da ilk 10 saniye içinde elde ettiğim bilgiler

http://electronicseverywhere.blogspot.com/2010/09/pic16f887877-programming-in-c-tutorial_15.html
http://www.micro-examples.com/public/microex-navig/doc/097-pwm-calculator.html

Bu konuda internet ortamında tatmin edici oranda açıklama ve kod örneği o kadar çok var ki sadece birkaç saniye içinde soruduğun sorunun cevabını bulabilirdin...

Geçende bir konu açmıştım.

https://www.picproje.org/index.php/topic,48003.0.html

Arkadaş burada bana ya timeri kullanmamı yada 16F887'nin donanımsal pwm özelliğini kullanmamı önerdi. Ve bende timer kullanmadan bu işi halletmek istiyorum. Çünkü yazacağım programın işlevi bunu gerektiriyor. Ayrıca ben 50 hz üretmek istiyorum. Senin verdiğin linkte de hesaplamalarda 2 mhz bir kristalle en fazla 117 hz civarına iniyor ki bu da benim işimi görmez.

Lütfen burada bilip bilmeden yok google'da arasaydın, yok oraya buraya baksaydın bulurdun gibi şeyler söylemeyelim. Ayrıca burası bir forum. Kimse kimseye hangi konu hakkında nereden yardım alacağını soracak değil. Bu arada ben bu programlama işinde, pwm olsun, diğer konularda olsun, hazır hesaplayıcı programlarla değilde, ayrıntılı bir şekilde hakkını vererek öğrenmek istiyorum.
TA1USS

blacklogic

C kullanarak yazabilirim sana istediğin programı. Ne yapmak istediğini söyle yeter. Duty ve frekans kaç olmalı ? Picde kullanacağın kristal kaç mhz olacak ?

certy

Alıntı yapılan: blacklogic - 01 Ağustos 2013, 04:55:24
C kullanarak yazabilirim sana istediğin programı. Ne yapmak istediğini söyle yeter. Duty ve frekans kaç olmalı ? Picde kullanacağın kristal kaç mhz olacak ?

Teşekkür ederim. Ancak PBP ile yazmam lazım. Çünkü programda başka özelliklerde olacak. (İnverter tasarlamaya çalışıyorum da.)

Ben pic basic'de bir etiket altında high/low komutlarıyla basit bir şekilde istediğim pwm'i çıkarıyorum ama programa başka bir etiket eklediğimde pwn çıkmıyor. Geri kalan kısım ya tam olarak ya da kısmen olarak çalışmaya devam ediyor.
TA1USS

blacklogic

Alıntı yapılan: certy - 01 Ağustos 2013, 05:40:24
Teşekkür ederim. Ancak PBP ile yazmam lazım. Çünkü programda başka özelliklerde olacak. (İnverter tasarlamaya çalışıyorum da.)

Ben pic basic'de bir etiket altında high/low komutlarıyla basit bir şekilde istediğim pwm'i çıkarıyorum ama programa başka bir etiket eklediğimde pwn çıkmıyor. Geri kalan kısım ya tam olarak ya da kısmen olarak çalışmaya devam ediyor.
İnverter derken ? Dcden ac ye mi ?

certy

TA1USS

blacklogic

Alıntı yapılan: certy - 01 Ağustos 2013, 06:48:15
Evet.
Bende böyle bir çalışma yapmıştır. Transformatör ile mi bu işlemi yapacaksınız yoksa her hangi bir voltaj yükseltme yapmadan mosfet ile yüksek voltajı sürüp bir LC katı ile sinüs dalga mı alacaksınız ? Eğer ikinci söylediğimi yapıyorsanız nasıl bir LC katı yaptınız acaba ?

bmutlu

Program yazarken programın içindeki kısımları önem derecesine  göre ayırmalisin .Bölüm bölüm yazarak düzenlemelisin PWM ve 50Hz degerlerini bozmayacak sekilde bu bölümleri yerleştirmelisin.Microchip firmasının hiçbir kesmesi olmayan modellerini inceleyerek program nasıl yazıldığını incele o sana daha çok yardımcı olur (16C5X bak).

certy

#9
Alıntı yapılan: blacklogic - 01 Ağustos 2013, 09:06:32
Bende böyle bir çalışma yapmıştır. Transformatör ile mi bu işlemi yapacaksınız yoksa her hangi bir voltaj yükseltme yapmadan mosfet ile yüksek voltajı sürüp bir LC katı ile sinüs dalga mı alacaksınız ? Eğer ikinci söylediğimi yapıyorsanız nasıl bir LC katı yaptınız acaba ?

Pic'in sinyali ürettiğim bacağını rc katına gireceğim. Onun çıkışını opamplı bir preamp devresine girip opampın çıkışını npn-pnp transistör ile güçlendirip mosfet grubunu süreceğim. Mosfet grubu yüksek voltajı anahtarlayacak. Önceden rc filtre ile uğraştım ama tam sinüs alamadım bir türlü. Sizinde ilginiz varsa bu işi beraber başarabiliriz.

mesaj birleştirme:: 01 Ağustos 2013, 17:10:31

Alıntı yapılan: bmutlu - 01 Ağustos 2013, 09:38:24
Program yazarken programın içindeki kısımları önem derecesine  göre ayırmalisin .Bölüm bölüm yazarak düzenlemelisin PWM ve 50Hz degerlerini bozmayacak sekilde bu bölümleri yerleştirmelisin.Microchip firmasının hiçbir kesmesi olmayan modellerini inceleyerek program nasıl yazıldığını incele o sana daha çok yardımcı olur (16C5X bak).

Dostum çeşitli kombinasyonlar denedim ama olmuyor malesef.
TA1USS

blacklogic

Alıntı yapılan: certy - 01 Ağustos 2013, 17:08:46
Pic'in sinyali ürettiğim bacağını rc katına gireceğim. Onun çıkışını opamplı bir preamp devresine girip opampın çıkışını npn-pnp transistör ile güçlendirip mosfet grubunu süreceğim. Mosfet grubu yüksek voltajı anahtarlayacak. Önceden rc filtre ile uğraştım ama tam sinüs alamadım bir türlü. Sizinde ilginiz varsa bu işi beraber başarabiliriz.

mesaj birleştirme:: 01 Ağustos 2013, 17:10:31

Dostum çeşitli kombinasyonlar denedim ama olmuyor malesef.

Ben böyle bir filtre tasarladım ama yüksek voltajda kullanamıyorum. 6khz giriş frekansı var.

certy

#11
Alıntı yapılan: blacklogic - 01 Ağustos 2013, 22:33:59
Ben böyle bir filtre tasarladım ama yüksek voltajda kullanamıyorum. 6khz giriş frekansı var.

Devredeki rc katı farklı frekansta çalışan başka bir devreye aitti. Bende benim devreme adapte etmeye çalıştım kondansatör değerleriyle oynayarak. Ama sinüste bozukluklar var.
TA1USS

blacklogic

#12
Alıntı yapılan: certy - 02 Ağustos 2013, 00:27:43
(Resim gizlendi görmek için tıklayın.)
güzel bir çalışma

mesaj birleştirme:: 02 Ağustos 2013, 00:33:29

Bu sinyali yükseltip mosfet sürdüğünde sinüs çıkış alamıyor yine kare dalga alıyorsun mosfet katından sonra bu filtre konmalı. Ben alamdım denedim onu.

certy

Alıntı yapılan: blacklogic - 02 Ağustos 2013, 00:31:49
güzel bir çalışma

mesaj birleştirme:: 02 Ağustos 2013, 00:33:29

Bu sinyali yükseltip mosfet sürdüğünde sinüs çıkış alamıyor yine kare dalga alıyorsun mosfet katından sonra bu filtre konmalı. Ben alamdım denedim onu.

Benim devredeki rc katı farklı frekansta çalışan başka bir devreye aitti. Bende benim devreme adapte etmeye çalıştım kondansatör değerleriyle oynayarak. Ama sinüste bozukluklar var.

Mosfetlerin gate dirençleri iyi seçilip gate bacaklarına uygun değerde sönümleme direnci eklenirse mosfetlere giren aynen çıkar düşüncesindeyim.
TA1USS

XX_CİHAN_XX

Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.