基于多處理器技術(shù)的渦街流量計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
0 引言
渦街流量計(jì)因其介質(zhì)適應(yīng)性強(qiáng)、無可動(dòng)部件、結(jié)構(gòu)簡單等優(yōu)點(diǎn),在許多行業(yè)得到了廣泛應(yīng)用。傳統(tǒng)渦街流量計(jì)采用模擬信號(hào)處理方法,抗干擾能力差,且一般采用4~20mA的模擬量輸出,因此不能滿足當(dāng)今現(xiàn)場總線技術(shù)的發(fā)展和分布式控制系統(tǒng)實(shí)時(shí)性、穩(wěn)定性、可靠性的要求。
針對(duì)渦街流量計(jì)在低流速測(cè)量和信號(hào)輸出方面存在的問題,開發(fā)了基于多處理器技術(shù)的帶PROFIBUS-DP接口的渦街流量計(jì)。
1 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)的總體設(shè)計(jì)從抗干擾、低功耗和帶總線接口三個(gè)角度出發(fā),主要分為四大部分:模擬信號(hào)預(yù)處理電路、控制及傳輸電路、數(shù)字信號(hào)處理電路和PROFIBUS-DP接口電路。系統(tǒng)基本結(jié)構(gòu)如圖1所示?;趩纹瑱C(jī)和DSP相結(jié)合的雙核技術(shù),可以充分發(fā)揮 MSP430強(qiáng)大的控制功能和DSP強(qiáng)大的數(shù)據(jù)處理能力,來解決渦街流量計(jì)的抗干擾問題,提高系統(tǒng)的實(shí)時(shí)性和可靠性。選用同類產(chǎn)品中超低功耗型號(hào)的DSP 和單片機(jī),低功耗的系統(tǒng)外圍芯片;充分利用MSP430單片機(jī)的高集成度和DSP的HPI接口的強(qiáng)大功能,省去需要外接的12位A/D和用于存放DSP程序的Flash ROM,降低系統(tǒng)的功耗。SPC3集成了PROFIBUS-DP物理層和數(shù)據(jù)鏈路層的完整協(xié)議,為渦街流量計(jì)的總線接口提供了廉價(jià)的配置方案。整個(gè)系統(tǒng)實(shí)現(xiàn)簡單、方便,既節(jié)約了成本,又縮小了體積。
2 系統(tǒng)硬件設(shè)計(jì)
2.1 模擬信號(hào)預(yù)處理電路
模擬信號(hào)預(yù)處理電路包括電荷放大器、差動(dòng)放大器和抗混迭濾波器。模擬信號(hào)預(yù)處理電路通過以運(yùn)算放大器為主體的模擬電路對(duì)采集到的電荷信號(hào)進(jìn)行三方面的處理:通過輸入級(jí)的電荷放大器將渦街傳感器壓電檢測(cè)元件輸出的交變電荷信號(hào)轉(zhuǎn)換為電壓信號(hào);通過差動(dòng)放大器和其它級(jí)電路的放大功能實(shí)現(xiàn)交變信號(hào)的幅值放大;通過抗混迭濾波器實(shí)現(xiàn)信號(hào)ADC(模數(shù)轉(zhuǎn)換)之前的抗混迭濾波。[!--empirenews.page--]
2.2 控制及傳輸電路
控制及傳輸電路以超低功耗的MSP430F149單片機(jī)為核心,實(shí)現(xiàn)參數(shù)設(shè)置、數(shù)據(jù)采集、數(shù)據(jù)傳輸、顯示等功能。MSP430F149內(nèi)部集成的12位A/D實(shí)現(xiàn)了高精度的實(shí)時(shí)數(shù)據(jù)采集,豐富的外部接口實(shí)現(xiàn)了鍵盤的操作、HPI模擬時(shí)序、LCD顯示及對(duì)外通信的功能。這種強(qiáng)大的控制功能是DSF嘸法替代的。
2.3 數(shù)字信號(hào)處理電路
數(shù)字信號(hào)處理電路以DSP為核心,MSP430為輔助的電路,DSP選用 TMS320C5416(簡稱5416),它是一個(gè)工作靈活、高速、低功耗的16位定點(diǎn)通用DSP芯片,操作速率可達(dá)160MIPS,能夠完全滿足系統(tǒng)大計(jì)算量和實(shí)時(shí)性的要求。DSP的數(shù)據(jù)來源于單片機(jī)的12位A/D采集到的數(shù)據(jù),DSP與單片機(jī)之間通過主機(jī)接口(HPI)進(jìn)行高速通信,當(dāng)DSP接收到了渦街信號(hào)的數(shù)據(jù)后,采用基于DFT的頻率估計(jì)法對(duì)信號(hào)進(jìn)行數(shù)字信號(hào)處理,處理后的結(jié)果再傳回單片機(jī)。DSP與單片機(jī)的HPI接口電路的連接示意圖如圖2所示。
將HPI接口應(yīng)用到DSP的Bootloader中,即把DSP的程序存放在單片機(jī)的Flash里(DSP中沒有程序存儲(chǔ)器),在系統(tǒng)啟動(dòng)時(shí),將程序通過 HPI口以Bootloader的方式從單片機(jī)寫到DSP的RAM中去,啟動(dòng)DSP,使DSP開始正常的信號(hào)處理,這樣節(jié)省了一片用于為DSP存放程序的 FlashROM;DSP通過單片機(jī)的12位A/D采集數(shù)據(jù),即單片機(jī)用自身的12位A/D采集數(shù)據(jù),然后通過HPI接口把數(shù)據(jù)傳輸?shù)紻SP的RAM中, DSP再進(jìn)行數(shù)據(jù)處理,處理后的結(jié)果再傳回到單片機(jī),從而節(jié)省了一片A/D,也降低了功耗。
2.4 PROFIBO-DP通信接口電路
MSP430F149是無外擴(kuò)總線的微控制器,當(dāng)它與SPC3接口時(shí),可以以Intel模式分配部分I/O口作為SPC3的地址、數(shù)據(jù)及控制總線接口,其接口時(shí)序通過編程用軟件實(shí)現(xiàn)。MAP430F149與SPC3之間的連接如圖3所示。
MAP430F149作為處理器單元管理通信事務(wù),SPC3協(xié)議芯片則完成數(shù)據(jù)的轉(zhuǎn)換和收發(fā)功能。SPC3在選用Intel芯片模式并工作于同步模式時(shí),內(nèi)部地址鎖存器和解碼電路工作,所以CPU的低8位地址線不經(jīng)過573鎖存器直接與SPC3連接(低8位地址線與8位數(shù)據(jù)線分時(shí)共用傳輸線),P4口作為 A/DBUS復(fù)用。CPU的高8位地址線直接與SPC3的AB0~AB7相連,且必須為00000XXX(X表示0、1信號(hào)都行)。在此將SPC3的 AB3~AB10接地,AB0~AB2接單片機(jī)的P1.6、P1.4、P1.5,作為AB8~AB10地址線。此時(shí)片選信號(hào)輸入引腳XCS不起作用,接高電平;地址鎖存信號(hào)ALE起作用,接處理器P1.7。CPU與SPC3通過SPC3的雙口RAM交換數(shù)據(jù),SPC3的雙口RAM應(yīng)在CPU地址空間統(tǒng)一分配地址,CPU把這片RAM當(dāng)作自己的外部RAM。
由于MSP430F149采用低電源電壓3.3 V供電,而SPC3采用5 V供電,在硬件設(shè)計(jì)中要考慮3.3 V邏輯系統(tǒng)和5 V邏輯系統(tǒng)共存。為避免元器件的損壞和數(shù)據(jù)的丟失,此處采用兩片專用的SN74LVCC4245A電平轉(zhuǎn)換芯片,它是一個(gè)8位寬度的雙向I/O電平轉(zhuǎn)換器;中斷信號(hào)X/INT采用簡單電阻分壓的方法接P1.0。
SPC3與收發(fā)器連接時(shí)用于串行通信的四個(gè)引腳分別為XCTS、RTS、TXD和RXD。XCTS是SPC3的清除發(fā)送輸入信號(hào)引腳,表示允許SPC3發(fā)送數(shù)據(jù),低電平有效,這里始終接低電平。RTS為SPC3請(qǐng)求發(fā)送信號(hào)接收發(fā)器的輸出使能端。RXD和TXD分別為串行接收和發(fā)送端口。為提高系統(tǒng)的抗干擾性,SPC3內(nèi)部線路必須與物理接口在電氣上隔離,此處采用速率可達(dá)25 Mb/s的HCPL7721高速光耦,收發(fā)器采用sN75ALS176,足以滿足本系統(tǒng)的應(yīng)用。[!--empirenews.page--]
3 系統(tǒng)軟件設(shè)計(jì)
3.1 單片機(jī)部分的軟件設(shè)計(jì)
單片機(jī)部分的任務(wù)是完成參數(shù)設(shè)置、數(shù)據(jù)采樣、為DSP進(jìn)行Bootloader、數(shù)據(jù)顯示、數(shù)據(jù)傳輸?shù)?。程序按照模塊化設(shè)計(jì)思想設(shè)計(jì),主要分為四大模塊:數(shù)據(jù)采樣程序、HPI通信程序、液晶顯示程序、遠(yuǎn)傳程序。主程序流程圖如圖4所示。
3.2 DSP部分的軟件設(shè)計(jì)
先使DSP工作在HPI模式的Bootloader狀態(tài)下,準(zhǔn)備接收單片機(jī)傳輸?shù)某绦虼a,程序傳輸完成后,Bootloader狀態(tài)結(jié)束,DSP進(jìn)入正常工作,向單片機(jī)發(fā)出開啟A/D請(qǐng)求,準(zhǔn)備接收單片機(jī)傳來的渦街信號(hào)數(shù)據(jù),接收到數(shù)據(jù)后,對(duì)接收到的數(shù)據(jù)進(jìn)行數(shù)字信號(hào)處理,將處理結(jié)果通過HPI口傳回單片機(jī)。DSP部分的軟件設(shè)計(jì)流程圖如圖5所示。
3.3 SPC3部分的軟件設(shè)計(jì)
SPC3通信模塊程序采用了結(jié)構(gòu)化、模塊化的方法,包括四個(gè)部分:主程序、中斷模塊、子程序模塊和程序的頭文件。通信接口主程序流程圖見圖6所示。主程序中對(duì)SPC3的初始化是非常重要的,關(guān)系到它是否能正常工作。初始化過程如下:復(fù)位"看門狗",設(shè)置SPC3允許中斷,寫入從站識(shí)別號(hào)和地址,設(shè)置方式寄存器,設(shè)置診斷緩沖、參數(shù)、組態(tài)緩沖區(qū)長度,設(shè)置地址緩沖區(qū)長度,計(jì)算各個(gè)緩沖區(qū)的指針及輔助緩沖區(qū)的指針,根據(jù)輸入輸出的數(shù)據(jù)長度,確定輸入和輸出緩沖區(qū)的指針。
4 結(jié)束語
針對(duì)傳統(tǒng)渦街流量計(jì)的缺點(diǎn),結(jié)合單片機(jī)的強(qiáng)大控制功能與DSP的強(qiáng)大計(jì)算能力及其低功耗特性,構(gòu)建了一套低功耗數(shù)字渦街信號(hào)處理系統(tǒng)。降低了功耗,提高了其在現(xiàn)場環(huán)境下的精度。并設(shè)計(jì)了PROFIBUS-DP總線的通信接口,實(shí)現(xiàn)了遠(yuǎn)距離的數(shù)據(jù)傳輸。此外配有的液晶顯示模塊,提供了友好的人機(jī)界面。該系統(tǒng)為實(shí)現(xiàn)現(xiàn)場總線儀表的自主開發(fā)提供了借鑒,具有廣闊的市場應(yīng)用前景。