文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.05.005
中文引用格式: 楊峰,楊洋,,潘彬,,等. 基于自主傳感器信號(hào)調(diào)理芯片溫度補(bǔ)償?shù)能浖O(shè)計(jì)[J].電子技術(shù)應(yīng)用,2016,,42(5):18-20.
英文引用格式: Yang Feng,,Yang Yang,Pan Bin,et al. Design of the temperature compensation software based on self-made transducer signal conditioning chip[J].Application of Electronic Technique,,2016,,42(5):18-20.
0 引言
針對(duì)壓阻式壓力傳感器在應(yīng)用中易發(fā)生溫度漂移的問(wèn)題,開(kāi)發(fā)了一種智能壓阻式傳感器溫度補(bǔ)償系統(tǒng),。該方法利用現(xiàn)代信號(hào)調(diào)理技術(shù),,以信號(hào)調(diào)理芯片為核心,通過(guò)插值法對(duì)采集的溫度補(bǔ)償參數(shù)進(jìn)行擬合,,從而實(shí)現(xiàn)了對(duì)壓阻式壓力傳感器溫度漂移的高精度補(bǔ)償,。
在實(shí)際應(yīng)用中,大多數(shù)壓力傳感器為集成單臂電橋和差分輸出信號(hào)的壓阻式傳感器,,這類(lèi)傳感器具有高靈敏度,、高線性度、穩(wěn)定性好等優(yōu)點(diǎn),,但是由于硅壓阻傳感器使用的半導(dǎo)體材料——硅的固有特性,,使得該傳感器存在一致性差、溫度漂移和非線性等問(wèn)題[1],,同時(shí)由于其擴(kuò)散電阻的溫度系數(shù)較大和制作工藝,,使其在寬溫區(qū)的高精度受限[2]。
軟件補(bǔ)償是利用計(jì)算機(jī)的強(qiáng)處理能力,,通過(guò)一系列的補(bǔ)償算法對(duì)壓力傳感器因溫度變化所產(chǎn)生的漂移進(jìn)行修正,。這種方法不僅可以補(bǔ)償溫度變化對(duì)壓力傳感器造成的影響,同時(shí)還可改善非線性指標(biāo),,是提高壓力傳感器精度的一種有效方法,。與硬件補(bǔ)償相比,, 軟件補(bǔ)償?shù)男Ч谩⒕雀咔页杀镜汀?/p>
1 補(bǔ)償流程及核心算法
1.1 傳感器補(bǔ)償流程設(shè)計(jì)
本文所設(shè)計(jì)的溫度補(bǔ)償系統(tǒng)對(duì)壓阻式壓力傳感器的補(bǔ)償分為兩部分:預(yù)補(bǔ)償過(guò)程和在溫度預(yù)設(shè)點(diǎn)下的正式補(bǔ)償過(guò)程,。由于不同的壓阻式壓力傳感器橋路電阻,、靈敏度、輸出電壓范圍等參數(shù)存在很大差異,,需要使用前在常溫下對(duì)壓力傳感器進(jìn)行預(yù)補(bǔ)償,,以保證芯片內(nèi)部電路工作在線性及可調(diào)節(jié)的范圍內(nèi),。預(yù)補(bǔ)償流程圖如圖1所示,。預(yù)補(bǔ)償過(guò)程通常在常溫下進(jìn)行,目的是計(jì)算正式補(bǔ)償過(guò)程中所需要的各種寄存器的初始化值,。在預(yù)補(bǔ)償之后,,可以進(jìn)入正式補(bǔ)償流程。
正式補(bǔ)償流程圖如圖2所示,,補(bǔ)償?shù)闹饕獌?nèi)容是求取設(shè)定溫度點(diǎn)的靈敏度補(bǔ)償系數(shù) FSO,、偏移量系數(shù)補(bǔ)償系數(shù) OFFSET。
HKA2910可以設(shè)定1~114個(gè)待定補(bǔ)償?shù)臏囟赛c(diǎn)數(shù),。如果只進(jìn)行單點(diǎn)溫度補(bǔ)償,,則寫(xiě)入Flash中不同溫度的補(bǔ)償數(shù)據(jù)都相同。進(jìn)行兩點(diǎn)溫度補(bǔ)償時(shí),,則會(huì)對(duì)不同溫度的校準(zhǔn)數(shù)據(jù)進(jìn)行線性擬合,。進(jìn)行三點(diǎn)或三點(diǎn)以上的溫度補(bǔ)償時(shí),軟件會(huì)對(duì)不同溫度的校準(zhǔn)數(shù)據(jù)進(jìn)行擬合,。
1.2 補(bǔ)償數(shù)值擬合算法
如果用實(shí)驗(yàn)的方法,,在-55 ℃~+150 ℃的范圍內(nèi),把各個(gè)溫度下的補(bǔ)償系數(shù)都測(cè)出來(lái),,將是一項(xiàng)非常耗時(shí)且重復(fù)性強(qiáng)的工作,,這是沒(méi)有必要的。通常情況下,,選擇有限的離散溫度點(diǎn)對(duì)壓力傳感器進(jìn)行校正,,然后記錄這些溫度點(diǎn)上的補(bǔ)償系數(shù),采用軟件的算法得到在各個(gè)溫度點(diǎn)的補(bǔ)償系數(shù),。
采用軟件算法實(shí)現(xiàn)離散數(shù)據(jù)的線性化,,通常有查表法和插值法。查表法獲得的數(shù)據(jù)的線性度與表數(shù)據(jù)的數(shù)量有關(guān),,數(shù)據(jù)越多則線性度越好,,但是數(shù)據(jù)越多所需要占用的存貯空間也越大[3]。
本系統(tǒng)采用插值法對(duì)數(shù)據(jù)進(jìn)行擬合,,線性插值法是一種常用的插值方法,。如圖3所示,X為自變量,Y為因變量,,它們是非線性關(guān)系,。插值法把自變量X分成n個(gè)均勻的區(qū)間,每個(gè)區(qū)間的端點(diǎn)Xn都對(duì)應(yīng)一個(gè)Yn,。實(shí)際的測(cè)量值X一定會(huì)落在某個(gè)區(qū)間(Xn,,Xn+1)內(nèi),設(shè)y=f(x),??捎美脜^(qū)間的端點(diǎn)值來(lái)求取一次函數(shù)表達(dá)式f(x)的值。
采用線性插值法,,只要區(qū)間分得足夠多,,就可以達(dá)到所需的計(jì)算精度。
2 軟件介紹
為了配合所設(shè)計(jì)的補(bǔ)償流程,,本軟件通過(guò)C#語(yǔ)言進(jìn)行開(kāi)發(fā),。利用C#提供的大量可視化控件以及第三方提供的各種強(qiáng)大的控制資源來(lái)設(shè)計(jì)交互式的操作界面,實(shí)現(xiàn)數(shù)據(jù)的發(fā)送與接收,、參數(shù)設(shè)定,、傳感器標(biāo)定、數(shù)據(jù)處理和生成等功能,。
2.1 主界面
系統(tǒng)的主操作界面如圖4所示,,包括工具欄、校準(zhǔn)參數(shù)區(qū),、用戶(hù)信息區(qū)和補(bǔ)償初始值區(qū),。
修改校準(zhǔn)參數(shù)中的參數(shù)值,能夠使得校準(zhǔn)結(jié)果的精度發(fā)生改變,。溫度點(diǎn)數(shù)越多,,絕對(duì)誤差越小,則校準(zhǔn)結(jié)果的精度越高,。
補(bǔ)償初始值中的數(shù)據(jù)反應(yīng)的是信號(hào)調(diào)理芯片中寄存器的值,,能夠通過(guò)修改界面中的值修改寄存器。
點(diǎn)擊運(yùn)行按鈕后,,界面與芯片產(chǎn)生通信,,補(bǔ)償初始值區(qū)獲取到芯片中寄存器的值。設(shè)置校準(zhǔn)參數(shù)后,,點(diǎn)擊預(yù)校準(zhǔn),,根據(jù)提示步驟,測(cè)量指定壓強(qiáng)下的電壓,,獲取預(yù)校準(zhǔn)后各個(gè)寄存器的值,,之后在所需測(cè)試的溫度上進(jìn)行主校準(zhǔn),,獲取多個(gè)溫度點(diǎn)上的FSO、Offset寄存器值,,由多個(gè)不同溫度下FSO,、Offset寄存器值進(jìn)行擬合得出溫度區(qū)間內(nèi)各個(gè)溫度點(diǎn)的FSO、Offset寄存器值,,并寫(xiě)入Flash中,,軟件校準(zhǔn)結(jié)束。
2.2 校準(zhǔn)記錄界面
在進(jìn)行主校準(zhǔn)時(shí),,校準(zhǔn)步驟中FSO,、Offset寄存器值以及所測(cè)量電壓的變化都記錄在校準(zhǔn)記錄界面中,如圖5所示,。
2.3 計(jì)算擬合曲線界面
此軟件提供兩種擬合方式,,一種是將每個(gè)溫度點(diǎn)間的寄存器值以直線連接為折線補(bǔ)償,,一種是使每個(gè)溫度點(diǎn)間的值連接成為一條曲線,,如圖6所示。在主校準(zhǔn)完成后默認(rèn)為曲線補(bǔ)償方式,。
在軟件應(yīng)用中設(shè)置多個(gè)溫度補(bǔ)償點(diǎn),,按照?qǐng)D2補(bǔ)償流程圖所示進(jìn)行多個(gè)溫度下的補(bǔ)償。在所有設(shè)置的溫度點(diǎn)都補(bǔ)償完畢后,,系統(tǒng)將自動(dòng)根據(jù)不同校準(zhǔn)溫度下FSO和OFFSET的值擬合出從-55 ℃~+150 ℃范圍內(nèi)的所有補(bǔ)償參數(shù),,并將擬合出的參數(shù)寫(xiě)入芯片F(xiàn)lash中。至此,,芯片補(bǔ)償電路就可以在規(guī)定溫度范圍內(nèi)對(duì)此傳感器進(jìn)行全自動(dòng)補(bǔ)償,。芯片在進(jìn)行補(bǔ)償時(shí)會(huì)利用片內(nèi)溫度傳感器檢測(cè)當(dāng)前環(huán)境溫度,根據(jù)寄存器內(nèi)溫度數(shù)值的變化,,芯片會(huì)搜尋存儲(chǔ)在內(nèi)部Flash中的對(duì)應(yīng)溫度點(diǎn)的補(bǔ)償系數(shù)加載到相應(yīng)的寄存器中,,并轉(zhuǎn)換成模擬量來(lái)修正傳感器輸出信號(hào)中的溫度誤差。
3 結(jié)束語(yǔ)
用C#開(kāi)發(fā)的硅壓阻式傳感器軟件補(bǔ)償系統(tǒng)改進(jìn)了原有的傳感器補(bǔ)償方法,,提高了效率,,支持Windows操作系統(tǒng)運(yùn)行,人機(jī)界面友好,。經(jīng)硬件,、軟件調(diào)試后,現(xiàn)場(chǎng)測(cè)試穩(wěn)定可靠,。通過(guò)對(duì)測(cè)定數(shù)據(jù)進(jìn)行誤差分析研究,,證明該系統(tǒng)的功能和性能指標(biāo)達(dá)到了設(shè)計(jì)要求。
利用軟件實(shí)現(xiàn)傳感器溫度誤差補(bǔ)償是一種非常簡(jiǎn)便,、有效的方法,。這種方法能夠有效降低測(cè)量系統(tǒng)的電路復(fù)雜度,,并且節(jié)約成本,無(wú)需額外的操作便可以得到可靠的數(shù)據(jù),,適合對(duì)批量傳感器進(jìn)行補(bǔ)償,,因此具有極其廣泛的應(yīng)用前景。
參考文獻(xiàn)
[1] 胡遼林.硅壓阻傳感器的智能溫度補(bǔ)償研究[J].傳感技術(shù)學(xué)報(bào),,2012(4).
[2] 趙妍.基于MAX1452的壓力傳感器溫度補(bǔ)償[J].電器應(yīng)用,,2006(4).
[3] 王俊杰.壓力傳感器高精度溫度補(bǔ)償?shù)能浖?shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2014(11).
[4] 張宏濤.關(guān)于壓力傳感器零點(diǎn)熱漂移的補(bǔ)償分析[J].科技信息,,2008(9).