• 沒有找到結果。

第三章 弦波編碼器解碼實現

3.1 DSP-Based 線性化法解碼實驗

3.1.2 即時線上 ADC 校準

弦波編碼器的解碼過程中,ADC 取樣弦波信號用來解碼精細位置資訊,所以 ADC 的取樣信號可信度是影響弦波解碼後精度的最大因素之ㄧ。DSP-Based 的弦波編碼器解 碼是以線性化解碼法為主,使用的 ADC 是 TI 公司 TMS320F2812 數位信號處理器(DSP) 所內建的 12-bit ADC,由於所使用的實驗發展版 eZdsp 上並沒有設置校準 ADC 的周邊 硬體電路,而弦波取樣需要極為精確可信的取樣結果,所以我們使用一個 ADC 校準方

法,利用外部電路提供兩個穩定已知的電壓信號作為參考電壓,強制將這兩個取樣結果 指定到我們所要的輸出位置上,搭配上 DSP 本身所具有的運算功能,便可算出實際的 增益值及偏移量,在每次取樣時都能進行電壓的校準及補償。

上圖 3-5 是 ADC 的校準示意圖,我們假設理想的 ADC 方程式為

mi

x

y

= ×

(3.1)

其中輸入為 x,輸出為 y,mi 是理想的增益值,以實驗用的 12-bit 對應到 0~3V 的 ADC 來說,增益值應該為 1365

0 3

1 2

12

− =

− 。而實際的 ADC 輸出方程式則是

b ma x

y

= × +

(3.2)

ma 是實際的增益,b 則是實際偏移量(offset),這兩個數值在每次進行校準運算的時

候都會從新運算。

校準的流程是在每次 ADC 取樣後,我們都會得到兩組輸入與三組輸出數據,分別 是已知輸入的高電壓輸出 y

H

、已知輸入的低電壓輸出 y

L

及未知輸入的電壓輸出 y,在加 上我們原本做為基準的輸入 x

H

與 x

L

共五個參數。

首先求出實際增益量 ma

L H

L H

x x

y ma y

= − (3.3)

接著求出實際偏移量 b

圖 3-5 ADC 校準示意圖 [9]

ma x y

b = LL × (3.4)

估測出未知輸出 y 所應對應到的輸入

ma b x y

=

ˆ

(3.5)

最後將估測出的輸入

經過理想的 ADC 輸出方程式得到理想輸出值

mi

x

y

ˆ= ˆ×

(3.6)

即時線上 ADC 校準流程如下:

1. 先以方程式(3.3)算出實際增益量 ma 2. 再以方程式(3.4)求出實際偏移量 b

3. 利用 ADC 取樣結果 y 與方程式(3.5)估測出目前輸入電壓

4. 最後以方程式(3.6)將估測輸出電壓對應到理想輸出 yˆ

經過上述四個步驟便可將原本未經校準補償的輸出 y 補償成理想輸出 yˆ ,而且在每 次 ADC 取樣時都執行這樣校準,以得到最佳的 ADC 取樣效果。實驗中所使用提供穩定 電壓的 IC 分別為 LD1117 與 LM317 兩種,LD1117 提供 2.5V 左右的穩定電壓,實際測 量後實驗所用的 LD1117 應為 2.485V,而 LM317 則是一顆可調整輸出的穩壓 IC,其最 低輸出電壓約為 1.25V,在實際測量後實驗用的 LM317 輸出為 1.260V。

以下實驗是在不同時間裡用同樣的電壓測試 ADC 輸出,經過實驗證實內建 ADC 在 不同時間下取樣可能會有時變問題,所以每次取樣都應該進行即時線上校準,不適合以 離線方式先行算出再補償。

0 200 400 600 800 1000 1200

1925 1930 1935 1940 1945 1950 1955

ADC Before Calibration in 1.352V

0 200 400 600 800 1000 1200

1925 1930 1935 1940 1945 1950 1955

ADC Before Calibration in 1.352V

(a) 第一次取樣 (b) 第二次取樣

0 200 400 600 800 1000 1200

ADC Before Calibration in 1.352V

0 200 400 600 800 1000 1200

1925

ADC Before Calibration in 1.352V

(c) 第三次取樣 (d) 第四次取樣

0 0.005 0.01 0.015 0.02 0.025 0.03

180

Output value

ADC Original output (0.136V)

0 0.005 0.01 0.015 0.02 0.025 0.03

180

Output value

ADC after Calibration and Average output (0.136V)

(a) 0.136V 校準前 (b) 0.136V 校準後

0 0.005 0.01 0.015 0.02 0.025 0.03

Output value

ADC Original output (0.471V)

0 0.005 0.01 0.015 0.02 0.025 0.03

600

Output value

ADC after Calibration and Average output (0.471V)

(c) 0.471V 校準前 (d) 0.471V 校準後

0 0.005 0.01 0.015 0.02 0.025 0.03

1930

Output value

ADC Original output (1.417V)

0 0.005 0.01 0.015 0.02 0.025 0.03

1930

Output value

ADC after Calibration and Average output (1.417V)

(e) 1.417V 校準前 (f) 1.417V 校準後

0 0.005 0.01 0.015 0.02 0.025 0.03

2200

Output value

ADC Original output (1.622V)

0 0.005 0.01 0.015 0.02 0.025 0.03

2200

Output value

ADC after Calibration and Average output (1.622V)

(g) 1.622V 校準前 (h) 1.622V 校準後

0 0.005 0.01 0.015 0.02 0.025 0.03

Output value

ADC Original output (2.53V)

0 0.005 0.01 0.015 0.02 0.025 0.03

3440

Output value

ADC after Calibration and Average output (2.53V)

(i) 2.53V 校準前 (j) 2.53V 校準後

0 0.005 0.01 0.015 0.02 0.025 0.03

3950 4000 4050 4100

Time(s)

Output value

ADC Original output (2.90V)

0 0.005 0.01 0.015 0.02 0.025 0.03

3950 4000 4050 4100

Time(s)

Output value

ADC after Calibration and Average output (2.90V)

(k) 2.90V 校準前 (l) 2.90V 校準後

相關文件