MBlock ile LDR Uygulaması
Merhaba,
Foto dirençler, üzerlerine düşen ışık şiddetiyle ters orantılı olarak dirençleri değişen elemanlardır.
Foto direnç, üzerine düşen ışık arttıkça direnç değeri lineer olmayan bir şekilde azalır.
LDR’nin aydınlıkta direnci minimum, karanlıkta maksimumdur.
Bu elemanların yapısında “kadmiyum sülfür” (CdS) yarı iletken madde olarak kullanılmaktadır.
Kadmiyum sülfür, yalıtkan bir taban üzerine yerleştirilmiş olup, içerisinde iki taraftan daldırılmış birbirlerine değmeyen iletken teller bulunmaktadır.
Bu iki iletken telden dışarıya uç çıkarılarak LDR’nin bağlantı terminalleri oluşturulmuştur. LDR’nin üst yüzeyi ışık etkisini algılayabilmesi için şeffaf bir malzemeyle kaplanmıştır.
Günümüzde LDR’ler kumanda sistemlerinde, sokak lambalarında, gece lambalarında, kanın renk yoğunluğunu belirleyen tıbbi cihazlarda, flaşlı fotoğraf makinelerinde, otomatik açılan kapılarda, elimizi yaklaştırdığımızda çalışan sıvı sabun ve kağıt havlu makineleri ile buna benzer birçok alanda kullanılır.
Ne yapacağız?
- Arduino Uno ile Breadboard üzerine LDR’den oluşan bir devre kuracağız.
- Kullanacağımız farklı blokları tanıyacağız
- LDR’nin çalışması için gerekli algoritmayı kuracağız
- Ortamdaki ışık seviyesinin değişimini gözlemleyeceğiz.
Gerekli malzemeler:
- 1 Adet Arduino Uno
- 1 Adet Breadboard
- 1 Adet LDR
- 1 Adet10Kohm direnç
- 3 Adet iki ucu erkek jumper kablo
Gerekli Araçlar:
- Mblock
- 3DRoboLab Türkçe bloklar.
MBlock uygulamasına 3DRoboLab Türkçe bloklar uzantısı ekleme.
Programı çalıştırıp üst kısımdaki araç çubuğundan uzantılar ikonuna tıklıyoruz.
Daha sonra açılan pencereden Uzantıları Yönet ikonuna tıklıyoruz.
Açılan Pencerenin Arama bölümüne 3DRoboLab yazıyoruz.
Daha sonra 3DRoboLab adlı uzantıyı indirip, Uzantı ekle ikonuna tıklıyoruz ve 3DRoboLab Türkçe Bloklar MBlock kütüphanenize eklenmiş oluyor.
basit uygulamalar için hazırlamış olduğumuz kodların çalışmasında herhangi ek bir işlem yapmanıza gerek yoktur.
MBlock Programı üzerinden Arduino kartına bağlanma.
Programı çalıştırıp üst kısımdaki araç çubuğundan Kartlar ikonuna tıklıyoruz.
Daha sonra açılan pencereden kullandığımız kartı seçiyoruz.
Kartı seçtikten sonra gene araç çubuğu üzerinde bulunan Bağlan ikonuna tıklıyoruz.
Karşımıza çıkan pencerede seri port’un üzerine geliyoruz ve yan tarafta bağlı COM’lar çıkıyor. Arduino kartı hangi COM’da bağlıysa o COM’u seçiyoruz ve program üzerinden karta bağlanmış oluyoruz.
Arduino Uno ve Breadboard devresinin kurulması
İlk olarak LDR’nin bir bacağına 10 Kohm değerindeki direncimizi bağlıyoruz, direncin diğer ucunu 5V çıkışına bağlıyoruz.
Daha sonra, LDR’nin direnç bağlı olan bacağının diğer tarafını A1 numaralı pine bağlıyoruz.
Son olarak boşta kalan bacağıda GND(toprak) hattına bağlıyoruz.
Şimdi kullanacağımız blokları tanıyalım.
Serial BaudRate bloğu bir iletişim bağlantısında verinin ne kadar hızlı aktarıldığını tanımlar. MBlock uygulamasının veri aktarma hızı 115200 olduğu için bu seçimi gerçekleştirdik.
Serial Veri Yaz bloğu da, Bilgisayarın USB portuna bağlı olan arduino kartından, seri porta butonun durumunu göndermesini sağlar. Böylece bilgisayara arduino kartından okuduğumuz sensör verilerini gönderebiliriz.
Yazdığımız kodlar Arduinonun anlayacağı dile çevrilir. Ardından Arduino kartına yazılır.
Bu programı Arduinoya yüklediğimizde seri port ekranından Işık değerini gözlemleyebiliriz.
#include <Arduino.h> #include <Wire.h> #include <SoftwareSerial.h> /* 3D Robotics Laboratory: www.3drobolab.com */ double angle_rad = PI/180.0; double angle_deg = 180.0/PI; double __var__73_351_305_107; void setup(){ Serial.begin(115200); pinMode(A0+1,INPUT); } void loop(){ __var__73_351_305_107 = (100.0-100.0*analogRead(A0+1)/1024.0); Serial.println(__var__73_351_305_107); _delay(0.1); _loop(); } void _delay(float seconds){ long endTime = millis() + seconds * 1000; while(millis() < endTime)_loop(); } void _loop(){ }
Hazırladığımız kod bloklarının Arduinonun anlayacağı dile (C/C++) çevriliyor. Kodları yüklemek için Arduino’ya yüklebutonuna tıklamanız yeterlidir.
Kodlar derlendikten sonra Arduino’ya 30-50 sn. arasında yüklenmiş olacaktır.
Seri Port Ekranından Işık seviyesini takip edebilirsiniz.
Ortamdaki ışık seviyesi düştükçe değerlerinde düştüğünü göreceksiniz.
Arduinonun çalışması için gerekli enerji (pil, güç kaynağı) sağlandığı sürece yazdığımız kodlar çalışacaktır.
İyi eğlenceler…
Comments
Comments are closed.