Picproje Elektronik Sitesi

DİJİTAL & ANALOG ELEKTRONİK => Pld, Spld, Pal, Gal, Cpld, Fpga => Konuyu başlatan: Erol YILMAZ - 02 Temmuz 2010, 23:51:20

Başlık: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 02 Temmuz 2010, 23:51:20
Arkadaşlar Merhaba hepinize,

Bir H köprüsü tasarlıyorum ve bunu DIRection ve PWM sinyalleri ile sürmek istiyorum...
Bunun için 2 girişli, 4 çıkışlı lojik bir devre tasarladım fakat bunu gerçekleştirebilmek için
3 adet IC kullanmam gerekiyor...
Bu zamanda, pek hoş olmaz :)

Bu devreyi PAL ile tasarlayabilecek bir arkadaş yardımcı olursa memnun olurum...

NOT: Devre bu hali ile doğru çalışıyor.

(http://j.imagehost.org/0117/hdrive.jpg)
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: fatihinanc - 03 Temmuz 2010, 00:39:14
Hocam şöyle birşey yaptım ama bir bakın isterseniz. Can sıkıntısı işte :)

isis dosyası ve kodlar mevcut.

http://www.4shared.com/file/5mSEzsRH/Allegro.html (http://www.4shared.com/file/5mSEzsRH/Allegro.html)

Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 03 Temmuz 2010, 01:40:02
Eline sağlık çok güzel çalışıyor...
Peki piyasadan alabileceğim hangi PAL var bu işe uygun olarak,
Ve ona uygun hale getirebilir miyiz ?
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: fatihinanc - 03 Temmuz 2010, 02:02:08
Hocam az önce internetten PAL fiyatlarına baktım.En ucuzu 1.70$+KDV. PIC 12F675 1.19+KDV.
Hem bunu programlamak için de ayrı devre vs. vs.İşinize karışmak istemem ama
Mikrodenetleyici ile yapılsa daha uygun olmaz mı?
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: fatihinanc - 03 Temmuz 2010, 02:43:48
Evet ben de oradaki boole programı ile yapmıştım zaten devreyi.
Fakat jedec kodu neden sadece AM22V10 da geçerli onu anlamadım.
Programla ilgili birşey mi?
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 03 Temmuz 2010, 11:44:05
H köprüsüne 20 khz pwm sinyali gireceğim için mcu kullanmam mümkün değil,
Boole Deusto anladığım kadarı ile sadece GAL22v10 için çıktı veriyor.

Dolayısı ile geriye Abel ve Wincupl kalıyor.

Entegre olarak http://www.direnc.net/main/pal16r6-5657-365-408.html buldum.

Bir de piyasada GAL16V8D var gibi görünüyor.

Yardımcı olan arkadaşlara teşekkürler.
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: mufitsozen - 03 Temmuz 2010, 16:02:06
"H köprüsüne 20 khz pwm sinyali gireceğim için mcu kullanmam mümkün değil,"

Ozur dilerim, ama ben bu islerde cok acemiyim, niye MCU olmaz dediniz, butun MCU application notlarinda verilen ornekler 20khz yada 40khz pwm uygulamalari icin?

Benim kacirdigim nokta nedir?

simdiden tsk.
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: picmanya - 03 Temmuz 2010, 16:30:23
ilk şemadan anladığım kadarı ile burda 4 yarı iletken anahtarlı bir H-biridge pwm uygulaması yapılmak isteniyor galiba.bununlada yapılacak iş dc akım yön değişimi ve dc gerilim değer deşimidir.yani kısaca ya dc motor sürülecek yada ferrit nüveli trafo primeri sürülecektir.ama burda daha kuvvetle ferrit trafo sürecek.dc motor sürse niye H-köprünün üst transistörlerinide alttakilele çapraz anahtarlasınki değilmi ya.

zaten dikkat ederseniz devre pwm sinyali üretmiyor lojik mantık zaten pwm denen yerden Allegro usta 16F yada 18F üzerinden pwm oluşturup veriyordur diye düşünüyorum bu işlemcileri programladığını yazılarından okuduğum kadarı ile düşünüyorum.

burda amaç 3 tane ayrı 74Hc serisi kapı entegresiyle yapacağı işi pale yaptırmak.okonomiğini bilmem ama çok daha az yer kaplayacağı ve pcb yolları çok kolaylaşacağı kesin.hem gizliliğide var değilmi ya.asıl amaç güvenliği ön planda tutmak.

şurda şunu sorayım;

kapılarla güvenlik önlemi almadan, bende aynı tarz çalışmayı 4 farklı kontrol ucu işlemciden ayrı ayrı çıkarak yaptırıyorum.bu uçlardan ikisi port dijital lat çıkışı diğer ikisi output compare çıkışları.

sorum:

ben işlemci yazılımında asla hata yapmadıkça burası çok önemli benim kesinlikle yazılımsal hata yapmadığımı düşünüyoruz ve mosfet,igbt dead time sürelerinede iyi şekilde riayet ettiğim düşünülürse, benim H- biridge nerde kısadevreye düşüp gümleyebilir.

lütfen yazılım kilitlenmesini ihtimallerin dışında tutun bu konuyu biliyorum bu fazla karmaşık kombinasyonda olabiliyor.

H-köprü uzmanlarının değerli görüşlerini bekliyorum...!!!
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 03 Temmuz 2010, 19:42:41
H köprüsünü DC motor için kullanacağım,
lojikten çıkan sinyallerde h köprüsü için sinyalleri oluşturacak.

@mufitsozen;
uygulamaya göre değişir yapacağın şeyler,
onun için bu genel bi kural değil, sadece o uygulamaya has bir durum.

bu arada PAL16R6 siparişi verdim.
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: fatihinanc - 03 Temmuz 2010, 20:01:34
Hocam kodu ne ile yazmayı düşünüyorsunuz.
ABEL anlaşılması biraz zor gibi.Wincupl ise hiç kullanmadım.

Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 03 Temmuz 2010, 20:15:31
Wincupl düşünmüştüm ama 16R6 yok listede...
Abel kalıyyor tek seçenek...

(http://i50.tinypic.com/hw0bw4.png)
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: fatihinanc - 03 Temmuz 2010, 20:22:09
gerçi yazılacak program çok büyük değil ama arayüz sıkıntılı biraz. msdos tabanlı olması sebebiyel 64bit win7 de açamadım.

edit : Şöyle bir döküman buldum PAC-Designer adlı program ile ABEL dili kullanılabiliyormuş.arayüz gibi yani...

http://www.latticesemi.com/lit/docs/appnotes/pac/an6052.pdf (http://www.latticesemi.com/lit/docs/appnotes/pac/an6052.pdf)
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: picmanya - 03 Temmuz 2010, 20:32:32
Allegro,

Yanlış değilsem devrenin çalışması şu şekilde olacak değilmi?
Hatam varsa lütfen düzelt.

H-köprüdeki igbt veya mosfetler motor hangi yöne dönecekse o yön için kullanılan çapraz iki transistör beraberce açılıp beraber kapanacak ve uygulanan pwm sinyali doğrultusunda taki yön değişene kadar bu iş böylece sürüp gidecek değilmi?
Yani siz çapraz transistörleri beraberce pwm li olarak anahtarlamayı, açıp-kapamayı düşünüyorsunuz.

Tabi bu durumda üst transistörlerin geyt- source beslemesini boostrap metoduyla yapamayacağınız için
Bu transsitörler için farklı bir geyt-source beslemesi kullanmanızda gerekecek.

Ve sistemde motor elektriksel fren olayı olmayacak değilmi?çünkü alt taranssitörleri aynı anda devreye pwm lide olsa düzde olsa alamayacaksınız gerçi üstlerdede durum farklı değil, ama freni altlarla yaptırmak herzaman daha mantıklı gibi duruyor.

H-köprüyü mosfetlerlemi,yoksa igbtlerlemi kuracaksınız.
Mosfetlerle kurmayı düşünüyorsanız hepsi n-kanalmı olacak?
Bu devre ile çalışacak Motorunuzun nominal gücü ve çalışma voltajı değerleri nedir?

belirli bir güçden ve akımdan sonra H-köprünün bir yöndeki transistörlerinin kayıplar açısından birlikde anahtarlanmaması gerektiğini okumuştum.üst devreye alınır alt çaprazdan anahtarlanır böylece kayıplar ve voltaj tepeleri küçük olur bilgisini araştırmalarımdan okumuştum.

burdaki asıl amacınız işlemci iki pinindenmi kazanmak yoksa sadece güvenlik amaçlımı?

bende bu tür bir devreyi arasıra bir işimde kullanıyorum ama işlemciden gelen 4 farklı bağımsız pinlerle ve ekstradan kapılarla bir güvenlik önlemi almadan.

gerçekden faydası oluyorsa bende sistemi bu hale çevirebilirim ama faydasını henüz tam olarak anlayamadım.
Niyetiniz ne?
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: fatihinanc - 03 Temmuz 2010, 20:53:48
Burada da ABEL kullanımı hakkında örnekler var.biraz inceledim. basit bir tasarım için yeterli düzeyde bilgiler var.

http://digital.maag.ysu.edu/jspui/bitstream/1989/3739/1/b17781310.pdf (http://digital.maag.ysu.edu/jspui/bitstream/1989/3739/1/b17781310.pdf)
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 03 Temmuz 2010, 23:49:20
Portable model bir Protel Designer 99 SE SP6 buldum.
Burada her türlü PAL GAL vs tasarımı için grafik ortam var,  şematik hazırlıyorsunuz ve kodunuz hazır.


Abel programı üzerinden baya yıl geçmiş ve program birkaç kere satılmış heba olmuş konu.


@picmanya,
H köprüsünde neler olması gerekiyorsa onları yapıyorsun mantık çok kısaca bu.
Senin kullanım tercihlerini, benim malzemeyi kullanmam değil, senin ihtiyaçların belirlemeli :)
Ben öncelikle kolay tasarım için PAL kullanmak istiyorum.
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: picmanya - 04 Temmuz 2010, 13:39:48
devreyi birdaha inceledim de 2 pin kullanmakdan daha önce ir21xx li bootstrap sürme yöntemi için devre tasarlanmış.
şemadaki lojikde H-köprüdeki üst transistörler kapalı iken pwm hattıda sıfıra çekiliyse alt transistörler devamlı aynı anda devrede oluyor bu motorun sık sık frenlenmesine neden olur?
bu tür bootstrap yöntemli bir çalışmada üstlerin ikiside kapalı iken alttaki transistörlerden yalnızca birisi yani gereken devreye alınıp çıkarılmıyormuydu?son olarak bu yöntem daha doğru ve kabul gören bir yöntem olarak biliyorum.
üstler kapalı iken altlar aynı anda devreye alınıp çıkarılsada motor pwm frekansının duty saykılı dışındaki zamanlarda habire frenlense de iş oluyor olabilir ama burası benim kafama yatmadı.Yeni sürme tekniklerine uygun değil diye düşünüyorum.
3 üncü bir pin ilavesi ile lojik devre tasarlansa daha iyi olurdu.bu girişler  DIR. ,PWM. , FREN
çıkışlar yine doğal olarak mecburen 4 tane.
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 04 Temmuz 2010, 21:49:11
@picmanya,

Öncelikle şu linkteki mihri nin tecrubelerini okuyabilirsin.
https://www.picproje.org/index.php/topic,28083.0.html

Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 05 Temmuz 2010, 17:57:47
Xilinx in ürünleri baya geniş bi çerçevede satılıyor..

Bu eski tip kılıf:

http://tr.farnell.com/xilinx/xc9536xl-10pcg44c/cmos-isp-flash-cpld-9536-plcc44/dp/1193228

Bu da daha mini bir kılıfta:
http://tr.farnell.com/xilinx/xc9536xl-10vqg64c/cmos-isp-flash-cpld-9536-vqfp64/dp/1193229

http://www.buyaltera.com/scripts/partsearch.dll/multisearch?site=ALTERA&lang=EN&keywords=EPM3032

Fiyatlar cazip.
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: camby - 05 Temmuz 2010, 19:47:05
Farnell'de bir de dip kılıfta olanı vardı..

Anladığım  kadarıyla FPGA'e atlamak yerine CPLD,PAL öğrenmek çok daha yararlı olur ilk etapta.
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 09 Temmuz 2010, 17:25:52
PAL16R6 için doğru dürüst bi kod geliştirme ortamı bulamadım.
Atmel in Wincupl adlı yazılımı da kendi ürünlerine destek veriyor hali ile.
Ben de Lattice nin GAL16V8D modelini buldum.  Sanırım Atmel in modelleri ile 1-1 uyumlu.
1.75$ a Monel'den satın aldım. Deneyemedim daha...

(http://j.imagehost.org/0123/GAL.jpg)
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: acemi2010 - 09 Temmuz 2010, 20:25:11
Merhabalar;
Sayın hocam; haddim olmayarak konuya maydanoz olduğumun farkındayım; ama frenleyemedim kendimi. Yukarıda çizdiğiniz devrenin fonksiyonu çıkarılılırsa
- DIR girişine X ve PWM girişine Y dediğimizi
- Çıkışlara ise yukarıdan aşağı şekilde A,B,C ve D dediğimizi düşünelim
Bu durumda çıkış fonksiyonları şu şekilde olacaktır (çizime göre !...)

A = X'.Y
B = X.Y
C = (X'.Y') + X
D = (X.Y') + X'

C ifadesi sadeleştirilirse  C = (X'.Y)' = A'
D ifadesi sadeleştirilirse  D = (X.Y)'  = B'
olacaktır. (Not eğer nasıl sadeleştiğini sorarsanız detaylı açıklarım).

Eğer NOT yerine NAND kullanırsanız sadece 5 adet NAND kapısına ihtiyacınız olur.
(http://img80.imageshack.us/img80/378/adszrl.jpg)

Saygılarımla
Timuçin.



Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 10 Temmuz 2010, 01:07:20
Çok sağlam bi sadeleştirme olmuş,
Nasıl olduğunu açıklar mısın ?

İşlemler doğru ise bu devre 2 entegre ile kurulabilir.

Ayrıca PALASM programını da Ahmet Özmen hocamın sayesinde aldım.
http://rapidshare.com/files/406070184/PALASM.rar

Programı C kök dizinine açtıktan sonra çalıştırabilmek için
ortam değişkenini tanımlamanız gerekiyor.
PALASM     c:\PALASM\   
olarak

XP de çalıştırdım Win7 de çalıştıramadım.

Yazdığım kodu da derledim fakat şu anda JEDEC kodunu elde edemedim :)
Ne zor oldu bea :)
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: picmanya - 10 Temmuz 2010, 11:07:12
tebrikler iyi bir sadeleştirme olmuş
sadeleştirmenin nasıl yapıldığı ile ilgilenmiyorum
yalnızca bu lojik devreyi makul bir tarzda kendi elektronik kartımda kullanmak istiyorum.

şu durumda önceki lojikde 3 farklı kapı entegresi üzerinden toplam 8 kapı kullanımı ile iş yapılıyordu.
yeni lojikde ise 2 aynı kapı entegresi üzerinden toplam 5 aynı türden kapı kullanımı ile iş görülüyor.

amaç gizlilik değilse, hangi yöntemi kullanmak daha avantajlı konuma geçiyor cpld-pal ilemi devreyi kurmak?
yoksa iki tane smd soic kılıf nand kapı entegresiylemi devreyi kurmak.

bu konuda ne söylenebilir?


Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: picmanya - 10 Temmuz 2010, 12:25:17
işi bilen H-köprücü motor kontrolcülerde sağolsun bu konuya hiç karışmadılar.bir fikir beyan edin be arkadaşım.yaşıyorsanız bilseydik.

bu devre ile sonuçda 4 mosfetli H-köprü kontrol edilip dc motor sürülecek.ama bu tür köprü devrelerinde seri bağlı mosfetlere dead time denilen bir güvenlik zamanıda ilave edilmek zorunda.genelde bu zaman 2-3 mikro saniye verilir.

son lojik şemada A çıkışı ile C çıkışınının kontrol ettiği mosfetler ile B çıkışı ile D çıkışının kontrol ettiği mosfetler birbirine seri bağlı konumda.

bunların arasında bir dead time gecikme zamanı bu lojikle şu anki haliyle uygulanamazki.
bu zaman gecikmesi yani dead time zamanı nasıl  uygulanacak.

bu lojiğin süreceği dc motor kontrol edecek H-köprünün mosfetleri belki yanmaz ama gereğinden fazla ısınıp güç harcar diye düşünüyorum.bu da başta dc bara kondansatörünün çalışmasını zorlaştırıp yıpranmasını arttırabilir.mosfetleride zamanla delebilir.

DIR, PWM haricinde üçüncü bir pin kontrolüde dead time için gerekir diye düşündüm.sanki böyle bir devre görmüştüm ama bulamadım arandığında bulunmaz zaten bir şey.

H-KÖPRÜ USTALARI FİKİRLERİNİZ NEDİR?

Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: acemi2010 - 10 Temmuz 2010, 12:31:31
Merhabalar;

Alıntı yapılan: Allegro - 10 Temmuz 2010, 01:07:20
İşlemler doğru ise bu devre 2 entegre ile kurulabilir.

Aslında 1 adet entegre işinizi görür gibi geliyor bana.
"X girişi altındaki NOT (çizimde NAND) kapısın yerine, bunu 2 direnç 1 transistörle evirerek gerçeklerim" derseniz, 2 direnç 1 npn transistör ve 1 adet 74XX00 yeterli gelir.

Ama yazılarınızdan, PAL'lerle ilgili mevcut tecrübelerinizi ilerletmek gibi bir çaba sezdiğim için, aslında içimden "ne gereği var şimdi bu sadeleştirmenin timuçin" diyordum kendi kendime. PAL'lerle ilgili en ufak bir bilgim ve/veya tecrübem olmadığı için, bu konuyu pür dikkat takip ediyorum.

Sadeleştirme için 2 ana Logic kural'ı göz önüne aldım.
a'+ b' = (a.b)'  (kural1)
(a+b)' = a'.b'  (kural2) (gerçi bu kuralı kullanmadım...)

C = (X'.Y') + X  = (X'.Y') + X.(Y'+1)    burada (Y'+ 1)=1 olacağından ifade değişmez
C =  X'.Y' + XY' + X =  X'.Y' + X.Y' + X.X + X.X'     burada X.X = X  ve X.X' = 0 olacağından ifade yine değişmez
C= (X'+X).Y' + (X'+X).X = (X'+X).(Y'+X)    burada (X'+X) =1 olduğundan
C = (Y'+X) ifadesine ulaşılır ki kural1 kullanılarak C = (Y.X')' ifadesi sonuç olacaktır.


D = (X.Y') + X' = (X.Y') + X'.(1+Y')    burada (1+Y')=1 olacağından ifade değişmez.
D = X.Y' + X' + X.X' = X.Y' + X'X' + X'.Y' + X.X'  Burada X'.X'=X' olduğundan ve X.X'=0 olduğundan ifade değişmez
D = X'.(Y'+X') + X.(Y'+X') = (X'+X).(Y'+X') burada (X'+X)=1 olduğundan
D = (Y' + X')   ifadesine ulaşılır. kural 1 kullanıldığında ise D = (Y.X)' ifadesi sonuç olacaktır.

Ama "Timuçin, teoremlerle kafamızı bulandırmasana beee" derseniz 2inci sadeleştirme alternatifi, Karnaugh Diagramına dökmek derim.

(http://img203.imageshack.us/img203/2296/sadelestirme.png)

Neyse daha fazla kafa ütülemeden......
saygılarımla
Timuçin
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 10 Temmuz 2010, 17:00:49
@picmanya,

H köprüsünü direkt olarak buradan çıkan sinyalle sürmeyeceğim,
arada kalan sürücü (HIP4081A) bu dead-time olayını da hallediyor.

--------------------------------------------------------------------------------------

@acemi2010,

Bu tarz Lojik devrelerle uğraşmadığım için baya unuttuğum bi konu olmuş bu.
Sadeleştirme, çizdiğin Karnough map ve 2 kural ile çok daha anlaşılır oldu.
Toplam fonksiyonundan çarpım fonksiyonuna geçince pratiklik sağlıyoruz. bunu anladım.

Düşündüğün gibi bu lojik işlemleri PAL'e yaptırmak istemem sadece bu fonksiyonlar için değil.
Daha farklı şeyleri de PAL'in içine gömmek istiyorum.

Net açıklamaların için teşekkürler...
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: ferdem - 11 Temmuz 2010, 15:35:47
Allegro hocam verdiğiniz ilk çizimden doğruluk tablosuna geri dönersek:
DP F1 F2 F3 F4
00  0   0   1  1
01  1   0   0  1
10  0   0   1  1
11  0   1   1  0

F1 in F3 in değili, F2 nin de F4 ün değili olduğu görülür(bunu şemadan da görebiliriz). İster F1, F2 i gerçekler F3 ve F4 için terslerini alırsınız, isterseniz de tam tersi.

F1= D'.P dir
F2= DP dir.
F3=F1'
F4=F2'

Bu 4 fonksiyonu gerçeklemek için 3 NOT kapısı, 2 tane de AND kapısı gerekir. Yani bir tane 7400 ve bir tane 7408 veya acemi2010 arkadaşın dediği gibi 5 tane NAND, eğer F3 ve F4 ü gerçekleyip F1 ve F2 yi ters alarak yapsaydık 3 NOT, 2 OR  veya 5 tane NOR ile yapılabilirdi. İyi çalışmalar.

Düzenleme: Bir cümle daha anlaşılır yazıldı.
Başlık: Ynt: Lojik Devre Sadeleştirme...
Gönderen: Erol YILMAZ - 13 Temmuz 2010, 14:42:28
Arkadaşlar hepinize teşekkürler,
Bu şematiği basitleştirip uygulamak için birçok yol öğrendim.
GAL ile yapmak istersek izleyeceğimiz yol kısaca şöyle,  ( Piyasada genelde Lattice marka GAL var )

Atmel in WINCUPL yazılımını indiriyoruz.
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2759

Lojik işlemlerimizi sadeleştirip kodunu yazıyoruz.  Olay bu,

Çıkan kodu (.JED uzantantılı) yani GAL in HEX i :)
İster ISIS de simule edin, isterse entegreye yazın. Her türlü çalışıyor.

(http://j.imagehost.org/0520/PLD.jpg)