簡單快速的測量位置變化
加工機械位置系統、精密測量儀器以及搬運機器人需要快速的記錄位置數據,也需要快速的識別出任何變化。
高解析度編碼器和光柵尺通過一個編碼器介面回饋位置數據給控制中心。選擇的這個介面必須滿足控制單元對時間的要求。對於設計者,擁有太多的編碼器介面可供選擇,這樣就使得選擇編碼器介面的任務和完成這個任務一樣的複雜。
除了那些眾多的專有數字介面,也有一些開放的標準介面,例如,SSI和BiSS介面用於絕度位置讀取。然而,如果方向上的或一個非常高的位置解析度變化需要一個快速的捕獲,串行數據介面的吞吐能力是有限的。
作為另一個選擇,有很多傳統的開放編碼器介面可供傳輸位置數據,例如使用正弦/余弦信號或者增量A/B信號傳輸位置數據都很好。
下麵的文章描述這方面的需求、替代選擇以及可行的解決方案。
目錄
1.選擇編碼器介面
2.使用當前值快速控制
3.僅僅計數是不夠的!
4.構建一個快速編碼器介面
5.摘要

-
選擇編碼器介面
在使用控制器或者PLC的線性/旋轉編碼器的系統中調用一個介面模組(如圖1)。很多控制器廠商提供一定範圍的專有或者開源介面。
模擬介面
模擬介面是傳統的非專有介面,傳輸位置資訊使用模擬信號。在接收方,既可以使用正弦/余弦值供插補細分器細分,也可以使用電流或者電壓信號(例如,0-20mA 或 0-10V)確定絕對位置。後者是非常通用的介面,用於簡單的位置編碼器。在安全應用領域,模擬差分正弦/余弦信號收發器是優先選擇的,差分信號的錯誤第一時間可以被檢測到,因此適合這類應用。

圖1:控制器或PLC的編碼器介面
數字絕對值介面
最快的傳輸數字絕對位置數據的方法是通過一個並行介面。這個介面通常由TTL驅動器擔當。然而,並行介面線纜的成本非常高,因為這個原因這種方法不是特別受歡迎。其他方法越來越流行了,包括使用標準的非專有現場匯流排用於串行傳輸,例如,CANopen、以太網以及開源的SSI/BiSS介面。
數字增量介面
另一個傳統串行編碼器介面使用兩個相移90°的A和B信號提供增量傳輸位置變化數據,就是眾所周知的正交信號。另外,一個Z脈衝信號提供零位信號用於零位探測。對於增量介面,一個方向上的改變由A到B信號的相移或者B到A信號的相移變化表示。
圖2所示的是一個靠近零位置的方向改變時序圖。這裏給出的是一個旋轉運動方向改變時的解析度,是一個角度,滯後1.4°。如圖所示,A,B增量信號相移允許探測方向用於向下和向上的計數。
在這個例子裏,一個迴圈內,A/B信號提供360°的邊沿(H至L或者L至H)。方向鑒別器必須評估這些邊沿的相位差以及啟動向上/向下計數器。這例子是編碼器當時的絕對位置資訊。

圖2:增量編碼器介面和A,B,Z信號時序圖
增量編碼器介面的優越性在於低成本和對線纜的低要求。典型的配置包括TTL驅動器輸出、集電極開路輸出以及線驅動器輸出。TTL驅動器和集電極開路器是更低成本的解決方案,線驅動器提供許多優越的性能。這些高級性能包括差分驅動器的抗干擾性、可驅動長距離線纜運行、高效的功率消耗以及快速串行傳輸性能的提高。差分對傳輸器得益於使用專用的RS422驅動器,提供更好的適應性。
方向的改變也可以被快速的探測,速度由簡單的測量兩個Z零位脈衝之間的沿距離來確定。然而,一個絕對位置僅在一個Z零位脈衝到達之後有效。對於旋轉運動,絕對位置在至少一個迴圈之後獲得。為此,線性測量系統需要一個參考或者起始序列優先於常規運行。
-
使用當前值快速控制
高精度應用和高速運動產生非常高的時鐘頻率,這不得不由介面模組來處理。考慮這種高速度和位置控制,可實現的控制迴圈依賴於固件的演算法和硬體的延時時間。
舉例說明,圖3圖解了一個電機控制系統的組成。除了固件的執行時間之外,如下的硬體執行時間也要特別注意考慮進去:
1. 編碼器延時:插補細分器的處理時間和A/B信號的輸出耗時。
2. 編碼器和控制單元/PLC之間的傳輸時間。
3. 控制單元/PLC的編碼器介面模組讀出時間

圖3:一個電機控制回路的定時組成部分
編碼器延遲
編碼器延遲(TLZ)依賴於模擬放大器的帶寬,其內部的插補細分處理、解析度以及其使用的編碼器介面。
插補細分器延遲
如果模擬編碼器信號正弦/余弦插補細分是一個基於MCU/DSP系統,延遲週期可能超過200us或更多。特別要注意的是當使用較高頻率和解析度,尤其是協同多軸控制和冗餘系統。在這種情況下,延遲可以導致位置數據或許不是當前的或者不同步。為迎接這個挑戰,一個基於超快閃速(flash)插補細分器可以擔當此任務(例如,iC-NV)。iC-NV是並行內部處理,可獲得延時少於1us的插補細分器。
編碼器介面延遲
當採用串行編碼器介面時,通常只扮演著重要角色的是數據傳輸時間。對於串行傳輸,MCU/DSP從編碼器介面模組的位置數據讀出時間Tread,取決於數據位寬和整體速度。例如,SSI在10MHz運行,32位寬,傳輸時間為3.2us。
對於增量介面,延遲通常可以忽略,給出即時性位置運動編碼器信號邊沿。然而,方向的改變將增加一些數量的延遲,取決於增量信號的遲滯(見圖2)。
處理延遲
一旦位置數據通過編碼器介面被讀取,軟體演算法處理時間(TS/W)增加了系統延遲。這將在不同系統之間由於系統本身的處理時間而大為不同,取決於使用的MCU或者DSP的構架和處理能力。
電機延遲
在位置數據被讀取和處理之後,最終的延遲屬於電機驅動器自身的一部分。啟動電機(Tdriver)和隨後的反應時間(Tmotor)必須被加到整個的系統延遲。
所有的這些延時時間加到系統延遲,這個延遲會直接影響整個控制週期的持續時間。反過來,這也影響生產率和整個機器電機控制系統的精度。
3)僅計數是不夠的!
電機的速度和編碼器的解析度確定被處理的脈衝的重複率。然而,當選擇一個編碼器的時候必須一併考慮其他因素。
編碼器選擇例子
以一個高速應用為例,磁編碼器系統,例如iC-MH在解析度為10位時允許電機速度高達480,000 RPM。這些器件也同樣提供相關的電機換向信號UVW。
典型的電機速度通常在500到15,000RMP範圍以內。然而,通常要求的解析度為12位或者以上。在這種情況下,一個速度為120,000RPM和12位位置解析度的編碼器可以由iC-MH完成。
iC-MH是一個單晶片絕對值編碼器器件,提供多種編碼器介面。包括兩個串行SSI/BiSS傳輸介面和一個增量介面。聚焦這個標準增量信號,A/B信號的沿重複率達8MHz。這允許一個大於125ns的最小沿距離距離在兩個A/B信號沿之間(見圖4a:多種電子插
圖4a::多種電子插補細分器/編碼器特性
位寬和速度
圖4b給出了每旋轉編碼器的脈衝數,取決於速度。在一個15位解析度以及10,000RPM重複率時幾乎達到5.5MHz。標準編碼器僅在低速時能獲得像這樣的解析度。隨著方向改變,最小沿距離非常重要而且必須被考慮進去。

直線電機例子
如果使用直線電機,通常需求的速度為幾米每秒。對於無芯直線電機,甚至可以獲得超過7m/s的速度。
對於光柵尺或磁柵尺,其提供一個週期間隔20um的正弦/余弦信號。若由採用一個解析度因數為16的插補細分器細分,例如,採用iC-NQC,可達到1.3us的解析度。在直線速度為2m/s時,脈衝重複率為1.6MHz。
除了脈衝重複率和A/B信號的最小沿間隔之外,在開發期間也要遵守下麵的這幾方面:
-
多軸位置在tX時刻同步存儲
-
簡單的速度測量
-
在A/B信號傳輸期間檢測失調/誤差
-
可編程計數器的長度要考慮到不同的測量精度
-
單端和差分兩種方法評估A,B和Z信號
4)構建一個快速增量介面
增量編碼器可以用多種不同的方法連接,對於非常緩慢的運動,使用MCU的固件和一個中斷來評估信號沿即可。
如果使用一個外部方向鑒別器,或者使用一個集成到MCU內部的方向鑒別器,數KHz頻率的A/B信號也許由MCU的內部定時器/計數器能勝任此掃描任務。對於工業控制器/電機控制系統,FPGA也經常用來構建編碼器的介面。取決於此處理器的構架,有些這方面的一些系統有局限以及不能處理高頻率的編碼器。然而,採用新開發的嵌入式控制器和專用的編碼器處理器可以幫助設計者解決此類型的設計挑戰。
iC-MD是一個此類型的編碼器處理器件,如圖5所示,此器件提供一個完全的增量編碼器介面和集成的差分RS422線接收器。iC-MD也可以連接到一個SPI介面或者一個SSI/BiSS介面。
iC-MD集成的方向鑒別器啟動可編程長度的同步向上/向下計數器。此允許高達3個通道,每個通道可配置高達16位,或者配置為兩個24位計數器,或者配置為一個32位計數器,或者配置為一個48位計數器。
在兩個零脈衝之間,一個24位參考計數器計數A/B信號的沿數目。同時使用兩個24位寄存器,其用來評估編碼長度參考標記。累加的參考計數器值也可以用控制器或者本地MCU/DSP來計算速度或者加速度。
一個速率為40MHz的編碼器,最大計數頻率要足夠支持一個小於25ns的沿間隔。第一個24位計數器的位置可以存儲以及可通過一個外部事件從接觸式探針引腳(TP)讀出,或者通過iC-MD的SPI/BiSS介面讀出。
在一個多軸控制器應用中,這個功能有助於在tX時刻同步存儲所有的位置資訊, 以及順序讀出傳播延時時間。

圖5:3通道增量編碼器介面帶差分RS422接收器
A/B相位邏輯也被iC-MD監控,並且報告給MCU/DSP其他錯誤,例如過壓,通過一個錯誤輸出(NERR)。報警,例如計數器向上溢出或者向下溢出,由iC-MD的輸出NWARN切換到低電平來標誌。
這些輸出端子是雙向的並且也由iC-MD作為一個外部消息來存儲以及它的狀態可以通過SPI/BiSS介面讀出。兩個執行器輸出(ACT0/1)可由軟體和MCU/DSP作為信號輸出(例如,用於LED狀態指示)或者作為開關。
當考慮到很多編碼器介面設計數不盡的挑戰時,設計者面對的是更多的挑戰。若採用編碼器處理器,例如iC-MD,很多功能可以從一個已經存在的MCU/DSP平臺獲得。如果這樣,這將會減少系統的負擔以及提高很多性能和適應性來達到總體系統設計的要求。
5)概要
在未來的幾年裏,需要更短的機器生產速度和更節能的產品,而且為驅動系統開發快速位置感測器也將成為一個主要的挑戰。
有針對性的積體電路,如本文的這個例子,將有助於以成本效益的方式解決這些要求。未來的編碼器iC研發瞄準的是時鐘速率高達100MHz,以便更高的精度可以被快速和可靠的測量。