訊號問題圖鑑
症狀:靜止時細分位置抖動超過 1 LSB——噪聲鏈路逐級排查

靜止位置噪聲 σ_θ ≈ σ_v/A(電角度),2048 線、幅值 1 V、噪聲 1 mV 約 0.1″ RMS。本文逐級給出散粒、電阻、運放、ADC、LED 紋波和機械振動的估算式與示例預算,以及鎖軸、換電源、遮光、減光強的定位順序與判別指紋。
編碼器裝在靜止的軸上,23 位的絕對位置末幾位卻一直在跳,峰峰值五六個 LSB。客戶的問題很直接:是碼盤不好、讀數頭噪聲大,還是機器在振?噪聲從光源一路傳到 ADC,每一級都可能貢獻,也可能根本不是噪聲,而是軸真的在動。本文給出每一級的估算式和一套示例預算,再給出現場逐級斷開、替換、遮光的定位方法。

判據:多大的噪聲會跳 1 LSB
A、B 兩路各有獨立的加性噪聲 σ_v 時,atan2 解算的角度噪聲為(推導見本文庫 ADC 位數與細分解析度一篇)
σ_θ = σ_v / A(電角度,rad)
換成機械角,乘以一個訊號週期再除以 2π。2048 線時 1 rad 電角度約 100.7″,幅值 1 V、噪聲 1 mV 即約 0.1″ RMS。
讀數在 ±3.3σ 內覆蓋 99.9% 的樣本,要求靜止時不跳 1 LSB,需要 6.6σ_θ ≤ LSB,即 σ_v/A ≤ (2π/K)/6.6,K 為每個訊號週期的 LSB 數。2048 線時:
| 位數 | 每週期 K | LSB | 允許 σ_v/A |
|---|---|---|---|
| 19 位 | 256 | 2.47″ | 3.7×10⁻³ |
| 21 位 | 1024 | 0.62″ | 9.3×10⁻⁴ |
| 23 位 | 4096 | 0.154″ | 2.3×10⁻⁴ |
23 位對應約 73 dB 的訊雜比,模擬前端在幾百 kHz 頻寬內很難直接做到,所以先要弄清楚噪聲由誰主導。
逐級估算:六個來源
以一個示例讀數頭為物件(假設):差分 A = I₀ − I₁₈₀,每相直流光電流 I_dc = 0.5 μA,調製度 m = 0.5,每相一個跨阻放大器,R_f = 1 MΩ,輸入電容 C_in = 20 pF,運放電壓噪聲 e_n = 10 nV/√Hz,噪聲頻寬 B = 500 kHz,於是 A = 2m·I_dc·R_f = 0.5 V。
1. 散粒噪聲。 兩相直流都貢獻,σ_v/A = √(qB/I_dc)/m,q 為電子電荷。算例 8.0×10⁻⁴。光強下降時按 1/√I 變大。
2. 反饋電阻熱噪聲。 每個跨阻的電流噪聲 √(4kTB/R_f),兩相合成後算例 2.6×10⁻⁴。R_f 越大相對越小。
3. 運放電壓噪聲經輸入電容。 高於 1/(2πR_f·C_in)(約 8 kHz)後,e_n 被 C_in 放大,等效輸入電流噪聲約
i_n ≈ e_n·2πC_in·√(B³/3)
算例 7.3×10⁻⁴,與散粒噪聲相當。它隨 B^1.5 增長,頻寬越寬越突出。
4. ADC。 量化噪聲 q_ADC/√12 加上轉換器自身的輸入噪聲,算例按 0.25 mV 計,為 5.0×10⁻⁴。參考電壓噪聲是乘性的:A、B 同時取樣時在比值中抵消;分時複用一個 ADC 時,殘餘為 (δ_B − δ_A)·sin2θ/2。
5. LED 驅動紋波。 紋波 r 同時縮放 A、B,本身不改變角度,在李薩如圖上只讓斑點沿徑向拉長(見圖1)。它要藉助未抵消的、與光強成正比的直流分量才進入角度:
δθ = r·(ε_B·cosθ − ε_A·sinθ)
ε_A、ε_B 為兩路相對偏置。差分結構殘餘偏置 2%、紋波 0.5% RMS 時只有約 1.0×10⁻⁴;但若是單端訊號用固定參考去直流,直流與幅值之比為 1/m = 2,同樣 0.5% 紋波就變成約 1% 的噪聲,約 1″,會遠超其他各項。
6. 機械振動。 軸的真實角振動直接出現在讀數里,在李薩如圖上沿切向拉長。假設角振動幅值 0.1″,均方根約 0.071″。
預算彙總見圖2:各電子項合計約 0.123″,加上機械振動約 0.142″ RMS,即 0.92 LSB,±3.3σ 的峰峰值約 6 LSB,與開頭的現象吻合。想在 23 位下靜止不跳,σ 需降到約 0.023″,單靠模擬前端很難,通常要在靜止時用數字濾波收窄等效頻寬。

現場定位:斷開、替換、遮光
順序按拆裝代價從小到大排:
- 鎖軸、斷開驅動。 夾住軸或斷開伺服使能(注意立式軸安全)。噪宣告顯下降,切向拉長的斑點消失,就是機械振動或伺服保持往復,讀數頭沒有問題。再對靜止位置做頻譜,看譜線是否落在結構共振、電源頻率或 PWM 頻率上。
- 換電源點亮 LED。 用電池供電的線性恆流源代替原驅動。噪聲下降說明驅動紋波經直流分量漏入,單端結構尤其要查這一項。
- 遮光。 蓋住讀數窗或關閉 LED,測 A、B 的噪聲電壓 σ_dark,它是電子噪聲底;亮態 σ_light 與之平方差的平方根就是散粒噪聲加紋波項。注意先關閉恆光閉環,否則遮光後閉環會把 LED 推到最大。
- 短接 ADC 輸入。 剩下的是 ADC 和參考的噪聲,可與資料手冊比對。
- 光強減半。 合計噪聲變為約 2 倍,電子噪聲主導;約 1.41 倍,散粒噪聲主導;基本不變,是乘性或機械來源(見圖3)。示例讀數頭光強減半時由 0.142″ 升到 0.229″,約 1.61 倍,介於兩者之間,與預算一致。
- 換停止位置。 在一個訊號週期內換 8 個位置測 σ。加性噪聲與位置無關;隨位置按每週期一次起伏,指向紋波經偏置漏入;每週期四次、在 45° 附近最大,指向分時取樣時的參考噪聲。

碼盤側的影響主要透過幅值體現:汙染、透光區霧化或間隙偏大都會降低 A,固定的電子噪聲隨之按比例放大。所以同一讀數頭在不同碼盤上抖動不同時,先比較兩者的幅值,而不是先懷疑噪聲。
工程要點
- 先把現象折算成 σ_v/A:23 位、2048 線靜止不跳 1 LSB 要求約 2.3×10⁻⁴,即約 73 dB。
- 散粒噪聲 σ_v/A = √(qB/I_dc)/m,提高光電流和調製度比挑運放更有效。
- 運放電壓噪聲經輸入電容隨 B^1.5 增長,頻寬只取夠用,並儘量減小探測器和走線電容。
- 單端加固定參考去直流的結構對 LED 紋波極敏感,0.5% 紋波可造成約 1″ 的抖動,應改用差分或穩流驅動。
- 鎖軸、換電源、遮光、短接 ADC、光強減半,按這個順序逐級定位,每一步只改一個變數。
- 李薩如斑點的形狀是快速判據:圓斑為加性噪聲,徑向拉長為乘性,切向拉長為真實運動。
小結
靜止時細分位置抖動,本質是 σ_v/A 不夠小,或者軸本身在動。把散粒、電阻熱噪聲、運放電壓噪聲、ADC、LED 紋波和機械振動逐項估算出來,再按鎖軸、換電源、遮光、減光強的順序做對比試驗,就能定位主導項;光強與停止位置兩個變數帶來的標度差異,是區分各類來源最省事的指紋。
延伸閱讀:ENC7 編碼器碼盤生產廠家(中文首頁) · 碼盤技術文庫
關於我們:晶正光電專注編碼器碼盤研發製造,玻璃、金屬、PC 碼盤均可按圖客製。
官網:https://enc7.com
© 廊坊晶正光電技術有限公司 版權所有,未經書面許可不得轉載、摘編。本文藉助 AI 輔助創作。