Báo cáo Sim_FWC01 Biểu diễn mật độ phổ công suất của các kỹ thuật điều chế trên Matlab I.. Mục đích Hiểu mật độ phổ công suất PSD của tín hiệu ngẫu nhiên băng gốc và PSD của tín hiệu n
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
BÀI TẬP THỰC HÀNH
CƠ SỞ KỸ THUẬT THÔNG TIN
VÔ TUYẾN
Giảng viên giảng dạy: Nguyễn Viết Đảm Tên sinh viên: Nguyễn Phúc Lâm
Mã sinh viên: B19DCVT213 STT: 32
Nhóm lớp học: 05
HÀ NỘI, THÁNG 4/2022
Trang 2Báo cáo Sim_FWC01
Biểu diễn mật độ phổ công suất của các kỹ thuật điều chế trên Matlab
I Mục đích
Hiểu mật độ phổ công suất PSD của tín hiệu ngẫu nhiên băng gốc và PSD của tín hiệu ngẫu nhiên thông dải và quá trình dịch phổ tần tín hiệu Phân tích so sánh PSD của các kỹ thuật điều chế
II Nội dung
- Phân tích biểu thức tín hiệu băng tần cơ sở và biểu thức tín hiệu thông dải trong miền thời gian (dạng sóng tín hiệu và hàm tự tương quan), tính toán và mô tả trên Matlab
- Phân tích biểu thức PSD của tín hiệu băng tần cơ sở, tính toán và biểu diễn trên Matlab
- Phân tích biểu thức PSD của tín hiệu thông dải, tính toán và biểu diễn trên Matlab - Phân tích các biểu thức tín hiệu điều chế trong miền thời gian và tần số
- Phân tích các biểu thức PSD của các kỹ thuật điều chế, tính toán và biểu diễn trên Matlab
III Giải thích code MATLAB và mô phỏng
1 Mô phỏng PSD của tín hiệu băng tần cơ sở và tín hiệu thông dải
a Giải thích code MATLAB
Câu lệnh Giải thích Ghi chú
giải phóng bộ nhớ hệ thống
không xử lí được ẩn
f = -200:5:200; Tạo một vector biến f giá trị bắt đầu từ
-200 đến 200 cách nhau 5
Khảo sát mật độ phổ công suất theo tần số
Trang 3Tb = 0.02;
Rb = 1/Tb;
A = 10;
AA = A^2*Tb;
Tb: thời gian một bit Rb: tốc độ bit
A (AA): biên độ
PSD_BaseBand = AA*(sinc((f*Tb)).^2); Mật độ phổ công suất của tín hiệu tần
PSD_PassBand=(AA/4)*((sinc((f+fc)*Tb)).^2
PSD_PassBand_1=(AA/4)*((sinc((ffc)*Tb)).^2);
PSD_PassBand_2=(AA/4)*((sinc((f+fc)*Tb)).^2
);
Hai thành phần cấu tạo nên mật độ phổ công suất của tín hiệu BDSK
đồ thị
2 x1 khoảng để vẽ đồ thị, và chọn cửa
sổ 1 là cửa sổ hoạt động Các đồ thị thành phần được đánh số từ trái qua phải, từ trên xuống dưới, sau đó đến hàng thứ hai
stem(f,PSD_BaseBand, 'b' , 'LineWidth' ,3); Tạo biểu đồ gốc và đặt kiểu đường
thành đường chấm đứt, màu mặt của điểm đánh dấu thành màu đỏ và màu cạnh của điểm dánh dấu thành màu xanh lá cây bằng cách sử dụng các đối
số cặp tên, giá trị
hệ trục đã tồn tại trong khi lệnh plot mới đang được thuc hiện, thay vào đó,
nó thêm đường cong mới vào hệ trục hiện tại.Tuy nhiên, nếu dữ liệu không phù hợp hệ trục tọa độ cũ, thì trục được chia lại
Trang 4
plot(f,PSD_BaseBand,'b', 'LineWidth',3); Vẽ 2D với trục x và y tuyến tính
Lệnh plot vẽ đồ thị của một mảng dữ liệu trong một hệ trục thích hợp và nối các điểm bằng đường thẳng
xlabel ('Tần số [H_z]','FontName','.VnTime',
'color','b','FontSize', 14); xlabel (str,name,value) ghi tên trục x
của các trục hiện tại bằng chuỗi Bổ xung các đặc điểm về font chữ, màu chữ, cỡ chữ
title ([ 'Mật độ phổ cống suất của tín hiệu băng
tần cơ sở với Rb =',num2str (Rb), 'b/s'],
'FontName', '.VnTime','color', 'b','FontSize',
12);
title (str, name, value, ) bố sung thêm các thuộc tính title: tên, đơn vị, font chữ, màu,cỡ chữ,
lưới chính cho các đồ thị hiện tại
Các đường lưới chính kéo dài từ mỗi dấu tick
b Công thức tính toán
- Mật độ công suất của tín hiệu băng tần cơ sở
- Mật độ công suất của tín hiệu thông dải
c Mô phỏng MATLAB
Trang 5
d Nhận xét đồ thị
- Khảo sát cho thấy PSD phụ thuộc vào tốc độ bit và tốc độ sóng mang
- Mật độ phổ công suất càng nhỏ thì tốc độ bit càng lớn
2 Mô tả và so sánh PDS của các tín hiệu BPSK, QPSK, MSK, Q-MSK
a Giải thích code MATLAB
vùng làm
liệu mà không xử lí được ẩn
bắt đầu từ 500 đến 500 cách -nhau 50
Khảo sát
phổ công suất theo tần
số
Tb = 0.002;
Rb = 1/Tb;
A = 10;
AA = A^2*Tb; fc = 120; Eb =
P*Tb;
Tb: thời gian một bit Rb: tốc độ bit A (AA): biên
độ fc : tần
số sóng
Trang 6
mang Eb:
Năng lượng 1 bit
PSD_BaseBand = AA*(sinc((f*Tb)).^2)
Mật độ phổ công suất của tín hiệu băng tần cơ sở
Khai triển công thức thành phần
(Eb*log2(2))*((sinc((ffc)*Tb*log2(2))).^2); PSD_QPSK
= (Eb*log2(4))*((sinc((ffc)*Tb*log2(4))).^2);
(Eb*log2(8))*((sinc((ffc)*Tb*log2(8))).^2);
Khai triển công thức thành phần
PSD_BPSK_2 =
(Eb*log2(2)/2)*(((sinc((ffc)*Tb*log2(2))).^2) +
((sinc((f+fc)*Tb*log2(2))).^2));
PSD_QPSK_2 =
(Eb*log2(4)/2)*(((sinc((ffc)*Tb*log2(4))).^2) +
((sinc((f+fc)*Tb*log2(4))).^2));
(Eb*log2(8)/2)*(((sinc((ffc)*Tb*log2(8))).^2)
+
((sinc((f+fc)*Tb*log2(8))).^2));
Công thức tính PSD của BPSK, QPSK, 8-PSK
SF = ((16*Eb)/(pi^2));
Num = (cos(2*pi*(f-fc)*Tb));
Dum = (16*(Tb^2)*(f-fc).^2)-1;
PSD_MSK = SF*((Num./Dum).^2);
Khai triển công thức thành phần
Num_2 = (cos(2*pi*(f+fc)*Tb));
Dum_2 = (16*(Tb^2)*(f+fc).^2)-1; Khai triển công thức thành
phần
PSD_MSK_2 =
(SF/2)*(((Num./Dum).^2) +
((Num_2./Dum_2).^2));
Mật độ phổ công suất của MSK
Trang 7Figure(1)
Hàm figure để tạo một figure mới để
vẽ đồ thị
2 x1 khoảng để vẽ đồ thị, và chọn cửa
sổ 1 là cửa sổ hoạt động Các đồ thị thành phần được đánh số từ trái qua phải, từ trên xuống dưới, sau đó đến hàng thứ hai
stem (f, PSD_BaseBand,
thành đường chấm đứt, màu mặt của điểm đánh dấu thành màu đỏ và màu cạnh của điểm đánh dấu thành màu xanh lá cây
bằng cách sử dụng các đối số cặp tên, giá trị
bỏ đi hệ trục đã tồn tại trong khi lệnh plot mới đang được thực hiện, thay vào đó, nó thêm đường cong mới vào hệ trục hiện tại.Tuy nhiên, nếu dữ liệu không phù hợp
hệ trục tọa độ cũ, thì trục được chia lại,
plot (f, PSD BaseBand,
'b','LineWidth',3); Vẽ 2D với trục x và y tuyến tính
Lệnh plot vẽ đồ thị của một mảng
dữ liệu trong một hệ trục thích hợp
và nối các điểm bằng đường thẳng
xlabel ('Tần số
[H z]', 'FontName','.VnTime',
'color', 'b','FontSize,14);
xlabel (str,name,value) ghi tên trục x của các trục hiện tại bằng chuỗi Bổ xung các đặc điểm về font chữ, màu chữ, cỡ chữ
ylabel ('PSD B aseBand'
","color, FontName', T.VnTime"
'b','FontSize', 24);
ylabel (str,name, value) ghi tên trục y của các trục hiện tại bằng chuỗi Bổ xung các đặc điểm về font chữ, màu chữ, cỡ chữ
title (['Mật độ phổ công suất
của tín hiệu băng tần cơ sở với
Rb =',
title (str, name, value,.) bổ sung thêm các thuộc tính title: tên, đơn num2str (Rb), 'b/s'1,
'FontName','.VnTime', vị, font chữ, màu,cỡ chữ,
Trang 8grid on; Trên màn hình hiển thị các đường
lưới chính cho các đồ thị hiện tại
Các đường lưới chính kéo dài từ mỗi dấu tick
set (L, 'fontname','.Vntime',
chú thích trong đồ thị: cỡ chữ, font chữ,
b Công thức tính toán
- Mật độ phổ công suất QPSK
- Mật đô phổ công suất của BPSK
- Mật độ phổ công suất của MSK
c Mô phỏng MATLAB
Trang 10
d Nhận xét đồ thị
- Các tín hiệu có PSD chênh lệch nhau tại cùng một điều kiện xét
- PSD của MSK nhỏ hơn PSD của QPSK và nhỏ hơn PSD của BPSK
Trang 11* Sim_FWC_02_02_BER_BPSK_AWGN
1 SNRindB 0:1:9; Tạo và gán khoảng giá trị
cho tỷ lệ tín hiệu trên nhiễu SNRindB
2 SNR = 10.^(SNRindB/10); Tạo và gán giá trị cho
SNR(tỷ số tns hiệu trên tạp âm) theo công thức
10.^(SNRindB/10);
3 Eb = 1; Tạo và gán giá trị cho
Eb( năng lượng bit)
4 sgma = Eb./sqrt(2*SNR); Tạo và gán giá trị cho
sgma( độ lệch chuẩn của nhiễu) theo công thức Eb./sqrt(2*SNR);
5 NumBits = 10^7; Tạo và gán giá trị cho
NumBít(số lượng bit)
6 theo_Orthogonal_err_prb = 0.5
*erfc(sqrt(SNR/2));
Tạo và gán giá trị cho theo_Orthogonal_err_prb 0.5 theo công
thức*erfc(sqrt(SNR/2));
7 theo_Antipodal_err_prb = 0.5 *erfc(sqrt(SNR)); Tạo và gán giá trị cho
theo_Antipodal_err_prb theo công thức 0.5
*erfc(sqrt(SNR));
8 h = waitbar(0,'Please wait '); Hiển thị thanh chờ ,hình
thanh chờ hiển thị cho đến khi mã điều khiển nó đóng
nó hoặc việc sử dụng nhấp vào nút CloseWindow Xử
lý (hình) của nó được trả
về trong h
bấm giờ để đo hiệu suất Hàm ghi lại thời gian nội
bộ khi thực hiện lệnh tic Hiển thị thời gian đã trôi qua với chức năng toc
=
Trang 1210 SimTime = max(tElapsed) Gán giá trị SimTime là
giá trị lớn nhất của tElapsed
11 set(G,'LineWidth',[1.5]); Chỉ định nhiều giá
trị thuộc tính
12 xlabel('SNR
% Đặt nhãn cho trục X và đặt kiểu chữ, màu sắc, kích thước
13 ylabel('\bf X¸c suÊt lçi
% Đặt nhãn cho trục Y và đặt kiểu chữ, màu sắc, kích thước
14 title(['M« pháng BER hÖ thèng BPSK trong kªnh
bits ',
% Đặt tiêu đề, num2str
là chuyển đổi từ kiểu
số sang kiểu chữ
15 grid on %hiển thị các đường
lưới chính cho các trục hiện tại
-Kết quả mô phỏng:
Trang 13-Nhận xét :
* Trong mô phỏng hệ thống BPSK trong kênh AWGN thì tỉ lệ tín hiệu trên nhiễu càng tăng (tín hiệu thu càng tốt) thì xác xuất lỗi bit BER càng giảm đồ thị thể hiện cho việc tính toán và mô phỏng khác giống nhau
* Trong đồ thị so sánh xác suất lỗi bít hệ thống BPSK trực giao và đối cực trong kênh AWGN cho thấy thành phần trực giao có tỉ lệ lỗi bit cao hơn so với thành phần đối cực của phương pháp điều chế BPSK