張明洋
(黎明職業(yè)大學 信息與電子工程學院,福建 泉州 362000)
當前,在工業(yè)測量控制領(lǐng)域應用廣泛的波形數(shù)據(jù)采集系統(tǒng)的常用技術(shù)實現(xiàn)方式主要有三種:即采用單片機、FPGA或者DSP.在單片機實現(xiàn)方式中一般以8位單片機為控制核心,在工業(yè)測量控制等領(lǐng)域應用中漸漸暴露出實時處理能力有限的問題;FPGA實現(xiàn)方式有著設(shè)計方式靈活的優(yōu)點,但系統(tǒng)構(gòu)成成本偏高;而DSP實現(xiàn)方式有信號實時處理能力強的優(yōu)點,并且系統(tǒng)構(gòu)成性價比處于可以接受的范圍;因此,本設(shè)計以高性能的16位PIC系列DSP芯片dsPIC33FJ64GP802為控制核心,利用芯片內(nèi)部自帶的A/D和D/A模塊對輸入波形信號進行相關(guān)的模數(shù)和數(shù)模轉(zhuǎn)換,可實現(xiàn)單極性和雙極性輸入波形信號的采集、存儲和回放,輸出波形的電平和周期誤差小,系統(tǒng)構(gòu)成性價比較高,在工業(yè)測量控制等領(lǐng)域具有一定的應用價值.
dsPIC33FJ64GP802是Microchip 公司研發(fā)的高性能16位DSP芯片,在3.0~3.6V工作電壓下運行速度可高達40MIPS,有16位數(shù)據(jù)路徑寬度和24位指令寬度,最大可尋址4M指令字的線性程序存儲空間和64KB的線性數(shù)據(jù)存儲空間,具有16個16位通用寄存器和最大256KB的閃存程序存儲器,具有最大49個可用的中斷源,內(nèi)部具有10位1.1Msps或12位500ksps轉(zhuǎn)換速率的兩個模數(shù)轉(zhuǎn)換器模塊,同時具有最大100ksps采樣率的16位雙通道數(shù)模轉(zhuǎn)換模塊,完全滿足本系統(tǒng)設(shè)計的需要.
(1)采樣方式.由于本設(shè)計采用的DSP芯片dsPIC33FJ64GP802運行速度可高達40MIPS,是一款高性能的數(shù)字信號處理器,完全滿足實時采樣的需要,所以系統(tǒng)對輸入波形采用實時采樣方式.
(2)雙蹤顯示方式.要實現(xiàn)兩路波形的同時顯示只需要利用dsPIC33FJ64GP802內(nèi)置的A/D模塊、D/A模塊和RAM.采樣時,模擬開關(guān)由RAM的最低地址來控制.輸入的A、B通道模擬信號經(jīng)采集處理后分別存到RAM的奇、偶地址,如有顯示需要則讀取RAM上相關(guān)數(shù)據(jù)即可實現(xiàn)雙蹤顯示.
(3)觸發(fā)方式.要實現(xiàn)波形的穩(wěn)定顯示,需要將采集到的輸入波形信號或相關(guān)的觸發(fā)信號傳送到觸發(fā)電路.通常有三種觸發(fā)源:內(nèi)觸發(fā)(INT)、電源觸發(fā)(LINE)、外觸發(fā)(EXT)[1].本設(shè)計可選擇INT內(nèi)觸發(fā)工作方式,即利用輸入信號作為觸發(fā)信號,同時采用模擬式的觸發(fā)方式.
(1)A/D位數(shù).通用示波器的垂直方向共8格,要求每格32級,共有32×8=256級.
n=log2256=8
因此采用8位以上的A/D模塊即可,本系統(tǒng)使用的主控芯片dsPIC33FJ64GP802內(nèi)置的10位ADC即可滿足要求,此時的垂直分辨率為2-10×100%=0.1%
(2)采樣頻率.根據(jù)采樣定理,為了讓采樣后恢復得到的波形不失真,采樣速率必須高于輸入信號最高頻率分量的兩倍[2].本設(shè)計輸入波形主要有三種,分別為正弦波、三角波和方波,頻率范圍分別為10Hz~10KHz、10Hz~2KHz及10Hz~1KHz,考慮到三種小型的頻率覆蓋范圍應該以最大的正弦波10Hz~10KHz為主.在工程設(shè)計領(lǐng)域,對于一般要求的采樣頻率只要取輸入信號最高頻率分量2.5倍以上即可,而對于精度有較高要求的則取5~10倍.

(3)波形回放頻率.波形回放頻率的設(shè)置應滿足觀察時波形信號穩(wěn)定不閃的目的.本系統(tǒng)的單通道刷新頻率為200Hz;雙蹤示波時,通道刷新頻率為100HZ.通過相關(guān)計算,每秒讀出的點數(shù)應為200*200=40K.即RAM讀出頻率為40KHz,要求D/A轉(zhuǎn)換速率高于40KHz,而dsPIC33FJ64GP802芯片的D/A轉(zhuǎn)換速率最大可達100KHz,完全滿足設(shè)計要求.
系統(tǒng)以高性能的DSP芯片dsPIC33FJ64GP802為控制核心,可利用其內(nèi)置的A/D和D/A模塊完成信號的模數(shù)和數(shù)模轉(zhuǎn)換.A通道輸入信號通過單極性輸入電路完成電壓轉(zhuǎn)換以匹配A/D模塊,B通道輸入電壓通過雙極性輸入電路完成極性轉(zhuǎn)換的同時進行信號的放大以匹配A/D模塊,轉(zhuǎn)換完成后進入DSP芯片dsPIC33FJ64GP802.dsPIC33FJ64GP802在完成按鍵電路掃描后即結(jié)束輸入信號的采集和存儲過程,可通過LCD模塊顯示輸入波形的電壓值和周期特性,并在D/A轉(zhuǎn)換后經(jīng)輸出電路處理以顯示原始波形信號.系統(tǒng)原理框圖如圖1所示.

圖1 系統(tǒng)原理框圖
根據(jù)設(shè)計要求,A通道輸入波形為單極性信號,其特征參數(shù)分別為:高電平值4V,低電平值0V,頻率1KHz.如圖2所示,A通道輸入電路主要由三個LM393組成差分放大電路,一路為被測輸入信號,一路為芯片dsPIC33FJ64GP802的RB14端口輸出的基準電壓,都采用射極跟隨器結(jié)構(gòu)以保證輸入阻抗大于10KΩ,且通過第二級比較放大電路,將單極性信號處理成為方波RB7端口送入dsPIC33FJ64GP802中.

圖2 A通道輸入電路圖
圖3為A通道輸出電路,電路主要由兩級放大構(gòu)成,第一級放大電路主要實現(xiàn)對輸出信號進行濾波,以消除高頻干擾;第二級為放大電路,保證輸出信號的電平值在0~4V范圍內(nèi).

圖3 A通道輸出電路圖
B通道輸入電路實際是極性轉(zhuǎn)換電路,電路主要利用LM358構(gòu)成加法電路,首先抬高輸入信號的幅度,將輸入信號的雙極性轉(zhuǎn)換成單極性后,再經(jīng)電壓比較器輸出并送入dsPIC33FJ64GP802作為觸發(fā)信號.其中Vo0和Vo1通過模擬開關(guān)進行切換,以實現(xiàn)對雙極性信號正負半周信號進行處理[4].B通道輸入電路如圖4所示.

圖4 B通道輸入電路圖
B通道輸出電路實際上是極性轉(zhuǎn)換電路,主要利用LM358構(gòu)成減法電路減去直流電平,同時降低信號幅度,以實現(xiàn)信號極性從單極性到雙極性的轉(zhuǎn)換.B通道輸出電路如圖5所示.

圖5 B通道輸出電路圖
上電后系統(tǒng)程序執(zhí)行方面首先對DSP芯片dsPIC33FJ64GP802和外部硬件進行初始化,之后進行按鍵電路的掃描,通過I/O口判斷是否有按鍵按下并判斷鍵名.接著根據(jù)輸入波形極性對輸入通道進行選擇,并根據(jù)是否有按鍵按下進行信號采集與否的判斷.如遇停止采集信號則停止信號的采集,將寄存器置0,并進行存儲程序.緊接著根據(jù)是否有回放信號進行回放過程執(zhí)行的判斷.系統(tǒng)軟件流程圖如圖6所示.

圖6 系統(tǒng)軟件流程圖
利用示波器和萬用表等相關(guān)設(shè)備對波形采集系統(tǒng)進行了全面測試,測試具體結(jié)果如下.
系統(tǒng)可實現(xiàn)對電平范圍為0V~4V、頻率為1kHz的單極性信號的采集、存儲與連續(xù)回放,且系統(tǒng)的Ri≥10 kΩ,Ro≤1kΩ.在回放輸入波形時可在LCD上讀取波形信號的電平值及周期.輸入與回放波形的電平誤差值在±40 mV范圍內(nèi),兩者的周期誤差值保持在±4%范圍內(nèi).系統(tǒng)可實現(xiàn)對雙極性電壓峰-峰值為100mV、頻率為10Hz~10kHz 信號的采集.系統(tǒng)可對兩路信號同一時間進行采集、存儲與連續(xù)回放,并可測量和顯示周期.雙極性波形信號的幅度峰-峰值誤差在±9 mV范圍內(nèi),周期誤差值在±4%范圍內(nèi),測試結(jié)果完全符合預期的系統(tǒng)設(shè)計要求.
參考文獻:
[1] 李德堯.波形采集、存儲與回放系統(tǒng)的設(shè)計[J].儀表技術(shù),2012(5):15-18.
[2] 吳云軒.基于STM32的波形數(shù)據(jù)采集系統(tǒng)設(shè)計[J].通化師范學院學報,2013(6):23-25.
[3] 全國大學生電子設(shè)計競賽組委會.2011年全國大學生電子設(shè)計競賽獲獎作品選編[M].北京:北京理工大學出版社,2012.
[4] 程佩青.數(shù)字信號處理教程[M].北京:清華大學出版社,2013.