Bu yazımda da ilk önce alışveriş yapacağız. Arduinomuzu almıştık. Şimdi de çok güzel bir bluetooth modülü alacağız. Türkiyedeki “bazı” esnafların biz öğrencileri kazıklamaya hakkı yok o yüzden gene e-bay’den alacağız 😉
Şanslısınız ki benim aldığım bluetooth modülünün lehimlenmesi gereken devre kartı da ürünle birlikte geliyor. Ben kartı kendim yapmıştım çünkü ben aldığımda devre kartı piyasada yoktu. Lehimlemek için 3 saat uğraşmıştım. Çok küçük ve çok işlevsel bir bluetooth. Modülün tüm dosyaları ise bu linkte; (Datasheetler,Pin Diyagramı,AT Komutları vb…)
Bu resimdeki benim saatlerce uğraşıp sonunda sorunsuzda lehimleyebildiğim bluetooth modülü.
Yukarıda verdiğim linkten satın aldığınızda switchli,ledli,pinleri çıkarılmış şekilde gelecektir. Yani yukarıdaki resimdeki gibi…
Ekleme : Ebay’de ürün içeriklerinin değişmesi durumunda dikkat etmenizi tavsiye ederim. Modül board’suz da gelebilir.
Bu modül 3,3v ile çalışıyor. Arduino’nun 3,3v çıkışından direk bağlantı yapabilirsiniz. Modülün pin diyagramı ise aşağıdaki gibi.
Bu yazıda her ne kadar çoğu protokolü desteklesede en rahat olanı yani Uart’ı kullanacağız.
Bizim kullanacağımız pinler;
- “1” numaralı TX pini
- “2” numaralı RX pini
- “11” numaralı Reset pini
- “12” numaralı 3,3v pini
- “13” numaralı GND pini (Diğer toprak girişlerinden istediğiniz 1 tanesi ile de bağlantı yapabilirsiniz.)
- “31” numaralı PIO8 pini (Bluetooth modülünün çalışma durumunu gösterir. Bluetooth Modülü “Normal” olarak çalışıyorsa yanıp söner. Eğer “AT Komut Alma” açıksa gecikmeli olarak bir yanar bir söner.)
- “32” numaralı PIO9 pini (Eğer bağlanmak istediğimiz bluetooth cihazıyla bağlantı başarıyla gerçekleştiyse yanar. Diğer türlü söner.)
- “34 numaralı PIO11 pini (Bu pine 3,3v bağlanırsa modül “AT Komut Alma” modunda çalışır. Diğer türlü yani 0v ise “Normal” modda çalışır. Her PIO11 değişimde modüle reset atmak gerekmektedir.)
Benim bağlantılar resimdeki gibi hazır ve Arduino’yu Usb’ye takıyoruz. Ayrıca bluetooth modülündeki TX pinini Arduino’nun RX3 pinine, RX pinini Arduino’nun TX3 pinine bağlıyoruz.
İlk önce modumuzu switch ile ayarlamamız gerekiyor. Yukarıda belirttiğim üzere PIO11 pini 0v olacak şekilde switch’i ayarladıktan (Normal Mod) sonra reset butonuna basıyoruz. PIO8 pini yanıp sönmeye başlıyor. Daha sonra bilgisayardaki bluetoothtan aygıtları eşleştirip bağlantı kuralım.
Bluetooth modülümüzü “HC-05” olarak görüyor. Sizlerde farklı olabilir.
Daha sonra “Pair” yani eşleştir butonuyla cihazları eşleştiriyoruz.
Eşleştirmeden sonra normal modda sürekli yanıp sönen PIO8 pinine bağlı led yavaş bir şekilde yanıp sönmeye başlıyor. Daha sonra bilgisayarın bluetooth kısmından “HC-05” adlı aygıtı sağ tıklayıp “Search Services”e tıklıyoruz. ” Bluetooth Serial Service”i buluyor. Daha sonra Arduino IDE’yi açıyoruz ve bilgisayardan arduinoya veri göndermek için aşağıdaki kodu derleyip upload ediyoruz.
[c]char veri;
void setup()
{
Serial.begin(9600);
Serial3.begin(9600);
}
void loop()
{
if (Serial3.available() > 0) {
veri = Serial3.read();
Serial.println(veri);
delay (10);
}
}[/c]
Daha sonra Arduino’nun “Serial Monitor”ünü açıyoruz. Daha sonra bluetoothtan servise sağ tıklayıp “Connect” dediğimizde herhangi bir sorun yoksa (benimkinde COM8 portu üzerinden) bağlantıyı kurmuş oluyoruz. PIO9 pinindeki led yanıyor ve PIO8 pinideki led aynı şekilde yanıp sönmeye devam ediyor.
Şimdi sıra açılan Bluetooth serial port’tan (Bende COM8) veri gönderip almada.
Bu linkten “PuTTY” adlı terminal programını indiriyoruz. Programı açıyoruz.
Yukarıdaki gibi seçiyoruz. Daha sonra sol menüden “Terminal”>>”Local Echo” = “Force on” yapıyoruz. Alttaki “Open” butonuyla COM8 yani açtığımız bluetooth portuna bağlanmış oluyoruz. Aşağıdaki resimdeki gibi “PuTTY”den gönderdiğimiz veriyi gördüğünüz gibi arduinodan okuyoruz.
“PuTTY” yerine “Serial COM Port Terminal v1.7“yi kullanabilirsiniz.
Ancak siz arduinodan bilgisayara veri göndermek isteyebilirsiniz. Bunun için aşağıdaki kodu derleyip upload ediyoruz.
[c]char veri;
void setup()
{
Serial.begin(9600);
Serial3.begin(9600);
}
void loop()
{
if (Serial.available() > 0) {
veri = Serial.read();
Serial3.print(veri);
delay (10);
}
}[/c]
Aşağıdaki gibi “PuTTY”den bluetooth ile gelen veriyi okuyabiliyoruz.
Bu yazının da sonunda geldik. Eğer anlayamadığınız takıldığınız bir yer varsa lütfen yorum yaparak belirtin yardımcı olmaya çalışırım.
AT komutlarını rahat bir şekilde göndermek için yardımcı bir program var. Onu da buradan indirebilirsiniz. AT komutlarını “PuTTY” veya “Serial COM Port Terminal v1.7” ile de gönderebilirsiniz.
Cihazı master modda kullanmak için;
1. PIO11 pinine 3.3v verin.
2. Modülü çalıştırın. Yani modüle şimdi güç verin.
3. 38400 baud rate ile seri porttan bağlanın.
4. “AT+ROLE=1\r\n” komutunu gönderin. Eğer başarılı bir şekilde komut çalıştırıldıysa cevap olarak bu gelecektir “OK\r\n”. Eğer olmadıysa bu gelecektir “\r\n”.
5. Daha sonra PIO11 pinini 0v yapın. Modüle güç verince artık modül master mode’da çalışacaktır. Otomatik olarak slave modülleri arayıp bağlanacaktır.
49 comments
Skip to comment form
Merhaba;
Güzel bir uygulama yapmışsınız elinize sağlık.. Fakat ardinuino kullanmayan birey olarak bir şey soracağım..
FDTI benzeri çipler kullanmışsanız driveri ile bereaber kod geliştirenlere API ve .lib , .dll kullanımı için pdf vs.. dosyalar hazırlamışlar. Bu vesile ile biz C kullanıcıları da port kullanacağız diye zulum görmeden bu cipler ile devre-pc iletişimini rahatlıkla sağlıyoruz. Acaba bu Blluetooth moduldeki chip nereden öğrenebiliriz adını ve nasıl kullanıldığını?
Author
Eger istediğin chip bir usb-serial converter ise Ftdi’dan daha ucuz olan bunu kullanabilirsin;
http://www.ebay.com/itm/190584335291?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1438.l2649
Bu yazıdaki bluetooth modülünde dahili usb,dahili uart ve dahili spi var.
Datasheetinde Chipset CSR BC417143 (BlueCore4External) diye geçiyor. Yazıdaki link gitmiş. Şimdi yeniledim dosyalarını indirebilirsin.
Hocam Merhaba; Ben Bunu PIC ile yapacagim (arduino projemde pahali kaliyor) fakat modul teymin edemedim. verdiginiz satin alma linkine girdigimda farkli bir urun geliyor. bana bu konuda yardimci olabilirmisiniz.
Author
E-Bay’den “Bluetooth Transceiver” diye aratırsanız istediğiniz türde boardlu boardsuz bluetooth modülü bulabilirsiniz..
iyi günler. ben android telefondan araç yönetimi yapıp artı olarak camera görüntüsü almak istiyorum arduino ile blutetooth üzerinden görüntü almaya çalışıyorum herşey tamam ancak görüntü aktarımı yaparken veriler bozuk geliyor görüntü alamıyor nasıl yapabilirim acaba ? teşekkürler
Author
Goruntu aktarirken telefondan direk bilgisayara veri gonderirsen sanirim daha iyi olur. Bluetooth 4.0’da mi var sadece bilmiyorum ama goruntu aktarimini destekliyor. Android tarafinda da ayni sekilde bir destek var diye biliyorum. Goruntu aktarimi icin android’de hazir kutuphaneler var. Bluetoothta en cok kullanilan internet paylasimi, dosya transferi, seri port paylasimi gibi ozelliklere ek olarak goruntu aktarimi yeni nesil bluetoothta var diye biliyorum. Ancak derinlemesine arastirmadigim icin net bilgi veremiyorum. Benimde android telefon kontrollu oyuncak araba projem vardi. Ancak sadece ivme sensoruyle ve butonlarla kontrol etmeyi dusunuyorum. Bunun icin arayuz ve arduino yeterli oluyor.
Kodlar herşey hazır sıkıntı yok onlarda bluteooth telefon arasındaki iletişimde var sadece camera telefona veriyi yollarken hatalı yolluyor onu çözemedim…
Merhaba ben bitirme tezi için bluetooth haberleşmesiyle ortam sıcaklığını pc ye veri olarak göndermem gerekiyor da hangi model arduino bluetooth cihazı ve sensör olarak bilgi verebilirseniz sevinirim
Author
Tüm arduinolar ile yapabilirsiniz. PC tarafında herhangi bir bluetooth cihazıyla olur. Arduino tarafında ise e-bayde tek tip bluetooth modülü satılıyor. Sıcaklık sensörü olarak piyasada bir sürü model var. Nasıl kullanıcağınıza bağlı bir durum açıkcası.
anladım sıcaklık ortam sıcaklığını ölçmek için o an bitirme ödevimi teslim ettiğimde sıcaklığı doğru ölçüp gönderirse sanırım yeterli olacaktır.
programlama yaparken sıcaklığı ölçüp veriyi aktarıp göndermek için hazır programlar var mıdır ben bunları nasıl geliştirebilirim ?
merhaba hc05 veya hc06 hangisi uygun olur bilmiyorum el terminalinden yolladığımız yazdırma işlemini com portlu yazcıdan çıktı olarak almak istiyorum hc 05 mi hc 06 mı ve bunu yapmak için arada bir devre gereklimi hc bağlasam rx tx yeterli olurmu veya hazır devre varmı tşk
Author
HC-05 slave master mod ayarlanabiliyor ancak HC-06’da fabrika çıkışı neyse onu kullanabiliyorsunuz. Ayrıca HC-05 daha ucuz. Yani HC-05 kullanmanızı öneririm. Bu bluetooth modülü 3.3v’da çalışıyor. Eğer yazıcının com port çıkışı 5v ise besleme için ekstradan bir devre yapmanız gerekiyor veya 3.3 regulatörü olan hc-05 modülü-shieldi almanız gerekiyor.
Tugay merhabalar.Yazı için öncelikle teşekkür etmek isterim.Size şöyle bir soru sormak istiyorum; iki arduino sensör verilerini toplayacak 3. bir arduino daki ekrana yazdıracak.Bu üç arduino arasında bluetooth ile veri akışını nasıl sağlarım bir fikriniz var mı?
Author
Bunun için bluetooth’un verimli kullanılabileceğini düşünmüyorum. Bağlantıyı isteğe göre yapıp veri gönderdikten sonra bağlantıyı kopararak yapabilirsiniz. Ancak çok kötü olur. Yani bu iş için bluetooth uygun değil. Mühendisler olarak en uygun maliyetle bir şeyler üretmeliyiz. Ve sizin istediğiniz işe en uygun modül nrf24l01’lerdir. Aynı anda farklı cihazlara veri gönderebilirsiniz. Hemde çok ucuzlar.
İşte aradığım cevap 🙂 Xbee ile yapmak isterdim ama çok maliyetli oluyor. RF için de her nedense bazı zorlukların olacağı söylendi ve tasvip edilmedi. Şimdi bunu incelediğim kadarıyla herhangi bir sıkıntı gözükmüyor ve kod desteğide fena değil ki en azından rahat bir şekilde çalışabileceğim kadar ucuz. Yani çoooook çok teşekkür ederim verdiğiniz bilgilerden ötürü.
İyi günler. Arduino ile voltaj ölçüp, bluetooth ile android telefona direk aktarım yapılmasını istiyorum. Gerekli olan malzemeler konusunda yardımcı olur musunuz? Bluetooth modül konusunda falan kafam karıştı biraz. Teşekkürler.
Author
1 tane bluetooth modülü 1 arduino ve 1 tane android telefon dışında birşeye ihtiyacınız yok.
Merhaba,öncelikle verdiğiniz bilgiler için teşekkürler ,çok yararlı oldu gerçekten.Benim size şöyle bir sorum olacak ,projemizde hc05 ve hc06 kullanıyoruz .Bu iki bluetooth modülü arasında veri aktarımı yapmamız gerekli bunu nasıl sağlayabiliriz,bu konuda bilgi verebilir misiniz ? Şimdiden teşekkürler.
Author
Biri master biri slave olduğu için herhangi bir sorun olmadan iletişim kurabilirsin. Yazıdaki koddan veya tasarımdan farklı bir şey gerekmiyor.
Tam olarak sorunumuz şu aslında hc05 i master moda geçiremiyoruz , kodları denedik ,farklı bağlantılar yaptık,hc05i değiştirdik ama hiç birinde olmadı .AT moduna gecince HC05 ışığının 2 sn.de bir yanması gerek ama biz bunu başaramadık .Bu konuda bir fikriniz öneriniz varmı ? Gercekten çok sevinirim.Teşekkür ederim
Author
Yazının sonuna ekledim.
Cihazı master modda kullanmak için;
1. PIO11 pinine 3.3v verin.
2. Modülü çalıştırın. Yani modüle şimdi güç verin.
3. 38400 baud rate ile seri porttan bağlanın.
4. “AT+ROLE=1\r\n” komutunu gönderin. Eğer başarılı bir şekilde komut çalıştırıldıysa cevap olarak bu gelecektir “OK\r\n”. Eğer olmadıysa bu gelecektir “\r\n”.
5. Daha sonra PIO11 pinini 0v yapın. Modüle güç verince artık modül master mode’da çalışacaktır. Otomatik olarak slave modülleri arayıp bağlanacaktır.
Eğer gene yapamazsanız aşağıdaki linkte videolu anlatım da mevcut bir bakın;
http://www.instructables.com/id/Modify-The-HC-05-Bluetooth-Module-Defaults-Using-A/
Bu programı derledikten sonra bir takım hatalar aldım.( avrdude: stk500_loadaddr(): (a) protocol error, expect=0x14, resp=0x1 ) mesela bunun gibi. serial3.begin kısmında da hata veriyor benim programlayıcım. Acaba bu serial3.begin komudunu yazabilmem için herhangi bir kütüphaneye ihtiyacım var mı ?
Merhaba hocam senin verdiğin linkte ürün gözükmüyor şu anda başka bir link verebilirmisin
Author
Malesef tek tek arayip urun linki veremem. Zaten surekli ilanlar degisiyor ebayde. HC05, arduino bluetooth diye aratirsaniz bulursunuz. 😉
Merhaba. Benim elimde iki adet arduino uno ve iki adet bluetooth (HC-06) modülü bulunmakta. Her ikisini telefon ile haberleşebiliyorum. Ama benim yapmak istediğim bu iki bluetooth cihazını birbirleri ile haberleşmesi. Bir türlü birbirlerini tanımıyorlar. Bir arduino cihazdan diğerine bluetooth aracılığı ile haber(mesaj) yollayamıyorum. Bunun için ne yapabilir ?
Author
HC-06 yanlis hatirlamiyorsam sadece slave modda calisabiliyor. Yani sadece baglanabilirsiniz. 1 adet HC-05’e ihtiyaciniz var. HC-05 hem master hem slave olabiliyor.
HC-05 modülü ne yaptıysam çalıştıramadım.. reset ve tx pinlerinde voltaj var . modüle 3,3v ve 4,2volt arasında voltaj verdim genede; pc olsun telefon olsun görmedi.Bozuk olup olmadığını nasıl test ederim Teşekkürler.
Author
Yazıda anlatıldığı gibi key pininde yani switchteki değişimler ledlere yani 2 led’in bağlandığı pinlerde yazıda belirtilen değişikliklere sebep oluyorsa modül çalışıyor demektir.
Merhaba
İki tane bluetoothu arduino ya bağlayabilirmiyim. İkisinide aynı anda kod olarak nasıl haberleştirebilirim? elimde ıkı tane hc-06 var.
hangi bluetootha bağlı isem onla işlem yapacağım diğeri bekliyecek. diğerine geçmek istediğimdede tam tersi olacak.
merhabalar biz bu kodu derlediğimizde serial3 kısmında hata alıyoruz.sebebi ne olabilir acaba?
Author
Kullandığınız board’un serial3 gibi bir donanımı yoktur büyük ihtimal.
Hocam peki bluetooth veri alış verisi yapabilirmiyiz arduinoyla
Author
Yazıdaki gibi yapabilirsiniz. Bekletmeden de yapabilirsiniz veya Flag vs. kullanarak receive bitişini bekleyip transmit moduna girersiniz.
Renk sensorlerindeki sinyali bu modulle androide aktarabilirmiyiz
Author
Tabi ki aktarabilirsiniz ancak dijital olması gerekiyor. İlk önce mcu’da işlemeniz gerekiyor.
merhaba ben arduinodan bilgisayara ses göndermek istiyorum peki bu ses verisini Putty programında nasıl görmüş olacağım
Author
Nasıl gönderdiyseniz onu görürsünüz 🙂 İlk önce nasıl kaydediyorsunuz onu öğrenmem lazım.
hocam arduino nano ve hc-06, android telefon ile role yi ac kapa kullaniyorum hersey normal guzel calisiyor. sadece bazen telefondaki pro donuyor bluetooth baglantisi kopuyor role acik kaliyor, cok sakincali benim icin. sizden istedigim komut satiri, bluetooth baglantisi kopunca arduinonun kendine reset atmasi bu sayede butun roleler eski haline hemen donmesi. teşekkür ediyorum
slm size bir soru soracağım hc05 ile kapsamlı bir yazılım göremedim hep ışık yak söndür şimdi sorum şu ardunio 2560 la aldığımız verileri misal ısı verisini hc05 ile andiroide aktarabilirmiyiz ardunio la diyelim ki 30 derece bir veriyi hc05 le androidde gösterebilirmiyiz
Merhaba bn analog aldığım sinyali bluetooth modülü ile bilgisayarda bi dosyaya yazdirmak isitiyorum.Bu mumkun mu ?
Hocam selamlar, benim şöyle bir sorunum var:
Elimde bir Arduino Pro Micro var. Ben bu kartı bilgisayarıma midi aygıtı olarak gösterip üzerine yerleştirdiğim bazı butonlarla midi yazılımlarını kontrol ediyorum. Ancak yapmak istediğim asıl şey Arduinoya bir bluetooth modülü ekleyerek bunu USB ile PC’ye bağlamak ve PC’deki midi yazılımını Android cihazımdan bluetooth ile göndereceğim komutlarla yönlendirmek. Aynı zamanda bilgisayardan da düzenli olarak PC’deki yazılımın verilerini kontrol edip veriyi androide aktarmak istiyorum. Yani bu noktada arduino da, bilgisayar da android cihazım da aynı anda hem Receiver hem de Transmitter olarak çalışacak.
Acaba bu yapmak istediğim şey mümkün müdür ve bunu en kolay hangi yolla yapabilirim. Bu konuda beni aydınlatırsanız müteşekkir olurum.
Абузоустойчивый VPS
Виртуальные серверы VPS/VDS: Путь к Успешному Бизнесу
В мире современных технологий и онлайн-бизнеса важно иметь надежную инфраструктуру для развития проектов и обеспечения безопасности данных. В этой статье мы рассмотрим, почему виртуальные серверы VPS/VDS, предлагаемые по стартовой цене всего 13 рублей, являются ключом к успеху в современном бизнесе
https://medium.com/@brock_broo63499/удаленный-сервер-гса-242c7157f41d
VPS SERVER
Высокоскоростной доступ в Интернет: до 1000 Мбит/с
Скорость подключения к Интернету — еще один важный фактор для успеха вашего проекта. Наши VPS/VDS-серверы, адаптированные как под Windows, так и под Linux, обеспечивают доступ в Интернет со скоростью до 1000 Мбит/с, что гарантирует быструю загрузку веб-страниц и высокую производительность онлайн-приложений на обеих операционных системах.
VPS SERVER
Высокоскоростной доступ в Интернет: до 1000 Мбит/с
Скорость подключения к Интернету — еще один важный фактор для успеха вашего проекта. Наши VPS/VDS-серверы, адаптированные как под Windows, так и под Linux, обеспечивают доступ в Интернет со скоростью до 1000 Мбит/с, что гарантирует быструю загрузку веб-страниц и высокую производительность онлайн-приложений на обеих операционных системах.
best retin a cream uk
amoxicillin otc canada
price of celexa
doxycycline buy online us
how to buy synthroid