LED’lerle Havaya Yazı Yazma

Günümüzde karmaşık işlevlere sahip elektronik sistemlerin çoğu, mikro denetleyiciler kullanılarak tasarlanıyor. Kolayca programlanabilmeleri, fiyatlarının ucuz olması ve harici donanım gereksinimlerinin az olması nedeniyle mikro denetleyiciler elektronik alanında önemli bir yere sahipler. Örneğin, Microchip firması tarafından üretilen PIC serisi mikro denetleyiciler, piyasada en çok tercih edilen programlanabilir entegrelerin başında geliyor. Bu entegreler 8, 18, 28 veya 40 bacaklı olarak pek çok tipte üretiliyor. Bunlardan 16F8X serisi PIC mikro denetleyiciler, 18 bacaklı olup flash bellek teknolojisine sahip. Bu teknoloji sayesinde entegreye yüklenen program istendiği zaman kolaylıkla silinebiliyor ve entegre yeniden programlanabiliyor. 13 adet giriş-çıkış portu (Port A ve Port B) çoğu uygulama için yeterli sayıda. Entegreyi programlamak için assembly dilinin yanı sıra BASIC veya C gibi yüksek seviye diller de kullanılabiliyor. Piyasada PIC mikro denetleyiciler ile ilgili pek çok kitap bulunuyor. Ayrıntılı bilgiler bu kitaplardan öğrenilebilir [1].

Bu yazıda, PIC16F84A adlı mikro denetleyici ve 8 adet LED kullanarak havaya yazı yazan bir elektronik devrenin yapımı anlatılıyor. Bu devre sayesinde 8-10 karakterden oluşan herhangi bir metin havada oluşturulabiliyor.

Devre Şeması

Şekil 1’deki devre şemasından görüldüğü gibi PIC16F84A mikro denetleyicisinin Port B çıkışlarına 8 adet LED ve dirençler bağlı. 4MHz’lik kristal ve 22pF’lık iki kondansatörden oluşan osilatör devresi PIC’in çalışması için gerekli saat darbelerini üretiyor. Devrenin beslemesi ise 9V’luk bir pil ve 5V’luk bir regülatör devresi ile sağlanıyor.

Gerekli malzemeler
1 adet PIC16F84A mikro denetleyici
1 adet LM7805 gerilim regülatörü
1 adet 4MHz kristal
1 adet buton
1 adet anahtar
1 adet 100nF kondansatör
2 adet 22pF kondansatör
1 adet 4.7k direnç
1 adet 1N4148 diyot
8 adet parlak mavi LED
8 adet 100 ohm direnç
1 adet 9V pil ve pil başlığı
Bakır plaket veya delikli pertinaks

Çalışma mantığı

Devrenin çalışması göz yanılması prensibine dayanıyor. Bilindiği gibi göz, periyodik olarak tekrarlanan olayları durağanmış gibi algılar ve tekrarlar arasındaki süre yeteri kadar kısa ise kırpışma etkisini fark edemez. Örneğin 1 saniyede 50 kez yanıp sönen bir lamba sürekli yanıyormuş izlenimi verir. Aynı şekilde televizyon sistemlerinde resim tekrarlama frekansı yeteri kadar yüksek seçildiğinden resmin hareketi sürekli olarak algılanır. Gözün bu yanılma özelliği, birkaç adet LED ile havaya yazı yazma imkanı da sağlar.

Şekil 1’de görülen elektronik devre oldukça basit bir donanıma sahip olmasına rağmen devrenin çalışabilmesi için PIC mikro denetleyiciye bir program yüklenmesi gerekiyor. Yüklenen programın yaptığı iş, havada yazdırılacak karakterlere göre 8 adet LED’i yakıp söndürmek ve zamanlamayı ayarlamaktan ibaret. Program doğru olarak
PIC’e yüklendikten sonra LED’ler hızlı bir şekilde sağa-sola hareket ettirildiğinde yazının havada oluşması sağlanıyor. Kısaca, sistemin çalışma mantığı, PIC’den gönderilen 8 bitlik sütun bilgisi ile hangi anda hangi LED’lerin yanacağını ayarlamak şeklinde özetlenebilir.

Program yazmaya geçmeden önce havada yazılacak harflere (veya karakterlere) göre sütun bilgilerinin elde edilmesi gerekiyor. Bunun için kağıt üstünde birkaç çizim yapmak lazım. Örneğin şekil 2’de, A, B, C harflerini oluşturmak için 8 LED’den hangilerinin yanması gerektiği zaman adımına bağlı olarak gösteriliyor.

 

Şekilden görüldüğü gibi her bir harf, 8 satır ve 5 sütundan oluşuyor. Harfler arasında da 1 boş sütun bulunuyor. Bu mantığa göre havaya 8 harften oluşan bir yazı yazmak için toplam 48 adet sütun bilgisi gerekli. Yani PIC mikro denetleyicinin 48 adet sütun bilgisini uygun zaman

aralıklarıyla porttan gönderecek şekilde programlanması gerekiyor.

Sütun bilgilerinin nasıl elde edildiği şekil 3’de ayrıntılı olarak görülüyor. Örneğin A harfine ait sütun bilgilerini elde etmek için yapılması gereken işlem, sönük haldeki LED’lerin yerine 0 rakamını, yanan LED’lerin yerine de 1 rakamını yazmaktan ibaret. Bu durumda her bir sütun için 0 ve 1’lerden oluşan 8 bitlik bir sayı elde edilir. Bu sayı
16’lık (hexadesimal) tabanda yazıldığında sütun bilgileri elde edilmiş olur. Örneğin A harfi için ilk sütundaki 8 bitlik 11111100 sayısının 16’lık taban karşılığı 0xFC’dir. Aynı şekilde son sütundaki 00000000 sayısının 16’lık taban karşılığı da 0×00’dır. Burada 0x sembolü sayının 16’lık tabanda olduğunu gösterir. Bu şekilde bütün harfler için sütun bilgileri kolaylıkla elde edilebilir.

Yapım aşamaları

Havaya yazı yazma devresi her ne kadar basit olsa da, devrede PIC mikro denetleyici bulunması işlem sayısını arttırıyor. Devrenin yapım aşamaları sırasıyla aşağıdaki gibidir.

1- PIC’e yüklenecek programı yazma (PIC C ile)
2- Hex uzantılı dosyayı oluşturma
3- Programlama kartı yardımıyla hex dosyayı PIC’e yükleme
4- Devre şemasına göre baskı devre kartını yapma
5- PIC’i karta yerleştirip devreyi çalıştırma

PIC C Programı
C dilini kullanarak program yazmak assembly diline göre oldukça basit olduğundan C dili daha çok tercih ediliyor. Günümüzde PIC mikro denetleyiciler için yazılmış pek çok C derleyicisi bulunuyor. Bunlardan Hi-Tech firmasının ürettiği “PIC C Lite” adlı derleyici http://www.htsoft.com internet sayfasından ücretsiz olarak indirilebiliyor. Demo sürümünün bazı kısıtlamaları olsa da üst düzey programlar yazmak için bile yeterli özelliklere sahip. PIC C derleyicisinin kullanımı hakkında ayrıntılı bilgiler konuyla ilgili kitaplardan edinilebilir.

Yazılan C programından görüldüğü gibi programın başında 48 elemanlı bir dizi tanımlanıp gerekli sütun bilgileri yazılıyor. Örneğin bu programda MERHABA kelimesi için gerekli sütun bilgileri bulunuyor. Farklı bir kelime için bu bilgileri değiştirmek yeterli. Programın devamında bir for döngüsü içerisinde dizinin her bir elemanı sırayla Port B’ye gönderiliyor ve 1ms’lik bekleme süresinin ardından dizinin diğer elemanı Port B’ye iletiliyor. 48ms sonunda dizinin bütün elemanları sırayla porttan gönderildiğinden sonsuz döngü ile program başa dönüyor. Programın başa dönmesinden önce 48ms’lik bir bekleme süresi daha bulunuyor. Bu bekleme süresinin amacı kolun soldan sağa hareketinde LED’leri sönük halde tutmak, sağdan-sola harekette ise havada yazıyı oluşturmak.

Hex dosyayı oluşturma

Yazılan C programı uygun şekilde derlendiğinde hex uzantılı bir dosya oluşur. Derleme işleminin ayrıntıları yine PIC C ile ilgili kitaplardan öğrenilebilir. Oluşturulan hex dosyanın PIC’e yüklenmesi ile mikro denetleyicinin istenen şekilde çalışması sağlanır.

Programı PIC’e yükleme

Hex dosyayı PIC’e yüklemek için bir programlama kartı gerekli. Piyasada çok çeşitli tiplerde programlama kartları mevcut [3]. Bu kartların bazıları bilgisayarın seri veya paralel portunu kullanırken bazıları da USB portunu kullanıyor. ICPROG adlı yazılım ise programlayıcı kartın bilgisayarla iletişimini sağlıyor. ICPROG yazılımı http://www.ic-prog.com internet adresinden ücretsiz indirilebilir. Bu programın kullanımı hakkında ayrıntılı bilgiler PIC ile ilgili kitaplardan öğrenilebilir.

 

Baskı devre yapımı
Devre az sayıda eleman içerdiğinden baskı
devre kartı kolayca yapılabilir. Devre elemanları
delikli pertinaks üzerine dizilerek montaj yapılabileceğ
i gibi, baskı devre yapım tekniklerinden
biri kullanılarak daha profesyonel bir kart oluşturmak
da mümkün. fiekil 5’de baskı devre kartı
görülüyor. Kartın eni 3.5cm, boyu ise 20cm civarı
nda. PIC16F84A entegresini baskı devre kartı
na lehimlemek yerine 18 bacaklı bir entegre soketi
kullanmak gerekiyor. Bu sayede PIC’i yeniden
programlamak gerektiğinde entegre kolayca
yerinden sökülebilir.

Devreyi çalıştırma
Programlanan PIC mikro denetleyici, 18 bacaklı entegre soketi üzerine yerleştirildikten sonra devre üzerindeki anahtar kapatılarak devre çalıştırılır. Bu esnada 8 adet LED’in kısa aralıklarla yanıp söndüğü görülür. Havada yazının oluşabilmesi için devrenin şekil 6’daki gibi sağa sola sallanması gerekiyor. Okunabilir bir yazı elde etmek için devrenin hangi hızda sallandığı çok önemli. Eğer devre uygun hızda sallanmazsa düzgün bir yazı elde etmek mümkün olmaz. Zamanlama sorunlarını gidermek için devre üzerindeki reset butonuna bir kez basmak ve o anda devreyi sallamaya başlamak iyi sonuç verir. Daha uygun bir çözüm ise kart üzerine bir eğim sensörü (tilt sensor) yerleştirerek kolun hareketini önceden algılamak ve sütun bilgilerini o anda başlatmak olabilir.Şekil 7’de devrenin uygun bir hızda (örneğin saniyede 8-10 kez) sağa-sola sallanması durumunda havada oluşan yazı görülüyor. LED’ler parlak olduğu halde gün ışığında yazıyı fark etmek

zor olabilir. Bu nedenle devreyi çok fazla aydınlık olmayan bir ortamda çalıştırmak daha iyi sonuç verir.

 

Devre, elle sallanarak çalıştırabileceği gibi bir DC motorun miline bağlanarak sürekli döndürülebilir de. Bu durumda yazının havada hep aynı yerde oluşması için motorun devir sayısını uygun şekilde ayarlamak gerekir. Bunun yerine, mıknatıs ve reed anahtardan oluşan konum algılama sistemi kullanmak daha iyi sonuç verir (Reed anahtar: Harici manyetik alandan etkilenerek kontağı kapanan bir anahtar türü). Buna göre, devre üzerine yerleştirilen reed anahtar, mıknatısın önünden geçtiği anda PIC programı bu geçişi algılar ve sütun bilgilerini göndermeye başlar.
Böylece havada sabit bir görüntü elde edilir. Şekil 8’de devrenin motor miline bağlanarak çalıştırılması durumunda oluşan yazı görülüyor.

 

15 harften oluşan (2’si boşluk) Bilim ve Teknik yazısını elde etmek için gerekli 90 adet sütun bilgisi şekil 9’da dizi olarak görülüyor. Yazıyı havada oluşturmak için bu yeni dizinin PIC C programında tanımlanarak mikro denetleyicinin yeniden
programlanması gerekiyor.

Açıklama

Eleman Yüzeyi

C Kodu

Hex Kodu

Lehim Yüzeyi

*Fırat Üniv. Elek-Elektronik Müh. Bölümü

Tags: , , , , ,

45 Responses to “LED’lerle Havaya Yazı Yazma”

  1. halıl ıbrahım says:

    eleineize saglık arkadaslar mutıs harıka tam ıstedıgım gıbı bırset

  2. halıl ıbrahım says:

    kardes bıde bu devreyı kurdugumuz takdırde delıklı pertınak i
    bı motoramı baglıcaz sureklı donmesı ıcın bana o motar a nasıl baglıcamızı msn ye mesaj atarsan cok sevınırım

  3. ümit says:

    devrenin baskı devresıni alabilirmiyim msn me atarsan sevinirim

  4. günay says:

    arkadaşlar ben dükkanıma ledlerden reklam panosu yapmak istiyorum ama elektironik bilgim yok ama meragım var burda bi elektronikci gösteririm dedi sonra yan cizdi aşagı yokarı 350 400 kadar led yakmayı düşünüyorum yazmak istediğim yazı DİLEK OPTİK GÖZLÜKÇÜ dilekoptik yazısı farf harf tektek yanıp sonra hepsi bir yanmasını istiyorum yardımcı olursanız sevinirim

  5. nez says:

    kardeş süper olmuş ellerine sağlık teşekkür ederim.

  6. yasin aslıyüce says:

    çok güzel olmuşta ellerinize saplık ya ben bunun programı bulamadım c kodunu yazmak için işte bu kodları yazan program yoq ben de bana bi yardımcı olurmusunuz e-posta:yarisci_71_tuning_@hotmail.com
    mesaj atsanınz yeterlidir

  7. selam ben mustafa says:

    elinize sağlık ben reklam firmasında çalişmaktayım kayan yazı matrix baskı devresini bulamadım lütfen yardım

  8. SihirbaZ says:

    Eline SAglık ..

  9. mustafa says:

    çok güzel olmuş, tam istediğim gibi

  10. yigit says:

    selammm arkadasım gercekten çok etkileyici bii ürün devre semasını gönderirsen çok sevinirim kolay gelsin

  11. arife says:

    çok zor bir devre çizimi ben bilgisayar bölümündeyim benim yıllık ödev konum kolay gelsin

  12. goxel says:

    beyler bu devreyı ben denedım cok guzeel durumda calısıyor gereklı bılgılerı ısteyen benden alabılır baskı devresı nasıl motora baglandıgını elektırıgı nasıl yonlendırdımızı ısteyen benden alabılır dedıgım gıbı devre cok guzel ledle deyılde su anda lazerle yapıorum bu sekılde duvara yansıtabılcem

    bılgı ısteyenler goxel.tanrikulu@hotmaıl.com

  13. naım says:

    sayın kardesım ben bu devreyı yaparım cok cok basıt ama benım kafama takılan bu entegregı pc de nasıl programlıcam o konuda bılgım yok msla pcde yazılan program nasıl entegreye programlana bılır bana bu konuda yardımcı olursan sevınırım ben reklamcıyım ve bu konuda bılgı edınmek ıstıyorum bılgılerınız ıcın sımdıden teşekürle(snopy0707@hotmail.com)

  14. arife says:

    çok güzel olmuş

  15. soner says:

    cok iyi de reed role hangi bacaga baglanacak acil cevap yazarsan sevinirim teşekkürler

  16. soner elektronik says:

    selam ben lise son ögrencisiyim bitirme ödevi olarak seçtigim devreyi seçtim.devreyi döndürecek olurusak reed röleyi hangi bacaga yerlestir mem gerekiyor.Bir de programını verirsen sevinirim tesekkür ederim ACİL LAZIM 1HAFTA İCİNDE

  17. soner elektronik says:

    kutupta_yaz_gibi01@hotmail.com bilgisi olanlar yardımcı olursa sevinirim tesekkürler

  18. emre says:

    cannot open include file ”delay.c”
    bu nedemek arkadaşlar.pi için gerekli hex dosyasını bır turlu olusturamadım lutfen yardım edermısınız….

  19. HÜSEYİN says:

    devrenin baskı devresi varmı

  20. hasansama says:

    kütüphanedeki delay.c dosyası yok galiba yada bozulmuş olabilir.
    bu iki dosyayı derleyici klasörünün içine atarsan sorun kalmayacaktır…

    http://www.cs.ucr.edu/~eblock/pages/pictools/ex/rx/delay.c
    http://www.cs.ucr.edu/~eblock/pages/pictools/ex/rx/delay.h

    kolay gelsin.

  21. allah razı olsun kardeş .. aslında bilgisayar blm okuyorum ama elektronik hocamız bize elktr. ödevi verdiği için mecbur kaldık ..ama aslında iyi oldu hiç değilse elktr. yönden olarak birşeyler yaptık …

  22. murat says:

    havada pervane ile kayan yazı yaptırmak istiyorum.yazının yüksekliği 10 cm olmalıdır.
    murat
    gsm : 0 534 582 26 29

  23. halil says:

    bir şey lazımsa halil_pc_1980@hotmail.com msn me yazı yazın gerekli olan işi size yapayım arkadaşlar :d

  24. murat says:

    havada yazı yazmak için mikro çipi nasıl programlayabilirim,kodları nasıl yazarım?bilgi verin….:)

  25. bycaddy says:

    arkadaşlar ben ledlerle her işi yaptım neredeyse stringten tutun şerit led ile araba altına neon led tabela harf harf ve picle kontrollü., ledli projektör spot lamba daha çok say say bitmiyor yardım isteyen arkadaş olursa adresim bycaddy@hotmail.com herkese yardımcı olabilirim bu devreyide yaptım harika bişey :D

  26. skoc says:

    benim arkadaş bunu iki yıl önce kendi çalışmalarıyla yaptı
    ve havad güzel figürlerle yazı çıkartabiliyor. web siteside var http://www.havadayazi.com buradan istediğiniz reklam panosunu yaptırabilirsiniz. 0 332 248 10 48

  27. mehmet says:

    arkadaslar bna c dilinde pic16f628A ile butonsuz 5 veya 10 sniye aralıklarla 8 led yakma devresi ve c konu lazım şimdiden tesekkrler esparados_18@hotmail.com bilgileri msnde yada mail atarsanız sevinirim

  28. web tasarım says:

    Çok teşekürler gercekten harika olmuş

  29. goksel says:

    arkadaslar yukarıda yazdıgım gıbı bılgı almak ısteyenler bana e posta ıle ulasabılır suanda bıle cok kısıye bu konuda yardımcı oluyorum yaklasık 1.5 yıl boyunca bu devreden tasarlayıp bastım ıs olarak pıyasada yuksek fıyata bulabıldıgınız bu guzel malzemeyı cok daha ucuza ve kendı emegınızle bırlıkte daha guzel yapıosunuz

    e posta adresım goxel.tanrikulu@hotmail.com

  30. 16f84 says:

    arkadaşlar bende bu devreden yaptım isim yazmaktan başka 3 boyutlu şekiller de yapılabilir bana ulaşırsanız bunu konuşabiliriz…link bu http://ayser-pic16f84.blogspot.com/

  31. ümit says:

    ya ben bu devreyi her şekilde yaparım ama motor olayını nasıl halledicem o konuda biri yardımcı olursa sevinirim. e posta: new_dream_alfonso@hotmail.com şimdiden teşekkürler..

  32. fazıl says:

    tebrikler

  33. yeşim says:

    saolun bu benim yıllık ödevimdi bultum şimdi denicem inşalla calışır teşekkür ederim bye

  34. yeşim says:

    teşekkür ederim bye

  35. Murat says:

    önemli bir sorum olcak bu konu ile ilgili orda olan varmı :D

  36. Murat says:

    Bana Led lerle havaya yazı yazmanın baskı devresi lazım Rica etsem Baskı devresi olan arkadas benimle paylasabilirmi

  37. Murat says:

    bu devrenin baskı devresini verebilcek olan yokmu :( ((

  38. Samet says:

    Arkadaşlar rıca ediyorum bu devreyi yapan çalıştıran arkadaşlarımız abilerimiz eklesin onlara sormam gereken bazı sorular var yada msnlerini bıraksınlar lütfen acil…. benim msn adresim : asi_boy59@hotmail.com

  39. Samet says:

    Birde Paylaşımı yapan arkadaşımıza teşekkür ediyorum açıklayıcı bir anlatım ama sormam gereken bazı sorular var

  40. Murat says:

    samet sende bu devrenin baskı devresi varmı acaba

  41. murat barın says:

    arkadaşlar ben bu devreyi yapıcam ödevim herşeyini bitirdim programıda pic basic ile yazmam lazım ama ben hala bulamadım yani çalıştıramadım hayalet.92@hotmail.com yardımcı olursanız sevinirimm şimdiden tşk

  42. baha says:

    arkadaslar bana 8 ledle kayan yazı yazmm lazım yazının yeri belli aralıklarla yeri degişmesi lazım bunu nasıl sağlıyabilirim birde prottan istedigimizdeyazıyı degiştirmek cok zor olur mu bu konuda bana bilgi verirseniz sevinirm baha_bayram@hotmail.com yardımlarınızı bekliyorum

  43. murat says:

    sonunda yaptımm :D

  44. sakura says:

    arkadaşlar bana bunun 10 karekterli c kodunu gönderirmisiniz sagolun yanliz_yanim01@hotmail.com

  45. ONUR says:

    ewt arkadaşlar güzel bir dewre elinize sağlık. yapan arkadaşlar herhangi bir sorunla karşılaştımı acaba. bide merhaba yerine “ONUR” yazabilirmiyiz olursa hex veye c kodu werebilirseniz sevinirim..!

Leave a Reply