摘 要: 當今,所有以微處理器為基礎的測控系統都需要傳感器來提供做出實時決策的數據。本文詳細闡述了壓力傳感器測量系統硬件設計、壓力傳感器智能化軟件設計、壓力傳感器誤差與溫度補償技術設計。針對傳感器測量的溫度漂移和非線性等問題,提出了利用多傳感器信息融合技術——曲面擬合法和曲線擬合法來加以解決,并實現PC機與傳感器測量系統之間的通信,完成數據轉換、數據處理和打印等功能,使測量系統更加完善。
關鍵字: 智能壓力傳感器;PC機;溫度補償
[b][align=center]Design of Pressure Measurement System based on Multi-sensor Technology
WU Zhi[/align][/b]
Abstract: At present, all the control system based on the microprocessor need the sensor to supply real-time data. The author detailed expatiated on the hardware design of measurement system and software design of intelligent. We put forward a scheme that multisensor data fusion-surface fitting and curve-fitting was applied in this system according to the temperature drift and nonlinear of sensor. Communication between personal computer and measurement system of sensor was realized by means of transceiver, which could finish the data conversion, data processing and printing task, with the result that the measurement system was further improved.
Keywords: Intelligent Pressure Sensor; PC; Temperature Compensate
1 引言
傳感器的研究始于二十世紀三十年代,它是研究非電量信息與電量間轉換的一門跨學科的邊緣技術科學。早期傳感器是模擬式傳感器,現在常稱為傳統傳感器。隨著高性能計算機測控系統的發展,當系統對傳感器提出數字化、智能化要求后,傳統傳感器不再與系統相適應。控制系統要求傳感器輸出數字信號,并具備較強的信息處理和自我管理能力,以實現信息的采集與信息的預處理,減輕控制計算機的數據處理負擔和提高整個測控系統的可靠性。
2 智能壓力傳感器硬件設計
圖1為系統的整體結構圖,從結構圖中可以看出硬件電路簡潔,ADμC812單片機不用外接A/D和D/A轉換器,不占用大量的空間,并且具有可重新編程非易失性閃速/電擦除程序存儲器,調試簡單。
[align=center]

圖1 系統的整體結構圖[/align]
2.1 信號分析處理
以往的硬件結構設計是通過多路選擇開關來控制通道的選擇,然后通過采樣保持器和AID轉換器進行模數轉換,轉換的數字信號再送到微控制器,這種分立的元器件使系統產生很多誤差并占用大量的空間。
本文使用的單片機ADμC812是真正意義上的完整的數據采集系統芯片(包括數據轉換電路、微控制器、閃速/電擦除存儲器等等)。微轉換器集成了一個完全可編程的,高精度的模擬數據采集系統。它小得可以放置在一個傳感器、轉發器或電纜連接器之內。它的成本極低,因此可以取代建立在單板機基礎上的高成本、大體積的產品。由于其高精度和高速度,它適用于智能傳感、瞬時獲取、數據采集和各種通信系統。其功能方框圖如圖2所示。
[align=center]

圖2 ADμC812功能方框圖[/align]
在本文設計中,將ADμC812單片機P1口的P1.0, P1.1、P1.2和P 1.3作為四路信號輸入通道,其中一路輸入差壓信號,一路輸入溫度信號,一路輸入靜壓信號,一路接地,這一路可配合相應的軟件來降低溫漂和系統誤差:P1.7口接發光二極管,用于監測單片機是否正常工作;P2口的P2.0和P2.1作為液晶顯示的輸入脈沖和數據端;P3口的P3.0 (RXD)和P3.1 (TXD)外接一片MAX232,進行電平轉換,實現和PC機的通信。本設計采用外部時鐘產生方式,晶體頻率為11.0592MHz,采用內部基準,在7引腳(CRER)與AGND之間連接0.1μF的電容。電源復位電路采用MAX708芯片進行復位。
2.2 傳感器輸出信號預處理
傳感器輸出信號的預處理主要由信號調理電路組成,包括對差壓、靜壓和溫度傳感器的恒壓源電路的設計以及完成對傳感器輸出信號進行濾波放大。
1、恒壓源電路設計。使用本電路如果不采用穩壓措施,當對傳感器供電初始時,電壓會出現上跳的現象,使對傳感器提供的5V電壓,變成超過5V,這樣對智能傳感器造成損害,嚴重時可使整個電路燒壞,所以本文用二次穩壓對智能壓力傳感器進行保護。本文一次穩壓使用的穩壓器是LM117,它只有輸入端、輸出端和公共端三個引腳,所需要的外接元器件少,使用方便、可靠。
在測量中,傳感器的時漂和溫漂受環境的影響會發生變化,為了使其穩定性好,本文選擇基準電壓源REF192對壓力、靜壓和溫度傳感器進行二次穩壓,REF192的優點是適合對智能傳感器進行供電,與普通的基準電源相比具有溫漂小、輸出噪聲小、動態內阻小、有短路保護等特點。原理圖如圖3所示。REF192的主要參數如下:基準電壓VR=2.5V,溫度系數TC<5PPm/℃,輸出噪聲電壓為25μV。當基準電壓VR=2.5V,溫度范圍在10℃~80℃時,溫度傳感器輸出電壓的變化范圍為1.5V~2V。
2、圖3為對信號進行放大的原理圖。放大器采用單電源的儀表放大器AD623,其特點是:便于使用、低功耗、高精度和低噪聲等。AD623使用設置電阻進行增益控制,即由1腳與8腳之間的阻抗來決定。壓力信號變化幅度范圍在0mV~500mV,放大倍數設定為5倍。經傳感器轉換和放大后的電信號,由于多種原因,會含有多種頻率成分的噪聲信號,需采取濾波措施,將不需要的雜散信號抑制掉,我們將R3和C3構成了一個低通濾波器,使系統的信噪比增加,這里C3=0.1μF, R3=1K。
[align=center]

圖3 信號放大電路[/align]
3 智能壓力傳感器軟件設計
智能壓力傳感器的軟件是由監控程序,中斷程序,測量程序和信號處理程序組成。在主程序的管理下,系統可以自檢RAM和A/D轉換芯片等功能是否正常。如有故障,可以顯示哪一元件出錯,并顯示出錯的詳細位置,以便操作人員及時處理;如正常,則對系統初始化,包括堆棧指針的設置、定時器/計數器的初始化、中斷初始化、有關工作單元初始化等。
1、監控程序設計。監控程序是智能傳感器軟件中的主線,它調用各模塊,并將它們聯系起來,形成一個有機的整體,實現對儀器的全部管理功能。在本設計中,由于使用的CPU沒有ROM和E2PROM,所以節省了軟件設計。我們只對RAM和A/D進行自檢,又由于本文所使用的CPU在接電使用時,A/D自動進行自檢,所以不用設計其自檢程序。
2、測量控制程序。測量控制程序完成測量以及測量過程的控制任務,如多通道切換、采樣、A/D轉換等。這些功能可以由若干個程序模塊實現,供監控程序或中斷程序調用。測量程序所要實現的功能是采集溫度、靜壓和差壓信號,對差壓進行線性校正,然后實現溫度、靜壓信號對差壓信號的補償,實現補償后,顯示其差壓測量值。
3、數據通信軟件設計。我們采用LED對數據進行實時顯示,由于LED只能顯示數據,而不能對其進行分析,實現系統和PC機之間的通信,可利用PC機對測量結果進行顯示、數據處理和打印。這部分軟件包括單片機的通信軟件設計和PC機的通信軟件設計,PC機的通信軟件設計由C++Builder來完成。
PC機通信軟件的設計。本文編制串行通信分成四個步驟:1) 打開串行口并進行初始化,初始化的任務是以一定方式打開端口,并設置通信的波特率、數據位個數、停止位個數、奇偶校驗方式、差錯檢測、超時參數、響應事件等;2) 數據的發送,將要發送的數據寫入端口,并進行錯誤處理;3) 數據的接收,當端口發生接受到事件字符并放入輸入緩沖區事件后,讀取端口數據;4) 關閉端口,釋放系統資源。
智能傳感器的通信軟件設計。本文采用的是半雙工形式來傳送數據。單片機串行通信有四種工作方式,我們采用的是工作方式1,它的特點是波特率可變,無奇偶校驗位,波特率的設置與定時器1的計數器溢出率有關。本文采用的是定時器T1四種工作方式中的工作方式2,在工作方式2中,TL0作為8位計數器,TH0用來保存初值,每當TL0計滿溢出時,TH0中的初值可自動再裝入TH0中,如此重復。波特率的公式為:
波特率=2[sup]SMOD[/sup]×晶振頻率/[32×12×(256-X)]
本文采用的波特率為9600,晶振為11.0592, SMOD設為0, TH1為253。單片機通信子程序結構框圖如圖4所示。
[align=center]

圖4 單片機通信子程序結構框圖[/align]
4 誤差與溫度補償技術設計
任何一種測量過程都不可避免地存在著誤差,按誤差出現的規律可將其分為隨機誤差和系統誤差,隨機誤差可以采用濾波方法來加以克服,而系統誤差不能依靠統計平均的方法來消除,而只能針對某一具體情況在測量技術上采用一定的措施,本文針對盡可能降低智能傳感器這兩種誤差及提高采集數據的精確性,我們配合硬件結構進行了相應的軟件設計。
1、隨機誤差。
由于隨機干擾使被測信號中混入了無用成分,可以采用濾波器濾掉信號中的無用成分,提高信號質量。常用的數字濾波算法有限幅濾波、中位值濾波、算術平均濾波、遞推平均濾波、一階慣性濾波和復合濾波等。由于復合濾波即可以去掉脈沖干擾,又可以對采樣值進行平滑處理,它兼有中位值濾波和算術平均濾波的優點,所以本文采用復合濾波的算法。復合濾波的算法原理如下:首先將N次采樣值按大小排隊,然后去掉最大值和最小值,再對剩下的N-2個采樣值求算術平均值。
2、系統誤差。
(1) 自動零位校準。為了消除由于環境因素變化,使傳感器的輸出或放大器的增益等發生變化所造成的儀器零點漂移,而引起系統誤差,我們采用自動零位校準的方法。本文使用的CPU具有8個輸入通道,故在溫度、靜壓和差壓輸入通道之外再使一個通道接地,這樣每次采集數據時,可直接用軟件技術把接地通道得到的數值扣除。
(2) 非線性校正。為了實現輸入-輸出特性是一條直線,也就是說在測量范圍內靈敏度是一個常數,本文采用曲線擬合法,設定一個泰勒展開的n次多項式來逼近傳感器測量非線性曲線。
(3) 溫度補償。本文主要采用信息融合處理方法中的多維回歸分析法。其基本思想是:用多維回歸方程來建立被測目標參量與傳感器輸出量之間的對應關系。與經典傳感器一維實驗標定/校準不同的是要進行多維標定/校準實驗,然后,按最小二乘法原理由實驗標定/校準數據計算出均方誤差最小條件下的回歸方程中的系數。這樣,測量時當測得了傳感器的輸出值時,就可由己知系數的多維回歸方程來計算出相應的輸入被測目標參數。非線性校正和溫度補償都需要幾次調用浮點數加法和浮點數乘法運算的子程序來求得結果。
本文作者創新點
本文采用ADμC812單片機設計硬件電路,這種芯片內不僅集成了可重新編程非易失性閃速/電擦除程序存儲器的高性能8位MCU,還包含了高性能的自校準8通道ADC及2通道12位DAC,使硬件電路設計簡單,體積小,攜帶方便并減小誤差。采用與PC機通信,完成數據轉換、數據處理和數據打印等功能,便于實現系統集中監控。在抗干擾方面,本文硬件采用低通濾波器和軟件采用復合濾波法來克服隨機誤差,提高了系統在不同場合下工作的穩定性。
參考文獻:
[1] 田立強,孫以材,趙彥曉.兩種多傳感器信息融合方法的比較[J].傳感器世界.2002.VOL1,12: 9-13
[2] 汪慧英,馬學童,王磊.基于ActiveX控件實現Windows9x環境下異步串行通信[J].計算機輔助工程.2002. VOL12, 4: 65-69
[3] 劉青松,錢蘇翔,嚴拱標. 基于多傳感器的信息數據融合技術在電力系統中的應用[J]. 微計算機信息, 2006, 11-1: 191-193