Gnu-Radio ile yazılımla tanımlanabilinir telsiz(radio)
Yazılımla tanımlanabilinir telsiz, ya da yazılıma bağlı telsiz cağımızın en yeni konularından biri. Bundan 2 gün önce 4′üncü sınıf projemizi seçtik ve bizim üç kişilik ekip bu proje ile uğraşacak. Birazdan yazacaklarım, daha önce bunları hiç duymadıysanız kesinlikle ilginç gelecektir. Bu projenin temelini oluşturan yazılıma bağlı olan radyo’nun İngilizce ismi ise “Software Defined Radio”‘dir. Kısa adı SDR (bundan sonra yazımda SDR ile devam edeceğim. Telekom ile aşina olanlar bu terimi belki daha önce duymuşlardır.
SDR nedir?
Çağımızda’ki iletişim’lerin çoğu kablosuz olarak gerçekleşiyor. Örneğin cep telefonları ile 900Mhz ve 1800MHz frekanslarında konuşuyoruz, müziğimizi FM dalgaları ile 88-108MHz frekans yayın aralığında dinleriz, dizüstü bilgisayarımız ile 2.4Ghz ile wifi üzerinden İnternet’e giriyoruz, çatı’daki antenler sayesinde TV izleyebiliyoruz, GPS sistemi ile yönümüzü ve ona göre gideceğimiz yerleri an ve an takip edebiliyoruz.
Tüm bunlar on yıllardır mühendislerin ortaya çıkartığı bir takim radyo özellikleridir.(Radyo kelimesi her türlü veri-alış verişini yapabilen cihazlardır, yani aklınıza sadece FM radyo’su gelmesin, cep telefonu da bir radyo’dur) Her birinin kendine has özellikleri vardır ve genellikle bu teknoloji’yi çıkartanlar bu işte çok para kazanmışlardır. Neden para kazandılar ? Çünkü her frekans için özel bir donanım hazırladılar ve biz sadece bu donanım üzerinden iletişim kurabiliyorduk.
Görüldüğü gibi gündelik hayatta da her iletişim kanalı için ayrı bir cihaz kullanıyoruz ve her biri için ayrı para veriyoruz.
İşte burada SDR devreye giriyor. SDR’ın amacı, tamamen donanımdan bağımsız bir ortam geliştirmek ve mümkün olduğunca yazılımla anten kısmına kadar gelebilmek. Bu şu demek, elinizdeki bir cihaz’ın özellikleri artık donanım’a bağlı değil, aksine yazılıma bağlı.
SDR’nin avantajları nedir peki?
Dediğim gibi artık donanım’a bağlı değil, yazılıma bağlı. Bunu avantajları saymakla bitmiyor, sadece bir kaçı şu şekilde:
- Anında değiştirilebilinir özelliklere sahip olacaklar. Öyle bir cihaz düşünün ki, istediğiniz zaman bir GPS alıcısı olacak, başka bir zaman wireless İnternet cihazı olacak, başka bir an telefon olacak, canınız sıkıldı FM alıcısı olacak. Tüm bunlar yazılıma bağlı olduğu için, tek tıklama ile bunlar olacak. Tüm bunları tek bir cihaz’ın yapabileceğini söyleyeyim tekrardan.
- Yazılıma bağlı oldukları için, yeni teknolojilere adapte olma süreci kolay bir şekilde hal olabilecekler. Şöyle bir örnek verelim, şu an 3g destekleyen telefonlar var, bazılarında ise 3g desteği yok. 3g desteğinin olmamasının sebebi ise tamamen donanımsal bir olay. Fakat ellimizdeki cihaz bir SDR olsaydı, yeni bir yazılım ile 3g’ye adapte olabilecektik.
- Aynı anda birden fazla kanalları dinleyebilecek ve konuşabilecek. Polislerin telsizleri mesela belirli bir frekans aralığında çalışır, askeri’yenin ise apayrı bir frekans aralığında çalışır. Eğer SDR olsaydı polis ile askeriye kendi aralarında çok kolay bir şekilde iletişim kurabilecekler. Başka bir örnek, diz üstü bilgisayarınız var, wifi özelliği mevcut ve elinizde bluetooth destekleyen bir telefon var. Bluetooth’lu telefondan wireless’li diz üstü bilgisayarınıza bağlantı kurabileceksiniz.
- Yazılıma bağlı olduğundan, doğanın donanımlara getirdiği bazı sınırlamalar ortadan kalkacaklar.Bu yüzden daha önce hiç görmediğimiz uygulamalar görmemiz mümkün olacaktır.
Peki Gnu Radio nedir ?
10 yıl önce Eric Blossom, açık kaynak kodlu SDR projesini ortaya attı. Bu projeyi daha fazla ileriye götürmek için, GNU kurucularından Richard Stallman’i de ikna ederek, GNU çatısı altına almaya başarmıştır. Gnu radio‘nun kendi altında 100′e yakın blok var. Her bir blok, telekom alanındaki bazı matematiksel özellikleri yapmayı yarıyor. Örneğin filtreleme, demodulation, modulation,vs.. Bu sayede, bazı fiziksel olayları yeni baştan yazmak yerine, Gnu radio’nun kütüphanelerini kullanmak mümkündür. Örneğin bu kütüphaneler ile kolayca bir FM alıcısı yapabilirsiniz.
Tabi bu yazılım çalışabilmesi için bir donanım yine gerekli. Günümüz dünyamızda her evde en az 2 çekirdekli bilgisayar artık olağan olmadığından, bu tarz yüksek işlemci hızı gerektiren işlemleri kolayca yapmamız mümkün. Masaüstü bilgisayarların işlemci güçleri gayet yeterli, fakat bunların alıcı kısmının dezavantajları var. Hava’dan gelen bir sinyali nasıl alacaksınız mesela? Bilgisayarlarımızda ses kartları aslında çok düşük fiyatları analog-to-digital çeviricileridir. Fakat bunlar 96KHz aralığında olduğundan, bizim diğer sinyaller için çok yetersiz olacaktır(örneğin FM frekansları 88MHz’den başlar, yani yaklaşık 10 katı daha fazla). Başka bir alternatif ise, yüksek hızlı PCI analog-to-digital ana kartları satın almak. Bunlar bizim işimizi görebilir, fakat normal bir masaüstü fiyatı kadar pahalı olacağından göz ardı edilebilinir.
Bu yüzdendir ki, Eric Blossom, USRP adında, SDR için özel geliştirilmiş bir ana kart geliştirdi.
USRP nedir ?
USRP’nin açılımı “Universal Software Radio Peripheral”‘dir. Bu genel amaçlı bir anakart. Üzerinde 4 tane yüksek hızlı analog-to-digital(ADC) çeviricileri, 4 tane digital-to-analog(DAC) çevirileri, bir tane FPGA ve bir kaç giriş ve çıkış girişleri var. GNU radio yazılımı doğrudan bu cihaz ile kolay bir şekilde iletişim kurabiliyor. Bu cihaz’a özel kütüphaneler var. O yüzden USRP ile SDR oluşturmak ve üzerinde çalışmak çok daha kolay. Tabi ki Gnu radio farklı platformlarda çalışacaktır, fakat USRP gibi özel bir donanım kadar performanslı ve efektif olmayacaktır. Aşağıda resimleri görebilirsiniz
Anakartın üzerinde bir takım kardeş-anakartlar yerleştirmek mümkün (bunlara daugtherboard deniliniyor). Bu kardeş anakartların her biri farklı frekans aralıklarındaki frekansları almayı ve göndermeyi becerebiliyor. Her birinin farklı yani. O yüzden geliştireceğiniz proje’ye göre, kardeş anakartları da farklı olacaktır. Eğer cep telefon sinyalleri ile uğraşacaksanız, 900MHz-1800MHz aralığındaki bir kardeş anakartı almanız gerekebilecek. USRP’nin üzerinde 4 tane bu tarz giriş var, yani 4 tane farklı kardeş anakart üzerine kurabiliyorsunuz. Bu yüzden farklı frekanslarından alabilir ve gönderebilirsiniz. Yukarıdaki resimde 4 tane farklı anakartın yerleştirildiğini görebilirsiniz.
Sonuç
4′üncü sınftaki bitirme projemiz, bir tane USRP üzerinde, şu an daha henüz belli olmayan bir alıcı ve verici düzeneği oluşturmaktır. Proje’nin detayları sonra belli olacak. Zamanla bunları burada yazacağım. Bu kadar yazdım, hiç mi dezavantajları yok bunun diyeceksiniz? Evet maalesef var.
Bu cihazı Amerika’dan 700 dolara getirebilirsiniz. Kardeş anakartlar ise 150-200 dolar arasında değişiyor. Ayrıca uzun mesafe’de çalışmak için iki tane anakart almak isteyeceksiniz. Oradan buraya kargo ücreti ise 150 dolar tutuyor. Bizim bölüm iki tane anakart bize tehsis edeceğinden bu yönde bir sıkıntı olmayacak(öyle denildi, umarım sorun çıkmaz bu konuda), kardeş anakartlar için ise kendimiz biraz para ayırmamız gerekecek herhalde. Sponsor bulursak tabi bunların hiç biri olmayacak. Türkiye gibi bir ülke’de bu konuda kesinlikle çok güzel araştırmalar yapabileceğine inanıyorum.
Kaynaklar:
http://www.ettus.com/
http://www.gnu.org/software/gnuradio/
http://en.wikipedia.org/wiki/Software-defined_radio
http://www.comsec.com/software-radio.html
http://dev.emcelettronica.com/gnu-radio-open-source-software-defined-radio
Etiketler: gnu radio, proje, sdr, software defined radio, usrp, yazılımla tanımlanabilinir telsiz
Mayıs 8, 2009
Yorumlar(15)

Son Yorumlar
Etiketler (r:30)
Tavsiyeler (r:5)
Konu beni baya heyecanlandırdı.. Ama anlayamadığım nokta donanımdan bağımsız radyo olması gerekirken en sonda yine farklı frekanslar için neden farklı kartlar alınması gerektiği? ayrıca çok büyük frekanslar için mesele 11000-12000mhz de çalışan cihazlar için de aynı şey geçerlimi bu frekanslarıda bu şekilde kullanabilir miyiz? bildiğim kadarıyla (kabaca) frekans seviyesi arttıkça kapsama alanı düşüyor. bu yüzden yüksek frekanslarda daha büyük antenlere ihtiyaç duyuluyor. yine donanım bağımlılığı yok mu? tanım birazcık yumuşatılmalı “bence”
“Anında değiştirilebilinir özelliklere sahip olacaklar. Öyle bir cihaz düşünün ki, istediğiniz zaman bir GPS alıcısı olacak, başka bir zaman wireless İnternet cihazı olacak, başka bir an telefon olacak, canınız sıkıldı FM alıcısı olacak. ”
Böyle bir cihazın büyüklüğü ne kadar olacak ve sahip olduğu anten nasıl birşey olacak?
Teşekkürler
@Taha Ozket
Proje yeni olduğundan ben’de henüz bazı şeyleri tam anlayamadım. Fakat muhtemelen antenin yapısıyla ilgili bir şey.
Yazımda tamamen donanımdan bağımsız demedim zaten, SDR’nin amacı, donanımla halledilen şeylerin tamamını yazılım seviyesine getirmek. Şu an itibariyle bunları yapmak baya zor tabi, fakat bir 10 sene sonra muhtemelen SDR’deki gelişmeler gözle görülür şeyler olacaktır.
Donanım’a yine bağlı tabi, fakat buradaki tanım farklı biraz. Örneğin analog bir FM alıcısı için, capacitor falan kullanmak lazım. Örneğin bu donanımı hazırladığınız, FM sinyalleri alabildiniz, peki farklı işler yapmak istediniz, ne yapacaksınız ? Örneğin gelen sinyalde aşırı derecede gürültü var, ve bir filtre düzeneği kurmanız gerekecek. Yeniden bir takım donanım alınacak ve dahil edilecek. Donanımı değiştirmeniz gerekecek kısaca. Halbuki SDR olsaydı, Filtre’leri yazılım ile kolayca halledebilirsiniz. Ben yazımda biraz uçtum tabi
Ama dediğim gibi 10 sene sonra bunlar olabilecek seviye’ye gelecek.
Cihazın büyüklüğüne gelince, evet öyle küçük bir cihaz değil. USRP büyük bir cihaz, fakat USRP’nin cihazı bir kuluçka dönemidir. Onunla SDR’yi anlamak ve geliştirmek isteyeceksiniz. Belirli algoritma’ları deneyeceksiniz, vs.. İleri ki zamanlarda bu cihazlar, işlemcilerin daha da küçülmesi ile küçülecektir.
Bir de şöyle bir şey, böyle bir cihaz’ı, Amerika’da FCC istemiyor. Yani frekans yayın aralıklarını belli standartlara göre ayıran bir kurum. İşin içinde politik engeller de var. Tüm bunların GNU radio çatısı altında yapılmasının sebepleri de bu. Kimse SDR tarzı şeyler istemez, bunlar onların şu anki ekonomik yapılarına ters çünkü.
Benim yaptığım olunca sizinki hiçbir işe yaramıcak
@nip
En azından ismini yazsaydın da kim olduğunu bilseydik
Tabi böyle klavye’den uzaktan yazmak kolay, herkes istediğini söyleyebilir, tıpkı senin gibi. Benim yaptığım olunca ne demek birde? Sen ne yapıyorsun ki ?
Yaklaşım çok güzel ancak olayın bir de kanuni tarafı var. Örneğin amatör telsizcilik için konuşayım, herhangi bir amaçla telsiz alsanız bile kullanmak için amatör telsizcilik lisansına ihtiyacınız oluyor. Ayrıca kullandığınız telsizin sadece amatör telsizcilik frekanslarına girebildiğini onaylatmanız gerekiyor. Diğer bahsettiğiniz araçlar ise sabit frekanslar üstünden işlem yaptığı için lisans gerektirmiyor.
Kısaca devlet herkes her istediği frekansa erişebilsin istemiyor. Çalışmalarınızda olayın bu yönünü de gözönüne alırsanız iyi olabilir. Çünkü bildiğim kadarıyla frekans sınırlandırılması yapılmamış telsiz cihaz bulundurmanın cezası oldukça ağır.
@Serdar
Evet kanuni boyutlarindan haberdarim. Senin dedigin gibi frekans ihlali oluyor. Fakat bizimkisi akademik ve muhtemelen tübitak onayli bir proje olacak(yani tübitak’in destek olma durumu var). Zaten yapacagimiz isler daha baslangic asamasinda olacak. Am ve Fm dalgalari muhtemelen incelenecek, o da bizim 30-40 m²’lik lab’larda olacagindan herhangi bir sorun cikacagini sanmiyorum. Yine de uyari icin tesekkürler, bunu bir de hocamizla konusmamiz lazim.
Öncelikle tebrikler oldukça güzel bir proje olacak gibi gözüküyor. Umarım sponsor bulursunuz o şekilde çok daha iyi yol alabilirsiniz.
Anladığım kadarıyla bu cihaz sadece aldığı frekansları digitale çevirip bilgisayara ulaştırmaya yarayacak, muhtemelen bilgisayara kuracağınız bir driverı oalcak, siz de bu dalgaları bilgisayar üzerinde görüp istediğiniz şekilde yazılım aracılığıyla işleyeceksiniz, veya istediğiniz dalgaları bu cihaz aracılığıyla göndereceksiniz. Hatta bilgisayar üzerinden kendi radyo yayınınızı yapabileceksiniz, isterseniz telsiz konuşmalarını dinleyebileceksiniz. Doğru anlamış mıyım? Eğer doğru anlamışsam bunun hukuki araştırmasını iyice yapsanız iyi olur gibi geliyor.
Benim aklıma bir de şöyle bir fikir geldi, -yapılmış mıdır bilmiyorum ama- usb’den veri gönderebilecek bir sim kart okuyucu tasarlayıp iki cihaz arasında iletişim kurarak bilgisayarı bir cep telefonuna çevirebilirsiniz. Dediğiniz gibi şimdi işe yaramaz ama cihaz ufalmaya başladığınıda işe yarayabilir.
@Emre
Bilgisayar kullanılmıyor. Yukarıda bahsettiğim Anakart kullanılıyor bilgisayar yerine. Bilgisayar da kullanabilinirdi, fakat yazımda da bahsettiğim gibi bu anakart sinyal işleme için özel tasarlanmış olduğu için daha iyi.
Hukuki konusunu proje hocamızla konuştuk, kendisi sorun çıkartmayacağını söyledi bize.
Söylediğin fikri de tam anlamadım. Bu Turkcell’in sattığı cihazlar var, sim kart ile çalışan o tarz bir şey mi olacak diyorsun ? Bizim alacağımız cihaz’da sadece usb girişi var, o da FPGA’ya kod yüklemek için kullanılacak. Tüm işlemler FPGA üzerinde olacak yani.
Şimdi daha iyi anladım. Ben bilgisayarla seri iletişim halinde çalışan bir cihaz olarak kurgulamıştım kafamda. Yani siz gömülü yazılımla ilgileneceksiniz, USB aracılığıyla programlayacaksınız. O zaman benim verdiğim fikir alakasız olmuş.
Radyo kısmıyla ilgili kafamda bazı soru işaretleri oluştu ama sanırım onlar da proje ilerledikçe yazdığın yazılarla biraz daha açıklığa kavuşacaktır.
Kolay gelsin.
Selamlar,
bir suredir USRP ile calisiyorum ve aktif olarak kullanyiyorum. Birseyler ararken yolum tesadufen buraya dustu.
Yorumlarda bazi yanlisliklar gozume carpti. USRP icin bilgisayara ihtiyaciniz var.
USRP GNU-RADIO icin bir frontend. USRP yi real dunyadan sinyal toplamak icin kullaniyoruz boylece topladigimiz verileri de gnuradio kullanarak isleyebiliyorz. Mesela radyo icin USRP ile datayi aliyorsun ( decimation ve basit birkac filtrelemeden sonra) bunlari daha sonra cpu kullanarak software ile filtreliyor istedigin kivama getiriyor sonra ses kartina gonderip dinliyorsun( realtime ). CPU kullanmak biraz hiz sorunu yaratabiliyor, daha fazla hiz icin gpu kullanmaya yonelik calismalar yapiliyor. Bu konuda cuda yardimciniz olabilir. Iyi calismalar
Merhaba Burak,
Yorumun için teşekkür ederim. Şu an henüz pratik aşamasına geçmedik, hocamızın tavsiyesi üzerine bir e-book kitabi aldık ve o kitap üzerinden calisiyoruz. Kitap genel olarak SDR üzerine yoğunlaşmış. Bu konuda senin gibi insanlar ile bazı konulari gerçekten tartışmak isterim. E-mail adresini bulamadım, fakat benimki blog@arsln.org şeklinde ve bu konuda cevap atabilirsen sevinirim. En azından tecrübelerinden faydalanabilirim.
Mrb,
Hangi frekans aralıklığında çalışacağınız belli mi? Herbir matherboarda çeşitli daugtherboards lar bağlanıyor bu daugtherboardlara çalışılacak frekanslara uygun anten mi takılıyor USRP’te? Bir de bazı daughterboard lar belli frekanslarda sadece receiver yada transciever, diyelimki receiver lı bir mother-daugther kombinasyonu kullandıysak alıcısı ne olacak diğer motherboard’da?
@aysegül
Frekans aralığı belli olmadi, fakat projemizde 7 kişi çalışacağından ve farklı işler yapılacağından bir çok daugtherboard’ler olacak. Son soru ile ilgli, receiver ile alici aynı seyler benim bildiğim, yani tek bir verici ve tek bir alici da kullanabilirsiniz. Kombinasyonlarin su özelliği var, ellinde bir tane anakartin varsa, bu ikisinin barindan daugtherboard’lardan alirsan bir anakart ile deney yapabilirsiniz. Tabi anten ve alıcı arasındaki mesafe çok az olacağından, çok dar bir çalışma olacaktır(örneğin 100 m ileride nasil bir performans sergilediğini inceleyemeyebiliriz)
Bence herbir daugtherboard için bir ana karta ihtiyaç var. Ana karta alıcı yada verici kız karlar takılıyor. Diyelimki 5 pc var bir tanesi bunları yöneten, iki tane primary kullanıcı iki tane secondary kullanıcı olsun. 5 tane ana kart olmalı. Her bir ana karta çalışılacak frekansa göre kız kartlardan hem alıcı hem verici olmalı. Herbir ana kart iki alıcı ve iki verici çalışacak şeklinde ama birer tane alcı verici taktık diyelim
. O zaman 5 alıcı ve 5 tane de verici kız kartlar olmalı. Toplam 10 tane anten. Software kısmı yöneten bilgisayarda olacak , yazılımla bunların çalışması denetlecek. Bu cihazlardan başka neler olmalı sence bu kurama göre? Spectrum analyzer gibi başka neler kullanılabilir hardware olarak? BEE2 ile USRP arasındaki farkları incelediniz mi? Hangisi avantajlı acaba?
Hocam size bitirme projesi olarak verilen proje bize 3. sınıf sayısal haberleşme dersinde proje olarak verildi(Kocaeli Üni. Bilgisayar Müh.) konu hakkında güzel bir ön fikir oldu,hakkında hiç birşey bilmediğimiz hatta adını duyunca Oha dediğimiz bi şey ya biz işi bilmiyoz ya da hocalar bizi çok şey bilio sanıo