孫樹紅,趙長海,萬秋華* ,李艷茹
(1.中國科學院長春光學精密機械與物理研究所,吉林長春130033;2.中國科學院大學,北京100049;3.總裝備部沈陽軍事代表局駐長春地區軍事代表室,吉林長春130033)
光電軸角編碼器是一種高精度角度測量裝置,它能把軸角信息轉換成數字代碼,將其與計算機和顯示裝置連接后即可實現動態測量和實時控制。隨著光電編碼器在工業、國防、航天等領域的廣泛應用,對編碼器的技術指標的要求越來越高。其中最重要的就是精度,如何快速、準確地檢測編碼器的精度,是業內人士一直在研究的課題[1]。
目前國內外在進行低精度光電編碼器檢測時,通常采用高精度角度基準來檢測編碼器[2-3],將高精度編碼器和低精度編碼器進行同軸連接,轉動編碼器,高精度編碼器與被檢編碼器的示值差即為被檢編碼器在當前位置的誤差;檢測高精度編碼器時,通常采用正多面體和自準直儀作為角度基準,將編碼器和正多面體進行同軸連接,正多面體和自準直儀作為角度基準來檢測編碼器的誤差。通常情況下,檢測編碼器精度需要在嚴格的實驗室條件下進行,且檢測過程復雜、時間長[4-5]。為實現快速、準確的精度檢測,本文研制了一套小型光電編碼器自動檢測系統。首先采用一臺21位、均方差σ<2″的編碼器和被檢編碼器進行同軸連接。開始檢測時,系統控制電機轉動,在小型編碼器數據發生改變時刻采集基準編碼器的角度,兩者角度差即為小型編碼器在該位置的誤差。檢測完成后,將數據通過USB接口傳輸給計算機進行人機界面顯示及深度分析,還可以將數據存儲起來供以后參考。
光電編碼器誤差可以用編碼器的顯示值與真值之差來表示:

式中:S為顯示值,Q為真值。本系統中,用21位高精度編碼器來表示真值。由于光電編碼器的分辨力是有限的,所以編碼器本身也存在量化誤差,其量化誤差為正負半個分辨力。對于一個位數為N的光電編碼器,其分辨力為:

最高分辨率檢測是指利用各種檢測手段以高于被測對象最高分辨率的精度進行檢測[6]。檢測裝置的精度高于被檢測光電編碼器分辨率4倍及以上才不會影響基于最高分辨率的檢測。本自動檢測系統主要用于檢測15位及以下的小型低精度光電編碼器,且被檢編碼器的分辨率不高于40″,因此,用本系統檢測15位以下的小型低精度光電編碼器,理論上完全可行。
本編碼器的機械結構設計如圖1所示。最下端為穩速電機,中間為21位基準編碼器,最上端為被檢編碼器。

圖1 系統結構Fig.1 System construction drawing
該自動檢測系統主要有基準編碼器、穩速驅動電機、處理電路、計算機等組成。檢測時,基準編碼器、驅動電機、被檢編碼器固定在平臺上,電機軸、基準編碼器軸和被檢編碼器軸需要調整到一條直線上。為了避免基準編碼器和電機頻繁拆卸,系統工作之前已將基準編碼器和電機軸調整到一條直線上,并緊固好螺釘。因此檢測編碼器時,只需要將被檢編碼器軸和基準編碼器軸調整到同一直線即可。
目前編碼器和主控計算機之間的接口主要有串行通信接口和并行通信接口。串行通信接口是將數據一位一位地傳輸給上位機,需要的數據線較少,但是傳輸速率較慢;并行通信接口將數據一次或者數次通過并行線的方式傳輸給上位機,根據數據線的多少,每次可以傳輸數位數據,并行通信接口需要的數據線較多,但是傳輸速率較快。無論是串行接口方式還是并行接口方式,其數據傳輸協議一般分為有握手信號的接口和以廣播形式發送的無握手信號接口[7-8]。
本檢測系統的電路設計框圖如圖2所示。該檢測系統和編碼器之間的通信接口設有串行通信接口和并行通信接口兩種形式,可以和大多數的編碼器進行通信。無被檢編碼器時,該系統也可以獨立工作,通過OLED顯示屏可以實時地顯示基準編碼器的角度信息,通過鍵盤接口可以輸入參數,設定被檢編碼器的型號以及檢測的數據點個數等。該系統可以和計算機通過USB接口進行高速通信,由于計算機處理數據的能力遠超DSP,可以利用計算機對編碼器的數據進行詳細分析和直觀的顯示,也可以對大批量的編碼器數據進行保存及比對。

圖2 自動檢測系統Fig.2 Automatic detection system
本自動檢測系統的核心處理器選用TMS320F28335處理器,該數字信號處理器是TI公司最新推出的32位浮點 DSP控制器。與TMS320F2812定點DSP芯片相比,增加了單精度浮點運算單元(FPU),高精度PWM,Flash增加了1倍。
該系統的串行通信接口選用的芯片是MAXIM公司的MAX488型RS422全雙工型收發芯片,芯片自帶防靜電保護,最高通信速率為250 Kbps。并行通信接口選用的芯片是TI公司的74LV16245型電壓轉換芯片。
該系統可以將基準編碼器結構輸出的光電信號轉換為軸角的位置信息,選用OP491型放大器作基準編碼器信號放大器。DSP通過AD轉換器采集基準編碼器放大后的原始信號。選用了MAX1316型AD轉換器,MAX1316為MAXIM公司生產的8通道14位同時采樣的A/D轉換芯片,最高轉換速率為250 Kbps,具有獨立的采樣/保持電路,該器件具有先進/先出(FIFO)功能,可以減少接口的開銷,且在轉換結束或者轉換之間讀取轉換結果。
系統的DSP和計算機之間的接口采用USB接口,本系統選用的USB接口芯片為Cypress公司的帶單片機內核的EZ-USB FX2系列的CY7C68013 芯片[9-10],其功能框圖如圖3。

圖3 CY7C68013的簡化功能框圖Fig.3 Functional block diagram of CY7C68013
系統工作時,DSP將采集到的被檢編碼器和基準編碼器的角度進行比對,得到被檢編碼器的誤差,對編碼器的誤差進行分析、顯示和輸出。DSP的程序流程圖見圖4。
系統上電初始化完畢之后從EEPROM中讀取存儲的被檢編碼器型號、位數、需要檢測數據點個數等參數。等待檢測開始命令,根據按鍵輸入信息可以更改編碼器型號和檢測數據點個數等。開始檢測時,首先DSP控制電機轉到指定位置,采集被檢編碼器轉換點的角度,再采集基準編碼器角度,二者做差得到被檢編碼器誤差。根據需要通過USB接口向上位機傳輸檢測結果,檢測完畢后等待下一次轉換命令。

圖4 DSP程序流程圖Fig.4 Program flow chart
對于本系統來說,USB芯片只是完成DSP和計算機之間的基本通信即可,USB接口選用的是已有的成熟技術,無需改動程序即可實現DSP和計算機之間的通信。
在計算機短的程序設計中,采用了虛擬儀器的設計思想,利用VC++設計了易于操作和直觀顯示的系統界面,該界面可以代替傳統的硬件儀器對編碼器的數據進行分析和保存。
對21位基準編碼器的精度檢測,采用了比較法,如圖5。利用正多面體和自準直儀作為角度基準來檢測該21位編碼器。采用的正多面體為正17面體,相鄰兩個面的法線之間的夾角為360°/17=21°10'35.3″,當多面體一個面的法線與自準直儀發出的光線平行時,自準直儀發出的光線沿原路返回,此時自準直儀顯示的誤差為0;當自準直儀發出的光線與多面體面的法線有夾角時,則自準直儀將顯示夾角的大小。如果編碼器和多面以及自準直儀都沒有誤差時,將多面體的第一個面和自準直儀進行對準,此時自準直儀顯示的角度誤差為0,將編碼器轉動21°10'35.3″時,此時自準直儀顯示的角度誤差將依然是0。

圖5 精度檢測裝置Fig.5 Precision detection device
在實際檢測時,首先將多面體和編碼器進行同軸連接,編碼器調整到示值為0的位置,調整自準直儀的位置,使自準直儀對準正17面體的第一面,且自準直儀顯示的誤差為0。旋轉編碼器至示值為21°10'35.3″的位置(由于編碼器的分辨力有限,編碼器實際的顯示值為21°10'35.4″),此時自準直儀顯示的誤差值即為編碼器在該位置的誤差。繼續旋轉編碼器至示值為42°21'10.6″的位置,以此類推。編碼器正轉及反轉各檢一次,整個檢測過程不得有間歇或更換檢測人員,如果在同一位置正轉及反轉檢測到的編碼器誤差值差別較大,超過編碼器的一個分辨力即0.6″時,則本次檢測結果無效,需要重新檢測。檢測得到該21位編碼器在不同位置的誤差曲線如圖6所示,圖中的兩條曲線分別代表編碼器正轉及反轉時的誤差。
通過圖6得到編碼器誤差的均方差為1.22″,誤差峰峰值為5.2″。

圖6 誤差曲線圖Fig.6 Error curve
檢測某15位小型光電編碼器,該編碼器分辨力為39.4″,采用15位并行數據接口輸出編碼器角度,其數據刷新率為200 μs,數據格式為無握手信號的直接輸出。開始檢測前,將被檢編碼器與基準編碼器進行同軸連接,檢測系統發出電機轉動命令,在被檢編碼器角度轉換時刻采集基準編碼器的角度值,此時兩者之差即為被檢編碼器在該位置的誤差,旋轉一周,測得被檢編碼器的誤差曲線如圖7。采用傳統的檢測方法,即目前小型編碼器精度的檢測方法,將被檢編碼器和基準編碼器編碼器進行同軸連接,用手轉動編碼器,記錄基準編碼器和被檢編碼器的角度示值,兩者之差即為被檢編碼器在該位置的誤差,測得該編碼器的誤差曲線見圖7。

圖7 小型編碼器誤差曲線Fig.7 Error curve of miniature photoelectrical encoder
由圖7可以看出,本檢測系統測得該編碼器的峰值誤差為96.4″,均方差為σ=29.1″,采用傳統方法測得該編碼器的峰值誤差為96.2″,均方差為σ=28.5″。兩種檢測方法總體誤差曲線的趨勢是一樣的,兩種方法測得的結果差別與編碼器本身誤差相比是很小的。由于傳統編碼器的檢測方法即目前正在使用的檢測方法已經使用多年,在實踐中也已經證明這種檢測結果能夠反映實際編碼器的誤差。對于同一個編碼器,不管用何種辦法檢測,其檢測得到的編碼器誤差應該相差不大,采用該系統檢測出的編碼器誤差與傳統方法檢測出的誤差近似,由此可以證明,該系統檢測的結果真實可信。該系統用來檢測小型光電編碼器的誤差時,與傳統方法相比,該系統具有檢測速度快、檢測準確、可以檢測大量數據點等優點。
該自動檢測系統采用 TI公司的TMS320F28335型DSP作為處理器,采集被檢編碼器與基準編碼器的角度差作為被檢編碼器在該位置的誤差,通過USB接口將編碼器的角度誤差傳輸給上位機。通過實驗證明,采用該系統來檢測小型光電編碼器誤差時,其具有檢測速度快、結果準確、使用方便等特點。
[1] 趙長海,萬秋華,孫瑩.光電軸角編碼器的誤碼檢測系統[J].電子測量與儀器學報,2012,26(5):463-468.ZHAO CH H,WAN Q H,SUN Y.Code error detection system for photoelectric shaft encoder[J].J.Electronic Measurement and Instrument,2012,26(5):463-468.(in Chinese)
[2] 趙柱,續志軍,王顯軍.基于運動控制技術的編碼器自動檢測系統[J].中國光學與應用光學,2009,2(2):134-139.ZHAO ZH,XU ZH J,WANG X J.An automatic detection system of encoder error based on motion control technology[J].Chinese J.Optics and Appl.Optics,2009,2(2):134-139.(in Chinese)
[3] 劉志國,王顯軍,趙柱.光電編碼器自動沿面檢測系統[J].中國科學院研究生院學報,2010,27(4):563-567.LIU ZH G,WANG X J,ZHAO ZH.Automatic detection system of special position for photoelectric encoder[J].J.Graduate School of the Chinese Academy of Sciences,2010,27(4):563-567.(in Chinese)
[4] 李洪,馮長有,丁林輝.光電軸角編碼器細分誤差動態評估方法[J].傳感技術學報,2005,18(4):927-930.LI H,FENG CH Y,DING L H.Dynamic evaluation method for interpolation errors in photoelectric encoder[J].Chinese J.Sensors and Actuators,2005,18(4):927-930.(in Chinese)
[5] 王顯軍.光電軸角編碼器細分信號誤差及精度分析[J].光學 精密工程,2012,20(2):379-386.WANG X J.Errors and precision analysis of subdivision signals for photoelectric angle encoders[J].Opt.Precision Eng.,2012,20(2):379-386.(in Chinese)
[6] 鄧方,陳杰,陳文頡,等.一種高精度的光電編碼器檢測方法及其裝置[J].北京理工大學學報,2007,27(11):977-980,1008.DENG F,CHEN J,CHEN W J,et al..A high precision test method and apparatus for photoelectric encoder[J].T.Beijing Institute of Technology,2007,27(11):977-980,1008.(in Chinese)
[7] 王顯軍.基于SOC單片機的高集成度光電編碼器電路設計[J].光學 精密工程,2011,19(5):1082-1087.WANG X J.Circuit design for high integrated photoelectric encoder base on SOC singlechip[J].Opt.Precision Eng.,2011,19(5):1082-1087.(in Chinese)
[8] 左洋,龍科慧,喬克,等.航天編碼器調試系統顯示功能設計[J].液晶與顯示,2012,27(6):795-799.ZUO Y,LONG K H,QIAO K,et al..Design of display function in debugging system of space encoder[J].Chinese J.Liquid Crystals and Displays,2012,27(6):795-799.(in Chinese)
[9] 俞平,秦樹人.基于DSP和USB2.0的高速數據采集系統[J].重慶大學學報(自然科學版),2005,28(5):1-4.YU P,QIN SH R.Development of data acquisition and processing system based on DSP and USB 2.0[J].J.Chongqing University(Natural Science Edition),2005,28(5):1-4.(in Chinese)
[10] 楊祥清,趙海鷹,汪增福.具有USB2.0接口的6路實時同步數據采集卡設計[J].電光與控制,2008,15(6):91-95.YANG X Q,ZHAO H Y,WANG Z F.Design of a 6-channel real-time simultaneous data acquisition board with USB2.0 interface[J].Electronics Optics & Control,2008,15(6):91-95.(in Chinese)