Ana içeriğe atla

#20 | Ses Komutuyla Led Yakmak! #Hc06 #Bluetooth

 


HC05/06 Bluetooth Modülü

Bluetooth modüller Arduino kablosuz iletişiminde yaygın olarak kullanılan modüllerden biridir ve genellikle HC05 ve HC06 modülleri karşımıza çıkar. Bu modüller fiziksel tip olarak birbirlerine benzerdir. Fakat HC05 Bluetooth modülü 6 pinli HC06 modülüyse 4 pinlidir. 


Özellik olarak aralarındaki tek fark ise HC05 modülünün kendisine gelen isteklere cevap verirken aynı anda başka bluetooth cihazlarına  bağlanabilmesidir.  HC06 ise sadece kendisine gelen istekleri kabul edebilir fakat başka bluetooth kartına bağlatı isteği gönderememektedir.  HC05 Bluetooth modülünün çalışma türüne Master-Slave ; HC06 modülünün türü ise slave moddur.

Bir önceki projemizde yine bu projemizde kullanacağımız hc05 ve hc06 bluetooth modüllerinin farkına değinip 3 tane led yakma projesini gerçekleştirmiştik. İzlemeyenler için linkini sağ üst köşeye bırakıyorum.

Projemiz


Sesli komutla elektronik cihaz kontrol etmek için birçok seçenek mevcut ama en ucuz seçenek arduino kullanmak.  Bu projemizde, sesli komuta sahip bir android uygulamasını kullanarak bir led'i açıp kapatmanın çok basit olduğunu göreceğiz. 

Malzemeler

  • Hc06 bluetooth modülü
  • Arduino
  • Breadboard
  • 1 tane led
  • 220 ohm direnç
  • 6 tane jumper kablo

Hızlıca devremizi kuralım. Önce bluetooth modülümüzün pin bağlantılarını yapalım. Vcc pinini 5v a gnd pinini eksi hatta tx pinini rx pinine rx pinini tx pinine bağlayalım. Ledimizi yerleştirip eksi bacağını eksi hatta artı bacağına direncimizi bağladıktan sonra 2. Pine yönlendirelim. Eksi bağlantılarımızı gnd ye yönlendirelim.

DİKKAT:  Arduino seri haberleşmede TX ve RX pinini kullandığı için kodlar yüklenirken bu pinleri çıkarmayı yüklendikten sonra takmayı unutmayın!

Sıra geldi android cihazımız ile eşleştirmeye. Ben telefonla çekim yaptığım için tablet üzerinden anlatıcam.  Android cihazımızın bluetooth’unu açıyoruz ve arduinomuza bağlı olan bluetooth modülüne bağlanıyoruz. Şifremizi varsayılan  1 2 3 4 olarak giriyoruz.


Bu proje için kullanacağımız “arduino voice control”  android uygulamasını play storedan ücretsiz olarak indirdikten sonra uygulamayı açıyoruz. “Connect” butonuna basıyoruz ve listeden “HC-06” i seçiyoruz. Daha sonra ortadaki mikrofon simgesine dokunup “led yak” veya “led kapat” diyoruz. Arduino üzerindeki ledin yanıp kapandığını göreceksiniz!


DEVREMİZ



KODLARIMIZ

//Bilişim Teknolojileri ve Yazılım Öğretmeni DUYGU BARUT
String komut;
#define led 2

void setup() {
  pinMode(led,OUTPUT);
  digitalWrite(led,0);
  Serial.begin(9600);
}
void loop() {
 while(Serial.available()){
  char oku=Serial.read(); 
  komut +=oku;
 }
 if(komut.length()>0){
  if(komut=="led yak"){
    digitalWrite(led,1);
  }
  if(komut=="led kapat"){
    digitalWrite(led,0);
  }
  komut="";
 }
delay(100);
}

Yorumlar

  1. kod için teşekkürler

    YanıtlaSil
  2. Rica ederim, iyi çalışmalar...

    YanıtlaSil
  3. ben herşeyi düzgün ve aynı şekilde yaptım ama komutlarıma yanıt vermiyor ne yapabilirim

    YanıtlaSil

Yorum Gönder

Bu blogdaki popüler yayınlar

#9 | Lazerli Güvenlik Sistemi Nasıl Yapılır?

  Odanız için basit bir lazerli güvenlik sistemi kurmak ister misiniz? Şimdiye kadar öğrendiğimiz kod yapıları ve sensörleri kullanarak çok rahat tasarlayabilirsin. Lazer ışığının algılanabilmesi için LDR kullandım. LDR lazer ışığını alamadığında yani lazerin önünde bir şey geçtiğinde Arduino buna tepki verecektir. Böylece kapıdan birinin girip girmediğini anlayabilirsiniz. Daha önceden de öğrendiğimiz gibi LDR ışığın şiddetiyle değişen bir dirençtir. LDR çıkışı Arduino'nun analog girişine bağlanmıştır. Arduino analog girişini sürekli kontrol etmelidir. Eğer analog girişin değeri belirli bir değerin altına düşer ise Arduino, lazer ışığı ile LDR arasından bir şey geçtiğini anlayacaktır. DEVRE KODLAR int led = 4 ; int buzzer = 5 ; int ldr = A4 ; void setup ( ) {   Serial . begin ( 9600 ) ;   pinMode ( led , OUTPUT ) ;   pinMode ( buzzer , OUTPUT ) ; } void loop ( ) {   int ldrdeger = analogRead ( ldr ) ;   Serial . println ( ldrdeger...

# 11 | Joystick ile 2 Servo Motor Kontrolü

Servo Motor Nedir? Nasıl Çalışır? Yapı olarak dc veya ac motor tiplerine benzeseler de bu sistemlere ek olarak iç yapısında bir potansiyometre ve motor milinin konumunu ölçen bir kontrol devresi bulunur. Ayrıca servo motor 3 bağlantı ucuna sahiptir. GND(toprak), 5V, Sinyal pinleri.  Bunlardan ikisi motoru çalıştırırken diğer ucu ise sistemin giriş birimine motor şaftının konumunu bildirir. DC Servo Motor DC Servo motorun içerisinde bir adet dc motor bulunmasından dolayı dc servo motor ismini almıştır. Fakat dc motora ek olarak bir kontrol devresi ve çıkışında mil görevi gören bir potansiyometre ile dc motorun milini kontrol eder. Potansiyometre Dönme momentine göre lineer bir direnç artışına sebep olur. Bu özelliğinden faydalanılarak potansiyometrenin o anki direnç değerine göre servo motorun anlık konumu belirlenir. Tüm bu işlemleri yapan kısım ise dc servo motorda kontrol devresi olarak anılır. Kontrol Devresi Potansiyometrenin direnç değerine göre servo motorun o an hangi a...

Keypad Nedir? Nasıl Kullanılır?

  KEYPAD NEDİR? NASIL ÇALIŞIR? Keypadler kapı kilidi, atm, hesap makinesi, güvenlik sistemleri , asansör gibi bir çok cihazda yaygın olarak kullanılmaktadır.  Keypad’teki tuşlar satır ve sütun halinde düzenlenmiştir. 4X4 tuş takımında 4 satır ve 4 sütun vardır. Aşağıdaki şekle dikkat edilirse bir butona basıldığında o butonun bulunduğu satır ve sütunlara ait uçların birbirleriyle bağlandıkları görülür. Örneğin 6 tuşuna basıldığında 2. satır ve 3. sütun birbirine bağlanır veya ‘2’ tuşuna basıldığında 1. satır ile 2. sütuna ait uçlar birbirlerine bağlanır.  8 tane iki uçlu jumper kablomuzu alalım. Ardından sırasıyla soldan başlayarak kablolarımızı keypad'e yerleştirelim. Bu prensipten faydalanılarak mikrodenetleyiciler satır ve sütunlara bağlı olan pinlerini sürekli kontrol eder. Bu sayede tuş takımından basılan tuşlar mikrodenetleyici tarafından algılanarak işleme tabi tutulabilir.  Artık keypad hakkında gerekli her şeyi bildiğimize göre, onu Arduino ya bağlamay...