張少侃,梁中英,高心煒
(廣州海格通信集團股份有限公司,廣州510663)
?
一種利用MATLAB軟件和安捷倫E4438C儀器產(chǎn)生自定義信號的方法
張少侃,梁中英,高心煒
(廣州海格通信集團股份有限公司,廣州510663)
摘要:為了產(chǎn)生模擬接收機在復(fù)雜無線電波環(huán)境下的測試接收物理波形信號,給出一種使用MATLAB軟件和安捷倫E4438C矢量信號源產(chǎn)生自定義物理波形信號的方法。以QPSK調(diào)制信號為例,給出MATLAB軟件產(chǎn)生數(shù)字波形文件的詳細代碼,并且給出數(shù)字波形文件下載到E4438C儀器和使用E4438C產(chǎn)生物理波形文件的具體詳細步驟。最后,通過示波器和EVM測試儀驗證所產(chǎn)生的QPSK物理波形的正確性。
關(guān)鍵詞:MATLAB;E4438C矢量信號源;自定義波形
在我們當前生存的無線電環(huán)境中,充滿著各種各樣復(fù)雜的無線電波,因此任何真實的電子系統(tǒng)都必須能夠在復(fù)雜的無線電信號環(huán)境中工作。在當前無線電波環(huán)境中,空中除了本電子系統(tǒng)發(fā)射的信號外,還同時存在著各種噪聲和其他電子系統(tǒng)發(fā)出的干擾信號,因此在接收機的開發(fā)和測試過程中,要充分考慮到真實復(fù)雜環(huán)境中噪聲和其他干擾信號的影響。為了測試接收機能否在真實無線電波環(huán)境中工作,也即接收機能否在復(fù)雜無線電波環(huán)境下工作,我們需要有一個真實的可以自定義產(chǎn)生任何形式信號的信號源[1]。
文獻[2]介紹了一種復(fù)雜波形產(chǎn)生器的設(shè)計與實現(xiàn)方法,但其只能產(chǎn)生復(fù)雜載波并不能產(chǎn)生自定義的信息內(nèi)容,而且使用可編程邏輯硬件開發(fā),不能達到復(fù)雜無線電波形的快速搭建要求。另外,雖然現(xiàn)有的很多儀器已經(jīng)可以很容易地合成出各種標準的通信信號,甚至是各種衰落形式的信號,但是實際的無線電波環(huán)境中往往情況更加復(fù)雜。例如雷達系統(tǒng)中對復(fù)雜波形信號的要求體現(xiàn)為寬的信號帶寬、波形捷變能力以及較低的相位噪聲和雜散電平等[3-4]。因此,研究復(fù)雜自定義信號物理波形的產(chǎn)生意義重大。本文利用MATLAB軟件產(chǎn)生任意形式的數(shù)字信號域波形文件,將數(shù)字信號波形文件下載到安捷倫公司的E4438C矢量信號源[5]中,讓它產(chǎn)生我們想要的任意形式物理信號。
MATLAB軟件是一款集信號仿真和信號分析的強大工具軟件,用它我們可以產(chǎn)生任意形式的數(shù)字域波形文件,如我們常見的QPSK、GMSK調(diào)制信號以及更加復(fù)雜的FDMA、CDMA等多址接入信號。另外其強大的信號處理工具箱,使得我們可以通過MATLAB產(chǎn)生形式的數(shù)字波形信號。
下面我們以常見的QPSK調(diào)制信號為例,給出使用MATLAB產(chǎn)生可以下載到安捷倫E4438C儀器中的波形文件。首先給出QPSK的映射星座圖為[pi/4, pi*7/ 4, pi*3/4, pi*5/4],成型濾波采用平方根升余弦滾降成型濾波器,內(nèi)插倍數(shù)為4,滾降因子為0.35,群遲延為6。相應(yīng)的MATLAB腳本代碼如下:
insValue=4; %內(nèi)插倍數(shù)
alpha=0.35; %滾降因子
groupDelay=6; %群遲延
filterCoeff =rcosine(1,insValue,'fir/sqrt',alpha,groupDelay);%生成平方根升余弦滾降成型FIR濾波器系數(shù)
filterDelay=(length(filterCoeff)-1)/2; %濾波器的延遲
qpskAngle=[pi/4, pi*7/4, pi*3/4, pi*5/4]; %QPSK星座映射圖
msg=randint(1,1000); %隨機產(chǎn)生0、1序列
code=reshape(msg, 2, length(msg)/2); %串行轉(zhuǎn)并行
id=bi2de(code','left-msb'); %二進制轉(zhuǎn)十進制
codeAngle=qpskAngle(id+1); %星座圖角度映射
sig=exp(1i*codeAngle); %QPSK調(diào)制映射
sig=upsample(sig, insValue); %信號插零
txSig=conv(sig,filterCoeff); %成型濾波
txSig=txSig(filterDelay+1:length(txSig)-filterDelay); %去除延遲
通過執(zhí)行以上MATLAB代碼,我們得到了QPSK調(diào)制信號的數(shù)字域波形txSig,信號txSig的信號圖和IQ兩路的時域波形圖分別如圖1和圖2所示。
圖1 QPSK信號圖
圖2 QPSK信號時域波形圖
有了以上信號,我們還需要對txSig做定點量化處理,這里我們選擇實部和虛部的量化位寬均是16比特。量化的MATLAB腳本語句為:
quantityBit=16; %量化位寬
sigPulseI=real(txSig); %取出實部
sigPulseQ=imag(txSig); %取出虛部
factorDIV=max(max(abs(sigPulseI)),max(abs(sig-PulseQ))); %取IQ兩路最大幅值作為歸一化因子
if(factorDIV ==0)%此種情況對應(yīng)IQ兩路全為零
sigPulseI_quantity=zeros(size(sigPulseI));
sigPulseQ_quantity=zeros(size(sigPulseQ));
else %此時進行量化處理
sigPulseI_quantity =floor(sigPulseI /factorDIV *(2^(quantityBit -1)-1));
sigPulseQ_quantity =floor(sigPulseQ/factorDIV *(2^ (quantityBit-1)-1));
end
sigPulse_quantity =sigPulseI_quantity +1j* sigPulseQ_ quantity; %合并為復(fù)數(shù)
得到16比特量化后的復(fù)信號sigPulse_quantity后,我們需要將其實部和虛部分別寫入到txt文件中,以便下載到安捷倫E4438C儀器中。這里對兩個txt文件的名字有要求,IQ兩路信號的txt文件名需為***_i. txt和***_q.txt的格式,例如本例中我們選擇的名字為QPSK_i.txt和QPSK_q.txt。以下給出將sigPulse_quantity信號寫入txt文件的MATLAB腳本代碼。
Isig=real(sigPulse_quantity); %取出實部
Qsig=imag(sigPulse_quantity); %取出虛部
fileNameI='QPSK_i.txt'; %實部波形文件名
fileNameQ='QPSK_q.txt'; %虛部波形文件名
fid = fopen(fileNameI, 'wt'); %打開實部文件
if(fid==-1)%打開文件失敗
error('實部信號波形文件打開失敗');
end
for i=1:length(Isig)
fprintf(fid, '%d ', Isig(i)); %寫入數(shù)據(jù)
end
fclose(fid);
fid = fopen(fileNameQ, 'wt'); %打開虛部文件
if(fid==-1)%打開文件失敗
error('虛部信號波形文件打開失敗');
end
for i=1:length(Qsig)
fprintf(fid, '%d ', Qsig(i)); %寫入數(shù)據(jù)
end
fclose(fid);
至此,我們便使用MATLAB軟件得到了QPSK調(diào)制信號實部和虛部波形文件QPSK_i.txt和QPSK_q.txt,后面我們需要將這兩個波形文件使用安捷倫E4438C產(chǎn)生物理波形。
在上面部分我們得到了QPSK調(diào)制信號實部和虛部的兩個波形文件,本部分主要解決將兩個波形文件下載到安捷倫E4438C儀器中。文獻[6]中雖然介紹了E4438C構(gòu)建功放生產(chǎn)測試平臺的方法,但其并未對MATLAB產(chǎn)生的數(shù)字波形文件下載到E4438C中做詳細介紹。本文介紹的下載方法使用的是安捷倫E4438C儀器的網(wǎng)口與計算機網(wǎng)口連接的方式,其連接框圖如圖3所示。
圖3 計算機和安捷倫E4438C連接示意圖
計算機想要通過網(wǎng)口和安捷倫E4438C連接,計算機需要首先安裝安捷倫E4438C的驅(qū)動程序,安裝完驅(qū)動程序后進入“Agilent IO control”界面如下:
圖4 Agilent IO control界面
通過界面指引操作把通過網(wǎng)口連接的E4438C儀器找到,如出現(xiàn)圖5所示界面,則表示驅(qū)動安裝成功。
圖5 計算機連接E4438C成功界面
計算機連接E4438C成功后,我們還不能直接把波形文件下載進去,這時我們需要借助插件工具Intuilink才能將MATLAB生成的兩個波形文件下載到E4438C儀器中。安裝完Intuilink插件工具后,此插件需要在微軟Office辦公軟件中的Excel中找到,打開一個Excel,點擊加載項,會有一個圖6所示的界面,表示Intuilink插件安裝成功。
圖6 Intuilink插件安裝成功界面
在計算機成功連接E4438C后,我們就可以使用圖6所示Intuilink插件界面從計算機往E4438C儀器里面下載MATLAB生成的兩個波形文件了,對應(yīng)的下載界面如圖7所示。
圖7 Intuilink插件下載MATLAB生成的波形文件界面
點擊圖7中紅圈所示的“Start Download”按鈕,等待一段時間,待下載完成后,我們便完成了數(shù)字波形文件到E4438C儀器的下載過程。
通過上一部分的操作,我們已經(jīng)將MATLAB生成的數(shù)字域波形文件下載到E4438C儀器中,本節(jié)則需要使用E4438C儀器來產(chǎn)生下載進來的數(shù)字域波形文件的物理信號。
在E4438C操作面板上,首先我們通過mode->Dual ARB->select waveform來選擇剛才下載到E4438C的數(shù)字域波形文件,如圖8所示。
圖8 E4438C選擇需要產(chǎn)生物理信號的數(shù)字域波形文件界面
在選擇完數(shù)字域波形文件后,我們通過E4438C面板上的mode ->ARB ->ARB setup ->ARB sample clock來設(shè)置發(fā)端波形的采樣時鐘,只有采樣時鐘和波形信號對應(yīng)上后才能產(chǎn)生出我們想要的任意形式和速率的物理信號。至此,我們便通過E4438C儀器產(chǎn)生了我們自定義的物理信號。
本節(jié)通過示波器和EVM測試儀來對上面部分通過E4438C產(chǎn)生的物理信號進行驗證。首先給出驗證使用的物理儀器連接框圖,如圖9所示。
圖9 物理儀器連接示意圖
儀器連接完成后,實際的物理信號頻譜圖、EVM測試圖以及同步誤差相關(guān)參數(shù)測量圖分別如圖10、圖11和圖12所示。
圖10 物理信號頻譜圖
圖11 物理信號EVM測試圖
圖12 同步誤差相關(guān)參數(shù)測量圖
從上述驗證結(jié)果可知,我們通過MATLAB軟件和安捷倫E4438C儀器產(chǎn)生了我們想要的自定義物理信號。
本文以QPSK調(diào)制信號為例,給出了MATLAB軟件產(chǎn)生QPSK數(shù)字調(diào)制信號波形文件的詳細代碼,給出了將數(shù)字波形文件下載到安捷倫E4438C矢量信號源以及使用信號源產(chǎn)生物理波形的具體詳細步驟,最后通過示波器以及EVM測試儀驗證了自定義QPSK調(diào)制信號物理波形的正確性。
參考文獻:
[1]劉亞平.基于SOPC的任意波形發(fā)生器的設(shè)計[D].河北:河北科技大學,2012.
[2]余鐵軍,由法寶,任亞欣.一種復(fù)雜波形信號產(chǎn)生器的設(shè)計與實現(xiàn)[J].電子科技,2013,26(5): 78-80.
[3]張春榮.雷達捷變頻頻率綜合器技術(shù)及跳頻時間測量[J].火控雷達技術(shù),2004,12(4):42-45.
[4]糜光璞.雷達復(fù)雜信號產(chǎn)生技術(shù)[J].火控雷達技術(shù),2006,35(3):22-26.
[5]安捷倫ESG矢量信號發(fā)生器用戶指南,2002.
[6]范德睿,朱蕾,陳江.用E4438C和E4440A構(gòu)建功放生產(chǎn)測試平臺[J].電子測量與儀器學報,2009增刊:285-288.
梁中英(1985-),女,黑龍江鶴崗人,碩士研究生,工程師,從事領(lǐng)域為衛(wèi)星通信數(shù)字信號處理
高心煒(1986-),男,福建人,本科,助理工程師,從事領(lǐng)域為衛(wèi)星通信數(shù)字信號處理
A Method Using MATLAB Software and Agilent E4438C Vector Signal Source to Generate the Custom Waveforms
ZHANG Shao-kan,LIANG Zhong-ying,GAO Xin-wei
(Guangzhou HAIGE Communications Group Incorporated Company, Guangzhou 510063)
Abstract:In order to generate the simulated receiving physical waveform signals in the complicated radio environment, gives a method using MATLAB software and Agilent E4438C vector signal source to generate the custom physical waveform signals. Takes QPSK modulation signal as an example, gives a detailed code of MATLAB software to generate the digital waveform file, and presents the specific and detailed steps of the digital waveform file download to the E4438C instrument and using E4438C to generate the physical waveform signal. Finally, the correctness of the QPSK modulation physical waveform signal generated by the method presented is verified by the observation using oscilloscope and EVM test instrument.
Keywords:MATLAB; E4438C Vector Signal Source; Custom Waveform
收稿日期:2016-01-05修稿日期:2016-03-03
作者簡介:張少侃(1988-),男,陜西西安人,碩士研究生,助理工程師,從事領(lǐng)域為衛(wèi)星通信數(shù)字信號處理
文章編號:1007-1423(2016)10-0076-05
DOI:10.3969/j.issn.1007-1423.2016.10.019
基金項目:發(fā)改辦高技[2012]2083號