Practical SDR - Nhập môn radio định nghĩa bằng phần mềm
(nostarch.com)- Practical SDR là cuốn sách giúp người dùng hobby, người học truyền thông vô tuyến và kỹ sư tạo mẫu thiết kế RF nắm vững các kiến thức cơ bản về radio định nghĩa bằng phần mềm
- Người đọc sẽ tạo máy thu radio ảo trên máy tính, trích xuất âm thanh từ tín hiệu AM·FM thực tế và từng bước xây dựng hệ thống radio bằng GNU Radio Companion
- Phạm vi học tập trải dài từ thao tác tần số 1MHz~6GHz, bộ lọc và điều khiển độ lợi, lựa chọn ăng-ten và phần cứng RF đến xử lý dữ liệu IQ thời gian thực
- Một số dự án cần phần cứng SDR như HackRF One và ăng-ten tương thích, nên không chỉ dừng lại ở thực hành phần mềm thuần túy
- Đây là sách nhập môn nối liền khoảng cách giữa tutorial cơ bản và ứng dụng nâng cao, đồng thời là nền tảng để học các hệ thống vô tuyến hiện đại như Wi‑Fi·Bluetooth·truyền thông di động
Phạm vi và hình thức của cuốn sách
- Practical SDR là cuốn sách để bắt đầu với radio định nghĩa bằng phần mềm, với phụ đề “Getting Started with Software-Defined Radio”
- Dự kiến phát hành vào tháng 3 năm 2025 và có độ dài 336 trang
- Hình thức và giá như sau
- Print Book and FREE Ebook: $39.99
- Ebook PDF, Mobi, ePub: $31.99
- Có cung cấp bản mẫu Chapter 4: Creating an AM Receiver
Radio được tạo ra qua thực hành
- Tạo máy thu radio ảo trên máy tính và trích xuất âm thanh từ tín hiệu AM·FM thực tế
- Khi làm radio AM, người đọc sẽ học cách điều biên hoạt động
- Trong quá trình cấu hình thu FM sạch, người đọc sẽ nắm được lọc tín hiệu
- Các chủ đề phức tạp như lấy mẫu IQ cũng nằm trong phạm vi thực hành
- Dùng giao diện GNU Radio Companion để ghép từng thành phần thành hệ thống radio hoạt động, sau đó mở rộng sang thiết kế máy thu AM·FM và máy phát radio
Các yếu tố kỹ thuật được đề cập
- Thao tác tần số vô tuyến trong dải 1MHz~6GHz
- Dùng bộ lọc và điều khiển độ lợi để tách tín hiệu rõ ràng khỏi nhiễu
- Chọn ăng-ten và phần cứng RF phù hợp để nâng cao hiệu năng SDR
- Xử lý dữ liệu IQ thời gian thực dựa trên số phức để giải điều chế tín hiệu radio thực tế
- Xây dựng môi trường thử nghiệm radio ảo linh hoạt trên máy tính
Mạch nội dung theo từng phần
-
Part I: Tạo bộ thu cơ bản
- What Is a Radio?
- Computers and Signals
- Getting Started with GNU Radio
- Creating an AM Receiver
-
Part II: Bên trong bộ thu
- Signal Processing Fundamentals
- How an AM Receiver Works
- Building an FM Radio
-
Part III: Ứng dụng phần cứng SDR
- The Physics of Radio Signals
- GNU Radio Flowgraphs with SDR Hardware
- Modulation
- SDR Hardware Under the Hood
- Peripheral Hardware
- Transmitting
Tài liệu cần thiết và các giới hạn
- Một số dự án cần phần cứng SDR như HackRF One và ăng-ten tương thích
- Có thể tải các tệp hỗ trợ cho chương Early Access tại getting_started_sdr-main.zip
- Trang bản quyền, mục lục chi tiết và chỉ mục được cung cấp dưới dạng PDF riêng
1 bình luận
Các ý kiến trên Hacker News
Cần cẩn thận với SDR. Ban đầu chỉ quét qua phổ tần, rồi chẳng mấy chốc bạn sẽ đặt mua ăng-ten Yagi 36 phần tử và linh kiện rotor AZ/EL, rồi ngồi ngắm bộ thu phát radio 3.000 đô la cho liên lạc phản xạ Trái Đất-Mặt Trăng-Trái Đất
Chỉ cần khoảng 20 feet dây điện và một SDR là có thể dễ dàng nghe được tín hiệu từ bên kia đại dương
Dù sao cuối cùng bạn cũng sẽ thích nó
Nếu muốn nhập môn qua sách của No Starch thì nên bắt đầu ở đây: https://www.rtl-sdr.com/rtl-sdr-quick-start-guide/
Đúng chất No Starch, bản thân cuốn sách khá ổn, nhưng trên thị trường cũng có rất nhiều thiết bị rác, nên rất dễ mua phải thứ không hoạt động hoặc gây phát xạ không mong muốn, nhiễu lạ, vấn đề tương thích
Nếu không hiểu sâu hơn về điện tử và RF để giảm nhẹ các vấn đề này thì khó có được kết quả tốt. Trang đó là điểm xuất phát toàn diện nhất cho người mới, nhưng tốt nhất nên đọc kỹ trước khi mua dongle
Có rất nhiều thiết bị rẻ tiền, tức chất lượng không tốt. Tôi chủ yếu dùng 3 SDR, trong đó dongle RTL-SDR.com Blog V4 là điểm khởi đầu tuyệt vời và rẻ. Nếu không hợp thì chỉ mất khoảng 40 đô la, còn nếu hợp thì chỉ riêng dải 27MHz~1.6GHz cũng đủ khiến bạn bận rộn rất lâu
Nếu thích vô tuyến nghiệp dư hoặc nghe sóng ngắn thì Airspy HF+ rất tốt. Nó phủ từ 0.5KHz đến các băng HF, VHF, và tôi cũng từng thấy báo cáo dùng nó cho thử nghiệm siêu âm. Xét theo giá, đây là SDR chất lượng tốt nhất trong số tôi có, độ nhạy tốt và nhiễu thấp
Cuối cùng là Great Scott Gadgets HackRF One, gần như là cả một phòng thí nghiệm vô tuyến trong một chiếc hộp. 1MHz~6GHz, 20MS/s, nhưng là lấy mẫu vuông góc 8-bit và cũng có thể phát. Điểm cộng là video giáo dục cũng rất hay
Nhân tiện, cả 3 thiết bị SDR này đều chạy tốt trên Linux mà không có vấn đề
Tôi rất thích SDR. Tôi đang dùng nó để ghi tín hiệu micro của các giáo sư
Tốt hơn nhiều so với dùng điện thoại hay máy ghi âm chuyên dụng
Mục lục và phần mô tả sách trông hơi u ám nhỉ?
Tôi nhớ là các chủ đề như GNU Radio, bộ lọc, AM/FM, giải điều chế IQ đã có thể làm theo trên wiki GNU Radio Tutorials [0], nên tôi không rõ cuốn sách này đem lại giá trị gì hơn thế
Ngoài ra, nếu các tác giả chọn GNU Radio làm software stack, tôi cũng thắc mắc tại sao họ không dành một chương cho việc tự tạo block Python, thứ mà tôi xem là ưu điểm lớn nhất của GNU Radio. Nếu thích SDR và quan tâm đến kỹ thuật điện thì tôi rất mong mọi người thử động vào, nhưng chỉ nhìn 4 chương mẫu được cung cấp thì tôi chưa biết có nên giới thiệu cuốn sách này không
[0] https://wiki.gnuradio.org/index.php/Tutorials
Hơn 10 năm trước, tôi bắt đầu với máy Windows, sdrsharp và một SDR RTL giá rẻ. Việc đi quanh phổ tần, bấm vào các tín hiệu thú vị, rồi ráp đại một pipeline giải mã để có kết quả thực tế thú vị hơn nhiều
Chính các use case thú vị có thể thử được bằng phần mềm chạy được và phần cứng rẻ đã giữ tôi lại trước, rồi sau đó tôi mới có động lực thật sự muốn hiểu GNU Radio
Một tài liệu miễn phí hay để học là https://pysdr.org/
Đây không phải là module Python, mà là hướng dẫn học nền tảng xử lý tín hiệu số bằng Python trong bối cảnh sử dụng SDR. Nó cũng đề cập các cách cụ thể để dùng phần cứng SDR phổ biến nhất
Bản đồ web SDR trực tuyến để nghịch trong lúc chờ giao hàng cũng hữu ích :-)
https://www.receiverbook.de/map
Trước đây tôi từng nghịch SDR một chút, và khó khăn lớn nhất khi đó là tìm phần cứng phù hợp có thể thu nhiều tần số và tương thích với máy Linux của tôi
https://greatscottgadgets.com/hackrf/
Có thứ gì như kỹ thuật phát hiện tín hiệu tự động không? Ví dụ tự động nhận diện các phần không phải nhiễu trong phổ tần
SDR giá rẻ có cửa sổ thu khá hẹp, nên nếu có thì có vẻ sẽ hữu ích
Việc này có thể làm được trên các bộ thu phát hoàn chỉnh đắt tiền, và cũng làm được với kết hợp dongle RTLSDR giá rẻ cùng phần mềm máy tính phù hợp. Nói về SDR giá rẻ, theo tôi thì 24~1766MHz không phải là một dải đặc biệt hẹp
Nếu có thể chi thêm tiền, HackRF One phủ từ 1MHz, tức băng 160m, đến 6GHz, tức băng Wi-Fi. Những dải thấp hơn hoặc cao hơn có khả năng cần thiết bị chuyên dụng hơn
Tất nhiên cần nối ăng-ten được tune phù hợp vào bộ thu phát hoặc dongle
Nếu đang tìm thêm một ứng dụng khác của SDR, có thể dùng KrakenRF để tìm máy phát vô tuyến
https://www.krakenrf.com/
Nếu đã đi đến đây, cũng đáng xem thử một thư viện Python mới-ish dành cho SDR, được thiết kế tốt và phát triển tốt
https://mhostetter.github.io/sdr/latest/