Gelişen mikrokontrol teknolojileri ve artan bilgi birikimi sayesinde geliştirici düzeyinde daha yaygın kullanımına olanak tanımıştır. Burada elimden geldiği kadar bazı örnekler sunmaya çalışacağım... Görüleceği gibi ilk örneklerimizde çoğunlukla ASM üzerinde iken daha sonraları C üzerinde örnekler yer almaktadır. Hatta ilerleyen zamanlarda Arduino örneklerinin yer alması kaçınılmaz olacaktır.

6 Mart 2009 Cuma

AT90S2313 ADC-Seri Köprüsü


Devre basitçe dört bölümden oluşuyor.
ADC çevirici 8 bitlik i2c bağlantısı bulunan ADC0831 entegresi..
2K flash belleği ile ACD bilgisini okuyup bunu bilgisayara gönderen AT90S2313 işlemci entegresi
İşlemci ile bilgisayar arasındaki seviyeleri uyarlayan RS232 entegresi
Tabii ki elektronik devrelerin vazgeçilmesi besleme devresi
Devre üzerinde bilgisayar üzerinden devreyi adc'deki bilgiyi okuyup bilgisayara göndermek üzere bir bilgi gelir. Bu işlemci tarafından çözülür. ADC'yi üzerindeki gerilimi okuyup göndermek üzere adresler. ADC bilgisi okunur ve bu bilgi bilgisayar iletilir. Bu noktadan sonra ne olacağı ise sadece bilgisiyar üzerindeki yazılımın bileceği iştir. Burada o noktaya değinmeyeceğiz. Ama alttaki ekler bölümünde bir örnek yazılım yer alacaktır.

Şekil-1 :Devre görünümü. Devre hakkında bir fikir verecektir

Sistemin kalbi olan IC1 (AT90S2313) entegresi gayet normal olarak bu sistemin kalbi. Bu entegreye bağlı olan C8,C9 ve XTL1 işlemci için gereken saat sinyallerini oluşturur.

NOT:Resimde görülen kartın kenarındaki 10 bacaklı konnektör kartları AVR işlemcileri programlamak üzere eklenmiştir. İşlemciyi karttan sökmeden programlamak için kullanılmak üzere (Programlama için)

Temelleri

Basitçe ADC üzerine eğilecek olursak. Genelde çeşitli yöntemler uygulayarak girişine uygulanan gerilim seviyesine uygun bir sayısal sinyal üretirler. Bu sayısal sinyaller değişik şekillerde sayısal devrelere aktarılır. Buradaki devre üzerinde i2c olarak bilinen bağlantı yöntemi ile bilgi işlemciye aktarılır. Temelde iki bağlantımız var. Bunlardan birisi saat sinyali, ikincisi ise veri sinyali için kullanılır. Buradaki ADC üzerinde ek olarak adc sadece istenilen zaman ölçüm yapması için birde çip seçme ucu mevcuttur.

Adc ile çalışırken kullanacağımız adc'nin bağlantısı için için üç ucu vardır.

Adc izin ucu. Bu bağlantı noktası lojik 0 konumuda indiğinden adc işlem için hazırdır. Adc üzerinden veri okunabilir.
Adc saat ucu. Bu uç veri ucundan veri alınabilmesi için referans darbelerinin uygulandığı uçtur.
Adc veri ucu. Bu uç okunan gerilim seviyesinin 8 bitlik veri olarak okunduğu uçtur.
Burada basitçe bilgisayar tarafından işlemciye adc üzerindeki gerilim seviyesini okuması için bir veri gelir. Gelen veri okuma için uygunsa işlemci adc üzerindeki veriyi okur ve bilgisayara gönderir. Bilgisayar gelen veriyi ne yapacağı artık bilgisayar üzerindeki programın ve adc üzerinde okunan gerilimin niteliğine bağlı olarak(akım, gerilim, sıcaklık, ışık, uzama, basınç, gibi) değerlendirilir. Burada dikkat edilmmesi gereken nokta acd'nin 8 bitlik olduğudur, dolayısı ile gerilim çözünürlüğü 256 sayısı kadardır. Yani en yüksek ölçme gerilimi 5V olduğuna göre (şu anki devre ona ayarlıdır) ölçülecek en küçük gerilim 5/256=0.19 gibi bir gerilim bulunur. Daha yüksek hassasiyetle ölçüm için 10 veya 12 bit bir adc seçimi daha iyi olacaktır.


Şema

Devre şeması aslında açık ve kendini anlatmaya yinede yeterli. IC1 Bilgisayar seri port ile işlemci arasında seviye çevirici olarak kullanılır. IC2 devrenin kalbini AT90S2313 oluşturuyor. IC4 zaten çok tanınan ve bilinen 7805 olarak 5 voltluk regülatördür. Fazla güç çekilmediği için soğutucuya ihtiyaç duyulmamıştır. IC3 analog sinyalleri dijitale çevirmek üzere kullanılmaktadır. 8-bit çeviricidir. Şu anki bağlantı şekli ile 5 Volt üzerinden ölçüm yapar.


Şekil-2:Seri ADC devresinin blok şeması



Şekil-3:Devrenin şeması


Devre Yapımı

Devre yapımında kritik bir eleman yok. Baskı devre kartı üzerinde geçekleştirildiğinde standart eleman yerleşimi göz önüne alınarak devre kurulabilir. Bu noktada diğer devre teknikleri kullanıldığında bacakların doğru bağlanması önemlidir. Tabii ki kristal topraklanmalıdır. Sistem 9V besleme kullanmakta. Bu nedenle 7805 üzerinde ek bir soğutucuya ihtiyaç duyulmamaktadır.
Tüm dirençler çeyrek vattır.
Besleme konusunda bir sorun oluşturmayacağınızı düşünüyorsanız girişteki köprüyü devre dışı bırakabilir veya tek bir diyotla değiştiribilirsiniz. (Kendi besleme kaynağınız varsa ve devreyi kendiniz kullanacaksanız)

Devre yapımında kaliteli konnektör ve malzeme kullanımı bir çok sorunu daha oluşmadan üstesinden gelmenize olanak tanıyacaktır.


Şekil-4:Devrenin yerleşim planı


Şekil-5:Devrenin baskı devresi şekli



Şekil-6:Devrenin baskı devresi ve yerleşimi birleşim. Not: Kartın kullanımı için şekildeki gibi bir potansiyometre veya trimpot eklenebilir. Tabii ki aslında gerilimi örneklenecek devreye veya algılayıcıya bağlanır.



Şekil-7:Kartın alttan görünümü (Kartın altı lehimleme kolaylığı ve korozyana karşı kaplanmış) Kart resimlerinde R1 ve R2'yi bulamayanlar için bu elemanlar kartın altında.


Devre Elemanları

10KR1,R2
27pFC8,C9
100nFC2,C7,C11,C12,C13
10µF/25VC1,C3,C4,C5,C10
1000µF/25VC6
B125C1500D1
Max232IC1
AT90S2313(Attiny2313)IC2
7805IC4
AC0831IC3
4Mhz kristalXTL1
DB9 konnektörP1
10P konnektör(ISP)ST1


Malzeme listesi. Burada soket ve 9V adaptör verilmemiştir. Kaliteli 20 bacaklı bir soket oluşabilecek problemlerin önüne geçecektir.
Not:Atmel At90s2313 yerine daha fazla özellik içeren Attiny2313 üretimine geçmiş.


Besleme ister doğrudan adaptör bağla, istersen fiş-priz bağlantısını kullan. Ama devre kutu içine konulacaksa bu fiş-priz bağlantısı bağlantısı kullanışlı olacaktır.

Buraya kadar sadece donanım kısmı diyebileceğimiz kart bölümü ile ilgilendik. Ama bu projenin birde bilgisayar tarafı var. Yani kart kendi başına iş yapamaz. En azından seri bir port üzerinden bilgisayara bağlanması gerekir. Bu noktada bilgisayar üzerinde çalışacak program devreye giriyor.

Bilgisayar programı

Bu kartın çalışması için en azından bilgisayardan veya başka bir kaynaktan ADC okuması için bir komut gelmesi ve bu komutun karşılığında okunan ADC giriş değerinin kart tarafından bağlı olduğu sisteme gönderilmesi gerekir. (burada bilgisayar oluyor). Bu noktada devreye ADC seri programı giriyor. Bu program Borland Delphi 7 ile yazıldı.

Program üç ana bölümden oluşuyor:
  • Ana pencere-Temel adc işlemleri, okunan değerlerin gösterilmesi ve
    değerlendirilmesi.
  • Seçenekler-Programın çalışmasında gerekli ayarların yapıldığı bölüm.
  • Hakkında-Program hakkında basit düzeyde bilgi verir.


Ana Pencere


Ana pencerenin görünümü.

  1. Ölçüm sonuçları listesi
  2. Son ölçüm sonucunun grafik çubuğu olarak gösterimi.
  3. Son ölçüm sonucu değeri.
  4. ADC sürekli oku/okumayı kes butonu
  5. ADC oku butonu
  6. Ayarlar butonu

Seçenekler Penceresi


Seçenekler pencerenin görünümü.

  1. ADC okuma kartının takılı olduğu seri portu seç
  2. Okunan ADC sonucunun kaydedileceği dosya adı
  3. Dosya adı seçme butonu(bir diyalog penceresi açar)
  4. Kayıt dosyası oluştur; seçildiğinde adc ölçüm sonuçlarını bir dosyaya kaydeder.
  5. Okuma zamanı; ADC okumalarının zamanlamasını belirler.
  6. Tamam butonu; yapılan seçimlerin onaylanmasını ve uygulanmasını sağlar.


Kayıt


Okunan ADC değerinin dosyaya yazılmış örneği.


Yapılan ADC okumaları eğer seçenekler penceresindeki Kayıt Dosyası oluştur kontrol butonu seçilmişse, bilgisayarın sabit diskine kaydeder.

Bu seçenek işaretli ise program ilk açıldığında günün tarihi ve saati kaydeder. Ve her ölçüm sonucu saati ile birlikte kaydedilir. Kayıt metin biçiminde (txt) uzantılı dosyaya yapılır. Herhangi bir metin tabanlı program ile dosyalar okunabilir.

Ekler:
AT90S2313 hakkında ayrıntılı bilgi için

AVR ADC Seri köprü için dosyalar-birleşik

Bu devrenin yapım sorumluluğu size aittir. Devre yapıldı ve çalışıyor. K.A....

Hiç yorum yok:

Translate

Sayfalar

Etiketler

İzleyiciler