Ana Sayfa Arduino X-CTU ve XBee Kullanarak İki Bilgisayarın Haberleşmesi
X-CTU ve XBee Kullanarak İki Bilgisayarın Haberleşmesi
Posted on 8 Ağustos 2015
Genelde internette araştırdığınızda XBee ile kablosuz haberleşme yapabileceğiniz uygulamalar karşınıza çıkacaktır. XBee ile bir mikrodenetleyici kullanılarak veya elektronik prototipleme kartı üzerine oturtularak oluşturulmuş projeleri bolca görebilirsiniz. Bu uygulamada elimde bulunan, üzerinde windows xp işletim sistemi yüklü eski bir PC ile, windows 7 bilgisayarın internet olmadan karşılıklı nasıl haberleşebileceklerini, birbirleriyle nasıl mesaj alışverişi yapabileceklerini göstereceğim.
Kısaca XBee nedir ondan bahsedelim;
XBee, IEEE 802.15.4 standartına bağlı bir haberleşme protokolü olan ZigBee’nin donanıma bürünmüş halidir. Siz bu modül ile çevremizden bildiğimiz RF, Wi-Fi gibi kablosuz haberleşme yapabilirsiniz. Örneğin benim elimdeki XBee 1mW S1 modülü için, internette araştırdığım kadarıyla 100 metre bir aralıkta haberleşme yapabileceği yazılıp, çizilmiş.
Ayrıca bu modül üzerinde dijital giriş/çıkış pinleri de mevcut. Yani herhangi bir harici mikrodenetleyici veya elektronik prototipleme aracına ihtiyaç duymadan ( Arduino,Raspberry pi gibi ) bazı uygulamaları gerçekleştirebilirsiniz. Tabi ki ufak bir modül olduğundan dolayı giriş çıkış pinleri de sınırlı sayıda.
AT ve API komut setini destekliyor. Komutlarınızı, AT veya API formatında yazıp yollayabilirsiniz. Biz bu uygulamada AT ile yazıp yollayacağız. API konfigürasyonu da başka bir yazıya kalsın 🙂
XBee modülünün 1 TL ile karşılaştırılması:
Şimdi biz bu modülden iki tane aldık ama böyle sap sap bilgisayarlara nasıl bağlayacağız ? Bu modül üzerinde ne bir USB çıkışı var, ne başka bir port var, nasıl yapacağız ?
Yazımızın konusu bilgisayarlar arası haberleşme. Şimdi biz Seri Haberleşme ile bu bilgisayarları haberleştireceğiz. Seri Haberleşme de sıkça kullanılan RS-232 standartını kullanacağız. Fakat nasıl ?
Günümüz bilgisayarlarında RS-232 portu artık yer almamaktadır ( Çoğunluğunda ! ). Bu efsane portların yerini USB portları devraldı. Bize o zaman bir USB’den RS-232’ye çeviren bir çevirici lazım. O da aşağıdaki gördüğünüz aparat :
İnternette Foca FT-232 diye aratarak bulabileceğiniz bu modül, shield artık nasıl isimlendirirseniz, FT-232RL entegre tabanlı bir yapı. USB’den UART’a ( yani RS-232’nin alt yapısını kullandığı yapıya, seri haberleşmeye ) çevirme işlemini bu aparat yapacak. Piyasada sıkça FT-232 serileri kullanılır, usb to rs-232 çeviricilerinin iphone’udur. Diğer rakiplerine nazaran birazcık pahalı bir çiptir. iPhone olmak bunu gerektirir çünkü :). Bir de bunun muadili vardır, CP2102. Çin kaynaklı sitelerden Arduino vb. gibi elektronik prototipleme kartları alırsanız sıkça karşılaşırsınız bu CP2102 ile. Hatta çoğu kişi “Bu arduino çöp abi, bozuk çıktı” deyip, driver’ını yüklemeden yeni bir kart arayışına girer.
Nerden geldik arduino konusuna yine, asıl konumuzdan devam edelim;
İki modülümüzü şu şekilde terminaller aracılığıyla birbirine bağlayarak bir bütün haline getiriyoruz.
Unutmadan söylemek gerekirse, benim elimdeki XBee S1 modülü 3.3 volt düzeyinde çalışmaktadır. Ondan dolayı da 3.3V tarafına switch’imi kaydırdım.
Bilgisayara usb kablomuz ile bağladıktan sonra modül için gerekli olan ft-232 sürücüsü otomatik olarak yüklenmektedir, eğer yüklenmezse, siz de hata çıkarsa yazının altına yorum yazarak şikayetinizi yazın, ben yardımcı olmaya çalışırım.
İlgili modüllerimizi topladıysak, artık haberleşme kısmına geçebiliriz.
XBee’nin üreticisi Digi firması X-CTU isimli XBee’nin bağlantı testinin yapıldığı, konfigürasyonların da yapılabildiği, seri haberleşme terminal’i de bulunan hoş arayüzlü bir program tasarlamış. En son versiyonu çok cicili-bicili olduğundan dolayı kullanasım gelmedi açıkcası. İsterseniz siz onu indirebilirsiniz. Fakat ben yazıda eski bir sürümünü kullanacağım. ( XCTU ver. 5.2.8.6 installer )
Buradan dilediğiniz X-CTU yazılımını indirebilirsiniz.
XBee’mizi bilgisayara bağladık, programımızı indirip Next-Next diyerek yükledikten sonra programı açarsak aşağıdaki bir arayüz bizi karşılayacak.
Projeyi gerçekleştirirken iki farklı bilgisayar kullandığım için iki farklı bilgisayarımda karşıma gelen ekran görüntülerini karşılaştırmalı olarak koyacağım, kafanız karışmasın. Bu işlemleri tek bir bilgisayarda da yapabilirsiniz. Yani tek bir bilgisayar da iki XBee modülünüzü de haberleştirebilirsiniz.
Resimde de göreceğiniz üzere XP bilgisayarımda XBee modülü COM5 üzerinden haberleşecek. Windows 7 üzerinde ise COM37 üzerinden haberleşmesini gerçekleştirecek.
Test / Query butonuna tıklayarak XBee’mizin bilgisayar ile haberleşip haberleşmediğini test edebiliriz, tıkladığımda karşıma çıkan sonuç başarılı.
Bir de XBee’lerimiz arasındaki aralığın kalitesine bakalım. Haberleşmemiz için uygun aralıkta mı acaba? Range Test kısmından incelersek;
Sonuçlar oldukça değişkenlik gösteriyor, ama genelde yüzde 97-98 çekim kalitesi var.
XBee’leri bir odanın içerisinde ne kadar uzağa koyabilirim ki ? 🙂 Siz oturma odası ve mutfak arasında, veya sokağa çıkarak apartmanın önünde oturup evinizle de haberleşmeyi deneyebilirsiniz.
Şimdi de Terminal üzerinden bilgisayarlarımız ile chat yapalım.
Gönderilen mesajlar Mavi rengini alırken, Alınan mesajlar Kırmızı rengini almaktadır.
API modunda komutların gönderilmesi, birden fazla XBee ile bir network oluşturulması, yani bir XBee düşünün, birden fazla XBee’ye hükmedebiliyor, komut gönderip-alabiliyor vb. Kendi sürü robotlarınızı bu yöntemle oluşturabilir, yönetebilirsiniz. Point to point, Point to multipoint, API, Coordinator, End Devices, Router, Topolojiler, Mikrodenetleyiciler arası haberleşmeler gibi konular da başka yazılara kalsın.
Eğer XBee’niz arayüz programı tarafından COM portu görülüyor fakat Test / Query‘e tıklayınca bir uyarı penceresiyle karşılaşıyorsanız, modül üzerinde bulunan BEE_RST tuşuna 1-2 sn basıp-çektikten sonra bağlanması muhtemeldir. Çünkü bazı XBee’lerin BaudRate’leri farklı olabilmektedir. Bu uygulamada BaudRate 9600 alınmıştır.
Modem Configuration kısmına girdiğiniz de XBee’nizi fabrika ayarlarına döndürmek isterseniz Restore butonuna basınız.
Yaptığınız değişiklikleri XBee’ye aktarmak isterseniz Write butonuna tıklamalısınız.
XBee’nin konfigürasyon ayarlarını görmek isterseniz Read butonuna tıklamalısınız.
Aklınıza takılan, anlamadığınız yerleri yorum yazarak belirtebilirsiniz, sorularınızı yorum olarak yazabilirsiniz.
Etiketlerbilgisayarları haberleştirmex-ctu nedirx-ctu ve xbee kullanımıxbee nedir- xbee digi x-ctuxbee usb to uartxbee ve x-ctu seri haberleşme
Önceki Yazı Catia Eğitim – Line,Grip,Snap Komutları
Sonraki Yazı Flip-Flop Devresi
11 Ekim 2015 at 01:18
TEST/QUERY’de uyarı ile karşılaşıyorum. BEE_RST tuşu modül üzerinde yok. Ne yapmam gerekiyor acaba? xBee Pro S2B kullanıyorum.
11 Ekim 2015 at 14:23
Bildiğim kadarıyla varsayılan olarak BaudRate 9600 olarak geliyor, 9600 baudrate’de bağlanmayı denedin mi ?
14 Ekim 2015 at 08:03
Merhaba modulu, usb dongle ile birlikte kullanıyorsanız dongle üzerinde reset butonu olacak ona basın, hata ile karşılaşmamak için dongle üzerindeki rest bacağını direkt gnd verin.
merhabalar bende 2 tane xbee modül var antensiz olarak kullanıyorum bütün bağlantıları yapıyorum bütün haberleşmeler uygun range testte %90 ile %100 arasında iletişim alıyorum ama ne yazıkki terminalde haberleşmiyor line status da cts cd bağlanmıyor ne şekilde yapabilirim
22 Ocak 2016 at 14:59
Kullanmış olduğunuz XBee modülleri birbirinden farklı modeller mi ? Hangi modeli kullanıyorsunuz ? API modunda mı çalıştırıyorsunuz AT modunda mı ?
22 Ocak 2016 at 17:12
kullandığım modüllerin 2 side aynı AT modunda kullanıyorum
15 Haziran 2017 at 17:02
Merhaba, merak ettiğim bir konu var. Arduino ya eklediğim bir butona basarak Master xbee den int veya float türünde bir değeri slave xbee ye göndermek istedik diyelim. Verinin slave cihaza ulaştığını nasıl anlarız. İletişim kararlılığı nedir. Şimdiden teşekkürler.
Top Tags GMTSuite GMTSoft arduino PLC Programlama arduino project GMT PLC plc Raspberry Pi stm32f4 National Instruments labview arduino projeleri roboturka robot makerhub