mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü

Gün geçtikçe, adım adım bu uzun yolda kendimize daha çok şey katmaya devam ediyoruz. İlk yazımızda daha mBlock kavramının ne olduğundan bahsederek başlamıştık. Şimdi dönüp baktığımızda ne kadar yol aldığımızı fark edebiliriz. Bugün ki yazımızda ise mBlock uygulaması aracılığıyla (IR Remote) Kumanda ile Led Kontrolü yapacağız.

(IR Remote) Kumanda Nedir?

Bu uzaktan kumandalarımızın geçmiş izlerine baktığımızda, 1. Dünya Savaşından izler görmek mümkündür. O dönemden yavaşça kullanılmaya başlanılan ve günümüzde çok daha farklı kullanım amaçları, çeşitleri ve görünüşleri olan kumandalardır. Bir sürü çeşit çeşidini görmek mümkündür. Örnek vermek gerekirse;
• Infrared Uzaktan Kontrol
• Radyo Dalgasıyla Uzaktan Kontrol
• Akıllı Kumandalar
Tabii ki de biz bugün Infrared Uzaktan Kontrol kumandalarına odaklanacağız. Kullanım şeklini, nasıl bağlantı kurulduğunu ve benzeri bir sürü konuyu inceleyeceğiz. Öncelikle Infrared Uzaktan Kontrol kumandalarımız, evlerimizde kullandığımız uzaktan kumandalarımızdan, robotik alanında yaptığımız robot kol veya çizgi izleyen robotlara kadar geniş bir kullanım alanına sahiptir. Bu kullanıcın isteği doğrultusunda evirilmektedir.
Kullanım mantığı aslında basittir. (IR Remote) Kumandamız ikilik sistem üzerinden infrared ışık darbeleri göndermektedir. Tabii ki de gönderilen her ikilik kodun belirli karşılıkları bulunmaktadır. Bu sinyalleri anlama görevi IR alıcılara düşmektedir. Ardından da bu sinyalleri ikili kod sistemine dönüştürmektedir. Devamında ise bildiğimiz gibi Mikroişlemcide bu kodlar okunup, gereken komutlar çalışmaktadır.

mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü

Şimdi size kısaca IR Alıcımızın bağlantısından bahsetmek istiyorum. Öncelikle şunu unutmamak lazımdır ki, IR alıcının bir sürü çeşidi mevcuttur ama bağlantıları genel anlamda 3 bacaktan oluşur. Bu yüzden kısaca sizlere bağlantılarından bahsetmek istiyorum.

  • VCC-5v (+)
  • GND-Toprak (-)
  • Verinin çıkış bacağı
mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü

Uygulama

İlk olarak (IR Remote) Kumandanın ne olduğunu tam olarak kavradığımıza göre artık uygulamamıza geçebiliriz. Bugün ki uygulamamızda, kullanımını öğrenmiş olduğumuz kumandadan çıkan sinyale göre, onu IR alıcı yoluyla değerlendirerek LED yakma uygulaması yapacağız. Tabii ki bu sayede hem kullanımını daha iyi anlamış olacağız, hem de programlama anlamında da kendimizi daha da geliştirmiş olacağız. Bunun bir sebebi ise her yeni uygulamayı programlarken öncekilerden farklı bir algoritma mantığı kurarak gerçekleştiriyoruz.

Gereken Malzemeler

  • Arduino UNO
  • IR Alıcı Verici Kumanda Seti
  • LED
  • Jumper Kablo
mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü

Bağlantı Şeması

Öncelikle ilk olarak uygulama mantığını iyice kavradık. Artık projemizin bağlantılarını gerçekleştirmeye başlayabiliriz. Tabii ki ikinci olarak yapmamız gereken, projemiz için gerekli olan malzemeleri sağlamaktır. Ardından bağlantımıza ilk olarak IR alıcıdan başlıyoruz. Zaten çalışma mantığını ve pin sayısını biliyorduk. Kullanacağımız alıcıda 3 adet pin bulunmaktaydı. Bunları sırası ile Arduino üzerinde;
• VCC- 5v (+)
• GND- GND
• D0-9 Numaralı pin
Zaten bildiğimiz gibi D0 pinimiz veri çıkışını yapmamızı sağlayan bacaktır. Bu yüzden onu Arduino üzerinde bir pine bağlamaktayız. Devamında her zamanki gibi LED bağlantımızı gerçekleştiriyoruz.
• Kısa Bacak- GND
• Uzun Bacak- 8 Numaralı Pin
Olacaktır. Aslında bağlantı şeması bu kadar basittir. Bağlantıları son kez kontrol ettikten sonra, artık programlamaya geçebilirsiniz.

mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü

Kod Blok Yapısı

Öncelikle buraya kadar geldiysek zaten projemizin büyük kısmını halletmişiz demektir. Şimdi yapmamız gereken tek şey ise projemizin programlama kısmı olacaktır. Programlamaya başlamadan önce şunu belirtmek isterim ki, bazı uygulamaları programlarken elimizdeki kod blokları yeterli olmamaktadır. Bu durumda uzantı yüklememiz gerekmektedir. (IR Remote) Kumanda uygulamamızı programlamak için “IRremote” uzantısını indirmemiz gerekmektedir. Bildiğimiz gibi bu işlemi mBlock uygulamamızın üst kısmında bulunan “uzantı” sekmesinden yapmaktayız. İndirdikten sonra uzantıyı aktif edip, “Robotik” sekmesine girdiğinizde, yeni gelmiş olan kod bloklarını göreceksiniz.

mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü
mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü

Öncelikle kodlama başlamadan önce belirtmek isterim ki bugün yapacağımız programlama iki adet bölüm oluşacaktır. Sebebi ise ilk yapacağımız program ile Arduinoya bir yükleme gerçekleştireceğiz. Bu programlama sayesinde, hangi tuşun seri porta hangi kodu gönderdiğini göreceğiz. Unutmayın her tuş seri porta 2 adet kod göndermektedir. Lütfen birini seçerek işleme devam edin. Bu sayede istediğimiz işlemleri, istediğimiz tuşlara atayabilir hale geleceğiz. Artık programlamaya geçebiliriz.
İlk olarak her zamanki gibi uygulamamızı Arduino Kipi modunda çalıştıracağımız için “Arduino Programı” adlı blokla başlıyoruz. Ardından IR alıcıyı hangi pine bağladıysak ona bağlı olarak “IRremote pin 9” adlı bloğu seçiyoruz. Tabii ki devamında” sürekli tekrarla” ve onun da içine “eğer ise” döngüsü açıyoruz. Döngünün içine ise “bulean result receive” bloğunu atıyoruz. Bu kumandada sinyal gelip gelmediğini sorguluyor. Devamında ise buna bağlı olarak “Value Results” bloğunu seri porta yazdırıyoruz. Ve “Resume IR receive” ile kodumuzu şimdilik bitiriyoruz. Hemen ardından kodumuzu yükleme işlemini gerçekleştiriyoruz. Arduino BGO aracılığı ile seri port ekranını açıyoruz ve kodları gözlemliyoruz.

 

mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü
mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü
mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü
mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü

Hemen devamında ilk yapmamız gereken işlem, kullanmak istediğimiz tuş kombinasyonları için değişken oluşturma olacaktır. Ardından oluşturduğumuz bu değişkenleri “Tuşlar” adında bir blok oluşturup içine atıyoruz. Bu blok bizim kullanacağımız tuşları ve seri porttan aldığımız değerlerini taşımaktadır. Bu yüzden değerleri yazarken dikkat etmemiz lazım. Devamında iki adet tuş kullanacağımız için aynı sayıda “eğer ise” bloğu açıyoruz ve içine dijital pinimizi yüksek veya alçak yapmak istediğimizi seçerek, ledimizi istediğimiz gibi kontrol ediyoruz. Artık kodumuz bitmiş bulunmaktadır. Yükledikten sonra istediğiniz gibi kullanabilirsiniz.i

mblock ir, mBlock ile Arduino! (IR Remote) Kumanda ile Led Kontrolü