基于Pcap01的電容式液位傳感器系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要 為精確測(cè)量汽車油箱油量,利用電容量隨極板間介質(zhì)變化的原理,設(shè)計(jì)了基于電容轉(zhuǎn)數(shù)字芯片Pcap01的電容式液位傳感器測(cè)量系統(tǒng)。采用柱形電容傳感器等措施,減小了寄生和雜散電容,并通過Pcap01內(nèi)部寄存器的設(shè)置,實(shí)現(xiàn)了數(shù)據(jù)校準(zhǔn)。該系統(tǒng)在自行設(shè)計(jì)的實(shí)驗(yàn)平臺(tái)上進(jìn)行了多次實(shí)驗(yàn),結(jié)果表明,系統(tǒng)具有良好的精度和線性度,并最終提出了電容式液位測(cè)量方案。
隨著汽車工業(yè)正向著節(jié)能、高速、經(jīng)濟(jì)的方向發(fā)展,使得現(xiàn)代汽車均采用數(shù)字化系統(tǒng)設(shè)計(jì)。由于汽車油箱大多采用異型結(jié)構(gòu),所以為了使得油量測(cè)量的精度和穩(wěn)定性得到提高,各大汽車廠商都在致力于解決這一問題。
液位測(cè)量常用的方法有滑動(dòng)電位器法,電感線圈法,數(shù)字電容法等?;瑒?dòng)電位器法是目前中低檔汽車大多采用的檢測(cè)方法,但當(dāng)油垢覆蓋電位器后,其阻值會(huì)發(fā)生變化,造成誤差過大,使此類油箱傳感器成為易損件。電感線圈法為現(xiàn)在高檔汽車多采用的方法,但其結(jié)構(gòu)復(fù)雜、成本高、無(wú)法廣泛使用。數(shù)字電容法是相對(duì)易實(shí)現(xiàn)、設(shè)計(jì)靈活、成本低、精度高的測(cè)量方法,但需解決線性度和補(bǔ)償校正等問題。
汽油或柴油是具有電氣絕緣特性的液體混合物,黏度低、流動(dòng)性好、蒸發(fā)性強(qiáng),測(cè)量對(duì)象的這些物理特性為使用電容式液位傳感器創(chuàng)造了條件;另一方面,高速發(fā)展的微電子技術(shù)能夠以相對(duì)低廉的價(jià)格去實(shí)現(xiàn)小電容的精確測(cè)量,這種測(cè)量方案具有廣闊的市場(chǎng)前景。
1 硬件設(shè)計(jì)
1.1 電容式測(cè)量油量原理
電容式傳感器是將被測(cè)非電量的變化轉(zhuǎn)換成電容量變化的一種傳感器。電容式液位傳感器是以液位變化時(shí),引起介電常數(shù)變化為原理的。當(dāng)被測(cè)液體的液面在電容式圓柱形套筒電極間變化時(shí),引起電極間不同介電常數(shù)介質(zhì)的高度發(fā)生變化,從而導(dǎo)致電容變化。本電容傳感器采用圓柱形套筒結(jié)構(gòu),如圖1所示。
電容式傳感器外殼和內(nèi)圓柱采用鈦合金材料,構(gòu)成兩個(gè)電極板,設(shè)外殼半徑為R1;內(nèi)圓柱半徑為R2;汽油介電常數(shù)為ε0;真空中的介電常數(shù)為ε1;圓柱套筒的高度為H;液面的高度為L(zhǎng);忽略邊緣效應(yīng),當(dāng)L=0時(shí),傳感器處于零點(diǎn),電容值最小,傳感器電容量
可見當(dāng)傳感器中各參數(shù)都確定時(shí),傳感器電容值CH與液面高度L成線性關(guān)系。
1.2 Peap01簡(jiǎn)介
Pcap01是一款帶有單片機(jī)處理單元的專用電容測(cè)量的電容數(shù)字轉(zhuǎn)換單芯片方案,其內(nèi)部結(jié)構(gòu)原理如圖2所示。其前端轉(zhuǎn)換單元是基于Acam公司的PICOCAP測(cè)量原理。這種轉(zhuǎn)換測(cè)量原理提供了對(duì)于轉(zhuǎn)換時(shí)間范圍最小可達(dá)2μs的高精度時(shí)間轉(zhuǎn)換。芯片內(nèi)部帶有一個(gè)48位DSP單元,這個(gè)處理單元將處理電容測(cè)量的信息,獲得測(cè)量數(shù)據(jù),并將結(jié)果送到芯片輸出端口。所得數(shù)據(jù)將存放在內(nèi)部RAM當(dāng)中,而內(nèi)部有OTP或者SRAM兩種方法編寫程序。
Pcap01有漂移和接地兩種連接電容傳感器的方式,由于本設(shè)計(jì)管腳資源充足,為提高抗干擾性,采用漂移連接法,電容傳感器通過屏蔽線直接連到Pcap01,測(cè)得的電容值轉(zhuǎn)換成數(shù)字值,精度最高可達(dá)21位有效位,可通過讀取讀寄存器中待測(cè)電容與參考電容的比率從而計(jì)算出待測(cè)電容值。實(shí)驗(yàn)設(shè)計(jì)量程為16~45 pF,而Pcap01可測(cè)量范圍覆蓋達(dá)到幾F到幾百nF,所以滿足本設(shè)計(jì)對(duì)于測(cè)量范圍的要求。
電容傳感器數(shù)據(jù)可在芯片內(nèi)部進(jìn)行校準(zhǔn),然后通過SPI或者I2C數(shù)據(jù)串行接口進(jìn)行傳送。Pcap01帶有標(biāo)準(zhǔn)固件,提供了20個(gè)配置和參數(shù)寄存器以及12個(gè)讀寄存器。
1.3 數(shù)字電容式液位傳感器應(yīng)用系統(tǒng)
本設(shè)計(jì)通過Pcap01帶有的標(biāo)準(zhǔn)固件03.01.xx配置電容測(cè)量寄存器并進(jìn)行讀取,選擇STM32F103ZET6通過I2C串行總線接收來自Pcap01的數(shù)字電容測(cè)量值,然后將數(shù)據(jù)發(fā)送至LCD屏顯示,其系統(tǒng)框圖如圖3所示。
這里采用單一傳感器漂移模式,根據(jù)電容傳感器測(cè)量數(shù)據(jù)選擇20 pF陶瓷電容為參考電容連接在PC0和PC1兩端,待測(cè)電容連接在PC2和PC3兩端。設(shè)置配置寄存器為漂移單一電容模式,內(nèi)部放電電阻為90 kΩ,選擇電容測(cè)量的觸發(fā)源為持續(xù)觸發(fā)模式。
通過讀寄存器Res1讀到的是C/C參舞考比率,無(wú)符號(hào)固定點(diǎn)數(shù)帶有3位整數(shù)和21位小數(shù),數(shù)值為0~7.999 9,精度為0.477×10-6。雖然Pcap01有著內(nèi)部接地補(bǔ)償和外部漂移寄生電容補(bǔ)償,但為了保證系統(tǒng)可靠運(yùn)行和高精度測(cè)量,還要解決好外圍電路的抗干擾和屏蔽問題,其中去耦電容的選擇以及電源的穩(wěn)定性都是系統(tǒng)硬件設(shè)計(jì)的重要環(huán)節(jié)。
2 軟件結(jié)構(gòu)設(shè)計(jì)
系統(tǒng)的軟件設(shè)計(jì)包括Pcap01部分和STM32F103ZET6部分。Pcap01部分主要包括寄存器的配置,以及電容數(shù)據(jù)采集模塊;STM32F103ZET6部分主要包括與Pcap01的串行通訊和與LCD屏通訊顯示數(shù)據(jù)兩部分。Pcap01部分軟件采用匯編語(yǔ)言編寫,STM32F103ZET6部分軟件則使用C語(yǔ)言編寫。
2.1 Pcap01部分軟件設(shè)計(jì)
在軟件開發(fā)評(píng)估過程中,是將固件寫到SRAM中的。Pcap01的SRAM地址空間為4 k x 8 bit。開始上電后發(fā)送0x88,這個(gè)命令將復(fù)位所有狀態(tài)。發(fā)送8位數(shù)據(jù)至000到FFF的任意SRAM地址并從此地址再讀回?cái)?shù)據(jù),進(jìn)行通訊測(cè)試后再次發(fā)送操作碼0x88狀態(tài)全復(fù)位。固件Pcap01_standard.hex由ACAM公司官方提供,數(shù)據(jù)發(fā)送至SRAM后,就可按照設(shè)計(jì)要求進(jìn)行配置寄存器的設(shè)置了。設(shè)計(jì)選擇的是單一漂移電容模式,一個(gè)傳感器,一個(gè)參考電容,完全補(bǔ)償,內(nèi)部放電電阻為90 kΩ,持續(xù)觸發(fā),電容測(cè)量的循環(huán)時(shí)間為20μs。電容測(cè)量的循環(huán)時(shí)間是一個(gè)重要的CDC參數(shù),需要注意電容放電時(shí)間的大小,設(shè)置的循環(huán)時(shí)間一定要足夠長(zhǎng),默認(rèn)情況下設(shè)置的循環(huán)時(shí)間>2倍的放電時(shí)間,所以選擇20μs可以滿足設(shè)計(jì)要求。配置寄存器設(shè)置完后發(fā)送部分復(fù)位操作碼0x8a和開始電容測(cè)量指令0x8c,等待100 ms后就可從Res1寄存器中讀取C/C參考的比率。
2.2 STM32F103ZET6部分軟件設(shè)計(jì)
STM32F103ZET6是一款基于ARM Cortex—M3內(nèi)核的32位處理器,內(nèi)部帶有I2C硬件接口。如今I2C總線協(xié)議已成為芯片間低速串行通信的事實(shí)標(biāo)準(zhǔn),應(yīng)用范圍將越來越廣。I2C總線在傳輸數(shù)據(jù)過程中共有3種類型信號(hào),分別是開始信號(hào)、結(jié)束信號(hào)和應(yīng)答信號(hào)。在讀時(shí)序中,STM32F103ZET6在發(fā)送開始信號(hào)后的第1個(gè)Byte就要發(fā)送一個(gè)單獨(dú)的7位設(shè)備地址,Pcap01作為從機(jī)的設(shè)備地址為1010000。STM32F103ZET6接收到數(shù)據(jù),進(jìn)行數(shù)據(jù)轉(zhuǎn)化后濾波,再通過8位數(shù)據(jù)總線的并行接口發(fā)送至LCD液晶屏顯示。軟件流程圖如4所示。
3 實(shí)驗(yàn)驗(yàn)證與結(jié)果分析
為驗(yàn)證系統(tǒng)的測(cè)量精度和性能,對(duì)樣機(jī)進(jìn)行了實(shí)驗(yàn)測(cè)試,采用30 cm高度的電容式傳感器和93號(hào)汽油在自行設(shè)計(jì)的實(shí)驗(yàn)平臺(tái)上進(jìn)行多次實(shí)驗(yàn)。
3.1 精度分析
傳感器測(cè)得的電容值與參考電容的比率C/C參考存放于Pcap01的Res1寄存器中,對(duì)10 cm和20 cm高度的汽油進(jìn)行多次測(cè)量,結(jié)果如表1所示。
Pcap01的測(cè)量比率范圍為0~7.999 9,從測(cè)量結(jié)果可以看到,24位的測(cè)量結(jié)果可以穩(wěn)定在高12位,去除整數(shù)位,小數(shù)位可以穩(wěn)定在9位,則測(cè)量精度為20/(29-1)=0.04 pF。
3.2 線性度分析
由式(1)可知,電容C與液面高度x成正比關(guān)系,圖6為測(cè)量范圍0~35cm,進(jìn)給量為0.5 cm時(shí)的傳感器電容值與高度值的變化曲線,從圖中可以看出,系統(tǒng)具有較好的線性度。
4 結(jié)束語(yǔ)
本文利用電容轉(zhuǎn)數(shù)字芯片Pcap01,結(jié)合STM32對(duì)于電容數(shù)據(jù)的處理,充分考慮了信號(hào)的屏蔽與抗干擾等問題,通過在自行設(shè)計(jì)的實(shí)驗(yàn)平臺(tái)上進(jìn)行的測(cè)量精度與線性度分析實(shí)驗(yàn)顯示系統(tǒng)具有較高的可靠性。利用Pcap01設(shè)計(jì)的液位傳感器系統(tǒng)具有結(jié)構(gòu)簡(jiǎn)單、精度高、測(cè)量范圍廣的特點(diǎn),適合用于油箱、油庫(kù)等的液位測(cè)量中。