Bilişim & Elektronik

Elektronik ve Bilişim Teknolojileri Alanı Öğretmen ve Öğrencilerinin Bilgi ve Doküman Paylaşım Noktası

yeni1

HC-05 ve HC-06 Bluetooth Modüllerini Kullanarak Arduino UNO ve Arduino MEGA’yı Eşleştirerek Birbirine Bağlama:

HC-05’in modülünün CMODE = 1 kullanan herhangi bir cihazla eşleştirilmesi hızlı ve kolaydır. Ancak bu yöntem HC-05’in başka bir cihaza bağlandığını kontrol etmiyor.

Burada HC-05’u her zaman aynı HC-06’ya bağlamak için nasıl kurulum yapacağımızı görelim. Bunun için PAIR, , BIND ve LINK komutlarını kullanacağız.

Bu eşleştirme aşamaları için 2 ayrı Arduino IDE kullanacağız; Yüklü olan sürüm 1.8.2 ve bir klasörden çalıştırdığım sürüm 1.0.5 (yükleme dışı sürümüdür). Bu, her biri farklı bir Arduino’ya bağlı olarak aynı anda 2 IDE kullanmamızı sağlıyor. Ayrıca bize, her Arduino için bir tane olmak üzere 2 seri monitör de sunuyor.

Kullanılan modüller, HC-05 ve HC-06’nun zs-040 versiyonlarıdır.

HC-05, “mini” AT modu ve “full” AT modu olarak adlandırdığımız 2 AT modu mevcut. Ve burada kullanacağımız bazı komutlar yalnızca “tam” AT modunda çalışıyor. “Tam” AT moduna girmek için 34 no’lu düğmenin HIGH olması ve YÜKSEK olması gerekir. Bunu başarmak için 34. pinten + 3.3v’ye bağlantı yaptım. Aşağıdaki diyagrama bakın (veya atlamadan sonra). Ya da seri monitöre komutu yazdıktan sonra enter’a buletooth modülünün üzerindeki butona basılı tutarak enter’a basmalıyız.

Bağlantılar

Elimizde Arduino UNO ve Arduino MEGA olmak üzere iki gömülü sistem kartı var. Birincisi bir HC-05 zs-040’a, diğeri bir HC-06 zs-040’a bağlı.

HC-05, 34. ini + 3.3v’ye bağladığımızda “tam” AT modunu etkinleştirmiş oluruz.

HC-05 Kurulumu:

HC-05 varsayılan olarak aşağıdaki değerlere sahiptir:

– ROLE = 0 (bağımlı mod)

– UART = 9600 (iletişim modu için baud hızı)

– CMODE = 0 (sadece eşleştirilmiş cihazlara bağlan)

– PSWD = 1234 (eşleştirme için şifre / PIN)

AT modunda 38400’lük bir baud hızı kullanacağız.

Devreyi oluşturup, gücü açıyoruz ve aşağıdaki yazılımı HC-05 modülünün bağlı olduğu Arduino MEGA’ya yüklüyoruz.

******************************************************************************

// Basic Bluetooth sketch HC-05_02_38400

// Connect the HC-05 module and communicate using the serial monitor

// The HC-05 defaults to commincation mode when first powered on.

// Needs to be placed in to AT mode

// After a factory reset the default baud rate for communication mode is 38400

//  Pins

//  BT VCC to Arduino 5V out.

//  BT GND to GND

//  BT RX to Arduino pin 3 (through a voltage divider)

//  BT TX to Arduino pin 2 (no need voltage divider)

#include <SoftwareSerial.h>

SoftwareSerial BTserial(2, 3); // RX | TX

// Connect the HC-05 TX to Arduino pin 2 RX.

// Connect the HC-05 RX to Arduino pin 3 TX through a voltage divider.

char c = ‘ ‘;

void setup()

{

// start th serial communication with the host computer

Serial.begin(9600);

Serial.println(“Arduino with HC-05 is ready”);

// start communication with the HC-05 using 38400

BTserial.begin(38400);

Serial.println(“BTserial started at 38400”);

}

void loop()

{

// Keep reading from HC-05 and send to Arduino Serial Monitor

if (BTserial.available())

{

c = BTserial.read();

Serial.write(c);

}

// Keep reading from Arduino Serial Monitor and send to HC-05

if (Serial.available())

{

c =  Serial.read();

// mirror the commands back to the serial monitor

// makes it easy to follow the commands

Serial.write(c);

BTserial.write(c);

}

}

************************************************************************

Bluetooth modülünün 34. pini Lojik-1 konumuna getirildiğinden HC-05 açıldığında AT moduna girmelidir.

Ana bilgisayarda seri monitörü açıyoruz ve “AT” yazarak AT modunda olduğunuzu doğruluyoruz. Seri monitöre AT yazıp enter’a bastığımızda ekranda “OK” cevabını gördüğümüzde AT moduna geçmişiz olduğumuzu anlarız.

HC-05’ün “NL ve CR ile birlikte” şeklinde ayarlamasını gerekir. Bunu da seri monitörün alt kısmından yapmalıyız..

Aşağıdaki ekran, seri monitöre girdiğimiz komutları yansıtıyor.

 

 

 

 

HC-06 Kurulum

HC-06 devresini oluşturuyoruz, gücü açıyoruz ve aşağıdaki programı HC-06 bluetooth modülünün bağlı olduğu Arduino UNO’ ya yüklüyoruz.  yükleyin. HC-06 9600 baud hızını kullanacak şekilde ayarlanmıştır. Bizinkinden farklı bir hız kullanmamız gerekiyorsa, programı değiştirmemiz gerekecektir. Bunun için aşağıdaki satırları değiştirmemiz yeterlidir:

BTSerial.begin (9600);

Seri.println (“9600’de BT yayını başladı”);

9600’ü, HC-06’nun kullandığı hızla değiştirin.

********************************************************************

// Basic bluetooth test sketch. HC-06_01_9600

// HC-06 ZS-040

 

//  Uses hardware serial to talk to the host computer and software serial for communication with the bluetooth module

//  Pins

//  BT VCC to Arduino 5V out.

//  BT GND to GND

//  BT RX to Arduino pin 3 (through a voltage divider)

//  BT TX to Arduino pin 2 (no need voltage divider)

//

//  When a command is entered in the serial monitor on the computer

//  the Arduino will relay it to the bluetooth module and display the result.

//

//  These HC-06 modules require capital letters and no line ending

//

#include <SoftwareSerial.h>

SoftwareSerial BTSerial(2, 3); // RX | TX

void setup()

{

Serial.begin(9600);

Serial.println(“Arduino with HC-06 is ready”);

// HC-06 default baud rate is 9600

BTSerial.begin(9600);

Serial.println(“BTserial started at 9600”);

}

void loop()

{

// Keep reading from HC-06 and send to Arduino Serial Monitor

if (BTSerial.available())

Serial.write(BTSerial.read());

// Keep reading from Arduino Serial Monitor and send to HC-06

if (Serial.available())

BTSerial.write(Serial.read());

}

****************************************************************************

HC-06 modülleri AT modunda başlar, böylece seri monitörü açar açmaz komutları girmeye başlayabiliriz. HC-06’un komutların büyük harf olmasını gerektirdiğini ve yeni satırların veya satır başlarının geri istemediğini ve bu nedenle seri monitör penceresinin alt kısmında “Satır sonu yok” olarak ayarlandığını unutmayalım. Ana bilgisayarda seri monitörü açıyoruz ve “AT” yazarak AT modunda olduğunuzu doğrulayın. “OK” cevabını almalıyız.

HC-06’yı hazırlamak için çok şey yapmamız gerekmiyor. Sadece şifrenin HC-05 ile aynı olduğundan emin olmalıyız.

Şifre / PIN’i 1234’e değiştirmek için “AT + PSWD1234” (tırnak işaretleri olmadan) giriyoruz ve Gönder’i tıklıyoruz.

Eşleştirme ve bağlama

Bu noktada, HC-06’yla bir bağlantı beklemeliyiz. Şifre / PIN 1234’tür.

HC-05 “FULL” AT modunda olmalıdır. Full AT modunu daha önce açıkladık.

HC-06’ya bağlanma adımları şunlardır:

  1. Her iki cihazıda aynı baud hızına ayarlayın.
  2. HC-05 ve HC-06’daki şifrelerin aynı olduğundan emin olun
  3. HC-06’nın adresini bulunuz
  4. HC-05 ile HC-06’yu eşleştirin
  5. 5. HC-06’yu HC-05’e bağlayın
  6. HC-05’i yalnızca eşleştirilmiş cihazlarla bağlantı kuracak şekilde ayarlayın
  7. HC-06’ya bağlantı

Şimdi bu adımları sırası ile uygulayalım:

 Her iki cihazda aynı baud hızını ayarlayın.

HC-05 ve HC-06’da iletişim modu baud hızını 9600 olarak ayarlayın. Bunu zaten yaptım.

Bu sadece bu örneği amaçlamak içindir. Her şeyi yaptıktan sonra baud hızlarını değiştirebilirsiniz.

  1. HC-05 ve HC-06’daki şifrelerin aynı olduğundan emin olun

Zaten şifreleri belirledik.

  1. HC-06’nın adresini bulun

Bunu bir Android cihazı ile yapabilirsiniz veya HC-05 ile yapabilirsiniz. HC-05 ile nasıl yapılacağı aşağıdaki gibidir.

HC-05’in AT modunda olduğundan emin olun ve aşağıdaki komutları sırasıyla girin.

AT + RMAAD

AT + ROLE = 1

AT + RESET

 

 

 

 

AT + RMAAD daha önce eşleştirilen tüm aygıtları temizler.

AT + ROLE = 1, HC-05’i Ana Moda getirir

AT + RESET HC-05’i sıfırlar. Bu, rolleri değiştirdikten sonra bazen gereklidir.

 

Şimdi şunu giriyoruz:

AT + CMODE = 0

AT + INQM = 0,5,9

AT + INIT

AT + INQ

AT + INQM = 0,5,9, AT + INIT ve AT + INQ 34’ün yüksek olmasını gerektirir. 34 nolu pin yüksek değilse, bu komutlardan herhangi bir cevap alamazsınız. Mesaj yok, hata mesajı yok. (NOT: Bu komutlar gönderilmek üzere enter’a basılırken aynı zamanda HC-06 üzerindeki buton da basılı tutulmalıdır.)

 

 

 

 

 

 

AT + CMODE = 0, HC-05’in herhangi bir aygıta

AT + INQM = 0,5,9, en fazla 5 cihaz aramak için 9 saniye boyunca sorgu ayarlayın

AT + INIT SPP profilini başlatır. SPP zaten aktifse, ihmal edebileceğiniz bir hata (17) alırsınız.

AT + INQ diğer Bluetooth aygıtlarını arar.

Yukarıdaki ekran resminde HC-05’ün 2 Bluetooth aygıtı bulduğunu görebilirsiniz.

+ INQ: A854: B2: 3FB035,8043C, 7FFF

+ INQ: 3014: 10: 171179,1F00,7FFF

Bunlardan biri HC-06. Bulmak için AT + RINAME’yı kullanabilir miyiz? Komuta.

AT + INQ, 3 değer döndürür, birincisi adres ve ihtiyacımız olan değerdir. İkinci değer cihazın sınıfı ve üçüncü değer sinyal gücü (RSSI).

AT + INQ yalnızca HC-05 Ana Modda ve AT + INIT komutundan sonra çalışacaktır.

Bulunan cihazların adını öğrenmek için AT + RNAME. Adres, AT + INQ tarafından geri gönderilen ilk alandır; A854: B2: 3FB035 ve 3014: 10: 171179.

Adresi girdiğimizde, iki nokta üst üste işaretlerini virgül ile değiştirmeliyiz. Biçim AT + RNAME? A854, B2,3FB035 ve AT + RNAME? 3014,10,171179’dur.

Elbette HC-06’nuzun adresini kullanacağız.

Yukarıda görülen aygıtlardan A854: B2: 3FB035 adresine sahip olan bir TV ve 3014: 10: 171179 adresine sahip olan ise HC-06’dır.

Artık  HC-06’nın bağlantısını tamamlayabilmemiz için gerekli adres bilgisini elde ettik.

  1. HC-05’u HC-06 ile eşleştirin

Eşleştirmek için AT + PAIR = <addr>, <zamanaşımı> komutunu kullanıyoruz.

“AT + PAIR = 3014,10,171179,9” (teklif yok) girin

HC-05, HC-06 ile 9 saniye içinde eşleşemezse, bir hata mesajı alırsınız. Eşleştirme başarılı olursa, bir “OK” mesajı alınır.

  1. HC-06’yu HC-05’e bağlayın

“AT + BIND = 3014,10,171179” kullanarak bağla

  1. HC-05’i yalnızca eşleştirilmiş cihazlarla bağlanacak şekilde ayarlayın

Bunu CMODE komutu ile yapıyoruz – “AT + CMODE = 1”

  1. HC-06’ya bağlantı

Bağlantı komutunu kullanın AT + LINK = <addr>

Benim durumumda “AT + LINK = 3014,10,171179”. Eğer hepsi iyi ise, “OK” cevabını alırsınız.

Bağlantının kuruldu ise;

HC-05 üzerindeki LED’in her 2 saniyede 2 hızlı yanıp sönüyor ise,

HC-06 üzerindeki LED sürekli yanıyor ise

HC-05 ve HC-06’u birbirine bağlanmış demektir.

Bağlantı kurulduktan sonra HC-05 her açıldığında HC-06’ya bağlanacaktır.

Bağlantı kurulduktan sonra HC-05 iletişim moduna geçecektir. AT Moduna devam etmek istiyorsanız modüle enerji uygulamadan önce üzerindeki butona basılı tutunuz.

+INQ:98D3:32:10AFAF,1F00,7FFF  benim HC-06 Mödülümün adresi.

 

 

 

 

 

 

 

 

 

 

Bluetooth modülleri eşleştikten sonra sırada bu iki modül üzerinden Arduino uno ve Arduino mega gömülü sistem kartlarının haberleşmesine geldi…

 

 

 

Duyurular ve dokümanlar için ilgili linke tıklayınız …

 

  • Temrin dosyası (Fotokopiler)
  • Elektronik Uygulamaları temrin kitabı
  • Bread bord
  • Önceki derste yapılmış olan baskı devreler
  • Ölçü aletleri ve el takımları                                                                                                   eksiksiz getirilecek.

 

Comment

*