提高AD采樣精度_第1頁
提高AD采樣精度_第2頁
提高AD采樣精度_第3頁
提高AD采樣精度_第4頁
提高AD采樣精度_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、-作者xxxx-日期xxxx提高AD采樣精度【精品文檔】TMS320F2812內部集成了ADC轉換模塊,該模塊具有如下的功能:112位ADC核,內置了雙采樣保持器(S/H);2順序采樣模式或者同步采樣模式;3模擬輸入:0V3V;4快速轉換時間運行在25MHz,ADC時鐘,或12.5MSPS;516通道,多路選擇輸入;6自動序列化,在單一時間段內最大能提供16個自動A/D轉換,每個轉換可編程對16個輸入通道中的任何一個進行選擇。7序列發(fā)生器可按2個獨立的8狀態(tài)序列發(fā)生器或1個16狀態(tài)序列發(fā)生器。我們在項目實際研發(fā)過程中采用的AD采樣的硬件電路如下圖所示:圖1為電流信號檢測與調理電路,電壓信號的檢

2、測與調理電路與此相類似。從電流傳感器輸出的信號CT1首先經過了由R1、C1組成的低通濾波電路,濾除高頻干擾信號,然后通過U1構成的電壓跟隨器,實現(xiàn)了電路前后兩級的隔離。由于2812的I/O口輸入電平必須低于3.3V,因此在芯片引腳的輸入前端加了一個穩(wěn)壓管Z1,使AD口輸入的電壓幅值不超過3V。TMS320F2812雖然有12位精度,但在實際的使用過程中,我們發(fā)現(xiàn),ADC的轉換結果誤差較大,如果直接將此轉換結果用于控制回路,必然會降低控制精度,最大的轉換誤差可以達到9。那么如何來提高AD采樣的精度呢,下面列出了幾種常見的方法:1硬件角度(1)硬件濾波,濾除干擾信號;(2)電路板布線時需要注意不要

3、讓ADCINxx引腳運行在靠近數(shù)字信號通路的地方,這樣能使耦合到ADC輸入端的數(shù)字信號開關噪聲大大降低;(3)采用適當?shù)母綦x技術,將ADC模塊電源引腳和數(shù)字電源隔離;(4)如果采樣電路部分是經過多路開關切換的,可以在多路開關輸出上接下拉電阻到地;(5)采樣通道上的電容效應也可能會導致AD采樣誤差,因為采樣通道上的等效電容可能還在保持有上一個采樣數(shù)據(jù)的數(shù)值的時候,就對當前數(shù)據(jù)進行采樣,會造成當前數(shù)據(jù)不準確。如果條件允許,可以在每次轉化完成后現(xiàn)將輸入切換到參考地,然后在對信號進行下一次采樣。2軟件角度(1)多次采樣取平均值算法,最為簡單;(2)數(shù)字濾波算法,例如采用中值濾波法,具體方法為:連續(xù)采樣

4、20個數(shù)據(jù),對這些數(shù)據(jù)進行排序之后,去掉最小的5個和最大的5個,然后取中間10個采樣數(shù)據(jù)的平均值。(3)軟件校正算法。F2812的ADC轉換精度較差的主要原因是存在增益誤差(Gain Error)和偏置誤差(Offset Error),要提高轉換精度就必須對兩種誤差進行補償,下面將具體介紹這種實用的補償方法。理想的12位ADC應該是沒有增益誤差和偏置誤差的,因此其轉換的計算公式為:Y=x*miY=output countMi=ideal gain=1但是,實際上F2812的AD是存在增益誤差和偏置誤差的,其轉換的計算公式如式2所示:Y=x*ma+mb其中,ma=actual gainB=act

5、ualoffset(與輸入為0時相關)實際的和理想的轉換計算曲線如圖2所示: 在校正的時候,首先選用ADC的任意兩個通道(例如A1,A2)作為參考輸入通道,并分別輸入已知的直流參考電壓,通過讀取相應的結果寄存器獲取轉換值,利用兩組輸出值便可求得ADC模塊得校正增益和校正偏置,然后利用這兩個值對其他通道轉換數(shù)據(jù)進行補償。首先,計算兩個通道得參考電壓轉換后得理想結果。在講述算法之前,我們先來看看各個參數(shù)之間的關系,如下圖所示:由圖可以得到各參數(shù)之間的關系如下:y = x * ma + bma = (yH yL)/(xH xL)b = yL xL*maCalGain = (xH xL)/(yH yL

6、)CalOffset = yL * CalGain xLx = y * CalGain CalOffset給A1通道加2.5V,給A2通道加0.5V。A1input=VHigh=2.5V,則2.5*4095/3.0=3413(理想值)A2input=VLow=0.5V,則0.5*4095/3.0=683(理想值)校正C語言的算法如下:#defineHIGH_IDEAL_COUNT 3413/理想高值#defineLOW_IDEAL_COUNT 683/理想低值#define SAMPLES20/采樣次數(shù)/定義所需的各個變量Uint16Avg_HighActualCount;Uint16Avg_

7、LowActualCount;Uint16Sum_HighActualCount;Uint16Sum_LowActualCount;Uint16 CalGain;Uint16CalOffset;Uint16HighActualCountSAMPLES;Uint16LowActualCountSAMPLES;/變量初始化Voidinitvar (void)Avg_HighActualCount=0;Avg_LowActualCount=0;Sum_HighActualCount=0;Sum_LowActualCount=0;CalGain=0;CalOffset=0;Uint16 I;For(i

8、=0;i4;/讀采樣數(shù)據(jù)LowActualCount=AdcRegs.AdcResult24;If(i=SAMPLES)/采樣滿規(guī)定次數(shù)i=0;for(k=0;kSAMPLES;k+)Sum_HighActualCount+= HighActualCount;Sum_LowActualCount+=LowActualCount;Ave_HighActualCount= Sum_HighActualCount/SAMPLES;/多次采樣取平均值Ave_LowActualCount= Sum_LowActualCount/SAMPLES;CalGain = (HIGH_IDEAL_COUNT - LOW_IDEAL_COUNT)/計算增益系數(shù) / (Avg_HighActualCount - Avg_LowActualCount);CalOffset =Avg_LowActualCount*CalGain -

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論