薛文玲,路 遙,尹永超,謝業(yè)欣
(1.河北大學 電子信息工程學院,河北 保定 071002;2.河北大學 工商學院信息科學與工程學部,河北 保定 071002)
通信原理課程是通信工程以及電子信息工程專業(yè)的一門非常重要的專業(yè)課,學好這門課程對學生理解信號的傳輸和交換具有重要的意義[1]。這門課程主要以各種通信系統(tǒng)的基本理論為研究對象,具有較強的抽象性。另外,對信號的分析通常需要借助于頻域來理解,由于學生對頻域的概念沒有直觀的認識,給理論學習帶來了一定的困難。利用MATLAB語言對模擬通信系統(tǒng)進行可視化仿真設計,能很方便地解決這個問題。
MATLAB是一套高性能的數(shù)值計算和可視化軟件系統(tǒng),它集數(shù)值分析、矩陣運算、信號處理和圖形顯示于一體,構成了一個方便的、界面友好的用戶環(huán)境??梢允钩橄蟮母拍畹靡灾庇^地表示,繁瑣的計算大大簡化,成為信號分析等領域的實用工具之一。本設計主要利用MATLAB方便的繪圖功能以及友好的人機界面來進行設計[2]。
模擬通信系統(tǒng)是利用模擬信號來傳遞信息的通信系統(tǒng)。由于低頻的模擬信號一般不適合在信道中遠距離傳輸,通常發(fā)送端需要對低頻信號進行調(diào)制,接收端則需要解調(diào)才能恢復原信號。系統(tǒng)中主要包含兩種變換:第一種是在發(fā)送端把連續(xù)消息變成原始電信號,并在接收端進行反變換,這種變換由模擬信息源和受信者來完成(原始電信號通常稱為基帶信號);第二種變換是把基帶信號變換成適合于在信道中傳輸?shù)男盘枺◣ㄐ盘枺?,并在接收端進行反變換,這種變換通常由調(diào)制器和解調(diào)器來完成。
整個通信系統(tǒng)中需要對各種信號進行分析,主要是對時域和頻域的分析。時域的波形可以通過示波器進行觀察,學生對時域波形的理解比較透徹,但其包含的頻譜成分卻不容易看出來,這就需要對信號進行頻譜分析,如何把頻譜變換的公式通過MATLAB用圖形表現(xiàn)出來,給學生一個直觀形象的認識,是設計的重點和難點。
本系統(tǒng)通過對調(diào)制方式的選擇,可利用幅度調(diào)制(AM)、單邊帶調(diào)制(SSB)和雙邊帶調(diào)制(DSB)三種方式對基帶信號進行調(diào)制,可同時直觀地觀察到信號經(jīng)過不同的調(diào)制及解調(diào)方式產(chǎn)生的時域波形與頻域波形。同時,可以根據(jù)實際需要調(diào)整各信號相應的參數(shù),實現(xiàn)不同模擬線性通信系統(tǒng)的仿真研究。其框圖如圖1所示。
圖1 系統(tǒng)功能框圖
載波調(diào)制,就是用調(diào)制信號去控制載波參數(shù)的過程,使載波的某一個或幾個參數(shù)按照調(diào)制信號的規(guī)律而變化。調(diào)制器的本質(zhì)就是乘法器,它將基帶信號和載波相乘,實現(xiàn)了幅度調(diào)制。為了方便起見,這里僅以幅度調(diào)制為例對系統(tǒng)功能進行簡單介紹(見圖2)。
圖2 調(diào)幅器原理框圖
調(diào)制模塊的設計,關鍵在于時域坐標系與頻域坐標系的轉化。下面為調(diào)制模塊的部分代碼:
A=str2num(get(handles.edit_A,'string'));%獲取調(diào)制信號幅值
w=str2num(get(handles.edit_w,'string'));%調(diào)制信號角頻率
p=str2num(get(handles.edit_p,'string'));%調(diào)制信號初始相位
A0=str2num(get(handles.edit_A0,'string'));%獲取直流偏量
t=-1:0.001:1;n=2001;Fn=1000;
m=A*sin(2*pi*w*t+p)+A0;%生成調(diào)制信號,即圖 2 中 m(t)
plot(t,m);%調(diào)制信號時域圖形
Fs1=fft(m);%傅里葉變換
Fs2=fftshift(Fs1);%糾正使中心對稱
f=(0:n-1)*Fn/n-Fn/2;
plot(f,abs(Fs2),'b');%調(diào)制信號頻域圖形
c_w=str2num(get(handles.edit_c_w,'string'));%獲取載波角頻率
c=cos(2*pi*c_w*t);%生成載波,即圖 2 中 c(t)Sm=c*m;%生成調(diào)幅信號,即圖2中Sm(t)plot(t,Sm);%已調(diào)信號時域圖形[3]
圖3 調(diào)制界面
由圖3可以看出,左半部分為時域波形,最上面的為頻率比較低的基帶信號,中間為高頻的載波信號,最下面為調(diào)制之后的信號。經(jīng)過調(diào)制之后,載波的頻率沒有發(fā)生任何變化,只是幅度隨著基帶信號而變化。右半邊的圖形為頻域波形,從頻譜圖可以看出,幅度已調(diào)信號的頻譜完全是基帶信號頻譜在頻域內(nèi)的簡單搬移,頻譜的形狀不發(fā)生任何變化,這和理論上線性調(diào)制的定義完全相同。
在信道加性高斯白噪聲的影響下,各種模擬線性調(diào)制系統(tǒng)的抗噪聲性能不同。為了方便,我們一般認為信道加性高斯白噪聲為平穩(wěn)窄帶高斯噪聲。
由于已調(diào)信號在信道中受噪聲影響,解調(diào)前應通過一個帶通濾波器,帶通濾波器的作用是濾除已調(diào)信號以外的噪聲。帶通濾波器的帶寬等于已調(diào)信號的頻帶寬度,既保證已調(diào)信號無失真地通過解調(diào)器,同時又最大限度的抑制噪聲。在本設計中采用人為的產(chǎn)生高斯白噪聲加入到系統(tǒng)中進行模擬仿真。
下面為噪聲處理模塊部分代碼[4,5]:
n=2001;Fn=1000;Gn=awgn(Sm,10,'measured');%生成高斯白噪聲
Sm_Gn=Sm+Gn;%添加高斯白噪聲
Fs1=fft(Sm);%傅里葉變換
Fs2=fftshift(Fs1);%糾正使中心對稱
f=(0:n-1)*Fn/n-Fn/2;axes(handles.axes_Sm_Gn_fft);
plot(f,abs(Fs2),'b');%含噪聲的信號頻域圖形
如圖4所示,經(jīng)過以上代碼可以產(chǎn)生高斯隨機噪聲,噪聲和帶通信號在信道進行傳輸,到達接收端后需要對信號進行解調(diào),解調(diào)之前需要先通過帶通濾波器,濾除一部分噪聲。
圖4 含噪聲信號波形
圖5 帶通濾波器及之后的信號波形
如圖5所示,經(jīng)過帶通濾波器之后,帶通濾波器之外的噪聲全部濾掉了,可以很好地保證接收端的信噪比來滿足系統(tǒng)要求。
信號解調(diào)是信號調(diào)制的逆過程,即把在載頻位置的已調(diào)信號的頻譜搬回到原始基帶位置。解調(diào)的方法有兩種:相干解調(diào)和非相干解調(diào)(包絡檢波)。下面以相干解調(diào)為例進行說明,原理如圖6所示。
圖6 解調(diào)器原理框圖
圖7 解調(diào)界面
相干解調(diào)時,為了無失真地恢復原基帶信號,接收端必須提供一個與接收的已調(diào)載波嚴格同步(同頻同相)的本地載波(稱為相干載波),它與接收的已調(diào)信號相乘后,經(jīng)過低通濾波器,取出低頻分量,即可得到原始的基帶信號。
從圖7可以看出,經(jīng)過接收端解調(diào)之后,可以把基帶信號完全恢復出來,從而實現(xiàn)信號的傳輸。
本設計具有人機界面美觀,各種波形對比形象、直觀的特點,在通信原理課程的教學中,通過改變信號各個參數(shù),以及對比時域、頻域波形,有利于學生更加深刻地認識和理解模擬線性通信系統(tǒng),對教學產(chǎn)生有益的輔助作用。
[1]樊昌信,曹麗娜.通信原理[M].北京:國防工業(yè)出版社,2008.
[2]樓順天,陳生潭,雷虎民.MATLAB7.X程序設計語言[M].西安:西安電子科技大學出版社,2000.
[3]約翰·G·普羅克斯.現(xiàn)代通信系統(tǒng)——使用MATLAB[M].西安:西安交通大學出版社,2001.
[4]戴 虹,戴悟僧.MATLAB在通信原理仿真中的應用[J].電子電氣工程系,2001.
[5]李建新.現(xiàn)代通信系統(tǒng)分析與仿真——MATLAB通信工具箱[M].西安:西安電子科技大學出版社,2000.