《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > 高精度數(shù)字式應(yīng)力傳感器的設(shè)計(jì)與實(shí)現(xiàn)

高精度數(shù)字式應(yīng)力傳感器的設(shè)計(jì)與實(shí)現(xiàn)

2008-07-21
作者:丁 宏1,蔣洪濤2,王艷紅3,

??? 摘 要: 利用ADI公司的AD?滋C845芯片,提高了系統(tǒng)集成度,采用硬件獨(dú)特設(shè)計(jì)以及軟件濾波、軟件非線性補(bǔ)償算法,設(shè)計(jì)并實(shí)現(xiàn)了一種精度達(dá)10-5以上的高精度數(shù)字式應(yīng)力傳感器,滿足在一些高精度測(cè)量領(lǐng)域的需求。同時(shí),豐富、簡(jiǎn)便的軟件通信協(xié)議" title="通信協(xié)議">通信協(xié)議使傳感器在使用過(guò)程中的校準(zhǔn)、去皮重、軟件濾波、多傳感器同時(shí)工作(陣列方式)時(shí)的地址設(shè)置變的非常方便、快捷。
??? 關(guān)鍵詞: ADμC845? 高精度測(cè)量? 軟件濾波? 補(bǔ)償算法? 通信協(xié)議

?

??? 隨著計(jì)算機(jī)技術(shù)和集成電路技術(shù)的發(fā)展,人們對(duì)傳感器的要求也隨之提高,近年來(lái)出現(xiàn)的數(shù)字傳感器" title="數(shù)字傳感器">數(shù)字傳感器就是一個(gè)很典型的例子。
??? 目前批量生產(chǎn)的模擬式應(yīng)力、應(yīng)變傳感器的轉(zhuǎn)換精度一般在萬(wàn)分之三至萬(wàn)分之一,甚至更高。而一些比較常用的應(yīng)力、應(yīng)變數(shù)字傳感器中集成電路芯片內(nèi)置的A/D" title="A/D">A/D轉(zhuǎn)換器通常是14位的,其極限量化誤差在±(1/2)×2-14左右,即絕對(duì)值相當(dāng)于2-14,也就是說(shuō),A/D的最后一位通常是靠不住的。因此這類芯片的轉(zhuǎn)換精度可以達(dá)到十進(jìn)制的萬(wàn)分之1.2。從上面分析可以看出,靠這類芯片無(wú)法保證原模擬式傳感器的轉(zhuǎn)換精度,因?yàn)榱炕`差已經(jīng)與模擬傳感器" title="模擬傳感器">模擬傳感器的誤差處在一個(gè)數(shù)量級(jí)。而數(shù)字化后的傳感器精度如果低于原模擬傳感器的精度,這種轉(zhuǎn)換就已失去意義。
??? 此前也有一些利用24位的A/D(如AD7730等)與CPU的組合,設(shè)計(jì)出數(shù)字傳感器,但其系統(tǒng)集成度明顯較低,可靠性也因此降低,而成本則高于本設(shè)計(jì)。
??? 本文采用ADμC845芯片,利用其內(nèi)置的24位A/D、串行口,配以外部232/485芯片、外部數(shù)據(jù)平滑濾波算法及通信協(xié)議,設(shè)計(jì)了一種集成度較高、能輸出232/485數(shù)字量的高精度數(shù)字式應(yīng)力傳感器,其量化誤差在±(1/2)×2-24左右,即相當(dāng)于2-24,低于1ppm(百萬(wàn)分之一);不僅如此,本設(shè)計(jì)更大的優(yōu)點(diǎn)是可以將模擬傳感器的剩余非線性補(bǔ)償?shù)?,使其性能更加?yōu)越;同時(shí),采用數(shù)據(jù)平滑濾波又增加了輸出數(shù)據(jù)的穩(wěn)定性。通過(guò)通信協(xié)議,可以對(duì)傳感器的輸出做零點(diǎn)校準(zhǔn)、滿刻度校準(zhǔn)、去皮重、軟件濾波、多傳感器同時(shí)工作等多種設(shè)置,也可以非常方便地讀出傳感器當(dāng)前的各種狀態(tài),如A/D是否溢出、是否計(jì)量達(dá)到設(shè)定值等,使傳感器成為真正意義上的數(shù)字傳感器。此外,還為使用者提供了若干個(gè)I/O" title="I/O">I/O狀態(tài)端子,將動(dòng)態(tài)計(jì)量過(guò)程特征量通過(guò)這些端子表現(xiàn)出來(lái),成為執(zhí)行機(jī)構(gòu)實(shí)施控制的依據(jù),從而具有了控制的功能。
1 硬件組成及工作原理
1.1 ADμC845原理框圖
??? 圖1所示為ADμC845的原理框圖。

???????????????????
1.2 ADμC845的優(yōu)勢(shì)
??? ADμC845是51系列兼容的8位單片機(jī),選擇該芯片做為數(shù)字傳感器的核心主要基于其眾多特點(diǎn)中的幾個(gè)突出性能:
??? (1)24位∑-Δ A/D轉(zhuǎn)換器(∑-ΔA/D轉(zhuǎn)換器的工作原理在諸多參考文獻(xiàn)中已有敘述[1]),具有差分模擬輸入、24位無(wú)失碼、21位有效分辨率、±0.0018%線性誤差等特點(diǎn)。由于采用∑-Δ轉(zhuǎn)換技術(shù),量化噪聲被移至A/D轉(zhuǎn)換的頻帶以外,因此特別適合用于寬動(dòng)態(tài)范圍內(nèi)的低頻信號(hào)A/D轉(zhuǎn)換,具有優(yōu)良的抗噪聲性能。為高精度、低噪聲地轉(zhuǎn)換模擬信號(hào)提供了條件。
??? (2)62KB FLASH程序存儲(chǔ)器、4KB FLASH數(shù)據(jù)存儲(chǔ)器,可以支持51系列嵌入式操作系統(tǒng)以及豐富的通信規(guī)約、復(fù)雜的功能。
??? (3)內(nèi)置看門狗定時(shí)器(Watchdog Timer),節(jié)省外部資源,使工作更可靠。
??? (4)內(nèi)置溫度傳感器,該芯片已經(jīng)具有低溫漂的特性(0.5ppm/℃),但為了滿足更高性能的要求,利用內(nèi)置的溫度傳感器,可對(duì)寬溫度范圍工作時(shí)的系統(tǒng)進(jìn)行溫度補(bǔ)償,進(jìn)一步提高測(cè)量精度。
??? (5)低功耗。休眠模式下電流低于20μA。
??? (6)寬溫度范圍,該芯片有兩種工作溫度范圍:-40℃~+85℃和-40℃~+125℃,完全滿足工業(yè)級(jí)的需求。
??? 以上特點(diǎn),使ADμC845具有了很多其他芯片組合在一起的優(yōu)點(diǎn),因而集成度更高、可靠性更好。
1.3 數(shù)字傳感器工作原理
????? ADμC845的優(yōu)勢(shì)使系統(tǒng)硬件變得簡(jiǎn)單,從而大大提高了系統(tǒng)的可靠性。其原理框圖如圖2所示。

???????????????
??? 模擬傳感器橋?qū)⒂?jì)量應(yīng)變信號(hào)直接送給ADμC845的內(nèi)置A/D轉(zhuǎn)換器,A/D轉(zhuǎn)換后的數(shù)據(jù)經(jīng)片內(nèi)固化兩級(jí)濾波、再經(jīng)軟件濾波進(jìn)一步處理后由RS232或RS485芯片按一定協(xié)議輸出,供外部電路處理。
??? 其中:
??? (1)切換電路用于232/485模式切換,可以通過(guò)設(shè)置選擇;長(zhǎng)距離傳輸時(shí)采用485模式。
??? (2)保護(hù)電路(含TVS管和光隔)用于保護(hù)通信芯片及CPU不受外部突發(fā)干擾的損害。
??? (3)端子不僅包括電源、通信信號(hào)(RS232時(shí)為TX、RX、GND;RS485為A、B),也包括可選的I/O端子以便完成一些控制功能。當(dāng)需要根據(jù)不同的計(jì)量信號(hào)而對(duì)外部設(shè)備進(jìn)行控制時(shí),可用這些端子的輸出作為控制信號(hào),其中有3個(gè)是達(dá)到不同預(yù)設(shè)(動(dòng)態(tài))計(jì)量值的變位(0/1)端子,計(jì)量超差端子等。
??? 需要特別指出的是:
??? (1)模擬電源與基準(zhǔn)電源的處理:通常的做法是將模擬電源(橋的激勵(lì)電源)、數(shù)字電源、A/D參考電源分開,但在實(shí)際測(cè)試中發(fā)現(xiàn),將模擬電源與參考電源共用一個(gè)電源時(shí)效果會(huì)更好。其理由就是這種接法在電源電壓略有波動(dòng)時(shí),橋的激勵(lì)電源與參考電壓發(fā)生同步變化,在采樣值上這種波動(dòng)就被抵消了,從而使A/D轉(zhuǎn)換的值更趨于穩(wěn)定。
??? (2)為使硬件工作穩(wěn)定,ADμC845附近的走線,特別是電源、地線及I/O線的屏蔽等均要考慮[2]。
??? (3)串行通信接口:可根據(jù)不同需求選擇232接口或485接口,并通過(guò)軟件設(shè)置來(lái)改變。
2 軟件編程
2.1 多任務(wù)描述

??? 采用多任務(wù)機(jī)制,將圖3各功能用子任務(wù)的形式運(yùn)行,提高了系統(tǒng)的實(shí)時(shí)性和可靠性。

???????????????????
??? 其中:
??? 主任務(wù)——?jiǎng)?chuàng)建子任務(wù)并對(duì)各項(xiàng)子任務(wù)進(jìn)行協(xié)調(diào);
??? 采樣及非線性補(bǔ)償任務(wù)——完成A/D轉(zhuǎn)換及片內(nèi)數(shù)字、片外軟件濾波、模擬傳感器的非線性補(bǔ)償;
??? 溫度采樣任務(wù)——實(shí)現(xiàn)溫度采樣及溫度補(bǔ)償;
??? 通信及參數(shù)設(shè)置任務(wù)——實(shí)現(xiàn)不同速率的串行通信及各種參數(shù)的設(shè)置;
??? 控制信號(hào)輸出任務(wù)——實(shí)時(shí)輸出I/O變位信息。
2.2 數(shù)字濾波
2.2.1 片內(nèi)固化的兩級(jí)濾波

??? 芯片內(nèi)部自帶兩級(jí)數(shù)字濾波器,濾波方式、數(shù)據(jù)輸出速率可通過(guò)對(duì)濾波寄存器編程進(jìn)行選擇。第一級(jí)濾波器是SINC3濾波(三階梳狀濾波),具有斬波和非斬波兩種工作方式,能消除量化噪聲;第二級(jí)濾波器是FIR濾波(有限階躍響應(yīng)濾波),具有三種工作方式:①直通方式,②低通濾波器方式,③快速階躍方式。可根據(jù)不同需求選擇。
?為了提高對(duì)不同對(duì)象的測(cè)量數(shù)據(jù)的可靠性,系統(tǒng)又通過(guò)編程增加了如下濾波方法。
2.2.2 軟件濾波
??? (1)遞推平均濾波法(又稱滑動(dòng)平均濾波法)
??? 其濾波原理如式(1)
???
?


式(1)中,x(i)、x(k)、x(n+k)為不同點(diǎn)的采樣值,y(k)為第k點(diǎn)的濾波輸出值。
??? 這種濾波是配合片內(nèi)的SINC3濾波,對(duì)周期性的干擾(如傳感器外部布線干擾)等有良好的抑制效果。
??? (2)一階滯后濾波法
??? 其濾波原理如式(2)
???


式(2)中,x(i)、x(k)、x(n+k)的含義同式(1),y(k)為第k點(diǎn)的濾波輸出值。
??? 這種濾波的原理是考慮到了測(cè)量過(guò)程中前后兩次采樣值有比較大的相關(guān)性,發(fā)生劇烈跳變的可能性不大,因此是一種加權(quán)式的平均方式。式中“a”即相當(dāng)于權(quán)重值。
??? 無(wú)論是片內(nèi)還是軟件濾波,均可以經(jīng)外部通信端口由軟件進(jìn)行選擇,針對(duì)現(xiàn)場(chǎng)不同的環(huán)境選擇不同的輸出精度和輸出速率。
3 非線性補(bǔ)償
??? 對(duì)于模擬傳感器普遍存在的非線性,可以用硬件補(bǔ)償及軟件補(bǔ)償法進(jìn)行修正[2][3],傳感器廠家通常使用硬件補(bǔ)償法進(jìn)行出廠前的修正。本系統(tǒng)主要用軟件法修正誤差。
??? 有些傳感器的非線性特性可以用函數(shù)關(guān)系來(lái)表示。如式(3)表示的即為電阻式單臂應(yīng)變電橋。
???

式中,E為供橋電壓;K為靈敏系數(shù);ε著為應(yīng)變參數(shù),與外部受力呈線性關(guān)系;Ug是橋的輸出電壓。
??? 從式(3)中可以看出,ε著與Ug存在明顯的非線性。對(duì)于此種類型的傳感器,可以把其運(yùn)算規(guī)則(特性關(guān)系的反函數(shù))存入AD?滋C845中,這樣每測(cè)得一個(gè)傳感器的輸出量,就可以通過(guò)預(yù)存在ADμC845中的運(yùn)算規(guī)則計(jì)算得到最終經(jīng)過(guò)補(bǔ)償?shù)谋粶y(cè)物理量[2]。
??? 對(duì)不易采用反函數(shù)計(jì)算補(bǔ)償?shù)膫鞲衅?,系統(tǒng)采用了最小二乘法。具體算法如下:
??? 最小二乘法的一元線性回歸的數(shù)學(xué)模型為[3]
???

式中X,Y為滿足線性數(shù)學(xué)模型的變量;a,b為待定常數(shù)和系數(shù);ε為測(cè)量的隨機(jī)誤差。
??? 當(dāng)對(duì)不同的Xi(i=1,2,…n)值分別進(jìn)行n(n>2)次測(cè)量時(shí),得到的結(jié)果是式(4)所示的n個(gè)測(cè)量方程,以最小二乘法對(duì)式(4)中的參數(shù)a,b的值進(jìn)行估計(jì)如下:
???
?

式中:
???
?

???

??? 當(dāng)然,如果在補(bǔ)償過(guò)程中個(gè)別點(diǎn)的誤差比較大或有些要求極高的場(chǎng)合,也可以采用分段補(bǔ)償?shù)霓k法[4]。在寬溫度范圍下做高精度測(cè)量時(shí),可利用ADμC845的內(nèi)置溫度傳感器采用逐點(diǎn)描述法在量程內(nèi)進(jìn)行溫度補(bǔ)償。
4 通信協(xié)議及典型功能
4.1 串行口

??? 為了使本傳感器能夠適應(yīng)多種情況下的測(cè)量需要,在軟件上做了比較細(xì)致的工作。串行通信口既做為ISP(在線編程)口來(lái)設(shè)置內(nèi)部參數(shù),也做為串行數(shù)據(jù)輸出口。
4.2 通信協(xié)議及功能
??? 仿照國(guó)外流行的數(shù)字傳感器通信協(xié)議(如德國(guó)HBM公司的AED_Panel32),抽取部分使用的命令,形成了一個(gè)協(xié)議子集,共有命令36條(原協(xié)議命令105條),通信格式如下:
??? 命令(參數(shù)1)<參數(shù)2>;
??? 其中“命令”由三個(gè)大寫英文字母組成,參數(shù)1、2一般由10進(jìn)制數(shù)組成(個(gè)別例外),如:“ADR01”表示目前指向地址為“01”的數(shù)字傳感器,其地址范圍從00~99。“BDR9600”則表示設(shè)置下面的所有傳感器的通信波特率為9 600b/s。
??? 另外還規(guī)定了對(duì)傳感器進(jìn)行校準(zhǔn)及計(jì)量目標(biāo)值設(shè)定等通信命令,使傳感器真正實(shí)用化。
?規(guī)約命令分類:非線性修正、通信參數(shù)設(shè)置、地址設(shè)置、濾波器設(shè)置、計(jì)量校準(zhǔn)(包括零點(diǎn)和滿偏校準(zhǔn))、計(jì)量過(guò)程參數(shù)設(shè)置(快投、慢投等)、工作狀態(tài)傳遞(計(jì)量、ISP狀態(tài)等)。
??? 在485通信模式下,設(shè)置及校準(zhǔn)完好的多個(gè)傳感器可以同時(shí)以“掛燈籠”方式工作,系統(tǒng)最多可以容納100個(gè)傳感器,通信波特率可以達(dá)到115 200b/s。在計(jì)量過(guò)程中,不僅能通過(guò)串行口源源不斷地給出計(jì)量值和自身的工作狀態(tài),還可以通過(guò)輔助I/O端子,輸出控制輔助信息,便于使用者直接對(duì)執(zhí)行機(jī)構(gòu)(如電機(jī)、閥門等)實(shí)施控制。
5 測(cè)試
??? 系統(tǒng)設(shè)計(jì)完成后,對(duì)出廠前的應(yīng)變片式模擬傳感器(量程500kg、標(biāo)定精度萬(wàn)分之2)做了數(shù)字化處理,并在BFSM型力標(biāo)準(zhǔn)機(jī)上進(jìn)行了測(cè)試。
5.1 系統(tǒng)設(shè)置
??? 系統(tǒng)的具體設(shè)置如下:
??? (1)片內(nèi)A/D采用連續(xù)采樣;
??? (2)片內(nèi)濾波第一階采用斬波方式、第二階采用低通濾波器方式;
??? (3)軟件濾波采用一階滯后濾波法;
??? (4)非線性補(bǔ)償:這里采用最小二乘法補(bǔ)償,在T=300K的恒溫下,做多點(diǎn)擬和,計(jì)算出式(4)中的a、b的值,并記入采樣及非線性補(bǔ)償任務(wù)中備用;
??? (5)通信采用485方式;
??? (6)加載及卸載均按照0~500kg內(nèi)均勻設(shè)點(diǎn)的方式(0、40、80、120、160、…、480kg)。
5.2 測(cè)量方法
??? (1)精度方面的測(cè)量,在上述的標(biāo)準(zhǔn)砝碼點(diǎn)上與理論值及標(biāo)定精度值進(jìn)行比對(duì);
??? (2)非線性補(bǔ)償?shù)臏y(cè)量,在上述各點(diǎn)上進(jìn)行測(cè)試,并使軟件中最小二乘法補(bǔ)償開關(guān)分別處于接通和斷開狀態(tài),觀察不同的結(jié)果。
5.3 測(cè)試結(jié)果
??? 測(cè)試結(jié)果表明:
??? (1)按照模擬傳感器的測(cè)試記錄,標(biāo)定有萬(wàn)分之2精度的傳感器經(jīng)過(guò)轉(zhuǎn)換及數(shù)字化后,在上述的標(biāo)定點(diǎn)上的測(cè)量結(jié)果與原傳感器出廠記錄完全相同,即不產(chǎn)生附加誤差。
??? (2)在非線性測(cè)量點(diǎn)上,當(dāng)不使用最小二乘法補(bǔ)償時(shí),最大非線性誤差(380kg點(diǎn)上)為萬(wàn)分之1.7,在同樣條件下,使用最小二乘法補(bǔ)償,最大非線性誤差減小為萬(wàn)分之0.6。
??? (3)輔助I/O點(diǎn)的使用??蓪?個(gè)I/O點(diǎn)(主要為輸出點(diǎn))分別設(shè)為運(yùn)行、快速投料、慢速投料、卸料。在啟動(dòng)測(cè)量時(shí)“運(yùn)行”有效、經(jīng)延遲后“快速投料”及“慢速投料”均有效,達(dá)到某設(shè)定值時(shí)“快速投料”失效,達(dá)到另外的(較大)設(shè)定值時(shí),“慢速投料”失效,經(jīng)計(jì)量慣性而達(dá)到預(yù)設(shè)計(jì)量目標(biāo)值并穩(wěn)定后,“卸料”有效。當(dāng)然,也可以根據(jù)要求將各I/O設(shè)定為其他方式。
??? 總之,通過(guò)實(shí)際的測(cè)試,證明系統(tǒng)完全達(dá)到了設(shè)計(jì)目標(biāo)——數(shù)字傳感器不僅可以實(shí)現(xiàn)被測(cè)量的數(shù)字化,更重要的是通過(guò)軟件可以補(bǔ)償傳感器殘留的非線性,使其性能提高1個(gè)數(shù)量級(jí),以實(shí)現(xiàn)精度更高的測(cè)量。在輔助I/O的協(xié)助下,還可以實(shí)現(xiàn)多種控制功能,使其更加智能化。
參考文獻(xiàn)
[1] AD7730/AD7730L Bridge Transducer ADC.Analog Device?Inc,1998.
[2] 周勝海.傳感器非線性的硬件校正方法[J].傳感器技術(shù),2002,21(5).
[3] 賈智偉.傳感器信號(hào)的非線性補(bǔ)償[J].傳感器技術(shù),2002,21(5).
[4] 朱慶保.傳感器特性曲線的自適應(yīng)分段最佳擬合及應(yīng)用[J].傳感器技術(shù),2002,21(1).
[5] 王化祥.傳感器原理及應(yīng)用(修訂版)[M].天津:天津大學(xué)出版社,1999.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。