編碼器精度與分辨率的區(qū)別對(duì)于傳感器的分辨率與精度的理解,可以拿千分尺為例,分辨率代表千分尺最多可以讀到小數(shù)點(diǎn)后幾位,但精度還與尺子的加工精度,測(cè)量方法有關(guān)系。
同樣的,在旋轉(zhuǎn)編碼器的使用中,分辨率與精度是完全不同的兩個(gè)概念。
編碼器的分辨率,是指編碼器可讀取并輸出的最小角度變化,對(duì)應(yīng)的參數(shù)有:
每轉(zhuǎn)刻線數(shù)(line)、每轉(zhuǎn)脈沖數(shù)(PPR)、最小步距(Step)、位(Bit)等。
編碼器的精度,是指編碼器輸出的信號(hào)數(shù)據(jù)對(duì)測(cè)量的真實(shí)角度的準(zhǔn)確度,對(duì)應(yīng)的參數(shù)是角分(′)、角秒(″)。
分辨率:線(line),就是編碼器的碼盤的光學(xué)刻線,如果編碼器是直接方波輸出的,它就是每轉(zhuǎn)脈沖數(shù)(PPR),
但如果是正余弦(sin/cos)信號(hào)輸出的,是可以通過(guò)信號(hào)模擬量變化電子細(xì)分,獲得更多的方波脈沖PPR輸出,
編碼器的方波輸出有A相與B相,A相與B相差1/4個(gè)脈沖周期,通過(guò)上升沿與下降沿的判斷,
就可以獲得1/4脈沖周期的變化步距(4倍頻),這就是最小測(cè)量步距(Step)了,
所以,嚴(yán)格地講,最小測(cè)量步距就是編碼器的分辨率。
光看分辨率不行的,如果分辨出的位數(shù)似乎很多但都不準(zhǔn),那這樣的分辨率意義不大。 前些年有人用兩片8位AD拼成16位AD,表面上分辨率提高了一倍,但精度并未增加, 如果這么簡(jiǎn)單就達(dá)到精度的提高,那AD公司光用AD0808就行了也就不必花大力氣研發(fā)16位以至更高位AD了 分辨率就是你能看出A和B身高差多少,精度就是A和B身高分別是多少。 分辨率是對(duì)數(shù)據(jù)的測(cè)量的精細(xì)程度,精度是準(zhǔn)不準(zhǔn)。 比如你用數(shù)字游標(biāo)卡尺量一個(gè)10厘米的模型,顯示結(jié)果為 50.1276厘米。 可以看出分辨率挺高,精度不咋地。 分辨率簡(jiǎn)單的說(shuō)就是小數(shù)點(diǎn)后面的位數(shù),比如4.201V的分辨率比4.20V高 但是分辨率高不代表精度高 如果這個(gè)電壓本來(lái)是4.203V,高分辨率測(cè)出來(lái)是4.223V,低分辨率測(cè)出來(lái)是4.20V,那么低分辨率的精度高
ADC分辨率由數(shù)字化輸入信號(hào)時(shí)所使用的比特?cái)?shù)決定。 而精確度是指對(duì)于給定模擬輸入,實(shí)際數(shù)字輸出與理論預(yù)期數(shù)字輸出之間的接近度。 換而言之,轉(zhuǎn)換器的精確度決定了數(shù)字輸出代碼中有多少個(gè)比特表示有關(guān)輸入信號(hào)的有用信息。 分辨力也稱為分辨率,是指指示裝置有效地辨別緊密相鄰值的能力。 一般認(rèn)為數(shù)字裝置的分辨力就是最后一位數(shù)字,模擬裝置分辨力為指示標(biāo)尺分度值的一半。 測(cè)量精度是泛指測(cè)量結(jié)果的可信度,但不是規(guī)范用語(yǔ)。 用2.000V量程的三位半數(shù)字電壓表舉例來(lái)說(shuō),它的分辨力是0.001V,假設(shè)其精度是0.8%±3個(gè)字。 假如現(xiàn)在有三個(gè)個(gè)電壓的真實(shí)值是x=1.6780V,y=1.6785V,z=1.6790V。 分辨力就是,它能判別出電壓x與z之間相差0.001V,即測(cè)量z顯示的數(shù)字肯定比x大0.001; 但是它無(wú)法判別x與y之間和y與z之間的區(qū)別,即測(cè)量y時(shí)可能顯示的與x一樣,也可能顯示的與z一樣,是不確定的。 精度大概的意思就是測(cè)量值與真實(shí)值之間的最大差距。 比如,這個(gè)表測(cè)量x電壓,它可能顯示的是1.688,也可能顯示的是1.665, 也可能是別的什么數(shù),但是范圍不超過(guò)2.000x0.8%±3個(gè)字=±0.019V。 也就是說(shuō)這個(gè)表測(cè)量x電壓時(shí)顯示1.659V-1.697V之間都算沒(méi)問(wèn)題。
10V/2^10=10/1024=0.01V,這是分辨率,表示它的分辨能力是每格就是0.01V, 但是由于積分電容不好,電阻溫飄大,外部干擾,AD本身非線性等, 一個(gè)真正精確的10V電壓你測(cè)出來(lái)是9.51V(分辨率決定了你最后一位小數(shù)的位置--十分位,還是百分位等), 這時(shí)你的分辨率是夠高了,0.01V分辨率啊,但精度呢?差了0.5/10V=5%! 總之,分辨率可以上得很高,大不了增加AD位數(shù), 你分辨率小數(shù)點(diǎn)后位數(shù)再多,但受其它因素影響,但精度卻不能提高。 不同的場(chǎng)合對(duì)這兩個(gè)指標(biāo)的要求的不一樣。
對(duì)于數(shù)字化溫度傳感器,一般精度指的是傳感器讀回的數(shù)據(jù)與絕對(duì)溫度的差值,
而分辨率指的是傳感器能感知的最小溫度變化。
對(duì)于模擬量溫度傳感器,不是很肯定。
印象里兩者差別不是太大,主要是由于客戶在使用時(shí)常?;煜^對(duì)精度和顯示精度的概念,
很多時(shí)候客戶說(shuō)的精度指的是顯示精度而不是絕對(duì)精度。而顯示精度應(yīng)該就等同于分辨率
分辨率通常理解為A/D轉(zhuǎn)換精度或能感知的最小變化而精度通常指: A/D、傳感電路其它因素等綜合因素,誤差除以顯示所得的百分比
分辨率就是傳感器的靈敏度,即引起輸出變化的最小輸入量, 數(shù)字式儀表通常決定于A/D轉(zhuǎn)換器的位數(shù)精度是傳感器重復(fù)測(cè)量同一標(biāo)準(zhǔn)值的最大百分誤差,
是校準(zhǔn)后衡量準(zhǔn)確程度的指標(biāo)分辨率要優(yōu)于精度幾倍
國(guó)產(chǎn)溫度傳感器的精度分A、B兩個(gè)級(jí)別,國(guó)標(biāo)規(guī)定如下: 傳感器的輸出值與所測(cè)量的溫度的真值的差,
A級(jí):不大于±(0.15℃+0.002*傳感器量程) B級(jí):不大于±(0.30℃+0.005*傳感器量程)
所以如果要求測(cè)量精度較高,應(yīng)該選用量程較小的傳感器。
分辨率,“通常決定于A/D轉(zhuǎn)換器的位數(shù)”,或看其輸出值的最后一位。
精度——是指在真值附近正負(fù)三倍標(biāo)準(zhǔn)差的值與量程之比,是指測(cè)量值與真值的最大差異; 分辨率——是值引起示值改變的最小測(cè)量值;應(yīng)與靈敏系數(shù)分開(kāi)(靈敏系數(shù)---指輸出與輸入之比)
關(guān)于精密度Precision 準(zhǔn)確度Accuracy 和 分辨率Resolution一把塑料尺子,最小刻度是1mm,拿它量東西,就不能讀出1mm以下的數(shù)來(lái), 那么這個(gè)1mm就是它的(最小)分辨率,即最小可分辨的度量。 如果已經(jīng)知道一個(gè)物體的實(shí)際長(zhǎng)度是100mm,拿這把尺子來(lái)測(cè)量,量出來(lái)的數(shù)據(jù)是102mm, 那么這個(gè)尺子的準(zhǔn)確度就是(102-100)/100=0.02,即測(cè)量結(jié)果與真實(shí)數(shù)值之間的誤差。
也用上文的尺子做測(cè)量,還是上次的那一個(gè)物體,測(cè)了5次,數(shù)據(jù)分別是108,109,107,107,108,108。 這些數(shù)據(jù)和真實(shí)值100mm之間的誤差都不小,但是這些數(shù)據(jù)之間的差距都很小,說(shuō)明精密度不錯(cuò)。 精密度Precision + 準(zhǔn)確度Accuracy = 精確度。 很多人常常把 精密度Precision 誤判斷為精度, 也有些儀器廠家誤導(dǎo)使用者故意使用精密度代替精度。一般而言大家講的精度都是指準(zhǔn)確度。 分辨率與精度的關(guān)系能夠用下面的幾個(gè)圖證明:
上面四個(gè)圖是相同的面積,讓我們看草地與麥地的邊界(請(qǐng)注意黑框中的邊界格子)。 圖A有12格子,邊界格子是2格,如此這兩個(gè)格子是不確定的,因此,不確定度是2/12。 同理,圖B中有48個(gè)格子,有四個(gè)邊界格子,如此, 不確定度是4/48。 圖C 不確定度是7/192. 圖D是不確定度是12/768。 不確定度降低,自然精度就提高,證畢 關(guān)于A/D的精度、分辨率與LSB誤差的大掃盲我們所講的精度通常是指它的精確度,其實(shí)這是錯(cuò)誤的。 精度又叫做精密度,是跟準(zhǔn)確度相對(duì)應(yīng)的一個(gè)概念。 就像打靶一樣,打的準(zhǔn),那就說(shuō)它的準(zhǔn)確度比較高; 而每?jī)蓚€(gè)靶之間能打出的偏移越小,那它的精密度就越高。 精密度 + 準(zhǔn)確度 = 精確度。 但是鑒于大家都將精度指代了精確度,那以下所說(shuō)的精度如無(wú)特別指出,都是指精確度。 很多人對(duì)于精度和分辨率的概念不清楚,這里我做一下總結(jié),希望大家不要混淆。 我們搞電子開(kāi)發(fā)的,經(jīng)常跟“精度”與“分辨率”打交道,這個(gè)問(wèn)題不是三言兩語(yǔ)能搞得清楚的,在這里只作拋磚引玉了。 簡(jiǎn)單點(diǎn)說(shuō),“精度”是用來(lái)描述物理量的準(zhǔn)確程度的,而“分辨率”是用來(lái)描述刻度劃分的。 從定義上看,這兩個(gè)量應(yīng)該是風(fēng)馬牛不相及的。(是不是有朋友感到愕然^_^)。 很多賣傳感器的JS就是利用這一點(diǎn)來(lái)糊弄人的了。簡(jiǎn)單做個(gè)比喻: 有這么一把常見(jiàn)的塑料尺(中學(xué)生用的那種),它的量程是10厘米,上面有100個(gè)刻度,最小能讀出1毫米的有效值。 那么我們就說(shuō)這把尺子的分辨率是1毫米,或者量程的1%; 而它的實(shí)際精度就不得而知了(算是0.1毫米吧)。 當(dāng)我們用火來(lái)烤一下它,并且把它拉長(zhǎng)一段,然后再考察一下它。 我們不難發(fā)現(xiàn),它還有有100個(gè)刻度,它的“分辨率”還是1毫米,跟原來(lái)一樣! 然而,您還會(huì)認(rèn)為它的精度還是原來(lái)的0.1毫米么?(這個(gè)例子是引用網(wǎng)上的,個(gè)人覺(jué)得比喻的很形象?。?/span> 回到電子技術(shù)上,我們考察一個(gè)常用的數(shù)字溫度傳感器:AD7416。 供應(yīng)商只是大肆宣揚(yáng)它有10位的AD,分辨率是1/1024。 那么,很多人就會(huì)這么欣喜:哇塞,如果測(cè)量溫度0-100攝氏度,100/1024……約等于0.098攝氏度! 這么高的精度,足夠用了。但是我們?nèi)g覽一下AD7416的數(shù)據(jù)手冊(cè),居然發(fā)現(xiàn)里面赫然寫著:測(cè)量精度0.25攝氏度! 所以說(shuō)分辨率跟精度完全是兩回事,在這個(gè)溫度傳感器里,只要你愿意,你甚至可以用一個(gè)14位的AD,獲得1/16384的分辨率,但是測(cè)量值的精度還是0.25攝氏度^_^ 所以很多朋友一談到精度,馬上就和分辨率聯(lián)系起來(lái)了,包括有些項(xiàng)目負(fù)責(zé)人,只會(huì)在那里說(shuō):這個(gè)系統(tǒng)精度要求很高啊,你們AD的位數(shù)至少要多少多少啊…… 其實(shí),仔細(xì)瀏覽一下AD的數(shù)據(jù)手冊(cè),會(huì)發(fā)現(xiàn)跟精度有關(guān)的有兩個(gè)很重要的指標(biāo): DNL和INL。似乎知道這兩個(gè)指標(biāo)的朋友并不多,所以在這里很有必要解釋一下。 DNL:Differencial NonLiner——微分非線性度 INL:Interger NonLiner——積分非線性度(精度主要用這個(gè)值來(lái)表示) 他表示了ADC器件在所有的數(shù)值點(diǎn)上對(duì)應(yīng)的模擬值,和真實(shí)值之間誤差最大的那一點(diǎn)的誤差值。 也就是,輸出數(shù)值偏離線性最大的距離。單位是LSB(即最低位所表示的量)。 當(dāng)然,像有的AD如△—∑系列的AD,也用Linearity error 來(lái)表示精度。 為什么有的AD很貴,就是因?yàn)镮NL很低。 分辨率同為12bit的兩個(gè)ADC,一個(gè)INL=±3LSB,而一個(gè)做到了±1.5LSB,那么他們的價(jià)格可能相差一倍。 LSB(Least Significant Bit),意為最低有效位; MSB(Most Significant Bit),意為最高有效位, 若MSB=1,則表示數(shù)據(jù)為負(fù)值,若MSB=0,則表示數(shù)據(jù)為正。 當(dāng)選擇模數(shù)轉(zhuǎn)換器(ADC)時(shí),最低有效位(LSB)這一參數(shù)的含義是什么? 有位工程師告訴我某某生產(chǎn)商的某款12位轉(zhuǎn)換器只有7個(gè)可用位。 也就是說(shuō),所謂12位的轉(zhuǎn)換器實(shí)際上只有7位。他的結(jié)論是根據(jù)器件的失調(diào)誤差和增益誤差參數(shù)得出的, 這兩個(gè)參數(shù)的最大值如下: 失調(diào)誤差 =±3LSB, 增益誤差 =±5LSB, 乍一看,覺(jué)得他似乎是對(duì)的。從上面列出的參數(shù)可知最差的技術(shù)參數(shù)是增益誤差(±5 LSB)。 進(jìn)行簡(jiǎn)單的數(shù)學(xué)運(yùn)算,12位減去5位分辨率等于7位,對(duì)嗎? 果真如此的話,ADC生產(chǎn)商為何還要推出這樣的器件呢? 增益誤差參數(shù)似乎表明只要購(gòu)買成本更低的8位轉(zhuǎn)換器就可以了,但看起來(lái)這又有點(diǎn)不對(duì)勁了。 正如您所判斷的,上面的說(shuō)法是錯(cuò)誤的。 讓我們重新來(lái)看一下LSB的定義。考慮一個(gè)12位串行轉(zhuǎn)換器,它會(huì)輸出由1或0組成的12位數(shù)串。 通常,轉(zhuǎn)換器首先送出的是最高有效位(MSB)(即LSB + 11)。有些轉(zhuǎn)換器也會(huì)先送出LSB。 在下面的討論中,我們假設(shè)先送出的是MSB(如圖1所示), 然后依次送出MSB-1 (即 LSB + 10)和MSB -2(即LSB + 9)并依次類推。 轉(zhuǎn)換器最終送出MSB -11(即LSB)作為位串的末位。 LSB這一術(shù)語(yǔ)有著特定的含義,它表示的是數(shù)字流中的最后一位,也表示組成滿量程輸入范圍的最小單位。 對(duì)于12位轉(zhuǎn)換器來(lái)說(shuō),LSB的值相當(dāng)于模擬信號(hào)滿量程輸入范圍除以2^12 或 4,096的商。 如果用真實(shí)的數(shù)字來(lái)表示的話,對(duì)于滿量程輸入范圍為4.096V的情況,一個(gè)12位轉(zhuǎn)換器對(duì)應(yīng)的LSB大小為1mV。 但是,將LSB定義為4096個(gè)可能編碼中的一個(gè)編碼對(duì)于我們的理解是有好處的。 讓我們回到開(kāi)頭的技術(shù)指標(biāo),并將其轉(zhuǎn)換到滿量程輸入范圍為4.096V的12位轉(zhuǎn)換器中: 失調(diào)誤差 = ±3LSB =±3mV, 增益誤差 =±5LSB = ±5mV, 這些技術(shù)參數(shù)表明轉(zhuǎn)換器轉(zhuǎn)換過(guò)程引入的誤差最大僅為8mV(或 8個(gè)編碼)。 這絕不是說(shuō)誤差發(fā)生在轉(zhuǎn)換器輸出位流的LSB、LSB-1、LSB-2、LSB-3、LSB-4、LSB-5、LSB-6和 LSB-7 八個(gè)位上,而是表示誤差最大是一個(gè)LSB的八倍(或8mV)。 準(zhǔn)確地說(shuō),轉(zhuǎn)換器的傳遞函數(shù)可能造成在4,096個(gè)編碼中丟失最多8個(gè)編碼。 丟失的只可能是最低端或最高端的編碼。 例如,誤差為+8LSB ((+3LSB失調(diào)誤差) + (+5LSB增益誤差)) 的一個(gè)12位轉(zhuǎn)換器可能輸出的編碼范圍為0 至 4,088。 丟失的編碼為4088至4095。相對(duì)于滿量程這一誤差很小僅為其0.2%。 與此相對(duì),一個(gè)誤差為-3LSB((-3LSB失調(diào)誤差)—(-5LSB增益誤差))的12位轉(zhuǎn)換器輸出的編碼范圍為3至4,095。此時(shí)增益誤差會(huì)造成精度下降,但不會(huì)使編碼丟失。丟 失的編碼為0、1和2。這兩個(gè)例子給出的都是最壞情況。在實(shí)際的轉(zhuǎn)換器中,失調(diào)誤差和增益誤差很少會(huì)如此接近最大值。 在實(shí)際應(yīng)用中,由于ADC失調(diào)或增益參數(shù)的改進(jìn)而使性能提升的程度微不足道,甚至可以忽略。 但是,對(duì)于那些將精度作為一項(xiàng)設(shè)計(jì)目標(biāo)的設(shè)計(jì)人員來(lái)說(shuō),這種假設(shè)太過(guò)絕對(duì)。 利用固件設(shè)計(jì)可以很容易地實(shí)現(xiàn)數(shù)字校準(zhǔn)算法。但更重要的是,電路的前端放大/信號(hào)調(diào)理部分通常會(huì)產(chǎn)生比轉(zhuǎn)換器本身更大的誤差。 通過(guò)上面的討論可以對(duì)本文開(kāi)頭提到的錯(cuò)誤結(jié)論有一個(gè)更為全面而清晰的認(rèn)識(shí)。 事實(shí)上,上述的12位轉(zhuǎn)換器的精度約為11.997位。采用微處理器或單片機(jī)可以利用簡(jiǎn)單的校準(zhǔn)算法消除這種失調(diào)和增益誤差,這對(duì)設(shè)計(jì)人員來(lái)說(shuō)無(wú)疑是個(gè)好消息。 本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/jhjGeneral/archive/2009/03/24/4019447.aspx 分辨率和精度之間的差異。舉例來(lái)說(shuō),當(dāng)兩個(gè)轉(zhuǎn)換器都具有12 bit的相同分辨率時(shí),但其中一個(gè)可能只有10bit的精度,
而另一個(gè)可能具有14bit的精度,應(yīng)當(dāng)認(rèn)識(shí)到這兩種轉(zhuǎn)換器具有不一樣的性能。
還有就是,即使增加分辨率bit數(shù)而達(dá)不到這些增加的bit數(shù)所提高的精度,也不能達(dá)到提高精度的目的。
在與使用模數(shù)轉(zhuǎn)換器 (ADC) 的系統(tǒng)設(shè)計(jì)人員進(jìn)行交談時(shí),我最常聽(tīng)到的一個(gè)問(wèn)題就是: “你的16位ADC的精度也是16位的嗎?” 這個(gè)問(wèn)題的答案取決于對(duì)分辨率和精度概念的基本理解。盡管是兩個(gè)完全不同的概念,這兩個(gè)數(shù)據(jù)項(xiàng)經(jīng)常被搞混和交換使用。 今天的博文詳述了這兩個(gè)概念間的差異。我們將在一系列帖子中深入研究造成ADC不準(zhǔn)確的主要原因。 ADC的分辨率被定義為輸入信號(hào)值的最小變化,這個(gè)最小數(shù)值變化會(huì)改變數(shù)字輸出值的一個(gè)數(shù)值。 對(duì)于一個(gè)理想ADC來(lái)說(shuō),傳遞函數(shù)是一個(gè)步寬等于分辨率的階梯。 然而,在具有較高分辨率的系統(tǒng)中(≥16位),傳輸函數(shù)的響應(yīng)將相對(duì)于理想響應(yīng)有一個(gè)較大的偏離。 這是因?yàn)锳DC以及驅(qū)動(dòng)器電路導(dǎo)致的噪聲會(huì)降低ADC的分辨率。 此外,如果DC電壓被施加到理想ADC的輸入上并且執(zhí)行多個(gè)轉(zhuǎn)換的話,數(shù)字輸出應(yīng)該始終為同樣的代碼(由圖1中的黑點(diǎn)表示)。 現(xiàn)實(shí)中,根據(jù)總體系統(tǒng)噪聲(也就是包括電壓基準(zhǔn)和驅(qū)動(dòng)器電路),輸出代碼被分布在多個(gè)代碼上(由下面的一團(tuán)紅點(diǎn)表示)。 系統(tǒng)中的噪聲越多,數(shù)據(jù)點(diǎn)的集合就越寬,反之亦然。 圖1中顯示的是一個(gè)中量程DC輸入的示例。ADC傳遞函數(shù)上輸出點(diǎn)的集合通常被表現(xiàn)為ADC數(shù)據(jù)表中的DC柱狀圖。
圖1中的圖表提出了一個(gè)有意思的問(wèn)題。 如果同樣的模擬輸入會(huì)導(dǎo)致多個(gè)數(shù)字輸出,那么對(duì)于ADC分辨率的定義仍然有效嗎? 是的,前提是我們只考慮ADC的量化噪聲。 然而,當(dāng)我們將信號(hào)鏈中所有的噪聲和失真計(jì)算在內(nèi)時(shí), 正如等式 (1) 中所顯示的那樣,ADC的有效無(wú)噪聲分辨率取決于輸出代碼分布 (NPP)。
在典型ADC數(shù)據(jù)表中,有效位數(shù) (ENOB) 間接地由AC參數(shù)和信噪失真比 (SINAD) 指定,可使用方程式2計(jì)算得出: 下面,考慮一下圖1中的輸出代碼簇(紅點(diǎn))不是位于理想輸出代碼的中央, 而是位于遠(yuǎn)離黑點(diǎn)的ADC傳遞曲線上的其他位置(如圖2中所示)。 這個(gè)距離是指示出采集系統(tǒng)精度。 不但ADC,還有前端驅(qū)動(dòng)電路、基準(zhǔn)和基準(zhǔn)緩沖器都會(huì)影響到總體系統(tǒng)精度。
|
|
|