武立華,黃 玉,王 姣,趙恩銘,劉志海
(哈爾濱工程大學(xué) a.理學(xué)院 理學(xué)之光科技創(chuàng)新中心; b.信息與通信工程學(xué)院, 黑龍江 哈爾濱 150001)
在驅(qū)動(dòng)磁通門傳感器時(shí),經(jīng)常需要將方波信號(hào)轉(zhuǎn)換成正弦信號(hào),而一般的由波形發(fā)生芯片組建的信號(hào)發(fā)生電路只能產(chǎn)生一些常規(guī)的信號(hào)(如正弦波、方波、脈沖波、三角波等),信號(hào)的幅值、頻率等參量調(diào)節(jié)不便,需要修改電路設(shè)計(jì)[1-3]. 但相關(guān)檢測法等許多應(yīng)用領(lǐng)域,同時(shí)需要正弦波、方波等多種信號(hào)[4-5]. 磁通門傳感器的激勵(lì)信號(hào)峰峰值一般要求大于5 V,簡單的波形發(fā)生芯片不能滿足這一特定要求[6].
目前,國內(nèi)生產(chǎn)的波形變換裝置大部分是分立元件組成的,轉(zhuǎn)換量程靠手動(dòng)實(shí)現(xiàn),不僅體積大,而且可靠性和準(zhǔn)確度很難進(jìn)一步提高. 其另一個(gè)局限性是只能就單一波形進(jìn)行變換. 由于CPLD內(nèi)部結(jié)構(gòu)是并行結(jié)構(gòu),與單片機(jī)存在本質(zhì)差別,處理速度是單片機(jī)無法比擬的[7]. 利用CPLD進(jìn)行的正弦波和方波的信號(hào)轉(zhuǎn)換不僅可以實(shí)現(xiàn)信號(hào)間的轉(zhuǎn)換而且還可以實(shí)現(xiàn)對正弦波和方波的整形、放大,具有很高的頻率穩(wěn)定度和精確度,可作為磁通門傳感器中的激勵(lì)源和解調(diào)中的載波信號(hào).
采用晶振產(chǎn)生特定頻率與幅值的方波信號(hào),并應(yīng)用可編程邏輯器件CPLD進(jìn)行數(shù)字量轉(zhuǎn)換,使用射隨放大器TLC272與CPLD進(jìn)行波形整形與放大. 射隨放大器件消除信號(hào)間的干擾,保證了信號(hào)的精確度,增加了裝置的帶載能力. 模塊化的軟硬件設(shè)計(jì)也非常有利于系統(tǒng)的檢測和故障分析.
對于輸入為方波時(shí)(如由晶振產(chǎn)生峰峰值為3.3 V,頻率為8 MHz的方波信號(hào)),先將該信號(hào)輸入到CPLD,通過程序設(shè)計(jì)控制方波信號(hào)的占空比. 再將方波信號(hào)通過諧振電路進(jìn)行波形轉(zhuǎn)換,使其變成同頻率同幅值的正弦波信號(hào),然后接入放大電路,對其幅值進(jìn)行放大.
當(dāng)接入信號(hào)為小幅值、頻率特定的正弦波信號(hào)時(shí),先將正弦波信號(hào)接入轉(zhuǎn)換電路變?yōu)榉宸逯禐?.3 V、頻率為8 MHz的方波,再將該信號(hào)輸入到CPLD,通過程序設(shè)計(jì)控制方波信號(hào)的占空比,將調(diào)節(jié)完占空比的方波信號(hào)接入放大電路,得到峰峰值大于9 V的方波信號(hào),使其成為磁通門傳感器的激勵(lì)信號(hào). 基于CPLD的方波/正弦波之間的互換電路原理圖,如圖1所示.
圖1 方波/正弦波的互換電路原理
圖2 TLC272放大電路圖
在由正弦波向方波轉(zhuǎn)換過程中,需要把正弦信號(hào)進(jìn)行放大,直到使放大器工作在飽和與截止?fàn)顟B(tài),就變成了方波信號(hào). 故本電路采用兩級(jí)三極管放大電路,第一級(jí)前有1對二極管對放大電路進(jìn)行電壓保護(hù),使輸入電壓穩(wěn)定在0.7 V以內(nèi). 再由2個(gè)BFR96三極管組成的放大電路進(jìn)行二級(jí)放大. 第一級(jí)和第二級(jí)放大電路如圖3所示,在第一級(jí)放大電路中根據(jù)接入電阻控制放大倍數(shù),放大倍數(shù)為
(a)第一級(jí)
(b)第二級(jí)圖3 兩級(jí)三極管放大電路圖
其中rbe為三極管BFR96的電阻. 在第二級(jí)放大電路中,放大倍數(shù)為
當(dāng)二級(jí)連續(xù)放大,理論上放大倍數(shù)可達(dá)到數(shù)萬倍,但是由于給定的三極管飽和電壓為3.3 V,利用飽和截止效應(yīng)將正弦波限定為3.3 V,因此輸出信號(hào)為3.3 V的8 MHz的方波信號(hào).
CPLD內(nèi)部采用固定長度的金屬線進(jìn)行各邏輯塊的互連,所設(shè)計(jì)的邏輯電路具有時(shí)間可預(yù)測性,避免了分段式互連結(jié)構(gòu)的時(shí)序不完全預(yù)測的缺點(diǎn). CPLD主芯片采用Altera公司的MAX II器件系列的EPM240T100C5,該芯片有240個(gè)邏輯單元,等效宏單元是192個(gè),最大引腳數(shù)為80個(gè),可用的門電路達(dá)到2 500個(gè),能夠支持高達(dá)300 MHz的內(nèi)部時(shí)鐘,最大距離引腳之間的延遲時(shí)間最快達(dá)4.5 ns,最小距離管腳的延時(shí)時(shí)間達(dá)3.6 ns,內(nèi)有8 kb Flash的存儲(chǔ)空間,直流穩(wěn)壓電源用來給系統(tǒng)供電,工作電壓為3.3 V.
CPLD程序采用混合編程方法,先用VHDL硬件描述語言編寫各個(gè)模塊,編譯仿真正確后在電路圖中進(jìn)行連接. CPLD程序共有2個(gè)模塊,一個(gè)是8位計(jì)數(shù)器模塊,另一個(gè)是8位比較器模塊,軟件設(shè)計(jì)的電路圖如圖4所示. 輸入的信號(hào)先由8位計(jì)數(shù)器對8 MHz的時(shí)鐘信號(hào)進(jìn)行計(jì)數(shù),計(jì)數(shù)器每256個(gè)時(shí)鐘周期循環(huán)1次,即分頻后的信號(hào)頻率為31.25 kHz. 計(jì)數(shù)器輸出的值與比較器內(nèi)部的8位寄存器的值比較大小,并把比較的結(jié)果輸出. 通過改變寄存器內(nèi)的值就可以改變輸出信號(hào)的占空比.
圖4 VHDL電路圖
1)計(jì)數(shù)器的VHDL程序
8位計(jì)數(shù)器的實(shí)體一共有3個(gè)端口,分別是時(shí)鐘信號(hào)輸入端clk、計(jì)數(shù)值輸出端data_out和256分頻輸出端div_out. 8位計(jì)數(shù)器,內(nèi)部設(shè)置了8位寄存器div1,對于clk的每個(gè)上升沿,div1加1,然后把div1的值賦值給輸出端口data_out.
設(shè)計(jì)的部分程序如下:
architecture behavioral of divider8 is
signal div1:std_logic_vector(7 downto 0);
begin
p1:process(clk,div1)
begin
if rising_edge(clk) then
div1<=div1+‘1’;
end if;
data_out<=div1;
div_out<=div1(7);
end process;
end behavioral;
b)比較器的VHDL程序
比較器端口輸入分別為8位data_in,用于輸入計(jì)數(shù)器的值;key_dre用于確定給內(nèi)部寄存器進(jìn)行加操作還是減操作;key_plus用于給內(nèi)部寄存器進(jìn)行加1或減1操作;cmp_out為占控比可調(diào)的輸出端口. 8位比較器內(nèi)部設(shè)置了1個(gè)8位寄存器data,1位的標(biāo)志位flag,和1個(gè)8位的比較寄存器,用于與輸入信號(hào)作比較.
比較器結(jié)構(gòu)體中一共有4個(gè)進(jìn)程. 由于VHDL程序中不可以用端口信號(hào)進(jìn)行運(yùn)算,所以第一個(gè)進(jìn)程是把外部的數(shù)據(jù)賦值給內(nèi)部的寄存器data中,用data進(jìn)行后面的運(yùn)算;第二、三個(gè)進(jìn)程是完成按鍵的操作,用來對內(nèi)部比較寄存器data_cmp進(jìn)行加1減1操作. 第四個(gè)進(jìn)程是把data寄存器與data_cmp寄存器的值進(jìn)行比較,如果data內(nèi)的值比data_cpm內(nèi)的值大,則輸出高電平,否則就輸出低電平.
設(shè)計(jì)的部分程序如下:
architecture behavioral of compater8 is
signal data:std_logic_vector(7 downto 0);
signal flag:std_logic_vector(0 downto 0);
signal data_cmp:std_logic_vector(7 downto 0):="10000000";
begin
p1:process(data_in) --data
begin
data<=data_in;
end process;
p2:process(key_dre)
begin
if rising_edge(key_dre) then
flag<=flag+‘1’;
end if;
end process;
p3:process(key_plus,flag)
begin
if rising_edge(key_plus) then
if ((flag="1")and(data_cmp/="11111111")) then
data_cmp<=data_cmp+"1";
elsif (flag="0")and(data_cmp/="00000000") then
data_cmp<=data_cmp-"1";
end if;
end if;
end process;
p4:process(data,data_cmp)
begin
if(data>data_cmp) then
cam_out<=‘1’;
else
cam_out<='0';
end if;
end process;
end behavioral;
通過對CPLD編程使信號(hào)從CPLD輸出頻率為31.25 kHz、峰峰值為3.3 V的方波信號(hào),通過調(diào)節(jié)由TLC272組成放大器的放大倍數(shù),來實(shí)現(xiàn)信號(hào)輸出幅度的可控. 通過諧振電路選擇31.25 kHz的正弦波信號(hào),濾掉其余頻率信號(hào). 實(shí)驗(yàn)結(jié)果如圖5所示,正弦波的峰峰值接近9 V. 通過數(shù)字示波器的FFT功能,對轉(zhuǎn)換為正弦的信號(hào)進(jìn)行分析,用31.25 kHz的二次諧波與三次諧波的功率與總的功率相比,其失真度為1.32%,實(shí)現(xiàn)了不錯(cuò)的方波與正弦波的轉(zhuǎn)換.
圖5 方波轉(zhuǎn)換為正弦波的實(shí)驗(yàn)結(jié)果
應(yīng)用二級(jí)三極管放大電路,對正弦波輸入信號(hào)進(jìn)行大幅度放大,當(dāng)正弦波放大到一定倍數(shù)時(shí),截去正弦波波峰,正弦波波形會(huì)近似成方波. 再經(jīng)過CPLD得到占空比可調(diào)的方波信號(hào). 由峰峰值僅為118 mV的正弦波轉(zhuǎn)換得到的方波信號(hào)及由TLC272放大電路放大后的方波信號(hào)分別如圖6和圖7所示,峰峰值達(dá)到了13 V,峰峰值大于9 V的方波信號(hào)可用作磁通門傳感器的激勵(lì)信號(hào),如圖8所示,從圖中可看到,磁通門輸出了方波整數(shù)倍頻率的信號(hào),表明磁通門傳感頭正常工作.
圖7 經(jīng)TLC272放大后的方波
圖8 磁通門傳感頭測試結(jié)果
從實(shí)驗(yàn)結(jié)果看,采用CPLD實(shí)現(xiàn)的正弦波與方波互換電路可以滿足應(yīng)用需求,與采用分立元件或集成芯片組成的信號(hào)發(fā)生器相比,其產(chǎn)生的波形單一,幅值、頻率等參量不易調(diào)節(jié),信號(hào)峰峰值也受制于器件,多數(shù)信號(hào)發(fā)生芯片產(chǎn)生的波形峰峰值不超過5 V而不能滿足特定的要求. 磁通門的激勵(lì)信號(hào)峰峰值要求比5 V大很多,因此一般的信號(hào)源不能適應(yīng)這種應(yīng)用需求. 采用數(shù)字芯片CPLD為核心元件構(gòu)建正弦波和方波互為轉(zhuǎn)換電路,用于產(chǎn)生幅值、頻率等參量可調(diào)的正弦波或方波信號(hào). 設(shè)計(jì)了轉(zhuǎn)換電路與CPLD的程序,進(jìn)行了相關(guān)功能模塊的仿真實(shí)驗(yàn),轉(zhuǎn)換電路的實(shí)驗(yàn)測試驗(yàn)證了電路設(shè)計(jì)的正確性和有效性.
參考文獻(xiàn):
[1] 夏光瑜. 互補(bǔ)正弦波電源在磁通門中應(yīng)用[J]. 儀器儀表學(xué)報(bào),2003,14(2):120-122.
[2] 王紅利. 自給電正弦波方波轉(zhuǎn)換器[J]. 傳感技術(shù)學(xué)報(bào),2006,18(6):1035-1038.
[3] 徐素利,趙紅英. 基于OrCAD/Pspice的信號(hào)發(fā)生電路設(shè)計(jì)[J]. 現(xiàn)代電子技術(shù),2008,280(17):154-156
[4] 祝榮榮,殳國華. 基于相關(guān)檢測的電容傳感器的研究[J]. 儀表技術(shù)與傳感器,2004,(8):3-4,8.
[5] Huang Song-ming,et al. A high frequency stray-immune capacitance transducer based on the charge transfer principle [J]. IEEE Trans. Instrum. Meas.,1988,37(3):368-371.
[6] Baschiroto A, Borghettl F, Dallago E, et al. Fluxgate magnetic sensor and front-end circuitry in an integrated microsystem [J]. Sensors and Actuators A, 2006, 132: 90-97.
[7] 黎洪生. 基于CPLD的超聲波水位測量系統(tǒng)的研究[D]. 武漢:武漢理工大學(xué),2010.