分析如何提高單片機的模數轉換精度
但是,如果模擬量(0~400V電壓)輸入值非常穩(wěn)定,每間隔一定時間采集的10位數據Di都相同,以上方法就達不到要求了。
②如果在A/D轉換過程中要得到局部更高精度的數據,例如檢測蓄電池充放電過程中的電壓,電壓范圍是0~18 V,一般精度達到0.02 V即可,但用戶更關心8~13 V的電壓,8~13 V內精度要達到0.01 V。為了解決這個問題,設計了原理如圖4所示的電路。
單片機有內置10位A/D模塊,Ui(0~20 V)電壓經過R1、R2、P1衰減得到0~5 V的電壓,該電壓直接送到單片機的AN1輸入口,即VAN1=Ui/4。
U2A接成減法運算電路,即U2A 1端電壓VU2A1=VAN1-2 V=Ui/4-2 V=(Ui-8 V)/4。U2B接成4倍放大電路,U2B 7端的電壓VU2B7=VU2A×4=Ui-8 V。AN2輸入并聯一只5 V穩(wěn)壓二極管,以保證當輸入電壓大于8 V時,單片機AN2可以得到O~5 V電壓。單片機先采集AN1的數據,通過采集的數據判斷輸入電壓是否在8~13 V之間,如果不在8~13 V,則采集到的數據就是模擬量(U)對應的數字量(D:000H~3FFH),精度為20 V/2010=20 V/1 024≈0.02 V,電壓數據U=D×0.02 V;如果采集的數據在8~13 V之間,單片機再采集AN2的數據,采集到的數據加上8 V就是模擬量(U)對應的數字量(D:000H~3FFH),精度為(13-8)V/210=5 V/1 024≈0.005 V,電壓數據U=8 V+D×0.005 V。這樣,在8~13 V之間的A/D轉換精度就大大提高了。
結 語
隨著工業(yè)自動控制的不斷發(fā)展,單片機在工業(yè)自動控制的應用也越來越廣。本文介紹的提高A/D轉換精度的工作原理在實際應用中具有一定的使用價值,特別是通過簡單的模擬運算電路,可以局部提高A/D轉換精度。利用這個原理,如果將模擬量分段放大,也可以全范圍提高A/D轉換精度。這種方法在A/D轉換領域有較好的應用前景。
評論