吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ADC精度和誤差

硬件攻城獅 ? 來源:硬件攻城獅 ? 作者:硬件攻城獅 ? 2022-09-23 14:34 ? 次閱讀

ADC的種類很多,對應的精度和誤差也有很多,本文就來講講關于ADC精度和誤差的內容。

ADC介紹

ADC:Analog Digital Converter,指模數轉換,也就是(電壓)模擬量轉換成數字量。大多數MCU中都集成了ADC模塊,同時ADC也是在產品開發中使用率較高的一個模塊,相信大部分人都使用過ADC這個功能。在STM32中內置最多四個高級12位ADC控制器(ADC1、2、3、4)。當然,ADC控制器數量多少取決于STM32型號,還有部分STM32具有16位采樣的ADC(如STM32F373)。他們提供自校準功能,用于提高環境條件變化時的ADC精度。我們平時在使用ADC中要求不是很高,可能就沒有在于ADC轉換的值是否精確。但是,有些特定場合就需要更精確的轉換值,那么我們就需要對ADC做更多了解。下面章節帶領大家了解相關內容。

ADC誤差

在涉及模數轉換的應用中,ADC精度會影響整體的系統質量和效率。為了提高此精度,有必要了解與ADC相關的誤差。

ADC誤差主要包含:ADC自身和環境導致的誤差。

1、ADC自身導致的誤差

說誤差之前,先說下ADC精度,為便于參考,將精度誤差表達為1 LSB的倍數:

1LSB=VREF+/2^12.

(1)偏移誤差

偏移誤差是第一次實際轉換和第一次理想轉換之間的偏離。第一次轉換發生在數字ADC輸出從0變為1時。理想情況下,當模擬輸入介于0.5 LSB和1.5 LSB之間時,數字輸出應為1。仍然是理想情況下,第一次轉換發生在0.5 LSB處。用EO表示偏移誤差??赏ㄟ^應用固件輕松校準偏移誤差。正偏移誤差的表示方法:

828bf818-3b07-11ed-9e49-dac502259ad0.png



負偏移誤差的表示方法:

82f60ff0-3b07-11ed-9e49-dac502259ad0.png



(2)增益誤差

增益誤差是最后一次實際轉換和最后一次理想轉換之間的偏離。增益誤差用EG表示。正增益誤差的表示方法:

8321648e-3b07-11ed-9e49-dac502259ad0.png



負增益誤差的表示方法:

8396e8d0-3b07-11ed-9e49-dac502259ad0.png



(3)微分線性誤差

微分線性誤差(DLE)為實際步進和理想步進之間的最大偏離。這里的“理想情況”不是指理想傳輸曲線,而是指ADC分辨率。理想情況下,1 LSB的模擬輸入電壓變化量應導致數字代碼變化。如果需要大于1 LSB的模擬輸入電壓才能導致數字代碼變化,將觀察到微分線性誤差。因此,DLE對應于從一個數字代碼變為下一個數字代碼所需的最大額外電壓。

83bbc24a-3b07-11ed-9e49-dac502259ad0.png



(4)積分線性誤差

積分線性誤差為任何實際轉換和端點相關線間的最大偏離,用EL表示ILE。端點相關線可以定義為A/D傳輸曲線上連接第一次實際轉換與最后一次實際轉換的線。EL是指與每一次轉換的這條線的偏離。因此,端點相關線對應于實際傳輸曲線并且與理想傳輸曲線不相關。

83e6c5d0-3b07-11ed-9e49-dac502259ad0.png



(5)總未調整誤差

總未調整誤差(TUE)為實際和理想傳輸曲線間的最大偏離。此參數指定可能發生的會導致理想數字輸出與實際數字輸出之間最大偏離的總誤差。TUE是記錄到的任何輸入電壓的理想預期值與從ADC獲得的實際值之間的最大偏離。

845ab0da-3b07-11ed-9e49-dac502259ad0.png



2、ADC環境導致的誤差

(1)參考電壓噪聲

由于ADC輸出為模擬信號電壓與參考電壓之比,因此模擬參考上的任何噪聲都會導致轉換后數字值的變化。在某些封裝中,VDDA模擬電源被用作參考電壓(VREF+),因此VDDA電源的質量會影響ADC誤差。

(2)參考電壓/電源調節

電源調節對于ADC精度十分重要,因為轉換結果是模擬輸入電壓與VREF+值之比。當連接到VDDA或VREF+時,如果這些輸入上的負載及其輸出阻抗導致電源輸出下降,將在轉換結果中產生誤差。

(3)外部參考電壓參數

當使用外部參考電壓源(VREF+引腳上)時,該外部參考源有一些重要參數。必須考慮三個參考電壓規格:溫度漂移、電壓噪聲和長期穩定性。

(4)模擬輸入信號噪聲

在采樣時間內,小而高頻率的信號變化可導致較大轉換誤差。此噪聲由電氣設備(例如電機、發動機點火、電源線)生成。它增加了不需要的信號,因此會影響源信號(例如傳感器)。這樣一來,導致ADC轉換結果不準確。

(5)最大輸入信號幅度的ADC動態范圍匹配不佳

為獲得最高ADC轉換精度,ADC動態范圍必須與待轉換信號的最大幅度相匹配。我們假設待轉換信號在0 V與2.5 V之間變化,并且VREF+等于3.3 V。如下圖所示,有部分未使用的ADC轉換范圍,也會使轉換后信號精度下降。

8480fe02-3b07-11ed-9e49-dac502259ad0.png

如何提高ADC采集數據準確性

這個問題之前寫過相關的內容,只是沒有單獨提出來說,這里匯總一下。

1、減少ADC相關誤差的影響

上面描述了“ADC自身導致的誤差”,使用STM32 ADC自校準功能或通過微控制器固件可以輕松補償偏移誤差和增益誤差。

之前在分享的代碼中有提到,比如通過軟件校正:

ADC_StartCalibration(ADC1);

2、使外部環境誤差最小化

(1)參考電壓/電源噪聲最小化

也就是在VREF和VDDA引腳連接外部去耦電容。

84ad0da8-3b07-11ed-9e49-dac502259ad0.png



(2)模擬輸入信號噪聲消除


通過添加外部RC濾波器以消除高頻。

(3)將ADC動態范圍與最大信號幅度進行匹配


也就是將參考電壓范圍匹配采樣電壓(當然,需要有參考電壓引腳的芯片才行)。

84ee81b6-3b07-11ed-9e49-dac502259ad0.png



同時,也可以使用放大器針對ADC范圍調整輸入信號范圍:

8530b7f2-3b07-11ed-9e49-dac502259ad0.png




(4)溫度影響補償

第一種方法是完整描述偏移和增益漂移特性,并在存儲器中提供查詢表,以便根據溫度變化修正測量值。此校準方法需要額外的成本和時間。第二種方法包括使用內部溫度傳感器和ADC看門狗,以在溫度變化達到給定值時重新校準ADC。

(5)優化PCB布局

將模擬和數字布局分開

隔離模擬和數字電路電源

供電和接地使用單獨的PCB層

3、提高精度的軟件方法


(1)平均采樣

平均會降低速度但可以提高精度

(2)數字濾波(抑制DC值中的50/60 Hz噪聲)

設置適當的采樣頻率(這種情況下,從計時器觸發十分有用)。

對采樣數據執行軟件后處理(例如,對50 Hz噪聲及其諧波抑制進行組合濾波)。

(3)AC測量的快速傅里葉變換(FFT)

此方法可以顯示被測信號中的諧波部分。

由于使用了更強的計算能力,因此速度較慢。

(4)ADC校準:偏移、增益、位權重校準

ADC校準可減少內部ADC誤差。但是,必須知道內部ADC結構。

(5)使CPU生成的內部噪聲最小化應用設計必須確保

ADC轉換期間來自微控制器的干擾盡可能小。

使采樣和轉換期間的數字信號變化量最小化(數字靜默)。

好了,本文就寫到這里,希望能對大家有所幫助。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17317

    瀏覽量

    352638
  • 模塊
    +關注

    關注

    7

    文章

    2733

    瀏覽量

    47747
  • adc
    adc
    +關注

    關注

    99

    文章

    6533

    瀏覽量

    545750

原文標題:單片機中ADC采集都存在哪些誤差?

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何測試高精度ADC的線性度?

    目前有待測18位精度ADC,需要測試其線性(INL,DNL),由于內置PGA倍數=2/128,VREF=1V,共模點又在1.2V左右,所以單個差分輸入電壓只能在0.8V~1.8V之間。 塬本方案
    發表于 01-23 07:44

    一個單片機的ADC模塊,它的最高時鐘為32MHz,如果分頻到2KHz,會不會對采樣精度有影響?

    1、一個單片機的ADC模塊,它的最高時鐘為32MHz,如果分頻到2KHz,會不會對采樣精度有影響?個人感覺如果時鐘太低的話,采樣時間就會拉長,采樣電容的電壓就會因為漏電流而下降,導致誤差增加。 2
    發表于 01-09 06:43

    怎么調ads1115的精度,減少誤差?

    怎么調ads1115的精度,減少誤差
    發表于 12-31 06:46

    ADS1278測量精度誤差很大是哪里出了問題?

    0.00050-0.00057V跳動 當通道1的AINP 和AINN接REFP和REFN即測量基準電壓,安捷倫表都為2.50132,ADS1278測量值為2.48422。精度誤差有千分之7大。 當通道1
    發表于 12-24 07:09

    多通道輸出0-20V電壓,用什么方式或架構檢測精度較高(整個檢測回路精度≤1%)?

    請問各位,多通道輸出0-20V電壓,用什么方式或架構檢測精度較高(整個檢測回路精度≤1%)?現在的方式是電阻(1%精度)分壓,送到模擬開關,輸出到絕對值電路再到ADC,在電阻分壓那
    發表于 12-20 06:11

    采用什么方法可以消除ADC,DAC的偏置誤差與增益誤差?

    采用什么方法可以消除ADC,DAC的偏置誤差與增益誤差,希望能夠得到具體方案?有什么辦法減小ADC、DAC的DNL和INL嗎?
    發表于 12-18 07:41

    如何降低微型絲桿精度的測量誤差?

    絲桿的精度等級通常用C級表示,如C3、C5等。這些等級反映了絲桿的重復定位精度和累積誤差,隨著精度等級的提高,絲桿的軸向游動誤差和徑向游動
    的頭像 發表于 12-11 18:04 ?195次閱讀
    如何降低微型絲桿<b class='flag-5'>精度</b>的測量<b class='flag-5'>誤差</b>?

    遙感監測的精度誤差分析 遙感影像分類的方法與技巧

    遙感監測的精度誤差分析 1. 精度定義 精度是指遙感監測結果與實際地面情況的一致程度。高精確度意味著遙感數據能夠準確反映地面的真實情況。 2.
    的頭像 發表于 12-05 10:28 ?1056次閱讀

    ADS131M08IPBS內部參考電壓的精度誤差,怎么改進?

    我使用的ADS131M08IPBS,根據規格書描述內部參考電壓精度在±0.1% 實際測量ADC的Refin引腳的電壓是1.1843V,誤差達到1.3%以上。 與規格書描述的0.1%有很大的
    發表于 11-14 06:01

    如何校準adc以提高精度

    校準ADC(模數轉換器)以提高精度是確保系統精確采集模擬信號的重要步驟。以下是一些常見的校準ADC以提高精度的方法: 一、硬件校準方法 外部參考電壓校準 : 使用外部精密參考電壓源連接
    的頭像 發表于 10-31 11:10 ?1492次閱讀

    高速ADC與FPGA的LVDS數據接口中避免時序誤差的設計考慮

    電子發燒友網站提供《高速ADC與FPGA的LVDS數據接口中避免時序誤差的設計考慮.pdf》資料免費下載
    發表于 10-15 09:50 ?6次下載
    高速<b class='flag-5'>ADC</b>與FPGA的LVDS數據接口中避免時序<b class='flag-5'>誤差</b>的設計考慮

    TLV320ADC3101-Q1用于采集信號精度能達到什么水平,我實際測試精度誤差比較大是哪里的問題?

    (峰值)=1000*(10887-(-9460))/2/32768 = 310.4705811mV 理論峰值300mV,則誤差=(310.4705811-300)/300=3.49% 這個測試精度偏大
    發表于 09-30 07:03

    過采樣提高12位ADC精度

    過采樣提高12位ADC精度 背景: 過去傳統的按鍵都是機械按鍵,隨著技術的發展也出現了觸摸按鍵,但是機械按鍵不能泡水,壽命也比較短。觸摸按鍵也沒法有很多水或泡沫等,金屬面板還不能使用。 壓感就應
    發表于 09-19 19:29

    集成高精度16bit模數轉換ADC電路的兩通道測量高精度電容調理芯片 - MDC02

    芯片內部集成高精度16bit模數轉換ADC電路,其電容分辨率為0.1fF,線性度誤差小于0.3%。此外,芯片內置精度0.5℃的溫度傳感電路,可用于溫度補償及其他溫度傳感場景。
    的頭像 發表于 08-09 09:44 ?619次閱讀
    集成高<b class='flag-5'>精度</b>16bit模數轉換<b class='flag-5'>ADC</b>電路的兩通道測量高<b class='flag-5'>精度</b>電容調理芯片 - MDC02

    如何通過GD32 MCU內部ADC參考電壓通道提高采樣精度?

    ADC采樣精度受很多因素影響,比如電源波動、參考電壓波動、輸入信號波動等,GD32 MCU內部提供了一個參考電壓通道,理論上可以優化由于電源和參考電壓較大波動引入的采樣誤差。
    的頭像 發表于 02-26 09:14 ?2471次閱讀
    如何通過GD32 MCU內部<b class='flag-5'>ADC</b>參考電壓通道提高采樣<b class='flag-5'>精度</b>?
    永利高网址| 百家乐娱乐城体育| 北京太阳城老年公寓| 百家乐官网真人游戏网| 百家乐官网游戏开发技术| 玩百家乐新太阳城| 江口县| 真钱百家乐开户试玩| 百家乐官网游戏软件出售| 老钱庄百家乐的玩法技巧和规则| 真人百家乐官网试玩游戏| 娱乐城百家乐的玩法技巧和规则| 百家乐官网网络赌博真假| 威尼斯人娱乐城简介| 网上百家乐官网破战| 大发888真钱娱乐场| 运城百家乐官网的玩法技巧和规则| 大发888娱乐场下载新澳博| 百家乐官网必赢法冯耘| 太阳城大酒店| 百家乐赢家公式| 本溪| 百家乐赌场牌路分析| 波音百家乐官网游戏| 澳门百家乐网上赌城| 澳门百家乐官网一把决战输赢| 大发888官方网站| 个体老板做生意的风水| 游艇会娱乐城| 七胜百家乐娱乐城总统网上娱乐城大都会娱乐城赌场 | 大发888网页游戏平台| 百家乐模拟投注器| 咸宁市| 百家乐博彩的玩法技巧和规则| 澳门百家乐官网游戏说明书| 百家乐论坛官网| 百家乐官网智能分析| 星空棋牌下载| 百家乐顺序| 德州百家乐官网赌博规则| 赌球平台|