MBlock ile Buton, Buzzer ve Led Uygulaması
Merhaba,
Önceki yazılarımızda sizlere Butonun, Ledin ve Buzzerın MBlock üzerinden kontrolünü göstermiştik. Bu yazımızda ise üçünü birden tek bir uygulamada kullanacağz. Butona bastığımızda, Buzzer çalacak ve Led yanacak, bıraktığımızda ise Buzzer duracak ve Led sönecek.
Ne yapacağız ?
- Arduino Uno ile Bread board üzerine Buzzer, Buton ve Led’den oluşan bir devre kuracağız.
- Kullanacağımız blokları tanıyacağız.
- Uygulamanın çalışması için gerekli algoritmayı kuracağız.
Gerekli malzemeler:
- 1 Adet Arduino Uno
- 1 Adet BreadBoard
- 1 Adet Buzzer
- 1 Adet Buton
- 1 Adet Led
- 1 Adet 10K Ω direnç
- 1 Adet 100 Ω direnç
- 1Adet 220 K direnç
- 9 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.
Şimdi Devremizin kurulumuna geçebiliriz.
Arduino Uno ve BreadBoard devresinin kurulması;
Görüntüdeki gibi bağlantıları yaptıktan sonra kodlamaya geçebiliriz.
Buton değerini öğrenmek için 12 numaralı pini oku eğer Buton değeri 1’e eşitse(Basılı ise) 8 pinindeki Buzzer’dan C4 notasını Çeyrek vuruş çal ve 9 numaralı pinde bağlı olan ledi yak eğer Buton değeri 1’e eşit değilse(Basılı değilse) 9 numaralı pinde bağlı olan ledi söndür.
Yazdığımız kodlar Arduinonun anlayacağı dile çevrilir. Ardından Arduino kartına yazılır.
#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 Buton; void setup(){ Serial.begin(115200); pinMode(12,INPUT); pinMode(8,OUTPUT); pinMode(9,OUTPUT); } void loop(){ Buton = digitalRead(12); if(((Buton)==(1))){ tone(8,262,250); // write to buzzer delay(250); digitalWrite(9,1); }else{ digitalWrite(9,0); } _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ükle butonuna tıklamanız yeterlidir.
Kodlar derlendikten sonra Arduino’ya 30-50 sn. arasında yüklenmiş olacaktır. Arduinoya bağlı olan Buzzer’ın 1 saniye aralıklarla çaldığı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…