TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA ĐIỆN TỬ VIỄN THÔNG BÁO CÁO TIỂU LUẬN Lớp đối tượng trong C++ Viết một chương trình Python ứng dụng trong ngành Công nghệ kỹ thuật Điện tử Viễn thông SVTH ĐÀO MẠNH CƯỜNG Mã[.]
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA ĐIỆN TỬ - VIỄN THÔNG BÁO CÁO TIỂU LUẬN Lớp đối tượng C++ Viết chương trình Python ứng dụng ngành Cơng nghệ kỹ thuật Điện tử Viễn thông SVTH Mã SV Lớp : ĐÀO MẠNH CƯỜNG : 20810510090 : D15DT&KTMT HÀ NỘI – 2023 MỤC LỤC Trang MỤC LỤC A MỞ ĐẦU…………………………………………………………………………1 CHƯƠNG I: SOFTWARE DEFINEF RADIO ( SDR) LÀ GÌ ? Giới thiệu Software Defined Radio (SDR) …………………………… 1.1 Lịch sử hình thành …………………………………………….……… 1.2 Software Defined Radio gì? 1.3 Lợi ích Software Defined Radio (SDR)………………………… 1.3 Ứng dụng SDR …………………………… ………………………… CHƯƠNG II: GIỚI THIỆU VỀ BỘ THU VÔ TUYẾN RTL2831 SDR ………………………………………………………………………………… 2.Giới thiệu Bộ thu vô tuyến RTL2831 SDR…………………………….6 2.1 Đặc điểm ứng dụng RTL2831 SDR…………………………….6 2.2 Kiến trúc nguyên lý hoạt động RTL2831 SDR ……………… CHƯƠNG III: CHUẨN BỊ MÔI TRƯỜNG PHÁT TRIỂN CHO VIỆC SỬ DỤNG RTL2831 SDR………………………………………………………….7 3.1 Cài đặt phần mềm hỗ trợ RTL2831 SDR …………………………… 3.2 Cấu hình mơi trường phát triển ……………………………………… CHƯƠNG IV: CHƯƠNG TRÌNH C++ ỨNG DỤNG THU SÓNG FM BẰNG RTL2831 SDR 4.1 Tạo kết nối với RTL2831 SDR………… …………………………… 4.2 Thiếp lập thơng số thu sóng FM ………… ………………………… 10 4.3 Tiến hành thu sóng FM………………………… 11 4.4 Xử lý hiển thị âm thu ………… …………………… 12 CHƯƠNG V: VIẾT MỘT CHƯƠNG TRÌNH C++ ỨNG DỤNG TRONG NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ VIỄN THÔNG 14 A KẾT LUẬN 16 TÀI LIỆU THAM KHẢO 17 MỞ ĐẦU Kỷ nguyên số mang đến bước tiến vượt bậc lĩnh vực Viễn thông, mở nhiều hội thách thức cho công nghệ kỹ thuật Điện tử Trong số đó, việc thu sóng vơ tuyến trở thành phần quan trọng thiếu việc truyền tải thông tin từ không gian tạo ứng dụng tiên tiến viễn thông truyền thông Trong công nghiệp đại, Bộ thu vơ tuyến RTL2831 SDR nhanh chóng thu hút quan tâm nhà nghiên cứu kỹ sư lĩnh vực Công nghệ kỹ thuật Điện tử Viễn thơng Với giá thành thấp, kích thước nhỏ, khả nhận xử lý tín hiệu từ nhiều dải tần số khác nhau, RTL2831 SDR trở thành cơng cụ hữu ích việc nghiên cứu, phát triển triển khai ứng dụng không dây đa dạng Trước tầm quan trọng tiềm Bộ thu vô tuyến RTL2831 SDR, tiểu luận tập trung vào việc tìm hiểu, nghiên cứu phát triển chương trình ứng dụng sử dụng RTL2831 SDR lĩnh vực Công nghệ kỹ thuật Điện tử Viễn thông Chúng ta khám phá kiến trúc nguyên lý hoạt động RTL2831 SDR, chuẩn bị môi trường phát triển, xây dựng chương trình ứng dụng thu sóng FM sử dụng RTL2831 SDR B CHƯƠNG I: SOFTWARE DEFINEF RADIO ( SDR) LÀ GÌ ? Giới thiệu Software Defined Radio (SDR) ? 1.1 Lịch sử hình thành Từ lần truyền không dây vào khoảng năm 1890 , kỹ thuật truyền vô tuyến liên tục phát triển, cung cấp cho người dùng khả trì kết nối với tốc độ truyền ngày tăng Kỷ nguyên vô tuyến xuất lần vào năm 1930, vào thời điểm mà độ rộng băng tần hạn chế sử dụng cho liên lạc thoại analog Sau đó, đến kỷ nguyên vàng truyền phát sóng vào năm 50 với chương trình phát sóng truyền hình tương tự tiêu tốn nhiều băng thơng mang lại trải nghiệm phong phú cho khách hàng Khi máy tính trở nên nhỏ mạnh hơn, đến năm 60, chúng bắt đầu trở nên hữu ích phương tiện liên lạc khoảng cách xa, sử dụng kết nối có dây qua ARPANET (sau trở thành Internet) vệ tinh không dây ALOHANET Điện thoại di động xuất vào khoảng thời gian , cho phép người dùng thiết lập liên lạc giọng nói khơng dây từ nơi công cộng phương tiện nào, điện thoại di động ban đầu khó vận hành di chuyển khối lượng trọng lượng chúng Nhiều điện thoại đại gần máy tính xách tay, cung cấp khả truy cập vào mạng di động Internet, đồng thời đạt kết nối không dây với tốc độ mà hệ trước tưởng tượng 1.2 Software Defined Radio gì? Software Defined Radio gọi ngắn gọn software radio trở thành mục tiêu phát triển ngành cơng nghiệp sử dụng sóng vô tuyến năm gần Để đáp ứng với phát triển nhanh chóng theo cấp số nhân cách thức phương tiện vấn đề giao tiếp – truyền thông liệu Software Defined Radio (SDR) mang đến linh hoạt, tiết kiệm chi phí sức mạnh để thúc đẩy truyền thơng lâu dài với lợi ích kể nhà cung cấp dịch vụ nhà phát triển sản phẩm nhận đưa đến người dùng Nguồn gốc phát triển SDR ngày kết thời gian dài cải tiến công nghệ lạc hậu ban đầu đến việc ứng dụng sức mạnh chip xử lý ngày Nói cách đơn giản Software Defined Radio đĩnh nghĩa : “ Radio số tất chức lớp vật lý điều khiển phần mềm ” Máy đàm loại thiết bị truyền nhận tín hiệu khơng dây phần tần số vô tuyến (RF) phổ điện từ để tạo điều kiện thuận lợi cho việc truyền thông tin Trong giới ngày nay, radio tồn vô số vật dụng điện thoại di động, máy tính, thiết bị mở cửa tơ, xe cộ tivi, Các thiết bị vô tuyến dựa phần cứng truyền thống hạn chế chức chéo sửa đổi thơng qua can thiệp vật lý Điều dẫn đến chi phí sản xuất cao tính linh hoạt việc hỗ trợ nhiều tiêu chuẩn dạng sóng Ngược lại, cơng nghệ Software Defined Radio (SDR) cung cấp giải pháp hiệu tương đối rẻ tiền cho vấn đề này, cho phép thiết bị không dây đa chế độ, đa băng tần đa chức tăng cường cách nâng cấp phần mềm 1.2 Kiến trúc Software Defined Radio (SDR) SDR định nghĩa tập hợp công nghệ phần cứng phần mềm số tất chức vận hành đài (còn gọi xử lý lớp vật lý) triển khai thông qua phần mềm phần sụn sửa đổi hoạt động cơng nghệ xử lý lập trình Các thiết bị bao gồm mảng cổng lập trình trường (FPGA), xử lý tín hiệu số (DSP), xử lý mục đích chung (GPP), Hệ thống Chip (SoC) lập trình xử lý lập trình dành riêng cho ứng dụng khác Việc sử dụng công nghệ cho phép thêm tính khả khơng dây vào hệ thống vơ tuyến có mà khơng u cầu phần cứng 1.3 Lợi ích Software Defined Radio (SDR) SDR có nhiều lợi ích to lớn khơng với nhà sản xuất hay cung cấp mà người dùng Đối với nhà sản xuất thiết bị vơ tuyến nhà tích hợp hệ thống, SDR cho phép: Một nhóm “sản phẩm” vơ tuyến triển khai cách sử dụng kiến trúc tảng chung, cho phép sản phẩm đưa thị trường nhanh Phần mềm sử dụng lại "sản phẩm" vô tuyến, làm giảm phát sinh đáng kể chi phí Lập trình lại từ xa cập nhật , cho phép "sửa lỗi" xảy đài hoạt động, giảm thời gian chi phí liên quan đến vận hành bảo trì Đối với nhà cung cấp dịch vụ vô tuyến, SDR cho phép: Các tính khả thêm vào sở hạ tầng có mà khơng u cầu chi phí vốn lớn mới, cho phép nhà cung cấp dịch vụ cập nhật mạng họ gần Việc sử dụng tảng vô tuyến chung cho nhiều thị trường, giảm đáng kể hỗ trợ khu vực chi phí vận hành Tải xuống phần mềm từ xa, thơng qua tăng dung lượng, kích hoạt nâng cấp khả thêm tính tạo doanh thu Đối với người dùng : Giảm chi phí việc cung cấp cho người dùng cuối khả truy cập mạng không dây phổ biến giao tiếp Cho phép họ giao tiếp với họ cần, họ cần theo cách phù hợp 1.4 Ứng dụng SDR Công nghệ SDR kiến trúc phần cứng kết hợp phần mềm để thực xử lý tín hiệu vơ tuyến thu khơng gian; kết hợp cho phép người dùng tùy biến phần cứng thu/phát sóng vơ tuyến thành thiết bị đa dạng như: Thu/phát tín hiệu, nghiên cứu, phát triển giao thức truyền tải liệu (4G, 5G, Wifi, ) thiết bị phần cứng ban đầu, việc lại người dùng sử dụng khả lập trình để xử lý tín hiệu thu được; thực tế người dùng kéo/thả khối chức (function block) GNURadio để xử lý liệu đơn giản sử dụng phần mềm có sẵn để thực số nhu cầu định phần cứng (nghe FM, thu tín hiệu vệ tinh, nghe đàm thoại vô tuyến, ) Tăng khả di động, linh động tác chiến quân sự, tính hay việc ứng dụng thực tế SDR, cịn biết đến với tên gọi Joint Tactical Radio System (JTRS - tạm dịch: Hệ thống sóng vơ tuyến tác chiến hiệp đồng) Trên chiến trường, việc thống tần số thu/phát việc quan trọng phải bảo đảm tính bí mật, tránh tình trạng nghe đối phương xảy ra; thơng qua việu tùy biến, cấu hình thơng số phần mềm vào thiết bị SDR giúp cho việc truyền tải thông tin qua sóng vơ tuyến nhanh chóng, bí mật mà không cần phải thay đổi thiết kế phần cứng ban đầu, tăng khả hiệp đồng tác chiến chiến trường tình có nhiều liên minh qn tham gia Để bảo đảm tính bí mật liệu truyền, kỹ thuật nhảy tần tốc độ cao trải phổ hỗ trợ thông qua sử dụng chip xử lý ADC tốc độc cao FPGA Dịch vụ viễn thông thương mại, việc ứng dụng công nghệ phần cứng SDR vào viễn thông thương mại góp phần giảm giá thành nâng cấp phần cứng trạm BTS vốn có giá thành khơng nhỏ; việc phát triển giao thức truyền dẫn sử dụng phần mềm nạp lại vào phần cứng ban đầu giúp nâng cấp tính trạm BTS (ví dụ: cập nhật phần mềm vào SDR cho phép chuyển đổi từ mạng UMTS sang HSPA chí chuyển thành mạng LTE/4G) CHƯƠNG II: GIỚI THIỆU VỀ BỘ THU VÔ TUYẾN RTL2831 SDR 2.Giới thiệu Bộ thu vô tuyến RTL2831 SDR: Bộ thu vô tuyến RTL2831 SDR (Software Defined Radio) thiết bị thu sóng vơ tuyến phát triển dựa chip RTL2831 Đây thiết bị SDR phổ biến có giá thành thấp, thu hút quan tâm cộng đồng nghiên cứu u thích cơng nghệ truyền thơng không dây 2.1 Đặc điểm ứng dụng RTL2831 SDR: RTL2831 SDR có số đặc điểm bật: Giá thành thấp: RTL2831 SDR sản xuất hàng loạt, giúp giảm đáng kể chi phí so với thiết bị thu sóng truyền thống Khả nhận xử lý tín hiệu rộng: RTL2831 SDR có khả nhận xử lý tín hiệu từ dải tần số rộng, bao gồm sóng AM, FM, DAB, ADS-B, nhiều dải tần số khác Linh hoạt dễ dàng cấu hình: Thiết bị cấu hình điều chỉnh phần cứng phần mềm để phù hợp với yêu cầu ứng dụng cụ thể Hỗ trợ từ cộng đồng: RTL2831 SDR sử dụng rộng rãi cộng đồng nghiên cứu phát triển phần mềm mã nguồn mở, điều giúp mở rộng khả tính tương thích thiết bị Các ứng dụng RTL2831 SDR bao gồm: Thu sóng vơ tuyến quan sát tần số: RTL2831 SDR cho phép thu sóng từ dải tần số khác tiến hành phân tích tín hiệu để nghiên cứu giám sát môi trường không dây Phát triển ứng dụng truyền thông không dây: Với khả lập trình phần mềm, RTL2831 SDR tảng phát triển linh hoạt để xây dựng kiểm tra ứng dụng truyền thông không dây Giáo dục nghiên cứu: RTL2831 SDR sử dụng khóa học hoạt động nghiên cứu để giúp sinh viên nhà nghiên cứu hiểu nắm vững khái niệm kỹ thuật lĩnh vực truyền thông vô tuyến 2.2 Kiến trúc nguyên lý hoạt động RTL2831 SDR : Kiến trúc RTL2831 SDR dựa chip thu sóng RTL2831 Chip kết hợp với thành phần phần cứng khác tăng tín hiệu, chuyển đổi tần số lọc để nhận xử lý tín hiệu thu sóng vơ tuyến Ngun lý hoạt động RTL2831 SDR dựa cơng nghệ SDR, tín hiệu sóng radio chuyển đổi thành tín hiệu số cách sử dụng chuyển đổi tương tự-số (ADC) Sau đó, tín hiệu số xử lý phần mềm máy tính, cho phép phân tích tái tạo tín hiệu thu RTL2831 SDR điều chỉnh cấu hình phần mềm để đáp ứng yêu cầu ứng dụng cụ thể Việc lập trình phần mềm cho RTL2831 SDR cho phép người dùng tuỳ chỉnh phát triển ứng dụng truyền thông không dây theo nhu cầu Tổng quan đặc điểm, ứng dụng, kiến trúc nguyên lý hoạt động RTL2831 SDR tạo tảng cho việc nghiên cứu phát triển chương trình ứng dụng sử dụng thiết bị lĩnh vực Công nghệ kỹ thuật Điện tử Viễn thơng CHƯƠNG III:CHUẨN BỊ MƠI TRƯỜNG PHÁT TRIỂN CHO VIỆC SỬ DỤNG RTL2831 SDR 3.1 Cài đặt phần mềm hỗ trợ RTL2831 SDR: Để sử dụng RTL2831 SDR, cần cài đặt phần mềm hỗ trợ sau: RTL-SDR Driver: Đây driver cho RTL2831 SDR, cung cấp khả giao tiếp với thiết bị từ máy tính Có thể tải driver từ nguồn trực tuyến từ trang web thức RTL-SDR GNU Radio: GNU Radio framework phần mềm mã nguồn mở cho việc thiết kế triển khai hệ thống điện tử vô tuyến Cần cài đặt GNU Radio để xây dựng chương trình ứng dụng sử dụng RTL2831 SDR SDR# (SDRSharp): SDR# phần mềm ứng dụng sử dụng để điều khiển trực quan hóa tín hiệu thu sóng SDR Cài đặt SDR# giúp kiểm tra xác nhận hoạt động RTL2831 SDR 3.2 Cấu hình mơi trường phát triển: Sau cài đặt phần mềm hỗ trợ, cần cấu hình mơi trường phát triển để sử dụng RTL2831 SDR Dưới bước cấu hình bản: Kết nối RTL2831 SDR với máy tính thơng qua cổng USB Kiểm tra xác định thiết bị RTL2831 SDR nhận diện hệ điều hành Điều thực cách sử dụng tiện ích hệ thống "Device Manager" Windows lệnh "lsusb" Linux Thiết lập quyền truy cập cho thiết bị RTL2831 SDR Trên hệ điều hành Linux, cần phải thêm quyền truy cập cho người dùng thông qua việc thêm vào nhóm "plugdev" sử dụng quy tắc udev Kiểm tra lại cài đặt phần mềm hỗ trợ để đảm bảo hoạt động nhận diện RTL2831 SDR Sau chuẩn bị môi trường phát triển, sẵn sàng để tiếp tục phát triển chương trình ứng dụng sử dụng RTL2831 SDR lĩnh vực Công nghệ kỹ thuật Điện tử Viễn thơng CHƯƠNG IV: CHƯƠNG TRÌNH C++ ỨNG DỤNG THU SÓNG FM BẰNG RTL2831 SDR 4.1 Tạo kết nối với RTL2831 SDR Để tạo kết nối với RTL2831 SDR chương trình C++, bạn cần sử dụng thư viện RTL-SDR Dưới ví dụ cách tạo kết nối với RTL2831 SDR: #include #include int main() { int device_index = 0; int ret; // Mở thiết bị RTL2831 SDR rtlsdr_dev_t *dev = nullptr; ret = rtlsdr_open(&dev, device_index); if (ret < 0) { std::cerr