高忠堅(jiān),張銳戈,饒連周,鄭 華
(1.三明學(xué)院 機(jī)電工程學(xué)院,福建 三明,365004;2.福建師范大學(xué) 光電信息學(xué)院,福建 福州,350117)
薄膜的透光均勻性影響光學(xué)產(chǎn)品的一致性及光學(xué)器件的性能[1]。 當(dāng)前普遍采用是機(jī)械法、電學(xué)法和光學(xué)法實(shí)現(xiàn)薄膜均勻性檢測[2]。 機(jī)械法和電學(xué)基本上是接觸式測量對(duì)薄膜容易造成損害[3];純光學(xué)法如橢圓偏振法、干涉測量法、光度測量法等具有測量速度快、精度高特點(diǎn),但對(duì)環(huán)境依賴性強(qiáng)、抗干擾能力差,只能在暗室中進(jìn)行測量[4]。 近年來,光電結(jié)合的高吸收型濾光片透光均勻性性測試系統(tǒng)[5]、回反射檢測法[6]等可在亮場環(huán)境中直接測量。 這些方法的共同特性都使用了鎖相放大器LIA(Lock-in Amplifier)。
亮場環(huán)境的薄膜透光均勻性檢測系統(tǒng)具有下述挑戰(zhàn)(1)發(fā)光源在傳輸過程中容易被環(huán)境的雜散光干擾需調(diào)制;(2)薄膜樣品的厚度變化較小只能產(chǎn)生微弱的檢測信號(hào);(3)檢測結(jié)果需與不同薄膜厚度的光信號(hào)強(qiáng)度成正比。 鎖相放大器依據(jù)其相關(guān)性技術(shù)和通頻帶窄的設(shè)計(jì)在一定程度上克服背景光噪聲和電路噪聲,可降低檢測誤差、提高系統(tǒng)的檢測性能,同時(shí)具有放大交流輸入、直流輸出的特點(diǎn)恰好可解決上述挑戰(zhàn)[7]。
基于FPGA 設(shè)計(jì)的雙通道鎖相電路是鎖相放大器中重要的組成部分。該電路除了FPGA 電路還包括數(shù)模DA 電路、 模數(shù)AD 電路、STM32 顯示電路。 FPGA 電路內(nèi)部包括直接數(shù)字式頻率合成器DDS(Direct Digital Synthesizer)、混頻乘法器、IIR 數(shù)字濾波器、SPI 串行通信等其他運(yùn)算模塊組成。 其中DDS 產(chǎn)生激光調(diào)制信號(hào)和內(nèi)部參考信號(hào),與傳統(tǒng)的鎖相放大器相比不需要頻率跟蹤和相位調(diào)整電路;而IIR 濾波器采用只有3 階的chebyshev II 函數(shù)設(shè)計(jì)。這二者都在一定程度上減少了鎖相電路的設(shè)計(jì)復(fù)雜度和FPGA 片內(nèi)邏輯資源的使用,使其可在4 608 個(gè)邏輯單元的EP2C5T144C8 芯片上實(shí)現(xiàn)。
薄膜均勻性檢測系統(tǒng)包括半導(dǎo)體激光器、聲光調(diào)制器、薄膜樣品、光電轉(zhuǎn)換電路、信號(hào)調(diào)理電路、FPGA 鎖相電路等如圖1 所示。薄膜樣品選用ZnO,此薄膜是透光導(dǎo)電薄膜常應(yīng)用于光伏電池和液晶顯示的透明電極和窗體材料上[8]。其在可見光至近紅外是弱吸收區(qū)[9]同時(shí)基于現(xiàn)有的實(shí)驗(yàn)器材最終選擇了波長為650 nm的紅色激光。
圖1 薄膜透光均勻性檢測系統(tǒng)框圖
圖1 用 FPGA 內(nèi)部的 DDS 作為激光的調(diào)制信號(hào)源,激光經(jīng)受調(diào)制的聲光調(diào)制器產(chǎn)生布拉格衍射后垂直透射ZnO 薄膜樣品,由相對(duì)應(yīng)波段的光電探測器接收轉(zhuǎn)換透過樣品的光強(qiáng)信號(hào)。 鎖相放大器通過信號(hào)調(diào)理電路對(duì)檢測信號(hào)放大、濾波完成初步的信噪比改善,后經(jīng)FPGA 鎖相電路的相關(guān)檢測同步解調(diào)出檢測信號(hào)中的同頻成分,最后得出的直流電壓幅值大小正比于該點(diǎn)的光強(qiáng)大小。 通過三維位移臺(tái)逐步改變薄膜樣品的檢測位置,對(duì)比不同位置的薄膜檢測值即可鑒別一定區(qū)域內(nèi)薄膜的均勻程度。
本設(shè)計(jì)在FPGA 內(nèi)部包括直接數(shù)字式頻率合成器DDS、 混頻乘法器、IIR 數(shù)字濾波器、SPI 串行通信等其他運(yùn)算模塊組成。 除了FPGA 以外還包括數(shù)模DA 電路、模數(shù)AD 電路、STM32顯示電路。 FPGA 雙通道鎖相電路的設(shè)計(jì)框圖如圖2 所示。
FPGA 內(nèi)部的 DDS 模塊和數(shù)模 DA 電路組成信號(hào)發(fā)生器產(chǎn)生正弦波,一方面作為調(diào)制信號(hào)源另一方面作為內(nèi)部參考信號(hào)Bsin(ωt+β)和 Bcos(ωt+β)。 設(shè)第一通道參考信號(hào)為 Bsin(ωt+β),模數(shù) AD 電路采樣得到的輸入信號(hào)為:同頻率的待測信號(hào)Asin(ωt+β)加上噪聲信號(hào)SNoise, 通過混頻乘法器可得:
圖2 FPGA 雙通道鎖相電路的設(shè)計(jì)框圖
式(1)中:A 是待測信號(hào)電壓幅值;B 是參考信號(hào)電壓幅值;α 表示待測信號(hào)的相位;β 表示參考信號(hào)的相位;ω 為信號(hào)角頻率。第一項(xiàng)當(dāng)輸入信號(hào)和參考信號(hào)穩(wěn)定后 cos(α-β)就是個(gè)定值,第一項(xiàng)即為直流。 式中第二項(xiàng)為參考信號(hào)的二倍頻信號(hào),經(jīng)低通濾波后將被濾除。 式中第三項(xiàng)因噪聲信號(hào)SNoise的隨機(jī)特性與內(nèi)部參考信號(hào)Bsin(ωt+β)無相關(guān),其積分結(jié)果通常為零,最后只剩下直流分量 S1=ABcos(α-β)/2。
同理,第二通道的輸入信號(hào)還是為Asin(ωt+α)+SNoise,但DDS 通過不同的ROM 查找表(波形存儲(chǔ)表)直接產(chǎn)生與第一通道Bsin(ωt+β)相差90 度的參考信號(hào)Bcos(ωt+β),即兩通道正交參考信號(hào)波形。
第二通道的輸入信號(hào)輸入信號(hào)和第二通道參考信號(hào)經(jīng)混頻乘法器后,得
將式(2)中信號(hào)經(jīng)低通濾波后,第二項(xiàng)被濾除,第三項(xiàng)SNoiseBcos(ωt+β)=0,只剩下第一項(xiàng)直流分量
從式(1)和式(2)可知直流分量S1和S2都與輸入信號(hào)和參考信號(hào)兩者之間的相位差有關(guān)。對(duì)S1和S2取平方和后開方,即可得
由式(3)可知只要知道參考信號(hào)的幅度值B,就可獲得輸入信號(hào)的幅值A(chǔ) 的值,以上為雙通道鎖相電路的基本原理。
DDS 模塊由頻率控制字、相位累加器、同步寄存器、波形查找表、低通濾波器構(gòu)成[10]。實(shí)現(xiàn)原理為輸入一個(gè)頻率控制字,經(jīng)同步寄存器和累加器產(chǎn)生10 位的數(shù)據(jù)作為正弦波ROM 的查表地址。 查表輸出10 位的正弦波作為DAC900 芯片的數(shù)字量輸入。 DA 芯片輸出的是近似正弦波的梯度波,后級(jí)還需加低通濾波器平滑濾波。
DDS 模塊只能設(shè)置正弦波的頻率,輸出電壓可通過DA 芯片后端增加運(yùn)放電路調(diào)整。 其頻率控制字
式(4)中 f0為輸出頻率,fC為時(shí)鐘頻率,DDS 理論上輸出頻率為時(shí)鐘頻率的二分之一。 實(shí)際上由于低通濾波器過渡帶的原因,f0最高輸出頻率為 0.4×fC[10]。 DAC900 芯片為 TI 的 10 位、雙通道、165 Msps的輸出更新速率,而時(shí)鐘頻率為50 MHz,理論上最高輸出頻率為20 MHz,實(shí)際為更小,這對(duì)于一般應(yīng)用是完全足夠的[11]。 在實(shí)現(xiàn)過程中,該芯片的輸出需無符號(hào)型(unsigned)數(shù)據(jù),而波形查找表因混頻乘法器的要求為符號(hào)型(signed)數(shù)據(jù),這其中有符號(hào)和無符號(hào)的數(shù)據(jù)主要差別在于最高位的符號(hào)位,故需先將DA_Signed 帶符號(hào)數(shù)據(jù)值加上 29=512 后轉(zhuǎn)化成 unsigned 數(shù)據(jù)(DA_OUT)輸出給DA 芯片。 二者的波形如圖3 所示。
圖3 signed 與 unsigned 數(shù)據(jù)差異
模數(shù)AD 電路采用AD 芯片是TI 公司位寬為10 位、采樣率為40 MHz 的ADS822E,該芯片電源電壓5 V,內(nèi)部參考電壓VREFB=1.5 V,VREFT=3.5 V,為了方便輸入交直流信號(hào),可通過抬高輸入通道偏壓使輸入信號(hào)的電壓范圍在-1~1 V[10]。
因AD 采樣得到的信號(hào)為無符號(hào)型的10 位數(shù)據(jù)(如下圖AD_IN),而乘法器要有混頻的效果需符號(hào)型數(shù)據(jù),故在輸入信號(hào)數(shù)據(jù)值在混頻操作前減去512 即可轉(zhuǎn)化成符號(hào)型數(shù)據(jù),這一操作相當(dāng)于對(duì)輸入信號(hào)增加偏置電路,將不會(huì)對(duì)檢測產(chǎn)生影響。 圖4 在AD 芯片無輸入數(shù)據(jù)的情況下,用Signal-TapII 觀察到采樣進(jìn)來的unsigned(AD_IN)和 signed(ADdata)數(shù)據(jù),存在一定的偏置誤差會(huì)導(dǎo)致正弦波的波形不對(duì)稱,將對(duì)交流小信號(hào)產(chǎn)生影響,導(dǎo)致最終的檢測結(jié)果誤差,故需減去偏差值34 調(diào)整,如圖4 所示。
圖4 AD 模塊存在的偏置電壓
根據(jù)沖激響應(yīng)的不同,將數(shù)字濾波器分為有限沖激響應(yīng)(FIR)濾波器和無限沖激響應(yīng)(IIR)濾波器。 對(duì)于FIR 濾波器,沖激響應(yīng)在有限時(shí)間內(nèi)衰減為零,輸出僅取決于當(dāng)前和過去的輸入信號(hào)值[12]。對(duì)于IIR 濾波器,沖激響應(yīng)理論上應(yīng)是無限持續(xù),輸出不僅取決于當(dāng)前和過去的輸入信號(hào)值,也取決于過去的信號(hào)輸出值[13]。 本設(shè)計(jì)之初選用具有良好的線性特性的FIR 設(shè)計(jì),優(yōu)勢在于Altera 已有FIR IP 核可大大降低設(shè)計(jì)難度,但FIR 要想得到極窄的低通濾波器LPF 要比IIR 多兩倍以上的邏輯單元,這將導(dǎo)致芯片CycloneII EP2C5T144C8 的內(nèi)部邏輯單元不足,所以采用IIR 濾波器。
IIR 濾波器總共分為4 種,本設(shè)計(jì)用級(jí)聯(lián)型能準(zhǔn)確地實(shí)現(xiàn)濾波器的零、極點(diǎn),且參數(shù)影響較小,使用較廣泛[14]。 IIR 的設(shè)計(jì)步驟如下
(1) 濾波系數(shù)獲取
IIR 濾波器采用chebyshev II 函數(shù)設(shè)計(jì)階數(shù)3、級(jí)數(shù)為4,采樣頻率50 Hz,截至頻率 1 Hz,阻帶衰減為80 dB,使用Matlab 的Filter Design & Analysis Tool(FDATool)工具設(shè)計(jì),設(shè)計(jì)界面如圖5 所示。
(2) 濾波系數(shù)處理
從圖5 中獲得的 SOS、G 分別是零點(diǎn)極點(diǎn)濾波系數(shù)、增益。 為了加快FPGA 的運(yùn)行速度可將濾波系數(shù)量化為整數(shù)。 放大倍數(shù)一般取 2 的整次冪,取整的位數(shù)越多逼近的程度越好,但所占的硬件資源也越大,速度也會(huì)減慢[15]。 量化位數(shù)的截?cái)噙x取可由 FDATool 導(dǎo)入取整后的系數(shù)進(jìn)行分析。 針對(duì)20 位輸入的數(shù)據(jù)位寬,從FDATool 得到的截?cái)辔粩?shù)是18 位對(duì)濾波結(jié)果影響較小。 本文選取的截?cái)嗔炕粩?shù)19 位,零點(diǎn) SOS 需乘上增益 G 以保證計(jì)算的精度和系統(tǒng)的穩(wěn)定性。 Matlab 量化程序如下:
圖5 低通濾波FDATool 參數(shù)設(shè)置圖
根據(jù)級(jí)聯(lián)型結(jié)構(gòu)可直接寫出量化后的濾波器的差分方程如下:
IIR 的實(shí)現(xiàn)是依據(jù)式(5)和式(6)實(shí)現(xiàn)的。 因CycloneII EP2C5T144C8 芯片的乘法器資源不夠,濾波器設(shè)計(jì)采用左/右移替代乘/除法運(yùn)算。 需注意:每一級(jí)濾波器的最終數(shù)據(jù)輸出位寬需要通過MATLAB 量化仿真來確定,輸出位寬截取太長浪費(fèi)FPGA 資源,截取太短影響濾波效果甚至?xí)鲥e(cuò)。
(3) 濾波器仿真
通過前兩個(gè)步驟完成濾波器的設(shè)計(jì),可通過Modelsim 軟件對(duì)設(shè)計(jì)好的截至頻率為1 Hz 濾波器進(jìn)行仿真,如圖6 所示。
圖6 中輸入信號(hào) din 為 Matlab 產(chǎn)生的純白噪聲信號(hào);輸出信號(hào)dout 為白噪聲經(jīng)過濾波的結(jié)果。 從中可知窄帶濾波器能有效地抑制噪聲。
圖6 低通濾波器仿真圖
FPGA 鎖相檢測的結(jié)果即直流數(shù)據(jù)利用串行外圍接口SPI 總線發(fā)送到STM32 單片機(jī)的液晶上顯示。 本設(shè)計(jì)使用STM32F103VCT6 上硬件已實(shí)現(xiàn)好的SPI2 與FPGA 通信。 在STM32 單片機(jī)做主機(jī),F(xiàn)PGA 做從機(jī)的情況下,只需在FPGA上編寫SPI 通信協(xié)議即可實(shí)現(xiàn)二者通信。 STM32 顯示模塊采用320*240 分辨率的 2.8 寸TFT 液晶屏。
為了驗(yàn)證FPGA 雙通道鎖相電路的可行性,可將DA 電路的輸出與AD 電路的輸入直接相連。對(duì)設(shè)計(jì)的鎖相電路進(jìn)行輸入輸出特性曲線測試。 輸入信號(hào)的幅度從 0 V 增加到1.4 VPP,頻率為48 kHz,在 SMT32 顯示模塊對(duì)輸出直流信號(hào)進(jìn)行直流放大后顯示保存,最后得到的輸入輸出特性曲線如圖7 所示。
圖7 可以看出鎖相電路輸入輸出基本上成一條直線,線性度良好。 在檢測過程中發(fā)現(xiàn)鎖相電路可測量最小信號(hào)MDS:10 mVPP。
對(duì)設(shè)計(jì)的鎖相電路進(jìn)行幅頻響應(yīng)特性的測試。輸入的信號(hào)頻率從50 Hz 到50 kHz,在 SMT32 顯示模塊對(duì)DC 信號(hào)進(jìn)行顯示保存,如圖8 所示。
圖7 鎖相電路輸入輸出特性曲線圖
圖8 鎖相電路幅頻特性曲線圖
圖8 可以得到鎖相電路的輸入信號(hào)頻率范圍:1 kHz~48 kHz。 當(dāng)輸入信號(hào)頻率低于1 kHz 或高于48 kHz 時(shí),輸出的DC 信號(hào)不穩(wěn)定。
鑒于薄膜透光均勻性檢測系統(tǒng)抗干擾能力差、檢測信號(hào)微弱、輸出電壓值與輸入光信號(hào)強(qiáng)度成正比等原因,設(shè)計(jì)了一種自帶DDS 的FPGA 雙通道鎖相電路。 文中首先對(duì)薄膜透光均勻性檢測系統(tǒng)的工作原理和FPGA 雙通道鎖相電路的設(shè)計(jì)原理進(jìn)行介紹。 其次詳細(xì)闡述了FPGA 雙通道鎖相電路的組成,尤其是FPGA 芯片內(nèi)部設(shè)計(jì)的DDS 電路和只有3 階的IIR 濾波器分別簡化了設(shè)計(jì)、減少了FPGA 邏輯資源的使用,最終在只有4608 個(gè)邏輯單元EP2C5T144C8 芯片上實(shí)現(xiàn)。通過調(diào)試與驗(yàn)證表明該電路的實(shí)現(xiàn)與理論一致并具有良好的輸入輸出特性和幅頻特性符合薄膜透光均勻性檢測系統(tǒng)的設(shè)計(jì)要求。