Giới thiệu SDR - Ứng dụng MATLAB và RTL-SDR trong nghiên cứu sóng vô tuyến - P1

Trong bài viết này, tôi sẽ thực hiện các thí nghiệm về xử lý tín hiệu không dây sử dụng công nghệ Software Defined Radio (SDR), đây là một chủ đề đã được nghiên cứu trong 20 năm trở lại đây và đang là xu hướng phát triển trong các thiết bị IoT ngày nay.

SDR cung cấp những khả năng phát triển linh động hơn nhiều so với phương pháp truyền thống sử dụng Crystal Radio Set, việc sản xuất các phần cứng hỗ trợ SDR ngày nay đã đơn giản hơn và giá thành của những sản phẩm này từ mức $1 đến $700 tùy chức năng (thu/phát) và dãy tần số hoạt động (0.1MHz đến 6GHz). Cùng với xu hướng phát triển Mobile và IoT trong những năm gần đây, SDR đã đóng vai trò khá quan trọng trong việc hỗ trợ các giải pháp kỹ thuật truyền dẫn tín hiệu vô tuyến có kích thước nhỏ.

1. Chuẩn bị

Để phục vụ các tình huống giả lập điều chế tín hiệu, tôi sử dụng các thành phần như sau:

  1. Phần cứng 820T2 RTL2832U 1PPM TCXO SMA Software Defined Radio with 2x Telescopic Antennas
  2. Phần mềm giả lập MATLAB & Simulink (hỗ trợ phiên bản Pro, Student hoặc Home), yêu cầu cài đặt Signal Processing, Communications and DSP Sytem Toolboxes, và gói phần mềm hỗ trợ RTL-SDR.
  3. Các tập tin mẫu điều chế tín hiệu trên Matlab, tải tập tin Software Defined Radio using MATLAB Simulink and the RTL SDR book and support_files.zip
  4. Phần mềm SDRSharp, kiểm tra hoạt động thiết bị RTL-SDR. Tải bộ công cụ hỗ trợ tại SDR Software Package.

Thiết bị RTL-SDR có giá khoảng 20$ phù hợp cho các đối tượng là sinh viên, kỹ sư hoặc phù hợp cho các bạn thích sáng tạo công nghệ. RTL-SDR hoạt động trong dãy tần số vô tuyến (radio frequency) từ 25MHz đến 1,75GHz, việc này đồng nghĩa RTL-SDR có thể thu nhận các loại sóng phổ biến ngày nay như: Sóng Radio FM, tín hiệu băng tần UHF, tín hiệu ISM, GSM, 3G và sóng di động LTE, GPS và tín hiệu vệ tinh hoặc các loại tín hiệu vô tuyến trong dãy tần số có thể thu được (cần xem xét các vấn đề về pháp lý). Bạn có thể tìm hiểu thêm về các tính năng mà thiết bị RTL-SDR mang lại tại trang web chính thức http://www.rtl-sdr.com/about-rtl-sdr/

R820T2 RTL2832U 1PPM TCXO SMA Software Defined Radio with 2x Telescopic Antennas

Phần mềm MATLAB và Simulink được yêu cầu cài đặt tại máy tính để phục vụ việc phát triển các thuật toán điều chế tín hiệu không dây. Nếu là sinh viên, MathWorks sẽ trợ giá bản quyền gói MATLAB and Simulink Student Suite là $55 và giá cho mỗi Add-on là $6 (giá gốc là $16).

MATLAB and Simulink Student Suite

2. Thiết bị RTL-SDR

Thiết bị thu tín hiệu vô tuyến RTL-SDR có giá thành thấp và dễ dàng sử dụng thông qua kết nối USB tốc độ cao. Thông thường, thiết bị này được biết đến như là công cụ thu tín hiệu DVB-T (Digital Video Broadcast-Terrestrial) sử dụng trong truyền hình kỹ thuật số. Đặc điểm của RTL-SDR này là chỉ có thể nhận tín hiệu (receive only), do vậy người dùng chỉ có thể tận dụng khả năng thu tín hiệu vô tuyến tại các băng tần khác nhau mà không gây ảnh hưởng đến việc làm nhiễu sóng tín hiệu khu vực xung quanh. Để có được thành quả này, các kỹ sư đã làm việc với test mode của thiết bị DVB và cho phép thiết bị có nhiều khả năng hơn mà nó vốn có.

Block diagram of the RTL-SDR receiver chain

Hình: Block diagram of the RTL-SDR receiver chain

Thành phần của RTL-SDR

Phần cứng của RTL-SDR bao gồm hai phần là: a. DVT tuner (Rafael Micro R820T thường được sử dụng trong RTL-SDR, tuy nhiên một số trường hợp bạn sẽ gặp Elonics E4000) và b. bộ giải điều chế Realtek RTL2832U DVB-T COFDM.

Dãy băng tần vô tyến mà thiết bị có thể thu nhận nằm trong khoảng 25Mhz đến 1.75GHz và được phân thành các loại phổ dụng như hình dưới.

A few of signals avaiable to the RTL-SDR (location dependent)

3. Mô phỏng tín hiệu vô tuyến trên MATLAB

Sau khi tải tập tin Software Defined Radio using MATLAB Simulink and the RTL SDR book and support_files.zip và giải nén, tôi tiến hành mởi tập tin complex/qam_mod_demod.slx và tiến hành chạy mô phỏng điều chế tín hiệu QAM.

QAM Mod DemodQAM Mod Demod

QAM Mod Demod

Để tiến hành các bài lab về SDR trên thiết bị RTL-SDR và mã mô phỏng MATLAB, người dùng cần bảo đảm các gói công cụ được cài đặt đầy đủ như hình dưới.

Matlab Simulink

Hình: Simulink, Communications System Toolbox, DSP System Toolbox

4. Kết nối thiết bị RTL-SDR

Kết nối phần cứng thiết bị RTL-SDR vào cổng USB tại máy tính và thực hiện kiểm tra kết nối đến thiết bị.

connect_rtl-sdr_to_laptop

Hình: Kết nối thiết bị RTL-SDR và laptop sử dụng cổng USB.

Sau khi cài đặt gói hỗ trợ phần cứng RTL-SDR (tải RTL-SDR Support from Communications System Toolbox www.mathworks.com/hardware-support/rtl-sdr.html) và thực hiện cài đặt driver, người dùng có thể tìm thấy mô phỏng RTL-SDR Receiver tại giao diện Simulink của MATLAB.

Người dùng cần xem chi tiết hướng dẫn cài đặt Driver trên từng hệ điều hành tại Support Package Hardware Setup - www.mathworks.com/help/supportpkg/rtlsdrradio/ug/support-package-hardware-setup.html.

install_hardware_support_package

Hình: Tải và cài đặt gói hỗ trợ RTL-SDR từ MATLAB

configuring the rtl-sdr receiver simulink block, and the rtl-sdr matlab system object with identical parameters

Hình: Configuring the rtl-sdr receiver simulink block, and the rtl-sdr matlab system object with identical parameters

Người dùng truy cập đường dẫn intro/rtlsdr_rx_startup_simulink.slx để tiến hành kiểm tra hoạt động của toàn bộ quá trình cài đặt.

rtlsdr_rx_startup_simulink

Tại bước cấu hình này, người dùng đã chuẩn bị hoàn thành cho các bài thí nghiệm về SDR sử dụng MATLAB. Trong phần tiếp theo, tôi sẽ tiến hành phân tích các tình huống đặc trưng trong việc ứng dụng SDR vào cuộc sống và bảo đảm an toàn môi trường vô tuyến điện.

5. Tham khảo

  1. http://www.rtl-sdr.com/about-rtl-sdr/
  2. https://www.mathworks.com/hardware-support/rtl-sdr.html
  3. http://www.desktopsdr.com/
  4. https://download.visudo.info/IoT/SDR/Matlab/Software_Defined_Radio_using_MATLAB_Simulink_and_the_RTL-SDR_book_and_support_files.zip
  5. https://download.visudo.info/IoT/SDR/Matlab/ (https://drive.google.com/open?id=0B4HUm9xznIP3XzVtMDNhMmpmSWs)
lên
8 thành viên đã đánh giá bài viết này hữu ích.
Từ khóa: 
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Giới thiệu SDR - Theo dõi thông tin chuyến bay sử dụng MATLAB và RTL-SDR thu nhận tín hiệu ADS-B - P2

Trong bài viết này, tôi sử dụng chương trình Matlab và phần cứng RTL-SDR trong việc thu nhận tín hiệu ADS-B (Automatic Dependent Surveillance-Broadcast) nhằm giám sát chuyến bay trong phạm vi khu vực giới hạn.

Người dùng có thể sử dụng các công cụ khác nhau để có cùng kết quả phân tích dữ liệu. Tuy nhiên, trong các bài viết này tôi tập trung chủ yếu vào việc ứng dụng Matlab và RTL-SDR để làm các thử nghiệm trong môi trường thu/ phát tín hiệu đã được khống chế. Việc sử dụng Matlab cho phép người dùng phát triển và đo lường các giải thuật tốt hơn với các bộ công cụ mà nó hỗ trợ trước khi tiến hành triển khai trên môi trường ứng dụng máy tính.

lên
5 thành viên đã đánh giá bài viết này hữu ích.

Giới thiệu Espruino Pico - Phần 1

Espruino là một dự án phần cứng nguồn mở với nỗ lực của Gordon Williams để tạo ra một vi điều khiển hoạt động trên nền tảng Javascript. Dự án được Gordon kêu gọi vốn tại Kickstarter để phát triển hai phiên bản là Espruino có kích thước như một thẻ tín dụng và Espruino Pico có kích thước như một con tem. Cả hai phiên bản đều kết nối qua cổng USB. 

lên
15 thành viên đã đánh giá bài viết này hữu ích.