Ana içeriğe atla

2 Arduino'yu Bluetooth ile Haberleştirmek

2 Arduino'yu Bluetooth ile Haberleştirmek


      Selamlar. Bügünkü yazıda iki adet arduino'yu bluetooth ile nasıl haberleştireceğimizi ve bir arduino'dan diğerine nasıl komut göndereceğimizi öğreneceğiz. Bluetooth'la cihazları haberleştirmeden önce bu cihazları eşleştirmemiz gerekir. Bu eşleşme ise master ve slave cihazlar arasında gerçekleşir. 



      HC-06 Bluetooth modülü sadece " slave " modunda çalışabiliyor iken HC-05 hem " slave " hem de " master " modda çalışabilmektedir. Modüllerin bağlantı kurabilmesi için master modülün etrafında slave bir modül bulunması gerekir. Buna göre diyebiliriz ki HC-06 kendi kendine bağlantı kuramazken HC-05, HC-06'ya yada HC-05'e bağlanarak iletişim kurabilir. 

      Haberleşmeyi sağlamak için bu modüller AT komutları ile konfigüre edilmelidir. AT komutları modülün hangi modda çalışacağına ( master/slave ), ismine, baud rate'ine, şifresine kadar birçok ayarını gerçekleştirmemizi sağlar. Bu AT komutlarını göstermeden önce Arduino ile bluetooh modülünün nasıl bağlanacağını göstermek istiyorum sizlere ;


    
    VCC    >    5V
     Gnd    >    0V
     Tx      >    Rx
                                                                       Rx     >    Tx


      HC-05 "Mini AT" ve "Full AT" olmak üzere 2 adet AT moduna sahiptir. HC-05'in bazı komutları yalnızca " Full AT " modunda çalışır. Full AT moduna girmek için ise Hc-05'in 34. pini HIGH olmalıdır yani 3.3 V ile beslenmelidir. Fritzing şemasında gördüğünüz soldaki Arduino'ya giden HC-05 modülünü full AT moduna aldım. 

      Bluetooth modülü ile çalışan arkadaşlar bilir ki bluetooth modülünü mikroişlemciye bağlarken gerilim bölücü kullanmak gerekebilir. Ben bu modülle çok fazla çalışma yaptm ve gerilim bölücü kullanmaman bende bir soruna sebep olmadı. Kartımız yanmadı vs. ama siz emin olmak isterseniz gerilim bölücü kullanabilirsiniz. 

      2 tane Arduino Ide'si kullanmak bize 2 tane seri monitör verir ve kolaylık sağlar.

      Şimdi AT komutlarına geçebiliriz ;

      HC-05'i Kurmak ;

      Hc-05 aşağıdaki değerlere ayarlanmış olarak gelir.
  • ROLE = 0 ( Slave Mod )
  • UART = 9600 ( iletişim baud hızı )
  • CMODE = 0 ( Yalnızca eşleşmiş cihazlara bağlan )
  • PSWD  = 1234 ( Eşleştirme şifresi 1234 )
     AT komutlarına girebilmek için HC-05'imizi bağladıktan sonra Arduino'ya şu kodları girelim. Buradaki SoftwareSerial kütüphanesi arduino içerisinde hazır bulunur, sizin eklemenize gerek yok. 


     HC-05'in bluetooth baud rate hızı 38400'e ayarlanmalıdır. Aksi taktirde çalışmaz. Buna dikkat edelim.

     Bu kodda ayrıca Tx ve Rx pinleri Arduino'nun 2. ve 3. pinlerine tanımlanmıştır. Dolayısıyla haberleşme için kullanırken bluetooth üzerinden gelen haberleşme pinlerinin 2. ve 3. pinlere takılmasına dikkat edelim. Bu tanımlamaların yapılmasının sebebi normalde Arduino'muza kod yüklerken Tx ve Rx pinlerinin boşta olmasına dikkat ederiz. Aksi taktirde seri haberleşme pinleri dolu olması kodun yüklenmesini engeller. Biz burada bu pinlerin yerini değiştirince 2 Arduino haberleşirken bir taraftan Arduino'larımızın seri port'la haberleşmesini engellememiş oluruz. 

      Son olarak Hc-05 için seri monitörde " NL & CR ikisi de " seçeneğini seçmeyi unutmayın. Seri monitörde " AT " yazarsak " OK " cevabını alıyor olmalıyız. OK cevabını almıyorsak bir yerde sorun var demektir kodları ve bağlantıları kontrol edin. 

HC-06'yı Kurmak 

     HC-06'ya AT komutlarını uygulayabilmek için gerekli kodları yükleyelim. Bu defa bluetooth'un baud rate hızının 9600 olmasına dikkat edelim. 


     
      HC-06 modülleri AT modunda başlar. Seri monitörü açtıktan hemen sonra komut girmeye başlayabiliriz. Bütün komutlar büyük harfle girilmelidir ve seri monitör " Satır sonu yok " şeklinde ayarlanmalıdır. Buna dikkat edelim. Yukarıdaki resimde gördüğünüz gibi kodları Arduino'ya yükledikten sonra seri monitöre "AT " yazdığım zaman OK cevabını aldım. Bu bluetooth'umuzun çalıştığı ve eşleşmeye hazır olduğu anlamına geliyor.

Hc-05'i Hc-06'ya Bağlamak

     2 modülümüz de eşleşme için hazır hale geldiğine göre artık Hc-05'i Hc-06'ya bağlamak için gerekli adımları atabiliriz. Sırasıyla şu işlemleri uygulanacak ;

     1 ) İki cihazda aynı Baud Rate'e ayarlanmalıdır. 

          AT+UART=9600,0,0

      2 ) Her iki modülünde şifresi aynı olmalıdır. 
        
           AT+PSWD=1234

      3 ) HC-06'nın adresi bulunmalıdır. Adresi bulmak için gerekli komutları HC-05'in bağlı olduğu seri monitöre yazacağız. 

           AT+RMAAD ( Önceden eşleştirilmiş tüm cihazları siler. )
           AT+ROLE=1 ( Hc-05'i master moduna geçirir. )
           AT+RESET ( Hc-05'i sıfırlar.)
           AT+CMODE=0 ( Hc-05'in herhangi bir cihaza bağlanmasına izin verir.)
           AT+INQM=0,5,9 ( 9 saniyeye kadar 5 cihazı arar. )
           AT+INIT ( Spp profilini başlatır. Gereklidir. )
           AT+INQ ( Diğer bluetooth cihazlarını arar. )

           Bu komutlardan sonra Hc-05 etraftaki bluetooth cihazlarını sıralar. Listelenen cihazların hangisinin Hc-06 olduğunu öğrenmek için AT+RNAME? komutu kullanılır. Şekildeki resimde gördüğünüz gibi ;



     AT+INQ komutu 3 değer döndürür. İlki adres, ikincisi cihazın sınıfı ve üçüncüsü ise sinyal gücüdür. Bu komut sadece HC-05 master moddaysa ve ondan önce AT+INIT komutu yazılmışsa çalışır. 

       4 ) Adresi öğrendikten sonra Hc-05'imizi Hc-06'ya bağlayabiliriz. 

       AT+PAIR=3014,10,171179,9 ( 9 saniye içinde eşleşme gerçekleşirse OK cevabı alırsınız.

       5 ) Hc-0,6'yı Hc-05'e bağlayalım.

       AT+BIND=3014,10,171179

       6 ) Hc-05'i yalnızca eşleşmiş cihazlara bağlanacak şekilde ayarlayalım.

       AT+CMODE=1 

      7 ) Hc-06'ya bağlantıyı tamamlayalım.

       AT+LINK=3014,10,171179 ( Bu komuttan herşey tamamsa OK cevabı alırız. )      




      Bağlantı kurulduktan sonra Hc-05 her açıldığında otomatik olarak Hc-06'ya bağlanır. Hc-05 üzerindeki led 2 saniyede bir yanıp sönecek Hc-06 üzerindeki led ise sadece yanık duracak şekilde olmalıdır. Bu bağlantının kurulduğu anlamına gelir. 

      Haberleşmenin test edilmesini, komut yollanmasını ise bir başka yazıda açıklayacağım. Umarım faydalı olmuştur. 

       Kaynak :  http://www.martyncurrey.com/connecting-2-arduinos-by-bluetooth-using-a-hc-05-and-a-hc-06-pair-bind-and-link/




      

Yorumlar

  1. Merhabalar iki adet Bluetooth modülünde sıkıntı yok ama master Bluetooth modülüne iki ve daha fazla slave Bluetooth modülünü nasıl bağlayabiliriz. Cevap verirseniz sevinirim.

    YanıtlaSil

Yorum Gönder

En çok okunanlar ;

PLC Zamanlayıcı ( Timer ) Komutu Uygulamaları ve Simülasyonu

SIEMENS S7 - 200  PLC TİMER KOMUTU UYGULAMALARI ve SİMÜLASYONU      Merhaba, bugünkü yazıda PLC'de timer komutunun kullanımını öğreneceğiz ve bu komutun simülasyon üzerinde uygulamalarını gerçekleştireceğiz. Timerler PLC'de oldukça öneme sahip komutlardır. S7 - 200 PLC'de 3 çeşit zamanlayacı bulunmaktadır ;      1 ) Çekmede Gecikmeli Zaman Rölesi ( TON ) : Bu zamanlayıcı '' enable '' girişine ait komutlar doğru ise zamanlayıcı zaman süresini saymaya başlar. Bu anda zamanlayıcının zaman biti 0'dır. Zamanlayıcı'nın saydığı zaman değeri '' Present Value '' değerine eşit olduğu zaman, zamanlayıcı biti 1 olur. Enable girişi 0 olduğunda ise zaman rölesi sıfırlanır.         T32 - T96                                            >>> 1 ms        T33 - .... - T36 ve T97 - ... - T100      >>> 10 ms        T37 - .... - T63 ve T101 - .... - T255   >>> 100ms         Present Time ( PT ) değeri ola

PLC Mühürleme, Set - Reset Komutları ve Elektronik Kilitleme

SIEMENS S7 - 200 PLC  STEP 7 MICROWIN 4.0 PROGRAMI İLE MÜHÜRLEME,SET-RESET,ELEKTRONİK KİLİTLEME UYGULAMALARI ve SİMÜLASYONU      Merhaba, bugün daha önce anlattığımız konulardan daha temel ve kolay olan mühürleme, set - reset , elektronik kilitleme gibi konulara kısaca değineceğiz. Öğrenilmesi her ne kadar daha basit olsa da içerdiği önem oldukça fazladır. Bu yüzden bu konuları öğrenmeden PLC eğitimi gerçekleştirilmiş olamaz.       İlk olarak mühürleme işleminin ne olduğu ile başlayalım. Örnek verecek olursak siz start butonuna basıldığı zaman herhangi bir devre elemanının ( lamba, motor, kompresör vb. ) çalışmasını istiyorsunuz. Start butonu olarak ise normalde açık ( NO ) buton kullanmanız gerekir. Bu yüzden sizin sürekli çıkışı aktif hale getirebilmek için butona sürekli basmanız gerekir. Bu ise pek mümkün olabilecek bir şey değil. İşte bu noktada mühürleme işlemine gerek duyarız. Gelin önce mühürlemenin ladder diyagramını çizelim ve diyagram üzerinde konuyu kav

3 Fazlı ASM'lere Yıldız / Üçgen Yol Verme Kumanda Devresi ve Simülasyonu

3 FAZLI ASENKRON MOTORLARA YILDIZ / ÜÇGEN YOL VERME KUMANDA DEVRESİ SİEMENS S7 -200 LADDER DİYAGRAMI VE SİMÜLASYONU      Merhaba, bu yazıda sanayide en çok kullanılan elektrikli motor olan 3 fazlı asenkron motorlara yıldız/üçgen yol verme yöntemi ile yol verilmesini STEP 7 MicroWİN programında gerçekleştirmeyi öğreneceğiz. PLC komutlarına geçmeden önce neden yol verme yöntemlerine ihtiyaç duyuyoruz, yıldız/üçgen yol vermek ne demektir, bize ne faydası olur gibi soruları cevaplamak gerektiğini düşünüyorum. Bu yüzden ilk olarak bu soruları cevaplamaya çalışacağız.         3 fazlı asenkron motorlar kalkış anında normal çalışma durumuna göre 5 ila 7 kat arasında daha fazla akım çeker. Bu durum ise pano elemanlarının ( kondaktör, termik röle, sigorta vb. ) daha çabuk yıpranmasına sebep olur. Bu yıpranmayı önlemek için ilk kalkış anında bazı yol verme yöntemleri geliştirilmiştir. Bunlardan en çok kullanılanı ise yıldız / üçgen yol verme yöntemidir.      Yıldız/Üçgen yol verm