[導(dǎo)讀] 摘要 本文討論了一種基于MSP430單片機(jī)的天然氣標(biāo)準(zhǔn)孔板智能流量積算儀的軟、硬件設(shè)計(jì),并論述了儀表的低功耗設(shè)訓(xùn)思路。在設(shè)計(jì)巾小僅滿足了計(jì)量精度的要求,同時(shí)也具有功耗低、功能齊全、人機(jī)界面友好的優(yōu)點(diǎn)。
孔板流量計(jì)是一種基于伯努利原理的差壓式流量計(jì),它是通過測(cè)量孔板兩側(cè)的差壓而達(dá)到測(cè)量流量的日的。在天然氣的生產(chǎn)中通常采用孔板流量計(jì)作為測(cè)量用流量計(jì)。一般的孔板流量計(jì)是由標(biāo)準(zhǔn)節(jié)流裝置(孔板)、導(dǎo)壓管、差壓計(jì)(差壓傳感器)和二次儀表(流量積算儀)所組成。木文所要討論的就是一種適用于天然氣計(jì)量、包含各種傳感器的低功耗智能孔板流量積算儀的設(shè)計(jì)。
1系統(tǒng)設(shè)計(jì)及構(gòu)成簡(jiǎn)述
1.1系統(tǒng)的組成及原理
整個(gè)儀表的系統(tǒng)構(gòu)成可以由圖1所示。
系統(tǒng)控制器選用美國(guó)TI公司生產(chǎn)的低功耗單片機(jī)MSP430F149 0由傳感器檢測(cè)到的孔板上游側(cè)氣流絕對(duì)靜壓.w流流經(jīng)孔板產(chǎn)生的差壓和氣流溫度值經(jīng)模擬開關(guān)選擇放人后,由單片掃L自帶的12位A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。轉(zhuǎn)換結(jié)果由CPU按一定的數(shù)學(xué)模型m進(jìn)行實(shí)時(shí)運(yùn)算和補(bǔ)償,得到瞬時(shí)流量值和氣體總量。計(jì)算結(jié)果進(jìn)行保存,并通過液晶屏顯示,也可通過外囚電路按其他方式輸出。木積算儀還可通過485接II與上位機(jī)z間進(jìn)行通訊,作為一個(gè)較人范囚內(nèi)的流量計(jì)量管理系統(tǒng)的一個(gè)節(jié)點(diǎn)。
系統(tǒng)設(shè)計(jì)成兩種供電方式,即內(nèi)部3.6V的鏗電池和外部24V電源。在正常計(jì)量時(shí)采用內(nèi)部電池供電;當(dāng)用戶需要輸出標(biāo)準(zhǔn)信弓時(shí),采用24V的外電源供電。
1.2硬件設(shè)計(jì)
硬件的設(shè)計(jì)包括如卜幾個(gè)方面:
1)單片機(jī)及其外囚電路設(shè)計(jì)。M SP430F149單片機(jī)是64腳QFP封裝的超低功耗的微控制器,具有五種小同的省電模式;16位RISC指令結(jié)構(gòu),豐富的尋址方式和強(qiáng)人的運(yùn)算處理能力;集成了較多的片上外ICI資源,比如」2位的A/D,精密模擬比較器,硬件乘法器,2組頻率可達(dá)8MHz的時(shí)鐘模塊,2個(gè)帶有人量捕獲/比較寄存器的16位定時(shí)器,2個(gè)可實(shí)現(xiàn)異步、同步及多址訪問的串行通訊接口,數(shù)十個(gè)可實(shí)現(xiàn)方向設(shè)置及中斷功能的并行輸入、輸出端口;該型單片機(jī)還有2KB的RAM;具有60KB+256字節(jié)的FLASH存儲(chǔ)器,可利用J丁AG接口或片內(nèi)BOOT ROM下載、調(diào)試程序[2]。外圍電路主要是時(shí)鐘晶振的選擇。在本設(shè)計(jì)中,選用2個(gè)外接的低頻晶振C 32.768KHz)和局頻晶振(SMHz),會(huì)同內(nèi)部集成的DCO振蕩器,由軟件選擇作為3種時(shí)鐘信寫ACLK.MCLK.SMCLK的時(shí)鐘源。
2)人機(jī)交互設(shè)計(jì)。包括按鍵輸入和液晶顯示電路。利用一鍵多用、雙鍵復(fù)用技術(shù),依靠4個(gè)按鍵,結(jié)合LCD顯示,可以完成參數(shù)設(shè)置、實(shí)時(shí)測(cè)量、在線標(biāo)定等功能。表頭采用多段式液晶顯示,選用動(dòng)態(tài)的4時(shí)分割液晶驅(qū)動(dòng)器驅(qū)動(dòng)顯示。
3)輸入輸出電路。輸入電路包括溫度、壓力和差壓信寫的采樣、放人和A/D電路。各個(gè)傳感器信寫通過模擬開關(guān),由CPU控制在小同的時(shí)刻進(jìn)行采樣。采樣得到的信寫經(jīng)運(yùn)放放人后,輸入到單片機(jī)自帶的A/D轉(zhuǎn)換器。輸出電路包括脈沖放人電路和初準(zhǔn)模擬信寫輸出電路。前者用于輸出對(duì)應(yīng)于小同瞬時(shí)流量的頻率信寫或脈沖數(shù),后者通過D/A將流量值轉(zhuǎn)換成電壓信寫,再由V/I轉(zhuǎn)換電路變換為4~20mA的標(biāo)準(zhǔn)模擬信寫。
4)存貯與通訊接口。用EEPROM作為存貯介質(zhì),用來存貯一些為防止掉電而去失的數(shù)據(jù)。串行通訊采用RS485接口,即可通過該串口與上位機(jī)通訊,也可與專用MODEM配套,利用電話網(wǎng)絡(luò)構(gòu)成自動(dòng)讀表與管理系統(tǒng)。
1.3軟件設(shè)計(jì)
系統(tǒng)的軟件設(shè)計(jì)可以根據(jù)所要實(shí)現(xiàn)的功能,按照模塊化的思路,分成如下若干個(gè)功能模塊:
1)初始化模塊:在系統(tǒng)啟動(dòng)時(shí),需要對(duì)時(shí)鐘源進(jìn)行分配;對(duì)輸入輸出端II進(jìn)行定義;對(duì)定時(shí)器、模數(shù)轉(zhuǎn)換器等一些控制寄存器進(jìn)行初始化;對(duì)內(nèi)部和外部的存貯單元進(jìn)行清零;對(duì)一些中斷的允許寄存器和標(biāo)志寄存器進(jìn)行初始化;選擇CPU的低功耗模式。
2)按鍵按鍵和顯示模塊:顯示模塊包括正常情況下的顯示程序和配合按鍵功能的顯示程序。前者可以用來顯示瞬時(shí)流量值、累積值或其他一些參數(shù),后者和按鍵子程序一道作為中斷服務(wù)子程序。通過軟硬件的結(jié)合,可以實(shí)現(xiàn)數(shù)字和字符的設(shè)定、移動(dòng)光標(biāo)、狀態(tài)切換、參數(shù)保存。通過按鍵,可以設(shè)置一些流量計(jì)算所需的參數(shù)值,如天然氣組分、孔板和測(cè)量管的材料和直徑,以及其他一些參數(shù)值。
3)信寫采集和流量計(jì)算模塊:程序定時(shí)打開模擬開關(guān)和運(yùn)算放人器,采樣壓力、溫度和差壓值,并進(jìn)行A/D轉(zhuǎn)換。轉(zhuǎn)換值和其他設(shè)定的參數(shù)值一同參與天然氣的流量計(jì)算。流量每2秒計(jì)算一次。流量計(jì)算模型必須符合文獻(xiàn)[1]中標(biāo)準(zhǔn)的規(guī)定,并引入了相關(guān)參數(shù)的實(shí)時(shí)溫壓補(bǔ)償。由于涉及的中間變量多,公式復(fù)雜,故計(jì)算量較人,需對(duì)計(jì)算過程進(jìn)行優(yōu)化??紤]到MSP430單片機(jī)具有較人的內(nèi)存單兀和程序存儲(chǔ)區(qū),因此為了提局計(jì)算的精確度,對(duì)參與運(yùn)算的變量全部采用多字節(jié)浮點(diǎn)數(shù)的編碼方式。
4)流量輸出模塊:對(duì)應(yīng)與小同的輸出方式,程序可產(chǎn)生對(duì)應(yīng)于流量的頻率信寫、脈沖數(shù)或一定數(shù)字量。
5)通訊模塊:用來定義串口之間的通訊接口協(xié)議,例如,儀表與上位機(jī)乙間傳送的數(shù)據(jù)格式、數(shù)據(jù)內(nèi)容、數(shù)據(jù)包的形式。
2低功耗設(shè)計(jì)
孔板流量計(jì)用于天然氣的計(jì)量多應(yīng)用于一些沒有市電供應(yīng)或是無人值守的環(huán)境,因此低功耗對(duì)于智能流量積算儀的設(shè)計(jì),顯得尤為重要。下面說明木儀表的低功耗設(shè)計(jì)。
2.1 硬件電路的低功耗設(shè)計(jì)
要降低電路的運(yùn)行功耗,可以從單片機(jī)系統(tǒng)和外圍電路兩個(gè)方面入手,下面分別進(jìn)行討論:
(1)單片機(jī)的低功耗運(yùn)行
M SP430F149是TI公司生產(chǎn)的低功耗單片機(jī)的一種,它的低功耗體現(xiàn)在以下幾個(gè)方面:一是工作電壓低:我們采用3.3V的電源電壓。降低電源電壓是降低功耗的最直接、最有效的方泛;二是工作電流低:單片機(jī)在工作頻率為32kHz、電壓為2.2V時(shí),工作電流僅為78A;在工作頻率為1MHz、電壓為2.2V時(shí),工作電流為2508 A;由此也可見,降低工作頻率也是降低功耗的途徑乙一;因此,第三點(diǎn)是工作頻率可選:主程序運(yùn)行時(shí),盡量選用單片機(jī)自帶的數(shù)控DCO振蕩器;對(duì)于需精確定時(shí)的,可以采用外接的低頻晶振,如32768Hz;外接的局頻晶振一般只有在外電源供電時(shí)才被選用;四有多種省電模式可供使用:單片機(jī)共提供了五種低功耗運(yùn)行模式,在小同的工作模式卜,單片機(jī)分別關(guān)斷CPU.主系統(tǒng)時(shí)鐘、子系統(tǒng)時(shí)鐘、內(nèi)部數(shù)字振蕩器(DCO).輔助系統(tǒng)時(shí)鐘。每一種模式均比前一種要減少功耗。在木設(shè)計(jì)中,根據(jù)系統(tǒng)實(shí)際運(yùn)行的需要,可以選擇單片機(jī)在沒有外中斷請(qǐng)求時(shí),工作在低功耗模式匕PM3。五是由于單片機(jī)集成了A/D轉(zhuǎn)換器、定時(shí)器、人容量的FLASH存貯器、以及多個(gè)I/O口,這樣可以省略許多外囚器件,從而實(shí)現(xiàn)降低功耗的日的。
(2)外圍電路的低功耗設(shè)計(jì)
在設(shè)計(jì)外圍電路時(shí),可以從兩個(gè)方面考慮:一是盡量選擇一些低功耗的器件和芯片。由于CMOS電路的靜態(tài)功耗極小,可達(dá)μA級(jí),而動(dòng)態(tài)功耗與電路邏輯改變的頻率和速度有關(guān)網(wǎng),因此在芯片的選擇上,多選用低速的CMOS芯片。對(duì)于其他一些器件,如顯示器件,也是選用的低電壓驅(qū)動(dòng)、具有CMOS結(jié)構(gòu)的低功耗液晶顯示驅(qū)動(dòng)器。二是降低系統(tǒng)中非工作狀態(tài)器件的功耗。例如,在信寫采集電路中,如圖2所示,由于溫度、壓力和差壓信寫是定時(shí)采樣,因此單片機(jī)是定時(shí)打開信寫通道采樣信寫,而在其余時(shí)間則關(guān)閉采樣通道;同理,運(yùn)放電路也受單片機(jī)的控制定時(shí)開斷,定時(shí)時(shí)間與采樣時(shí)間同,這樣便能減少采樣、放人電路的在空閑時(shí)間的功率消耗,從而降低整機(jī)的功耗。
2.2軟件的低功耗設(shè)計(jì)
軟件的低功耗設(shè)計(jì)也可從以下兩個(gè)方面進(jìn)行論述:
1)配合硬件的程序設(shè)計(jì)。比如,時(shí)鐘頻率的選擇,定時(shí)采樣和運(yùn)放的開斷,以及在空閑狀態(tài)下選擇單片機(jī)的低功耗模式。另外,對(duì)鍵盤輸入、數(shù)據(jù)采集輸入均采用信寫中斷方式而小是查詢方式,從而減少CPU的工作時(shí)間,降低消耗;在顯示上也采用靜態(tài)顯示而小是動(dòng)態(tài)掃描顯示的方式。
2)在流量的計(jì)算程序中盡量考慮低功耗的要求。在根據(jù)文獻(xiàn)[1]標(biāo)準(zhǔn)中所規(guī)定的數(shù)學(xué)模型計(jì)算流量時(shí),可知在整個(gè)計(jì)算過程時(shí)會(huì)涉及到許多變量的運(yùn)算,這些變量都是一維或二維的復(fù)雜函數(shù),如冪函數(shù),并且有的變量還涉及解嵌套循環(huán)計(jì)算過程,因此整個(gè)計(jì)算的步驟多、過程復(fù)雜??紤]到MSP430單片機(jī)具有較人的內(nèi)存單元(2KB的RAM)和程序存儲(chǔ)區(qū)(60KB的FLASH),在計(jì)算程序的編寫時(shí)盡量采用表格的方式來運(yùn)算復(fù)雜公式,并運(yùn)用合理的插值法使運(yùn)算結(jié)果逼近于真值,從而可以人人減輕CPU的負(fù)荷,降低功耗。
3結(jié)束語(yǔ)
按上述思路設(shè)計(jì)的低功耗智能孔板流量積算儀己運(yùn)用到實(shí)際生產(chǎn)過程中,其功能齊全,運(yùn)算結(jié)果可靠,特別是具有低功耗的特性:整機(jī)最人工作電流小于380μA,基木保證了當(dāng)使用1節(jié)3.6V鏗電池(5Ah)供電時(shí),儀表能持續(xù)正常工作1.5~2年。