摘 要: 壓力是重要的熱工參數(shù)之一,各種氣體、液體的壓力測量在生產(chǎn)生活、工業(yè)現(xiàn)場、科學實驗等領域有著廣泛的應用。這里采用STM8S單片機作為主控制單元,提出一種新型數(shù)字壓力表的設計方法。介紹壓阻式壓力傳感器的測量原理和系統(tǒng)的整體框架,并描述相應的軟硬件設計的方法,特別是在軟件方面的處理,包括壓力采集和標定校準算法。實驗結(jié)果顯示,壓力數(shù)據(jù)顯示較為穩(wěn)定,能夠滿足基本的精度要求。設計的數(shù)字壓力表簡單,易用,便于攜帶。
關鍵詞: STM8S; 壓阻式壓力傳感器; 標定; 數(shù)字壓力表
中圖分類號: TN911?34; TP212.9 文獻標識碼: A 文章編號: 1004?373X(2015)04?0139?03
在工業(yè)生產(chǎn)和科研活動中,壓力計量往往是重要環(huán)節(jié),甚至成為了保證產(chǎn)品質(zhì)量以及生產(chǎn)安全的決定因素。傳統(tǒng)的數(shù)字壓力表是沿用機械壓力表來顯示的,在光線弱煙霧多的環(huán)境中,不僅難以識別具體壓力值,而且靈敏度,可視度,誤差范圍以及機械指針表普遍存在的滯針,跳針,機械器件自然磨損等通病。所以設計一種簡單、可視度高的便捷式數(shù)字壓力表是很有實際意義的。
1 壓阻式壓力傳感器的測量原理
壓力傳感器可以把壓力信號轉(zhuǎn)換成可測量的電信號,特點是精度高、線性一致、重復性好[1]。將壓力的變化轉(zhuǎn)換成電阻變化的傳感器被稱為壓阻式壓力傳感器,當需要進行高精度測量時,通常采用此種傳感器,其內(nèi)部是一個惠斯通電橋,電路結(jié)構(gòu)如圖1所示。
壓阻式壓力傳感器是集成電路工藝技術在硅片上制造出4個等值的薄膜電阻,并組成電橋電路。當不受力作用時,電橋處于平衡狀態(tài),無電壓輸出;當受到力作用時,電橋失去平衡,輸出與應力成正比的電壓[2]。不同類型的壓力傳感器輸出信號大小是不一樣的,一般常用的有2~3種,凈輸出2 mV/V,10 mV/V等。設計中采用的是凈輸出2 mV/V的硅壓阻式壓力傳感器BYP100,信號輸出較為穩(wěn)定。
2 系統(tǒng)整體框圖
本系統(tǒng)的整體框圖如圖2所示,系統(tǒng)主要包括了STM8S單片機模塊和外圍電路,外圍電路有液晶顯示模塊、按鍵電路以及放大器電路。系統(tǒng)電源供電采用5 V的穩(wěn)壓電壓。
STM8S單片機系列是8位的低功耗的單片機,工作的電壓范圍為2.95~5.5 V,可支持干電池供電工作,并提供真正的E2PROM數(shù)據(jù)寫入操作,可達30萬次擦寫極限,有利于數(shù)據(jù)的掉電保護。該系列單片機有10位ADC,最多有16個采集通道。
3 硬件設計
3.1 放大器電路
放大器電路主要采用的是MCP6022芯片,內(nèi)部結(jié)構(gòu)如圖3所示。MCP6022是高性能的軌對軌輸入/輸出運算放大器,帶寬為10 MHz,噪聲為8.7(10 kHz),低失調(diào)電壓為±500~ ±250 μV,總諧波失真為0.000 53%,電源電壓范圍為2.5~5.5 V,滿足系統(tǒng)的設計要求。
MCP6022的2腳和3腳接收傳感器的壓力輸入信號,MCP6022的1腳出來的就是放大后的傳感器壓力輸出信號,供給單片機AD通道采集。MCP6022的8腳和4腳分別接電源和地,給MCP6022芯片供電。
3.2 LCD顯示模塊
LCD顯示電路是采用的是HT1621芯片來驅(qū)動LCD段碼液晶進行顯示。HT1621是128點內(nèi)存映象和多功能的LCD驅(qū)動器,HT1621的軟件配置特性使它適用于多種LCD應用場合包括LCD模塊和顯示子系統(tǒng),用于連接主控制器和HT1621的管腳只有4或5條,重要的是HT1621還有一個節(jié)電命令用于降低系統(tǒng)功耗。
通過設置對應的占空比、偏壓比、以及LCD驅(qū)動電壓等驅(qū)動LCD段碼液晶顯示。本系統(tǒng)采用占空比為[14],偏壓比[13],LCD驅(qū)動電壓為5 V來驅(qū)動4段6位的LCD段碼液晶。
4 軟件設計
4.1 壓力采集算法設計
為了保證采集的壓力數(shù)據(jù)在壓力表上能夠顯示穩(wěn)定,波動范圍較小,滿足能夠外界壓力變化下壓力值的連續(xù)變化,并且消除由于一些干擾引起的采樣值的偏差,需要設計對應的壓力采集處理算法[3]。壓力處理過程如圖4所示。
壓力采集通過定時器控制50 ms采集1次。定義一個包含10個數(shù)據(jù)元素的浮點型緩沖區(qū)數(shù)組buf[10],用來存放采集的A/D值value,并返回10個數(shù)據(jù)元素的平均值avervalue作為標定計算中的電壓值。
當填滿緩沖區(qū)的值后,下一次采集之前先將數(shù)組中的元素用上一次的平均值填滿,然后采集到的一個A/D值利用先進先出的方法存入緩沖區(qū)數(shù)組中。其中,如果當前采集到的A/D值,與當前顯示的A/D值之間的差值在10個范圍之內(nèi),差值大于10的,將當前的A/D值加0.2再存入數(shù)組中;差值小于10的,將當前壓力值減0.2存入數(shù)組。
程序部分代碼如下:
4.2 標定校準設計
為了減少誤差,保證數(shù)字壓力表的精度,可以采用多點校準,也就是利用多條線段來模擬接近真實的壓力傳感器的輸出曲線[4]。本文采用的是三點校準的方法,分別是在零點,半量程和滿量程這三個點,設計精度在0.5%左右。具體標定過程如圖5所示。
利用按鍵1和按鍵2之間的配合來采集多個點的壓力值。通過標定過程采集各個點的電壓A/D值作為標定值。標定采用的公式為:
[P=Pi+1-PiVi+1-Vi·V-Vi+Pi]
式中:P[i]是多點校準中對應的i點的壓力值;V[i]是多點校準中對應的i點的電壓值;V是經(jīng)過壓力算法處理過的值。
對于獲得更加精確的壓力值顯示,可以采用繼續(xù)增加校準的點數(shù)的方法來標定。另外已經(jīng)標定過的電壓值可以存儲到單片機的E2PROM中,提供掉電數(shù)據(jù)的保護,避免重復標定[5]。
5 測試與結(jié)論
經(jīng)過實驗測試,在5 V穩(wěn)壓電源供電下,設計使用量程在1 000 kPa下,采用3點標定校準的情況下,數(shù)字壓力表顯示的數(shù)據(jù)跳動范圍為1~4 kPa,數(shù)據(jù)顯示較為穩(wěn)定,能夠達到0.5級的精度要求。如表1所示的壓力數(shù)據(jù)。
6 結(jié) 語
設計的數(shù)字壓力表采用的是STM8S系列單片機作為控制單元,滿足一定的測量精度,硬件電路簡單,軟件設計可靠,對于便捷式、可視化、誤差小的數(shù)字壓力表的設計具有一定的參考意義。
參考文獻
[1] 閻文靜,張鑒,高香梅.壓阻式壓力傳感器性能的研究[J].傳感器世界,2012(2):14?17.
(上接第141頁)
[2] 凌永發(fā),王杰.壓力傳感器的選擇與應用[J].云南民族學院學報:自然科學版,2003(3):192?194.
[3] 郭睿.智能數(shù)字壓力表設計[J].機電信息,2011(21):139?140.
[4] 王金晨,馬思樂,紀成,等.基于MSP430的高精度微功耗可存取數(shù)字壓力表設計[J].化工自動化及儀表,2012(5):619?621.
[5] 劉秀義,李軍,程文偉.基于AVR的精密數(shù)字壓力表的設計[J].電腦知識與技術,2009(10):2641?2462.