Radyo Dalgaları ile Veri Aktarımı Deneyi

Daha önceki iki yazımda, Arduino ve RTL-SDR ile ilgilendiğimden bahsetmiştim. Elimdeki iki cihaz ile neler yapabileceğimi düşünürken, deneysel olarak yaptığım bir veri aktarımı çalışmasını da paylaşmak istedim.

deney-1

Aşırı Gereksiz Ön Bilgi

Verinin radyo dalgaları ile aktarılması elbette yeni bir kavram değil. En basitinden sizi internete bağlayan kablosuz modeminiz, veri aktarımını radyo dalgaları ile gerçekleştirmekte.

Kablosuz cihazlar arasındaki veri iletişimi, standardizasyonu sağlamak amacıyla, zamanla çeşitli protokollerle sabitlenmiş.

Örneğin kablosuz modemler, Bluetooth cihazlar ~2.4 Ghz bandında çalışırken; kablosuz kapı zilleri, uzaktan kumandalı garaj kapıları gibi daha basit cihazlar ~433 Mhz bandında çalışır.

Biz de bu yazıda 433 Mhz bir verici ile gönderdiğimiz veriyi, bir radyo alıcısı ile yakalayarak basitçe işlemeye çalışacağız.

Verici (Transmitter) Düzeneğinin Hazırlanması

İhtiyacımız olan cihazlar kısaca… Bir adet 433 Mhz verici. İnternetten ya da elektronik malzeme satan yerlerden 10 TL gibi bir ücrete temin edebilirsiniz. Piyasada bulabileceğiniz en yaygın model olan FS1000A, işini fazlasıyla iyi yapmakta.

fs1000a-verici

Vericinin programlanabilmesi için bir adet Arduino mikrodenetleyici. Benim kullandığım cihaz, Arduino UNO modeli.

arduino-uno

Fotoğrafları çekebilmek için el feneri kullanmak zorunda kaldım çünkü karanlıkta oturuyorum. Neden karanlıkta oturduğum konusuna ise hiç girmeyelim.

Sıra geldi vericimizi Arduino’ya uygun şekilde bağlamaya. Bunun için bir “Bread Board” (ekmek tahtası) kullanmanız, işinizi kolaylaştıracaktır. Yoksa direkt olarak da bağlayabilirsiniz.

Bağlantı şekli;

  • Verici DATA -> Arduino Digital Pin 4
  • Verici VCC -> Arduino 5V
  • Verici GND -> Arduino GND

Vericinin DATA ayağını Arduino’nın Analog Pin’lerinden birine bağlayarak, analog veri de gönderebilirdik. Ancak biz bu yazıda sadece Binary (ikilik) yani “1” veya “0” göndereceğimiz için dijital pin’i kullandık.

Düzeneğimiz son haliyle şu şekilde görünecek.

arduino-433mhz-baglanti

Vericinin Programlanması

Arduino IDE’mizi açarak, 4 numaralı dijital pin’e her 100 milisanide “1” değeri gönderecek kodu yazıyoruz ve derleyerek mikrodenetleyicimize yüklüyoruz.

433 Mhz verici / alıcı programlanması için RC Switch veya VirtualWire gibi gelişmiş Arduino kütüphaneleri mevcut. Ancak biz, gavurun deyimiyle “Sake of Simplicity” nedeniyle daha basit bir yol izliyoruz.

Bu adımları tamamladıktan sonra, vericimiz yayın yapmaya başlamış olacak.

Alıcı (Reciever)

Elimde XY-MK-5V model bir alıcı olmasına rağmen ikinci bir mikrodenetleyicim olmadığından, bendeki DVB-T cihazını RTL-SDR alıcı olarak kullandım.

rtl-sdr-cihaz

Vericinizin tam frekans değeri; kullandığınız vericiye ve alıcıya göre değişiklik gösterir. Tam değeri bulabilmek için, ~433 Mhz frekansındaki hareketliliği izleyebilirsiniz. Ben de SDR# ile vericimin yayınını 433.875.000 Hz frekansında yakaladım.

verici-frekans

Vericimizden gelen veriye farklı bir açıdan bakalım. Bunun için SDR# Recorder eklentisini kullanarak 3-4 saniyelik bir “Baseband” kaydı yapıyorum ve kaydettiğim WAV dosyasını Audacity ile açıyorum.

Tam da mikrodenetleyicimizi programladığımız gibi “0” ve “1” verileri 100 milisaniye aralıklarla alıcımıza ulaşıyor.

audacity-frekans

Verilerin İşlenmesi

Şu ana kadar, vericimizin istediğimiz şekilde yayın yaptığından emin olduk. Peki gönderdiğimiz verileri programatik olarak nasıl okuyacağız ve işleyeceğiz?

“Delphi bitmiş” olabilir ama ben eski günlerin anısına, “librrtlsdr” kütüphanesinin Sergey G. Badlo tarafından Delphi için yazılmış bir API‘sini kullandım.

Kütüphaneyle gelen örneği düzenleyerek, vericiden gelen ikilik veriyi ekrana yazdırdım.

rtl-sdr-delphi

Veri okuma adına elbette bu çok basit bir örnek. Bundan sonrası tamamen sizin hayal gücünüze kalmış. Dilerseniz kendi iletişim protokolünüzü bile yazabilirsiniz. Anonymous grubu da benzer bir şekilde AirChat isimli “özgür” iletişim protokolünü geliştirmişti.

RTL-SDR konulu bir sonraki yazımda, 433 Mhz frekansında çalışan kablosuz kapı zillerinin nasıl “hackleneceğini” uygulamalı olarak göstermeye çalışacağım.

Facebook Twitter Digg Delicious

08 Haziran 2016 tarihinde yayınlandı.