• 沒有找到結果。

第二章 弦波編碼器解碼演算法

2.1 弦波編碼器

本節介紹弦波編碼器的基本背景、分析弦波編碼器的輸出,並且說明弦波編碼器的 解碼概要,解碼概念是將弦波編碼器的資訊分為兩個部份分別計算,最後再合成完整的 位置資訊。

2.1.1 弦波編碼器之介紹

近年來在伺服馬達控制系統中對於位置回授的解析度要求越來越高,有鑑於此,傳 統的編碼器(encoder)及解角器(resolver)逐漸被擁有更高解析度的弦波編碼器(sinusoidal encoder)所取代。弦波編碼器有別於傳統編碼器的工作原理,利用一對相差 90°、隨著轉 動角度而改變的正弦(sine)及餘弦(cosine)信號,可以提供更高解析度的位置資訊。

( )

( θ )

θ

×

=

×

=

P V

P V

c s

cos sin

(2.1)

P 是每 360°弦波編碼器所產生的弦波週期數。由於其特殊的輸出信號特性,需要不

同於以往的解讀方法,學者紛紛發展各式的解讀技巧,一般常見的有反正切函數運算 (direct arctangent computation) [1]、或是根據舊有的解角/數位轉換器(resolver-to-digital converter)所衍生出的追跡及濾波迴路(tracking and filtering loop) [1,2]、線性化技巧 (linearization) [3,4,5]或是內插法、查表法等等。在實現的方式上也可分為硬體實現及軟 體實現兩種方式,本章將分別介紹兩種適合不同實現方式的解碼技巧。

2.1.2 弦波編碼器輸出分析

弦波編碼器的輸出如上所述是一對相差 90°的正弦/餘弦信號,將這兩信號分別置於

x 軸與 y 軸座標上,令 ( ) ( x

,

y

=

V c

,

V s )

可以得到一圓,仔細分析圓形可以檢視弦波編碼器 經過 ADC 取樣之後信號是否受雜訊干擾。理論上應得到一圓心在原點的正圓形,如果 圓心不在原點上,表示輸入信號有 offset 的情形,如果不是正圓而是橢圓的話表示兩相 出入有 gain 值的差異。下圖 2-1 是弦波編碼器的實際輸出,使用的是 HPB 公司所生產 的 2048 PPR (period per revolution,即一圈為 2048 個週期)弦波編碼器,由圖得知弦波編 碼器經過取樣後的輸出圓心接近原點表示 offset 非常小,兩相 gain 值也是差距不大。

-8000 -6000 -4000 -2000 0 2000 4000 6000 8000 -8000

-6000 -4000 -2000 0 2000 4000 6000 8000

圖 2-1 弦波編碼器實驗輸出分析圖

2.1.3 弦波編碼器解碼概要

弦波編碼器解碼結果可分成兩個部份,一為粗略解析度資訊(coarse resolution data),另一部分為精細解析度資訊(fine resolution data) [1]。粗糙解析度資訊類似原有光 學編碼器(optical encoder)的 QEP 信號,負責計算弦波經過的個數;精細解析度資訊則是 利用解角器特有的弦波輸出,在原本的信號中內插細分,使解析度提升,兩者相對關係 如下

0 1 2 3 4 5 6 0

0.5 1

Position(rad)

Coarse Position Output (A phase)

0 1 2 3 4 5 6

0 0.5 1

Position(rad)

Coarse Position Output (B phase)

0 1 2 3 4 5 6

0 0.5 1

Position(rad) Fine Position Output

圖 2-2 粗略位置與精細位置相對關係圖

如前一節所述,將輸出分別置於 x 座標及 y 座標得

( ) ( x , y = cos θ , sin θ )

,可做出一半 徑為 1 且圓心位於原點的圓,構想是以粗造解析度資訊計算所經過的象限數目,再加上 精細解析度資訊求出每個象限內的角度便可求出高解析度位置資訊。

圖 2-3 弦波編碼器解碼資訊概念圖

上圖 2-3 是弦波編碼器的粗糙資訊與精細資訊組合圖,顯示在粗糙解析度與精細解

析度間有 2 位元重疊,重疊的原因是因為粗糙解析度計算的象限數目正巧與精細解析度 的前兩位元所表示的位置相同。弦波編碼器的解析度是由粗糙解析度加上精細解析度所 得,粗糙解析度限制主要是在於弦波編碼器硬體所限制,例如 2048 PPR 的弦波編碼器 就可提供

2048 × 4 = 8192

的粗糙解析度;精細解析度則是受到硬體 ADC 解析度及不同的 精細位置解碼技巧所共同決定,例如以 12 位元的 ADC 取樣最多可得 12 位元的解析度 再加上解碼技巧的不同有所減少。以一個 2048 PPR 的弦波編碼器搭配 12 位元的 ADC 最高可得2048×4×2

12

÷4=2

23

的解析度,其中除 4 就是扣除掉精細解析度與粗糙解析度 重疊的部份,但實際上受到硬體電路雜訊、ADC 取樣精確度及解碼技巧不同的影響,

解析度可能低於理論值。

Sinusoidal Encoder

Preprocessing Circuit

Preprocessing Circuit

Coarse Posiiton

Fine Position

sin cos

圖 2-4 弦波編碼器解碼方塊圖

上圖 2-4 是弦波編碼器的解碼方塊圖,粗略解碼位置與精細解碼位置都會先經過一 些前處理電路,再進入解碼的步驟,而前處理電路的好壞會嚴重造成電路雜訊問題,直 接影響到弦波編碼器的解析度。

相關文件