Arkadaşlar merhaba. Başka bir paylaşımla daha birlikteyiz. Bu paylaşımda
- Arduino IDE ortamında yazacağımız programla LDR kullanarak ışık sensörü devresi yapacağız.
- MATLAB ile LDR üzerine düşen gerilim değişiminin ortamdaki ışık miktarını değiştirerek gerçek zamanlı dinamik ölçümünü yapıp anlık gerilim değişim grafiği elde edeceğiz.
- SIMULINK ile Arduino UNO iletişimi sağlayıp LED yakıp söndürme ve potansiyometre ayarı değiştirerek LED parlaklığı değişimini gerçekleştireceğiz.
LDR yani ışığa bağımlı direnç, üzerine düşen ışık miktarı ile ters orantılı direnç değişimi gösteren devre elemanıdır. Başka bir ifade ile ışıklı ortamda uçları arasındaki direnç minimum iken ortam karanlık olduğunda maksimum direnç gösterir. Işığa bağlı direnç dolayısıyla gerilim kontrolü de bize ışık sensörü devresi tasarlayabilme imkanı verir.
Yukarıda yer alan devre kurularak Arduino IDE ortamında yazılan program ile bahsettiğimiz ışık sensörü devresi kurulabilir. Linkte verilen kodlar ile program Arduino UNO karta yüklendiği zaman karanlık ortamda kırmızı ledin yandığı, ışığı açınca kırmızın ledin sönüp mavi ledin yandığı sensör uygulaması yapılabilir(Arduino LDR Kodları) Ayrıca Arduino IDE programında haberleşme penceresi açılarak kart üzerinde analog girişten gönderilen gerilim bilgisinin 10 bitlik dijital karşılığı anlık olarak görülebilir. Yani ışık seviyesi yüksekse görülen sayısal değer karanlık ortamdaki değere göre daha yüksek olacaktır. Bu değerler potansiyometre ayarlanarak farklı değerlere de getirilebilir. Bahsettiğimiz uygulama videosunu izlemek için (İZLE)
Benzer şekilde MATLAB programı kullanarak ilgili program yazıldığında ortamda değişen ışık miktarına bağlı olarak anlık olarak LDR üzerine düşen gerilimin nasıl değiştiği de görülebilir. Gerçek zamanlı olarak gerilim-zaman grafiği elde edilirken diğer yandan multimetre ile de gerilim değeri de okunduğunda yazılım ile grafikte görülen değer ile multimetrede okunan değerin hemen hemen aynı olduğu görülmektedir. Bahsettiğimiz uygulama videosunu izlemek için (İZLE)
İlgili programda kullandığımız temel komut voltage=readVoltage(a,’pin’) komutudur. Örnek olarak for döngüsüne alınarak istediğimiz süre kadar anlık ölçüm yapılabilir. Grafik çizdirmek için kullanılan temel komutlar ise plot(voltage,’x’); pause(t) komutlarıdır. Ayrıca çizilen grafiğin çıktısı program sonlandırılarak farklı formatlarda alınabilir.
MATLAB ortamında gerçekleştirdiğimiz uygulamaları yine aynı progamda yer alan SIMULINK ortamında da gerçekleştirebiliriz. SIMULINK ortamında Arduino UNO kart ile haberleşme kurmak için ilgili kütüphanelerin indirilmesi gerekir. MATLAB ile Arduino haberleşmesi için anlattıklarım SIMULINK ile Arduino haberleşmesi için de geçerli. MATLAB programını açıp Arduino kartı bağladığımızda program kartı algılayıp SIMULINK için iletişim için gerekli linki bize gösterecek. Yapmamız gereken tek şey linke tıklayıp ilgili kütüphanelerin indirilmesini beklemek olacak.
İndirme işlemi sonrası ana sayfada yer alan SIMULINK sekmesine tıklayıp açılan pencerede Blank Model sekmesine tıklandığı zaman proje ortamımız hazır olacak. Bu pencerede yer alan Library Browser seçeneğine tıklayarak kütüphanede yer alan birimlere ulaşabilir ve artık projemizi yapmaya başlayabiliriz.
SIMULINK ile ilk uygulamalarımız led kontrolü ve potansiyometre ile ledin parlaklığını eş zamanlı olarak değiştirmek olacak. Ayrıca potansiyometreyi her değiştirdiğimizde program ekranında da analogtan dijitale çevrilen 10 bitlik veri değerlerini de (0-1023 arası değişiyor) anlık olarak gözlemleyeceğiz. Sözünü ettiğim bu iki uygulamaya ait videoları izlemek için (İZLE).
Paylaşımlarımız devam edecek. Hem MATLAB hem SIMULINK hem de Arduino ortamında farklı projelerle en kısa sürede tekrar görüşmek üzere…
İlgili videomuz için TIKLAYINIZ…
Hoşçakalın…