利用Xilinx FPGA和分解器數字轉換器簡化角度測量
自從人類發明了轉輪,我們就希望了解如何通過改變精度提高轉輪轉動效率。在過去幾個世紀,科學家和工程師已經研發了許多方法來實現此目標,期間輪-軸系統的基本原理得到了廣泛應用,從汽車、音量旋鈕、各種機械形式的齒輪到簡陋的手推車,幾乎每種機械系統均采用了這一原理[1]。
經過多個時代的探索,人們發現讓轉輪高效運轉的最重要因素并非轉輪本身(為何不徹底改造它呢?),而是轉輪的軸角。目前測量和優化軸角的最有效方法是采用角度傳感器。現有許多種角度傳感器都能夠通過輪軸監控和改進促進輪周效率優化;但如果配合使用FPGA,您就能夠取得非常顯著的效果,同時能夠提高眾多應用中的輪軸/輪周效率。
在詳細介紹工程師們如何最佳利用賽靈思FPGA達到上述目的之前,先讓我們簡單回顧一下角度傳感器的部分基本原理。目前得到廣泛應用就是編碼器和分解器這兩類角度傳感器。
編碼器和分解器的類型
編碼器分為增量和絕對兩個基本類別。增量編碼器可以監控輪軸上的兩個位置,并且可以在輪軸每次經過這兩個位置時產生A或B脈沖。獨立的外部電動計數器然后從這些脈沖解讀出轉速和旋轉方向。雖然適用于眾多應用,但是增量式計數器確實存在某些不足。例如,在輪軸停轉情況下,增量編碼器在開始運行之前必須首先通過調回到某個指定校準點來實現自身校準。另外,增量式計數器易受到電氣干擾的影響,導致發送到系統的脈沖不準確,進而造成旋轉計數錯誤。不僅如此,許多增量編碼器屬于光電器件 – 如果對目標應用有影響,則無法用于輻射危險區域。

圖1 – 分解器轉子激勵
分解器繞組
ROTOR:轉子 STATOR:定子
絕對編碼器是監控輪軸旋轉計數和方向的傳感器系統。在基于絕對編碼器的系統中,用戶一般把轉輪連接到具有電觸頭或光電基準的輪軸。在輪軸運行時,基于絕對編碼器的系統會記錄旋轉和運行方向,同時產生易于轉換成代碼(最常見的是二進制碼或格雷碼)的并行數字輸出。絕對編碼器的優勢在于只需要校準一次(一般是在工廠中校準),而無需每次使用前都校準。此外,絕對編碼器一般比其它編碼器更可靠。不過,絕對編碼器一般很昂貴,而且它們不利于進行并行數據傳輸,尤其是在測量其讀數的電子系統距離編碼器較遠情況下。
分解器就其本身而言是一種旋轉變壓器——一種輸出電壓與其所監控的輸入軸角唯一關聯的模擬器件。它是一款具有0?~360?旋轉角度的絕對位置傳感器,其直接連接到輪軸并報告轉速和位置。分解器與編碼器相比有諸多優勢。分解器非常穩健可靠,能夠經受帶有灰塵、油污、極端溫度、振動和輻射的嚴酷環境。作為一種變壓器,分解器可以提供信號隔離以及對電氣干擾的自然共模抑制。除了這些特性之外,分解器只需要四根線就可進行角數據傳輸,這使其能夠適用于從重工業、微型系統到航空航天工業等各種應用。
無刷分解器得到了進一步改進,其無需與轉子的滑環連接。因此,這種分解器更可靠,而且使用壽命更長。
分解器采用兩種方式獲取與軸角相關的輸出電壓。在第一種方式中,如圖1所示的轉子繞組由交變信號激勵,而輸出來自兩個定子繞組。由于定子是以機械方式定位到正確角度,因此輸出信號幅度是通過軸角的三角正弦和余弦關聯。正弦與余弦信號均具有與原始激勵信號相同的相位;僅其幅度隨輪軸的旋轉通過正弦與余弦進行調制。

圖2 – 分解器數字轉換器(RDC)方框圖
圖中文字如下:
ROTOR REFERENCE:轉子基準
STATOR INPUTS:定子輸入
COSINE MULTIPLIER:余弦乘法器
SINE MULTIPLIER:正弦乘法器
UP /DOWN COUNTER:遞增/遞減計數器
LATCHES:鎖存器
DETECTOR:檢測器
ERROR:誤差
INTEGRATOR:積分器
VELOCITY:速度
DIGITAL ANGLE:數字角度
WHEN ERROR = 0:當誤差=0
在第二種方式中,定子繞組由相位正交的交變信號激勵。然后在轉子繞組中感應電壓。繞組的幅度和頻率固定,但其相移隨軸角變化。
分解器可以放置到需要測量角度的位置[2]。而電子裝置一般指的是分解器數字轉換器(RDC),可以放置到需要測量數字輸出的位置。分解器的模擬輸出(含有輪軸角位置信息)然后經RDC轉換成數字形式。
典型RDC的功能
一般而言,分解器的兩個輸出會應用到RDC的正弦與余弦乘法器[3]。這些乘法器結合正弦和余弦查找表以及函數構成乘法數模轉換器。圖2顯示了其功能。
暫且假設開始時遞增/遞減計數器的當前狀態是一個代表試驗角度(trial angle)ψ的數值。轉換器設法調整數字角度ψ,使其一直等于并跟蹤所測量的模擬角度θ。
評論