基于數(shù)字信號(hào)處理器(DSP)的智能流量計(jì)儀器系
設(shè)計(jì)了一種基于 DSP 的智能流量計(jì)儀器系統(tǒng)。它采用了先進(jìn)的基于數(shù)字信號(hào)處理器的硬件平臺(tái),完成對(duì)渦街傳感器輸出信號(hào)的數(shù)字濾波和數(shù)字化信息處理,能夠快速、準(zhǔn)確地計(jì)算出流體的流量。
一、前言
目前市場(chǎng)上的主要流量計(jì)產(chǎn)品在對(duì)傳感器輸出的含有噪聲的信號(hào)的處理上,主要采用模擬濾波來(lái)實(shí)現(xiàn),采用這種方式抗干擾能力差、智能化水平低、適應(yīng)性差,已經(jīng)不能滿足當(dāng)前工農(nóng)業(yè)生產(chǎn)和社會(huì)生活的需要。本項(xiàng)目針對(duì)這種情況設(shè)計(jì)了一種以數(shù)字信號(hào)處理器(DSP)為核心的智能流量計(jì)儀器系統(tǒng)。它采用了先進(jìn)的基于數(shù)字信號(hào)處理器的硬件平臺(tái),完成對(duì)渦街傳感器輸出信號(hào)的數(shù)字濾波和數(shù)字化信息處理,快速、準(zhǔn)確地計(jì)算出流體的流量。
二、系統(tǒng)的硬件設(shè)計(jì)
1、系統(tǒng)設(shè)計(jì)的原理
當(dāng)前流量計(jì)產(chǎn)品主要由兩個(gè)部分構(gòu)成,即流量傳感器部分和信號(hào)信息處理部分,本文主要對(duì)傳感器輸出信號(hào)的處理技術(shù)進(jìn)行研究。
在實(shí)驗(yàn)中選用先進(jìn)的 TMS320LF2407 為核心構(gòu)建系統(tǒng)。 LF2407A DSP 芯片是基于 C2000 平臺(tái)的定點(diǎn)運(yùn)算數(shù)字信號(hào)處理器,具有 40MIPS 的運(yùn)行速度,使得其能提供比傳統(tǒng) 16位微控制器和微處理器更高的性價(jià)比 。以 LF2407A 數(shù)字信號(hào)處理器芯片為核心構(gòu)建測(cè)量系統(tǒng),傳感器輸出的信號(hào)經(jīng)過(guò)調(diào)理電路的處理,達(dá)到 LF2407A DSP 芯片的 A/D 轉(zhuǎn)換器對(duì)輸入信號(hào)的要求。由 DSP 芯片控制片內(nèi)外設(shè)通過(guò) SPI、SCI 模塊等數(shù)字接口與外界進(jìn)行通信原理圖見(jiàn)圖 1。
LF2407A 數(shù)字信號(hào)處理器芯片的 A/D 轉(zhuǎn)換器所允許的輸入信號(hào)為 0~3.3V,所選用的壓電晶體渦街傳感器輸出的信號(hào)為 -3mV ~+3mV 正弦波 ,這樣微弱的信號(hào)顯然不滿足 LF2407A 數(shù)字信號(hào)處理器芯片 A/D 轉(zhuǎn)換器的要求,所以在 A/D 轉(zhuǎn)換前要對(duì)傳感器輸出信號(hào)進(jìn)行放大、抬升、濾波三步調(diào)理。選用斬波穩(wěn)零式高精度運(yùn)算放大器 ICL7650 對(duì)傳感器輸出信號(hào)進(jìn)行放大,并且在調(diào)理電路的***后選用 OP07 搭建濾波電路對(duì)信號(hào)進(jìn)行必要的濾波,將輸出信號(hào)中的高頻噪聲干擾濾去。
2、信號(hào)放大和抬升
ICL7650 除了具有普通運(yùn)算放大器的特點(diǎn)和應(yīng)用范圍外,還具有高增益、高共模抑制比、失調(diào)小、漂移低等特點(diǎn),所以常常被用在微弱信號(hào)的前置放大器中。
由渦街流量傳感器輸出的電壓信號(hào)為一頻率變化的含有各種噪聲的正弦波信號(hào),即同時(shí)具有正、負(fù)電壓,并且幅值小(毫伏級(jí)),而 LF2407A 數(shù)字信號(hào)處理器芯片的 A/D 轉(zhuǎn)換器要求輸入的信號(hào)必須為正電壓,所以還要將信號(hào)抬升到 0~3.3V區(qū)間內(nèi)。并且為了盡可能提高***后的信號(hào)處理精度,我們要使得信號(hào)經(jīng)過(guò)放大后高、低電平盡可能接近 0、3.3V。
3、信號(hào)的濾波
濾波器是具有頻率選擇功能的電路,它允許一定頻率范圍內(nèi)的信號(hào)通過(guò),而對(duì)不需要傳送的信號(hào)實(shí)現(xiàn)有效的抑制。所以將運(yùn)放與反饋引入 RC 濾波器,構(gòu)成有源 RC 濾波器,可以使 Q 值提高,獲得合適的過(guò)渡帶,提高濾波質(zhì)量。
本系統(tǒng)采用了 LF2407A 數(shù)字信號(hào)處理器進(jìn)行信號(hào)的處理運(yùn)算,可以在系統(tǒng)處理速度允許的情況下模擬部分簡(jiǎn)化電路設(shè)計(jì),將復(fù)雜的信號(hào)濾波由數(shù)字信號(hào)處理器進(jìn)行,具體見(jiàn)圖 2。這樣做既節(jié)約了成本,也可以獲得更好的信號(hào)質(zhì)量。隨著技術(shù)的進(jìn)步,濾波算法的效率會(huì)越來(lái)越高,通過(guò)運(yùn)用先進(jìn)的軟件數(shù)字濾波算法,可以很方便的完成信號(hào)的數(shù)字濾波處理。普通渦街傳感器的輸出信號(hào)的頻率范圍為2~2KHz,用 OP07 運(yùn)算放大器構(gòu)建一個(gè)通帶為 2KHz 的二階低通濾波器放大、抬升電路的輸出信號(hào)進(jìn)行濾波。
4、數(shù)字信號(hào)處理器及外圍電路設(shè)計(jì)
(1)時(shí)鐘電路 LF2407A 數(shù)字信號(hào)處理器芯片的工作頻率為 40MHz,
選用 10MHz 的有源晶體振蕩器,需要供電電壓為 3.3V,可以直接連接到 LF2407A 數(shù)字信號(hào)處理器芯片的 XTAL1 腳上。需要在內(nèi)部進(jìn)行 4 倍頻,達(dá)到 40MHz 的工作頻率。確定 C8 為 0.015μF、C7 為 0.68、R14 為 11Ω 具體見(jiàn)圖 3。
(2)電源電路為了提供穩(wěn)定的系統(tǒng)電源和保證系統(tǒng)的正常工作,選用 TI 公司與 LF2407A 數(shù)字信號(hào)處理器芯片配套的電源芯片—TPS73HD318。輸入電壓為 5V,輸出電壓為 3.3V,輸出***大電流為 1.2A。
系統(tǒng)由外部輸入 5V 交流電,經(jīng)過(guò)濾波處理后提供給 HD318 芯片,由芯片輸出穩(wěn)定的 3.3V 電壓供給 LF2407A 數(shù)字信號(hào)處理器芯片內(nèi)核、片內(nèi) A/D 轉(zhuǎn)換器以及 PLL 模塊。另外,5V 電源經(jīng)過(guò)濾波以后還要提供給 Flash 存儲(chǔ)器作為編程電壓,見(jiàn)圖 4。在高頻情況下數(shù)字、模擬兩部分電路會(huì)互相產(chǎn)生較大的噪聲和電磁干擾,為了避免這種情況,數(shù)字電路和模擬電路的要獨(dú)立供電,數(shù)字地和模擬地也要分開(kāi),在每個(gè)電源的輸出端都要有一個(gè)磁珠進(jìn)行隔離。而且 LF2407A 數(shù)字信號(hào)處理器芯片每個(gè)電源輸入端都要有相應(yīng)的電容進(jìn)行去耦合濾波,必要的地方還要添加鉭電容以提高效果。在 PCB 設(shè)計(jì)時(shí)要注意使濾波電容與所對(duì)應(yīng)的電源輸入端盡可能的近。
三、系統(tǒng)程序設(shè)計(jì)介紹
系統(tǒng)程序主要是用來(lái)控制系統(tǒng)運(yùn)行、控制 A/D 轉(zhuǎn)換和控制系統(tǒng)與其他流量計(jì)或者計(jì)算機(jī)等外部設(shè)備通信。
系統(tǒng)程序中主要模塊有系統(tǒng)初始化模塊、A/D 轉(zhuǎn)換程序模塊和 SCI 通信控制程序模塊。
如果系統(tǒng)可以與外部進(jìn)行通信,則當(dāng)所存儲(chǔ)數(shù)據(jù)溢出時(shí)可以將數(shù)據(jù)送往外部設(shè)備,這樣可以將數(shù)據(jù)連續(xù)存儲(chǔ),便于使用者的長(zhǎng)期檢測(cè)。如果系統(tǒng)不需要將數(shù)據(jù)長(zhǎng)期保存,則保留***新數(shù)據(jù),拋棄舊數(shù)據(jù),這樣可用于實(shí)時(shí)檢測(cè)而不需長(zhǎng)期紀(jì)錄的領(lǐng)域。
1、系統(tǒng)初始化模塊
在系統(tǒng)初始化時(shí),除去設(shè)置一些系統(tǒng)寄存器以外,還要初始化 ADC 模塊和 SPI 模塊。需要注意的是:在初始化階段首先要使用狀態(tài)寄存器 ST0 中的全局中斷使能位 INTM來(lái)關(guān)閉核心中斷,在主程序開(kāi)始時(shí)再打開(kāi)。
在本項(xiàng)目中選用的外部有源晶振頻率為 10MHz,PLL(鎖相環(huán))倍頻系數(shù)選擇為 4 倍,將 SCSI1 中 CLK PS2、CLKPS1、CLK PS0 三位均置 0。
將片內(nèi)雙端口 RAM 中 B0 塊配置為數(shù)據(jù)存儲(chǔ)器,用來(lái)存放 A/D 轉(zhuǎn)換結(jié)果。
2、ADC 模塊設(shè)置
在項(xiàng)目中只對(duì)一個(gè)模擬通道進(jìn)行轉(zhuǎn)換,使用兩個(gè) 8 狀態(tài)的排序器,選用 ADC0 通道。轉(zhuǎn)換后結(jié)果可從 RESULT0中讀取。將轉(zhuǎn)換后的結(jié)果存在 DARAM 中的 B0 塊。
3、SCI 模塊設(shè)置
在 SCI 模塊設(shè)置中,可以通過(guò) SCI 通信控制寄存器SCICCR 來(lái)定義用于 SCI 的字符格式、協(xié)議和通信模式。
在本項(xiàng)目中完成的是系統(tǒng)運(yùn)行的基本程序設(shè)置,使硬件平臺(tái)能夠順利運(yùn)行。
四、結(jié)論
流量計(jì)產(chǎn)品在現(xiàn)代工農(nóng)業(yè)生產(chǎn)和社會(huì)生活的諸多領(lǐng)域中的應(yīng)用越來(lái)越廣泛,市場(chǎng)對(duì)流量計(jì)產(chǎn)品的要求也越來(lái)越高,針對(duì)目前市場(chǎng)上現(xiàn)有傳統(tǒng)流量計(jì)產(chǎn)品抗干擾能力較差、智能化水平較低、適應(yīng)性差、精度不夠高的技術(shù)不足,本項(xiàng)目結(jié)合信息技術(shù)領(lǐng)域內(nèi)的新技術(shù),就流量計(jì)中信息的數(shù)字化處理技術(shù)進(jìn)行了研究,以 TMS320LF2407A 數(shù)字信號(hào)處理器為核心組建硬件平臺(tái),設(shè)計(jì)了一種具有一定數(shù)字化、智能化、信息化水平的流量計(jì)產(chǎn)品。