碼盤參考設計

旋轉碼盤上的距離編碼參考標記:最小轉角與間距推導

旋轉碼盤上的距離編碼參考標記:最小轉角與間距推導

碼盤上的距離編碼要求 K 個標記的間距兩兩相差至少 Δ,且總和正好一圈。本文推導閉合條件、標記數上限和最大回零轉角,說明交錯排列可把回零轉角降到約 2N/K + Δ,並給出 2048 線 32 個標記、最大回零 23.0° 的算例。

增量碼盤只有一個零位標記時,上電後最壞要轉一整圈才能找到零位。距離編碼參考標記在直線光柵上已很成熟(原理和直線設計見本文庫距離編碼的幾篇),把它移植到碼盤上,可以讓馬達只轉十幾到二十幾度就知道絕對角度。碼盤與直線碼帶最大的不同是沒有兩端:所有間距加起來必須正好是一整圈,最後一個標記要和第一個首尾相接。本文推導這個閉合條件下的間距、標記數和最大回零轉角。

2048 線碼盤上 32 個不等間距參考標記(示例):從任意位置起轉,過第一個標記後開始計數,過第二個標記時得到間距,查表即得該標記的絕對角度;第二次演示從最壞起點出發,轉過 131 個訊號週期(23.0°)
圖1 2048 線碼盤上 32 個不等間距參考標記(示例):從任意位置起轉,過第一個標記後開始計數,過第二個標記時得到間距,查表即得該標記的絕對角度;第二次演示從最壞起點出發,轉過 131 個訊號週期(23.0°)

編碼規則與閉合條件

以增量道的訊號週期為單位,一圈共 N 個週期(2048 線碼盤 N = 2048)。在圓周上放 K 個參考標記,相鄰標記的間距為 g_1 … g_K,要求:

  • 所有間距兩兩不同,且任意兩個間距至少相差 Δ 個週期,這樣計數誤差小於 Δ/2 時仍能識別(Δ 的取法見本文庫距離編碼容錯一文,Δ = 3 可糾正 ±1 個週期);
  • 最小間距不小於 g_min,保證讀數窗內不會同時出現兩個標記;
  • 閉合:Σ g_i = N。

最簡單的取法是等差:g_i = D + (i − 1)·Δ。閉合條件為

K·D + Δ·K(K − 1)/2 + R = N

其中 R 是餘數(0 ≤ R < K)。R 不為零時,給最大的 R 個間距各加 1 個週期即可:它們之間仍相差 Δ,與較小的那組之間相差 Δ + 1,區分能力不減。由 D ≥ g_min 得到標記數上限:K 取滿足 ⌊(N − Δ·K(K − 1)/2)/K⌋ ≥ g_min 的最大值。

轉過任意兩個相鄰標記,測得的間距就能確定是第幾段,從而知道剛過的標記的絕對角度。正轉時剛過的是該段的終點標記,反轉時是起點標記,所以解碼還要用到 A/B 的方向。偏心對間距計數的影響只來自參考道與增量道的半徑差:偏心 20 μm、兩道半徑 15 mm 與 14.2 mm 時,差分幅值只有約 0.02 個週期,可以忽略。

最大回零轉角:排列順序很關鍵

從任意位置出發,要看到兩個標記,最壞情況是剛錯過一個標記,於是要走完兩段相鄰間距。最大回零轉角為

T_max = max(g_i + g_(i+1))

間距按遞增順序排列時,最大的兩段相鄰,T_max ≈ 2N/K + (K − 2)·Δ。它隨 K 先減後增,在 K = √(2N/Δ) 附近最小。

把間距按“最小、最大、次小、次大……”交錯排列,相鄰兩段之和幾乎相等,T_max ≈ 2N/K + Δ。所有相鄰和的平均值正好是 2N/K,所以這已經貼近下限,而且 K 越大越好,只受 g_min 限制。交錯排列中 g_i + g_(K+1−i) 為常數,每隔一個標記就正好均布,這和直線距離編碼的“固定標記 + 可變標記”是同一種結構;圓周上它自動滿足閉合條件。

2048 線算例

示例引數:r = 15 mm 時訊號週期約 46.0 μm;g_min 取 16 個週期(約 0.74 mm,包含參考標記圖形長度、讀數窗和餘量,屬假設值);Δ = 3。

  1. 標記數上限:K = 32 時 D = ⌊(2048 − 1488)/32⌋ = 17 ≥ 16,K = 33 時 D 小於 16,故 K = 32。
  2. 餘數 R = 2048 − 32 × 17 − 1488 = 16,最大的 16 段各加 1。間距為 17、20 … 62(16 段)和 66、69 … 111(16 段),總和 2048。
  3. 交錯排列:17、111、20、108、23、105 ……、62、66。每隔一個標記間隔 128 個週期(22.5°)。
  4. 最大回零:遞增排列為 108 + 111 = 219 個週期(38.5°),交錯排列為 111 + 20 = 131 個週期(23.0°)。起點均勻分佈時的平均回零轉角分別約 19.7° 和 15.9°,單個零位標記則是最大 360°、平均 180°。

改變 Δ 的結果(g_min = 16 週期):

Δ可糾正誤差標記數 K最小/最大間距最大回零(遞增)最大回零(交錯)平均回零(交錯)
1無5016 / 6623.0°14.6°10.4°
3±1 週期3217 / 11138.5°23.0°15.9°
5±2 週期2616 / 14249.0°28.7°19.3°
左:K = 32、Δ = 3 時遞增排列與交錯排列的間距和相鄰兩段之和;右:最大回零轉角隨標記數 K 的變化,圓點為最小間距 16 週期限定的 K 上限
圖2 左:K = 32、Δ = 3 時遞增排列與交錯排列的間距和相鄰兩段之和;右:最大回零轉角隨標記數 K 的變化,圓點為最小間距 16 週期限定的 K 上限

版圖與解碼要點

參考標記的中心要落在整數個訊號週期上,並與增量道刻線同版對齊,這樣參考脈衝門控到增量訊號的一個象限後,間距計數是整數。若用四倍頻計數,間距和 Δ 都乘 4。解碼錶只有 K 項:間距值 → 段號 → 起點和終點標記的角度;測得的間距與最近表值相差超過 Δ/2 時應報錯,並可再轉過第三個標記複核。

工程要點

  • 閉合條件 K·D + Δ·K(K − 1)/2 + R = N,餘數 R 加給最大的 R 段間距,不影響識別。
  • 標記數由最小間距決定:g_min 包含標記圖形和讀數窗,2048 線、g_min = 16 週期、Δ = 3 時 K = 32。
  • 一定用交錯排列:最大回零從 2N/K + (K − 2)Δ 降到約 2N/K + Δ,示例中從 38.5° 降到 23.0°。
  • 交錯排列等價於固定標記均布、可變標記插在中間,示例中固定標記間隔 128 個週期。
  • Δ 取 3 可糾正 ±1 個週期的計數誤差,代價是回零轉角從 14.6° 增加到 23.0°。
  • 解碼要用 A/B 方向區分剛過的是段起點還是終點,標記中心與增量刻線同版對齊。

小結

旋轉碼盤上的距離編碼要滿足三條:間距兩兩相差至少 Δ、最小間距不小於 g_min、總和正好一圈。最小間距決定標記數,標記數和排列順序決定最大回零轉角;交錯排列使相鄰兩段之和接近平均值 2N/K,已貼近圓周佈置的下限。2048 線碼盤用 32 個標記,最大回零約 23°,比單個零位標記少一個數量級以上。

延伸閱讀:ENC7 編碼器碼盤生產廠家(中文首頁) · 碼盤技術文庫


關於我們:晶正光電專注編碼器碼盤研發製造,玻璃、金屬、PC 碼盤均可按圖客製。

官網:https://enc7.com

© 廊坊晶正光電技術有限公司 版權所有,未經書面許可不得轉載、摘編。本文藉助 AI 輔助創作。

Have a drawing? Get an engineer's review.

Send your outer diameter, bore, line count or bit count, substrate and readhead wavelength. Our engineers check manufacturability and reply with a quotation and sample lead time.

WhatsApp