陳碧海,程寶進(jìn),李 勇
基于C8051F060單片機(jī)的精密數(shù)字壓力表設(shè)計(jì)
陳碧海,程寶進(jìn),李 勇
(北京遙測(cè)技術(shù)研究所 北京 100076)
精密數(shù)字壓力表設(shè)計(jì)基于單片機(jī)C8051F060為核心電路,通過(guò)對(duì)壓阻式壓力傳感器和溫度傳感器的數(shù)據(jù)采集,對(duì)壓力數(shù)據(jù)進(jìn)行全溫區(qū)補(bǔ)償,以提高壓力表的精度,并根據(jù)壓力表使用需求設(shè)計(jì)了串口輸出功能、面板零位校準(zhǔn)功能、靈敏度校準(zhǔn)功能,使其更具實(shí)用性。
壓力傳感器,數(shù)字壓力表,溫度補(bǔ)償
隨著電子技術(shù)的快速發(fā)展,壓力表精度要求越來(lái)越高,指針式壓力表正逐漸被數(shù)字壓力表取代。以往精密數(shù)字壓力表存在濾波時(shí)間長(zhǎng)、標(biāo)校復(fù)雜、溫度補(bǔ)償效果差等問(wèn)題,通過(guò)采用單片機(jī)技術(shù)對(duì)壓力敏感元件信號(hào)進(jìn)行采集、快速數(shù)字濾波、多階方程溫度補(bǔ)償、增加零位校準(zhǔn)、靈敏度校準(zhǔn)功能,可以解決上述問(wèn)題,并可根據(jù)需要增加其他特殊功能,如串口輸出功能。
精密數(shù)字壓力表系統(tǒng)設(shè)計(jì)針對(duì)以往數(shù)字壓力表存在問(wèn)題進(jìn)行如下設(shè)計(jì)。
選用壓阻式壓力傳感器,其具有長(zhǎng)期穩(wěn)定性好、重復(fù)性好、遲滯小、線性好等優(yōu)點(diǎn),不足之處是溫度誤差較大,但可以通過(guò)單片機(jī)溫度補(bǔ)償解決。
傳感器電橋采用恒流源供電,具有溫度影響小、橋路輸出為線性等優(yōu)點(diǎn)。橋路放大電路采用儀表放大器,具有共模抑制比高、輸入阻抗高、線性好、低漂移等優(yōu)點(diǎn)。
一般數(shù)字壓力表為解決干擾除采用模擬電路濾波同時(shí)還需采用數(shù)字濾波。通常為使顯示數(shù)據(jù)穩(wěn)定而對(duì)固定時(shí)間采樣數(shù)據(jù)進(jìn)行均值處理。
一般數(shù)字濾波可以采取一定時(shí)間段采樣數(shù)據(jù)取平均值方法,此方法相對(duì)響應(yīng)時(shí)間較慢,設(shè)計(jì)采用動(dòng)態(tài)平滑濾波,響應(yīng)速度大大提高。
針對(duì)壓阻式壓力傳感器線性好、遲滯小、溫度特性長(zhǎng)期穩(wěn)定好的特點(diǎn),標(biāo)校采用零位和靈敏度調(diào)校即可,不需進(jìn)行各溫度下各壓力點(diǎn)調(diào)校,僅需進(jìn)行常溫零位和靈敏度標(biāo)校即可。
圖1 系統(tǒng)總體
本系統(tǒng)總體設(shè)計(jì)如圖1所示。
精密數(shù)字壓力表傳感器采用進(jìn)口的壓阻式壓力傳感器,具有精度高,長(zhǎng)期穩(wěn)定性好、線性好、重復(fù)性好、遲滯小等優(yōu)點(diǎn),但其溫度系數(shù)較大,需增加溫度傳感器對(duì)其進(jìn)行零點(diǎn)和靈敏度溫度補(bǔ)償才能得到理想的性能。
單片機(jī)選用C8051F060,其具有功能:4352Bytes RAM/64KB Flash,2個(gè)16位A/D,8個(gè)10位A/D,1個(gè)內(nèi)置溫度傳感器,2個(gè)12位D/A,1個(gè)SPI接口,1個(gè)I2C接口,2個(gè)UART接口。其交叉開(kāi)關(guān)方式的配置,使I/O口應(yīng)用更加靈活方便。設(shè)計(jì)使用其中1個(gè)16位A/D對(duì)壓力傳感器信號(hào)和10位A/D對(duì)內(nèi)置溫度傳感器信號(hào)進(jìn)行采樣。
電源部分采用AC/DC電源供電,給單片機(jī)系統(tǒng)供電采用3.3VDC電源,壓阻式壓力傳感器橋路供電采用恒流源,具有溫度系數(shù)相對(duì)恒壓源小的優(yōu)點(diǎn)。
儀表放大電路采用三運(yùn)放結(jié)構(gòu),具有輸入阻抗高、共模抑制比高、零漂小等優(yōu)點(diǎn)。
數(shù)顯電路采用MAX7219專(zhuān)用顯示芯片,其具有集成化的串行輸入/輸出共陰極顯示驅(qū)動(dòng)器,可直接連接單片機(jī)SPI串行接口驅(qū)動(dòng)5位7段碼LED的特性。
數(shù)碼顯示為5位LED數(shù)碼管,可根據(jù)量程和精度進(jìn)行顯示。
串口電路選用MAX3232專(zhuān)用串口芯片,具有將單片機(jī)UART接口轉(zhuǎn)標(biāo)準(zhǔn)RS-232串口功能特性。
零位和靈敏度調(diào)試電路采用輕觸開(kāi)關(guān)低電平觸發(fā)單片機(jī)I/O口方式進(jìn)行,由軟件針對(duì)外部施加的零位壓力輸出和滿(mǎn)量壓力輸出調(diào)整零位和靈敏度。
軟件使用C語(yǔ)言進(jìn)行編程,運(yùn)行于C8051F060微處理器上。通過(guò)51系列微處理keil C51 uV2集成編譯環(huán)境完成系統(tǒng)軟件編譯、仿真、調(diào)試,將系統(tǒng)軟件寫(xiě)入微處理器內(nèi)部FLASH ROM之后,可以實(shí)現(xiàn)系統(tǒng)的獨(dú)立運(yùn)行。精密數(shù)字壓力表軟件主要有四個(gè)設(shè)計(jì)目標(biāo):
圖2 軟件流程
①對(duì)采集壓力傳感器信號(hào)進(jìn)行數(shù)字濾波。
②通過(guò)采集溫度傳感器信號(hào)對(duì)壓力傳感器進(jìn)行溫度補(bǔ)償。
③具有零位校準(zhǔn)和靈敏度校準(zhǔn)的功能。
④配合電路硬件,完成精密數(shù)字壓力表采集、顯示、串口數(shù)據(jù)發(fā)送功能。
軟件基本流程如圖2所示。
精密數(shù)字壓力表設(shè)計(jì)中盡管對(duì)電路硬件部分采取了RC濾波,有些高頻干擾仍然難以去除,故在數(shù)據(jù)處理上采取軟件數(shù)字濾波以消除高頻時(shí)鐘脈沖干擾。數(shù)字濾波算法通常有限幅濾波、中值濾波、算術(shù)平均濾波及有它們組合的混合濾波算法等。針對(duì)被測(cè)壓力信號(hào)變化相對(duì)緩慢的特點(diǎn)(一般為10ms以上),宜采用限幅濾波和算術(shù)平均濾波,以去除電路高頻時(shí)鐘脈沖干擾。
限幅濾波具體原則為:
①先進(jìn)行首次10ms、100次數(shù)據(jù)的算術(shù)平均值計(jì)算。
②再進(jìn)行下一次采樣,判斷與前段平均值差值的絕對(duì)值是否大于20mV,大于則進(jìn)行限幅處理,替換上一采樣周期第一個(gè)采樣數(shù)據(jù),達(dá)到動(dòng)態(tài)平滑濾波目的。
壓阻式壓力傳感器零位、靈敏度隨溫度均會(huì)產(chǎn)生漂移,設(shè)壓力傳感器輸出為,溫度傳感器輸出為,則壓力表輸出(即顯示)(,)可用以下公式表達(dá):
其中()?()?()?()為的函數(shù),可用以下公式表達(dá):
根據(jù)壓阻式壓力傳感器的遲滯(0.01%)特性很好,誤差可以忽略不計(jì),線性(0.02%)較好,壓力表輸出相對(duì)壓力傳感器輸出采用1階方程模型比較合理[1-4]。
壓力表輸出的零位溫度系數(shù)()和靈敏度溫度系數(shù)()相對(duì)溫度傳感器輸出關(guān)系相對(duì)復(fù)雜,一般采用3階方程模型即可,即
通過(guò)表1數(shù)據(jù)代入上述方程組,可解得0、1、2、3、0、1、2、3數(shù)值,獲得壓力表輸出方程。
0、10、20、30為各溫度點(diǎn)溫度傳感器輸出。
0-0、0-10、0-20、0-30為各溫度點(diǎn)壓力傳感器零位輸出。
16-0、16-10、16-20、16-30為各溫度點(diǎn)壓力傳感器滿(mǎn)量輸出。
表1 壓力表標(biāo)校數(shù)據(jù)溫度、壓力取點(diǎn)及溫度傳感器、壓力傳感器輸出
從用戶(hù)使用、標(biāo)校方便角度考慮,壓力表不宜進(jìn)行各壓力、溫度點(diǎn)的標(biāo)校,并將標(biāo)校大量數(shù)據(jù)進(jìn)行芯片數(shù)據(jù)燒寫(xiě),根據(jù)式(6),通過(guò)采集校準(zhǔn)時(shí)的零位數(shù)據(jù)和滿(mǎn)量數(shù)據(jù),可對(duì)壓力表輸出方程的零位和靈敏度進(jìn)行快速修正,具體方法如下:
①壓力表零位校準(zhǔn)
傳感器的零位變化一般由材料微觀缺陷或封裝連接蠕變產(chǎn)生,其特點(diǎn)為零位曲線產(chǎn)生偏移,溫度特性不受影響,因此只需修正式(7)中0項(xiàng)即可。
根據(jù)式(6),在壓力表施加0MPa壓力時(shí),通過(guò)按壓力表面板設(shè)置的校零輕觸開(kāi)關(guān),給單片機(jī)一個(gè)校零觸發(fā)信號(hào),有下式成立
②壓力表靈敏度校準(zhǔn)
傳感器的靈敏度一般由結(jié)構(gòu)尺寸、材料特性、靈敏度溫度特性決定,其中材料特性不會(huì)發(fā)生變化,溫度特性已進(jìn)行補(bǔ)償,結(jié)構(gòu)尺寸可能由于微觀的蠕變、應(yīng)力釋放而產(chǎn)生微小變化,對(duì)靈敏度影響很小,這種情況發(fā)生可能性也比較小,但也需定期標(biāo)校,與零位標(biāo)校原理相同,只需修正式(8)中B0項(xiàng)即可。在壓力表施加16MPa(滿(mǎn)量)壓力時(shí),通過(guò)按壓力表內(nèi)部設(shè)置的校靈敏度輕觸開(kāi)關(guān)(因一般用戶(hù)對(duì)此功能不宜輕易操作,設(shè)在壓力表內(nèi)部),給單片機(jī)一個(gè)校靈敏度觸發(fā)信號(hào),有下式成立
精密數(shù)字壓力表設(shè)計(jì)用于室溫,使用溫區(qū)定為0~+30℃,主要性能指標(biāo)為0~+30℃溫區(qū)內(nèi)示值誤差小于0.1%FS。表2為其全溫區(qū)測(cè)試數(shù)據(jù),滿(mǎn)足誤差指標(biāo)要求。
表2 精密數(shù)字壓力表全溫區(qū)測(cè)試數(shù)據(jù)
試驗(yàn)中使用的壓力校準(zhǔn)設(shè)備為DRUCK的PACE6000系統(tǒng),精度為0.01%,環(huán)境溫度控制設(shè)備為巨孚公司的ECT-150-70- CP-AR恒溫試驗(yàn)機(jī),溫度控制精度±0.2℃。
精密數(shù)字壓力表設(shè)計(jì)中采用單片機(jī)對(duì)壓阻式壓力傳感器進(jìn)行數(shù)字濾波和溫度補(bǔ)償,并根據(jù)需要設(shè)計(jì)了零位和靈敏度調(diào)整功能和串口輸出功能,經(jīng)實(shí)際測(cè)試功能達(dá)到設(shè)計(jì)要求,精密數(shù)字壓力表量程為16MPa,全溫區(qū)(0~+30℃)精度達(dá)到0.1%FS,補(bǔ)償效果理想。
[1] 李強(qiáng), 梁莉, 劉楨, 等.具有溫度補(bǔ)償功能的智能壓力傳感器系統(tǒng)[J].儀器儀表學(xué)報(bào), 2008, 29(9): 1934–1938. LI Qiang, LIANG Li, LIU Zhen, et al.Intelligent pressure sensor system with temperature compensation[J].Chinese Journal of Scientifie Insrrument,2008, 29(9):1934–1938.
[2] 唐煒, 徐曉蘇.基于溫度補(bǔ)償?shù)膫鞲衅鹘7椒捌鋺?yīng)用[J].計(jì)量技術(shù), 2007, (2):64–68.
[3] 沈金鑫, 夏靜.硅壓阻式壓力傳感器智能校準(zhǔn)系統(tǒng)設(shè)計(jì)[J].儀表技術(shù)與傳感器, 2014, (3): 1–3.SHEN Jinxin, XIA Jing.Intelligent calibration system design of silicon piezoresistive pressure sensor[J].Instrument Technique and Sensor, 2014, (3): 1–3.
[4] 朱龍俊.擴(kuò)散硅壓力傳感器的高精度誤差補(bǔ)償算法[J].自動(dòng)化與儀表, 2012, 27(3): 53–56.ZHU Longjun.High-accuracy error compensation algorithm of diffusion silicon pressure sensor[J].Automation & Instrumentation, 2012, 27(3): 53–56.
Design of precision digital pressure gauge based on C8051F060
CHEN Bihai, CHENG Baojin, LI Yong
(Beijing Research Institute of Telemetry, Beijing 100076, China)
The precision digital pressure gauge is based on the C8051F060 chip microcomputer. Through data collection of silicon piezoresistive pressure sensor and temperature sensor, the pressure data is compensated in the full temperature range to improve the accuracy of the pressure gauge. According to the demand of the pressure gauge, the serial port transport function, panel zero calibration function and sensitivity calibration function are designed to make it more practical.
Pressure sensor, Digital pressure gauge, Temperature compensation
TH812
B
CN11-1780(2019)04-0071-04
陳碧海 1964年生,高級(jí)工程師,主要研究方向?yàn)閴毫y(cè)試設(shè)備。
程寶進(jìn) 1988年生,工程師,主要研究方向?yàn)閴毫y(cè)試設(shè)備。
李 勇 1989年生,工程師,主要研究方向?yàn)閴毫鞲衅鳌?/p>
Email:ycyk704@163.com TEL:010-68382327 010-68382557
2019-05-21
2019-07-11