基于MATLAB儀器控制工具箱的SAW標(biāo)簽閱讀器系統(tǒng)設(shè)計
引言
聲表面波(SAW)是一種能量集中在固體淺表面?zhèn)鞑サ膹椥圆?。由于聲表面波在介質(zhì)表面進行換能和傳播,所以信息的注入、提取、處理都可以方便地實現(xiàn)。目前聲表面波器件主要應(yīng)用在濾波器、延遲線、振蕩器、觸摸屏等方面,其中移動通信中的濾波器應(yīng)用最廣泛?;诼暠砻娌夹g(shù)的傳感器也被較廣泛的研究。隨著信息技術(shù)特別是射頻識別技術(shù)的發(fā)展,SAW標(biāo)簽成為聲表面波領(lǐng)域的另一個研究熱點。SAW標(biāo)簽的獨特性使其成為射頻識別領(lǐng)域的新生力軍。
SAW標(biāo)簽系統(tǒng)
如圖1所示,SAW標(biāo)簽系統(tǒng)包括閱讀器和射頻標(biāo)簽兩部分。SAW標(biāo)簽通常是一個單口器件,其包括標(biāo)簽天線、叉指換能器、反射柵以及壓電基體。標(biāo)簽天線與叉指換能器電氣連接,叉指換能器一方面把標(biāo)簽天線接收的射頻信號轉(zhuǎn)換為聲波信號,并延基體表面?zhèn)鞑コ鋈?;一方面把接收到的延基體表面?zhèn)鞑サ穆暠砻娌ㄐ盘栟D(zhuǎn)換為射頻信號傳輸?shù)綐?biāo)簽天線。反射柵是一組蝕刻在基體表面的金屬指條,其能夠反射沿軌跡傳播的聲表面波信號。在聲表面波軌跡上放置多個反射柵并安排不同的位置,則實現(xiàn)了SAW標(biāo)簽的編碼?,F(xiàn)在可實現(xiàn)的編碼方法有脈沖鍵控編碼、脈沖位置編碼、相位編碼以及脈沖位置和相位組合編碼等編碼方法。
圖1 SAW-RFID標(biāo)簽系統(tǒng)工作原理
SAW-RFID獨特的工作原理,使其與通用的基于IC技術(shù)的RF無源標(biāo)簽相比具有不同的特點:首先,在相同情況下,可讀取的距離較大;更能在存在液體或金屬物品等較惡劣環(huán)境下讀取;此外,SAW標(biāo)簽是純無源標(biāo)簽,多個目標(biāo)標(biāo)簽的辨識只能在閱讀器端解決。
SAW標(biāo)簽閱讀器系統(tǒng)設(shè)計
在閱讀器的發(fā)射機發(fā)射查詢信號并在其接收機接收SAW標(biāo)簽信號的過程中,不可避免地要受到各種噪聲的干擾而使信號發(fā)生一定程度的畸變,使得在閱讀器接收機端對回波信號的檢測發(fā)生困難。噪聲是限制檢測系統(tǒng)性能的決定性因素。SAW標(biāo)簽信號檢測就是從噪聲中提取回波信號的過程。
另外電波傳播條件的變化、SAW標(biāo)簽的移動以及回波信號通過閱讀器接收機等一系列因素,均會導(dǎo)致標(biāo)簽回波信號相位和幅度的變化。且由于信號持續(xù)時間總是比載波周期寬得多,因而回波信號時延上不大的變化也歸結(jié)為相位的變化。因此,回波信號的振幅和相位可都被看作隨機變量來處理。在確知信號的檢測中,振幅-相位檢測系統(tǒng)是最佳的檢測系統(tǒng),這說明信號存在與否的信息既包含在振幅中,也包含在相位中。由信號檢測理論,標(biāo)簽回波信號加噪聲的相位的概率密度為
其中,r為信噪比;為接受信號的相位??梢钥闯?,當(dāng)相位時,,是只與信噪比r有關(guān)的常量。隨著相位的增大,很快地衰減到零。說明在大信噪比的條件下,信號加噪聲的相位主要集中在信號的相位值附近。要想獲得好的檢測效果,就要充分利用回波信號的相位信息。而最佳處理相位,需采用雙通道系統(tǒng)。圖2給出了利用限幅器的回波信號檢測系統(tǒng)。
根據(jù)以上分析,設(shè)計的SAW標(biāo)簽閱讀器系統(tǒng)如圖3所示。主要分為射頻發(fā)射通道、射頻接收通道、數(shù)據(jù)采集/處理模塊以及天線等幾部分。在射頻發(fā)射通道,首先由頻率合成器產(chǎn)生固定的載頻信號,而后經(jīng)射頻開關(guān)調(diào)制,變?yōu)樯漕l脈沖信號,最后經(jīng)過帶通濾波和功率放大后經(jīng)天線發(fā)射出去。發(fā)射通道中射頻開關(guān)的隔離度是一個關(guān)鍵因素,如果隔離度不夠高,會影響發(fā)射的射頻脈沖質(zhì)量,從而影響接收信號;在接收回波時,還會引起串?dāng)_。本系統(tǒng)中通過采用多個射頻開關(guān)組合方式,使信號隔離度達到70dB。
圖2 回波信號的相位檢測系統(tǒng)框圖
圖3 閱讀器硬件原理框圖
標(biāo)簽的回波信號通常非常微弱,為了提高信噪比,通常采用相位估計方法來檢測回波信號。在射頻接收通道,回波信號經(jīng)過低噪聲放大器、帶通濾波器、對數(shù)放大器、I/Q解調(diào)等部分,得到正交的I和Q兩項輸出信號。為了正確辨識標(biāo)簽編碼,對輸出的I/Q兩路信號同時進行模擬數(shù)字轉(zhuǎn)換。本系統(tǒng)中工作頻率為433MHz,射頻脈沖寬度為100ns~200ns,為了正確識別標(biāo)簽編碼,需要不低于20MHz的采樣頻率來進行A/D轉(zhuǎn)換。
MATLAB采集系統(tǒng)實現(xiàn)及試驗
由上文分析可知,要想正確識別SAW標(biāo)簽的編碼,在進行A/D變換時,需要采樣頻率20MHz以上,而如果要進行多標(biāo)簽的防沖突識別,需要的采樣頻率會更高。目前,國內(nèi)超高速A/D采集系統(tǒng)應(yīng)用相對較少、價格昂貴,而高速A/D采集電路設(shè)計復(fù)雜、開發(fā)調(diào)試硬件周期長?,F(xiàn)在使用的數(shù)字示波器通常都有幾百兆到GHz的采樣頻率,且絕大部分都支持不同的數(shù)據(jù)傳輸協(xié)議。MATLAB作為一款科學(xué)計算軟件,在研究算法和數(shù)據(jù)處理中經(jīng)常使用。而MATLAB的儀器控制工具箱則提供了示波器和MATLAB軟件之間的連接通道。從而解決了實驗室研究階段對高速數(shù)據(jù)采集的要求。為了既節(jié)省時間及經(jīng)費,又能夠滿足系統(tǒng)實現(xiàn)信號采集和數(shù)據(jù)處理的要求,結(jié)合MATLAB軟件的儀器控制工具箱和數(shù)字示波器的高速采樣能力,快速搭建了一套穩(wěn)定而準(zhǔn)確的高速數(shù)據(jù)采集和數(shù)字處理系統(tǒng)。
MATLAB儀器控制工具箱介紹
MATLAB儀器控制工具箱主要是提供MATLAB軟件與各種智能儀器的通訊功能。在MATLAB2009及以后的版本中都支持該工具箱。儀器控制工具箱使我們可以通過MATLAB與各種儀器通訊,比如示波器、函數(shù)發(fā)生器、分析儀器等。通過工具箱,可以在MATLAB下產(chǎn)生數(shù)據(jù)并發(fā)送到儀器,或從儀器讀取數(shù)據(jù)到MATLAB用于分析和可視化。工具箱提供的一致接口具有硬件協(xié)議無關(guān)性,無需了解各種通訊接口協(xié)議的具體內(nèi)容。工具箱支持IVI、VXI和MATLAB儀器驅(qū)動等,同時提供了GPIB、VISA、TCP/IP和UDP等通信協(xié)議。儀器控制工具箱提供多種與儀器通訊的方法,包括儀器驅(qū)動程序、通信協(xié)議、圖形用戶接口(GUI)。儀器控制工具箱提供的TMTool圖形用戶接口不僅能夠連接儀器、接收/發(fā)送數(shù)據(jù),而且可以自動生產(chǎn)M代碼文件以加入編寫的MATLAB程序中。
示波器與MATLAB軟件的連接
本系統(tǒng)采用了Agilent公司的6000系列示波器,輸入帶寬為300MHz。其支持USB2.0、GPIB和TCP/IP網(wǎng)絡(luò)傳輸。系統(tǒng)通過路由器把示波器和PC連接,同時利用路由器的路由功能,實現(xiàn)多臺電腦都可訪問示波器的功能。特別是在臨時現(xiàn)場操作時,通過無線局域網(wǎng)和示波器的連接,避免了連線。MATLAB與示波器的連接具體包括示波器的參數(shù)設(shè)置、PC端參數(shù)設(shè)置和MATLAB軟件設(shè)置。
示波器參數(shù)設(shè)置主要是根據(jù)連接方式來設(shè)置對應(yīng)的參數(shù),比如采用網(wǎng)絡(luò)連接時,需要設(shè)置IP地址、網(wǎng)關(guān)、子網(wǎng)掩碼、DNS服務(wù)器等參數(shù),其過程相當(dāng)于PC端對網(wǎng)卡的設(shè)置。PC端主要是對網(wǎng)卡進行對應(yīng)的參數(shù)設(shè)置。以上兩項設(shè)置好后,就可以實現(xiàn)示波器和PC之間網(wǎng)絡(luò)物理層以及底層的連接。此時,在MATLAB命令窗口敲入TMTool命令,如圖4所示的GUI窗口會顯示出來。首頁顯示了必要的幫助內(nèi)容。而右側(cè)欄給出了三類連接方式選擇:硬件接口、儀器對象和儀器驅(qū)動程序。如連接正確,在窗口中點擊掃描按鈕將顯示出已經(jīng)建立的儀器連接信息。
圖4 TMTool工具窗口
在TMTool圖形窗口中,可以對儀器進行各項操作,包括控制示波器的顯示方式、顯示內(nèi)容、觸發(fā)方式等,也可以采集所需的數(shù)據(jù)。在設(shè)置好與儀器通訊的各種命令后,通過自動轉(zhuǎn)換就能夠把各種操作自動轉(zhuǎn)換為.M文件,從而可以在編寫的MATLAB程序中直接實時對外部儀器進行控制和數(shù)據(jù)采集。
試驗
在用TMTool工具與示波器連接并設(shè)置好對應(yīng)的參數(shù)后,以下是本系統(tǒng)試驗中自動生成的M文件代碼:
% Find a VISA-TCPIP object.
obj1=instrfind('Type','visa-tcpip', 'RsrcName', 'TCPIP0::192.168.1.100::inst0::INSTR', 'Tag', '');
% Create the VISA-TCPIP object if it does not exist
% otherwise use the object that was found.
if isempty(obj1)
obj1=visa('AGILENT', 'TCPIP0::192.168.1.100::inst0::INSTR');
else
fclose(obj1);
obj1 = obj1(1);
end
% Configure instrument object, obj1
set(obj1, 'InputBufferSize', 250000);
% Configure instrument object, obj1
set(obj1, 'OutputBufferSize', 512);
% Connect to instrument object, obj1.
fopen(obj1);
% Communicating with instrument object, obj1.
fprintf(obj1, ':WAVeform:FORMat ASCii');
fprintf(obj1, ':WAVeform:SOURce CHANnel1');
CH1data = query(obj1, ':WAVeform:DATa?');
CH1strdat=CH1data(11:end);
temp1=textscan(CH1strdat,'%f,');
CH1dat=temp1{1,1};
%plot(1:size(CH1dat),CH1dat');
fprintf(obj1, ':WAVeform:SOURce CHANnel2');
CH2data = query(obj1, ':WAVeform:DATa?');
CH2strdat=CH2data(11:end);
temp2=textscan(CH2strdat,'%f,');
CH2dat=temp2{1,1};
% Disconnect from instrument object, obj1.
fclose(obj1);
把以上代碼加入到MATLAB算法處理文件中,則實現(xiàn)了實時自動采集標(biāo)簽回波信號數(shù)據(jù),并進行數(shù)據(jù)處理以識別標(biāo)簽編碼。圖5是采用MATLAB編寫的用戶程序界面,顯示了采集數(shù)據(jù)的曲線以及經(jīng)過信號處理后得出的編碼等信息。圖6為在高交會上展示的實際樣機。
圖 5 SAW標(biāo)簽軟件界面
圖6 SAW標(biāo)簽系統(tǒng)樣機
結(jié)論
本文介紹了聲表面波射頻辨識標(biāo)簽的工作原理,分析閱讀器的設(shè)計原理,并給出了基于時域采樣的閱讀器設(shè)計方法。針對系統(tǒng)需要高速A/D采樣的需求,利用MATLAB儀器控制工具箱實現(xiàn)示波器和MATLAB軟件的連接,充分發(fā)揮后者的高速采集能力。避免把主要精力用于系統(tǒng)硬件開發(fā)和調(diào)試,提高了研究效率。本系統(tǒng)成功參加了深圳高新技術(shù)交易會展出,取得了良好的展示效果。