PROJE SAHİBİ: ÖZCAN PİŞGİN ARDUİNO UNO Arduino: Arduino, kolaylıkla devreler tasarlayabileceğiniz, açık kaynak kodlu bir geliştirme platformudur. Arduino kullanmak için üst düzey bir elektronik ve programlama bilgisine sahip olmanıza gerek yoktur, aksine Arduino elektronik ve programlama bilginizi geliştirmek, tasarladığınız devreleri daha kolay kurabilmek için üretilmiş bir geliştirme platformdur. Arduino' nun programlama dili C++' a benzer hatta daha basittir. Eğer herhangi bir programlama dili biliyorsanız alışmanız kolay olacaktır. Arduino Uno: Arduino Uno, Arduino'nun birçok çeşidinden (mega, mini, mini pro, nano, leonardo...) biridir. Her biri farklı ihtiyaçlara hitap eder, ben projelerimde Arduino Uno'yu kullanıyorum. Arduino üzerinde Atmega 328 mikrodenetleyicisi bulunur. Temel olarak yaptığımız işlem bilgisayar üzerinden bu mikrodenetleyiciyi programlamak ve giriş çıkış pinlerini kullanarak istediğimiz devreyi tasarlamaktan ibarettir. Arduino ile analog ve dijital verileri okuyup işleyebilir, çıktı üretebilirsiniz,arduino'yu Usb girişinden bilgisayara bağlayarak çalıştırabilir ve programlayabilirsiniz. Eğer mobil bir projede kullanılacaksa harici güç girişinden devreyi besleyebilirsiniz.( En fazla 12V a kadar güç kaynaklarının kullanılması önerilir. ) Arduino size 5V ve 3.3V çıkışlarını verir, çoğu elektronik elemanı çalıştırabilirsiniz ancak fazla akım ve gerilim gerektiren elemanları kullanmak için harici güç kaynağına ihtiyaç vardır. LCD NEDİR? LCD, Liquid Crystal Display yani Sıvı Kristal Ekran elektrikle kutuplanan sıvının ışığı tek fazlı geçirmesi ve önüne eklenen bir kutuplanma filtresi ile gözle görülebilmesi ilkesine dayanan bir görüntü teknolojisidir. LCD lerde bulunan sıvı kristaller sıcaklığa ve madde yapısına göre termotropik ve liyotropik fazlarda bulunabilirler. Termotropik fazlı sıvı kristallerin bir alt grubu olan nematik likit kristallerin, kıvrık nematikler (twisted nematics - TN) adı verilen çeşidi uygulanan akımın gerilimine bağlı olarak düz konuma yani kıvrık olmayan nematikler haline gelir. Nematik sıvı kristaller, LCD lerin yapılmasını mümkün kılan sıvı kristal fazıdır. LCD lerin yapılabilmesi için ışık polarize edilebilmeli, sıvı kristaller polarize edilmiş ışığı geçirebilmeli, sıvı kristallerin molekül dizilimi elektrik akımı ile değiştirilebilmeli ve elektriği ileten bir yapıya sahip olunmalıdır.
LCD Yapısı ve Çalışma Prensibi LCD 'lerin yapısı yandaki resimde görüldüğü gibi farklı katmanlardan oluşmaktadır. LCD katmanları bir araya geldiklerinde paneller meydana gelir. Panellerin çalışma mantığı en basit haliyle, üzerindeki özelleşmiş hücrelerin iyon katmanı tarafından şekillendirilmesi ve elektrik akımıyla görüntü oluşturulması şeklindedir. Herhangi bir elektrik alan uygulanmadan önce sıvı kristaller kıvrık nematikler (TN) denilen 90 derece kıvrık olacak şekilde sıralanmışlardır. Böylece kristaller arasından geçen ışığın kutuplanmasının yön değiştirmesi sağlanır ve ekran gri görünür. Yeterince yüksek bir voltaj uygulandığında sıvı kristaller kıvrık olmayacak şekilde (untwisted) sıralanırlar ve sıvı kristal katmanından geçişi sırasında ışığın kutuplanma yönü değişmez. Bu durumda ışık ikinci filtreye dik biçimde polarlanır ve katmanı geçemediği için o piksel siyah görünür. LCD Kullanımı: LCD panelleri robot projelerinde ya da otomasyon projelerinde kullanmak için bilgisayarınızın seri ya da parelel portundan veya bir PIC mikrodenetleyici kullanarak kontrol edebilirsiniz. LCD paneller piyasada satır ve sütun sayılarına göre 1x8, 2x8, 1x16, 2x16, 1x20, 2x20, 1x40 ve 2x40 gibi farklı boyutlarda bulunmaktadır. Bunlar arasında robot projelerinde yaygınlıkla 2x16 boyutlarındaki LCD paneller kullanılmaktadır. Günümüzde üretilen LCD panellerin çoğunda tek sıra halinde 16 pin bulunur. Bu pinlerden ilk 14 tanesi kontrol için son iki tanesi ise eğer varsa arka ışık için kullanılır. Bazı LCD 'lerde kontrol için kullanılan 14 pin 2 adet 7 li sıra halinde de bulunabilir. LCD Pinleri Fonksiyonları 1) Vss Toprak (Ground) 2) Vcc +5 V 3) VEE Kontrast 4) RS Register Select 5) RW Read / Write 6) E Enable 7-14) D0 - D7 Data girişleri 15) BL+ Arka panel ışığı pozitif ucu 16) BL - Arka panel ışığı negatif ucu VEE : Kontrast girişine bağlanan direnç ile LCD panelin kontrastı ayarlanabilir. Direnç değeri yükseldikçe kontrast düşer, azaldıkça ise kontrast yükselir.
RS : Lcd ye komut mu yoksa data mı gönderileceğini belirler. RS girişi "0" (ground) durumundayken komut saklayıcısı, +5V oldugundaysa veri saklayıcısı seçilmiş olur. RW : Lcd den okuma mı yoksa lcd ye yazma yapılacağını belirler. RW girişi toprağa bağlandığında yani "0" durumundayken LCD yazma modundadır. E : Enable ucu LCD ve pinler arasındaki gerçek veri alışverişini sağlayan bacaktır. Bu girişi mikrodenetleyiciye program aracılığıyla tanıttıktan sonra PIC kendisi veri gönderileceği zaman bu bacaga enable pulsu gönderir. D0 - D7 : Data hattı olan bu pinler doğrudan mikrodenetleyicinin bir portuna bağlanır. Veri 4 ya da 8 bitlik veri yolu ile gönderilebilir. LCD lerin kontrolü için farklı programlama dillerini kullanabilirsiniz. Aşağıdaki tabloda örnek olarak Pic Basic dilinde LCD kontrolü için kullanılan bazı komutların listesi verilmiştir. LCD 'nin verileri göstermeye başlaması kısa bir zaman aldığı için bir LCD ' ye ilk komutu göndermeden önce programda en az 0,5 saniye bekleme yapılmalıdır. Komut Fonksiyon $ FE,1 Ekranı temizler. $ FE,2 Satır başına dönülür. $ FE, $ 0C Kursörün gözükmemesini sağlar. $ FE, $ 0E Kursörü alt çizgi haline getirir. $ FE, $ 0F Kursörü yanıp söner hale getirir. $ FE, $ 10 Kursörü bir karakter sola getirir. $ FE, $ 14 Kursörü bir karakter sağa getirir. $ FE, $ c0 Kursörü 2. satırın başına getirir. LCDOUT LCD ye istenilen veriyi göndermek için kullanılır. Hc-rs04 Ultrasonik sensör nedir? Hc-sr04 ultrasonik sensör sonar(sound Navigation and Ranging ) kullanarak karşısındaki nesneye olan mesafesini hesaplayan bir input kaynağıdır.sonar dediğimiz sistem ses dalgalarını kullanarak cismin uzaklığını boyutunu elde etmemizi sağlar. Bu tür sensörlerin esin kaynağı yunuslar ve yarasalardır. Onlarda sonar ile iletişim kurar ve hareket eder. 2cm ile 400cm arası mesafe en sağlıklı okuma yaptığı aralıktır.üzerinde bir alıcı ve bir verici modül bulunur. Özellikler Güç Kaynağı : +5V DC Minimum akım : <2mA Çalışma akımı : 15mA Çalışma frekansı : 40 khz
Efektif Açı : <15 derece Mesafe ölçüm arası : 2cm 400cm Hassasiyet : 0.3cm Tetikleme girişi darbe genişliği : 10uS Boyut :45mm x 20mm x 15mm VCC = +5V DC Trig = Sensörün tetikleme kısmı Echo = Sensörün alıcı kısmı GND = Topraklama kısmı Hc-sr04 Ultrasonik Mesafe Sensörü Nasıl Çalışır? Hc-sr04 ultrasonik mesafe sensörü zaman diagramı aşağıda gösterilmektedir. Ölçümün başlaması için Trig pini en az 10 us de +5V almalıdır. Böylelikle sensörden 40 khz de 8 devir ses dalgası dışarıya iletilir ve yansıması beklenir. Hc-sr04 alıcıdan sesl dalgasını aldığında Echo pini 0V dan 5V a geçer ve mesafeyle orantılı bir süre bekler. Biz burda Echo pinindeki genişliği ölçerek, aradaki mesafeyi elde edebiliriz.
Trigger signal : Trig pini aktif olduğunda gönderilen 1 adet sinyaldir. Module send out : Trig pini aktif olduğunda tek seferde 40kHz de 8 adet kare dalga sinyal gönderir. Output on pin Echo : Yansıyan dalgaların dönüşte Echo pininde oluşturduğu sinyaldir. POTANSİYOMETRE NEDİR? Tüm elektronikçilerin bildiği üzere potansiyometre bir direnç (reosta) türüdür. Fakat diğer direnç türlerinden ayrılan en büyük özelliği ise direnç değeri değiştirilebilir olmasıdır. Potansiyometrenin Yapısı Potansiyometre genel olarak üç bacaklı olmaktadırlar. Bu bacakların ikisi iç yapısında sabit fakat üçüncü bacak ise iç yapısında hareketli bir yapıya sabittir. İşte bu hareketli yapı sayesinde sabit diğer iki bacaktan sürekli değişen bir voltaj çıkışı alabilmek mümkün hale gelmektedir. Aşağıda Potansiyometrenin yapısını tanıtan resimi inceleyebilirsiniz.
Potansiyometrenin Elektronik Sembolü Potansiyometreler genel anlamda elektronikte aşağıdaki resimdeki gibi sembol edilmektedir. Potansiyometre Çeşitleri Başlıca potansiyometre çeşitleri şunlardır; 1. Doğrusal (Lineer) Potansiyometreler Doğrusal bir düzlem üzerine montaj edilmiş direnç türüdür. Direnç değeri 0 dan itibaren doğrusal bir şekilde artar. Bu artım sayesinde elektronik bir devrede doğrusal bir şekilde voltaj kontrolü sağlanabilir. Mantığını daha iyi anlayabilmek için eklediğim resimleri inceleyiniz. Soldaki resim doğrusal sistemli bir potansiyometrenin iç yapısını göstermektedir. Sağdaki resim de ise bu potansiyometrenin hareketli milinin pozisyonuna göre verdiği çıkışı sembolize eden bir grafik yer almaktadır. 2. Dairesel (Rotational) Potansiyometreler Dairesel bir düzlem üzerine montaj edilmiş bir direnç türüdür. Doğrusal Potansiyometre türünden ayıran en önemli özelliği ise Direnç değeri logaritmik bir düzen de artma göstermektedir.
Soldaki resim dairesel sistemli bir potansiyometrenin iç yapısını göstermektedir. Sağdaki resim de ise bu potansiyometrenin hareketli milinin hareketine göre verdiği çıkışı sembol eden bir grafik yer almaktadır...proje BAŞLANGICI. Arduino ile HC-SR04 Ultrasonik Mesafe Sensörü kullanarak Uzaklık Ölçer Yap! HC-SR04 Ultrasonik Mesafe Sensörü; 2cm'den 400cm'ye kadar 3mm hassasiyetle ölçüm yapabilen bir ultrasonik sensördür. HC-SR04 sensörünün üzerinde bir hoparlör, bir de mikrofon bulunur. Hoparlöründen ses dalgaları gönderir. Sensörün önünde bir cisim varsa; bu ses dalgaları cisme çarpıp geri döner ve sensörün üzerinde bulunan mikrofon tarafından algılanır. Bu ses dalgalarının sensörden gönderilip önündeki cisme çarpıp geri gelme süresini Arduinoya hesaplattırarak LCD ekrandan sensör ile cisim arasındaki mesafeyi yazdırdık. Arduino öğrenmeye başlayanların ilk yaptığı projelerden biri,hc-sr04 ultasonik mesafe sensörü ve 2 16 Lcd ekran kullanarak, robotun karşısındaki engellerin mesafesini ölçmek ve bunu ekranda görüntülemektir. Buyrun,bu projeyi birlikte yapalım. Öncelikle ihtiyacımız olan malzemelerden bahsedelim. Kullanılan Malzemeler
1 Adet Arduino Uno 1 Adet Hc-Sr04 Ultrasonik mesafe sensörü 1 Adet 16 2 Lcd Ekran 1 Adet Breadbord Yeteri kadar jumper kablosu ve isteğe bağlı potansiyometre. Potansiyometreyi lcd ekranın parlaklığını ayarlamak için kullanacağız. Devre Şeması: Devremizi bu şekilde kurduktan sonra yeni bir arduino projesi açıp gerekli kodları yapıştırıyoruz ve kodları arduinomuza yüklüyoruz.