孫樹紅,趙長(zhǎng)海,萬秋華* ,李艷茹
(1.中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所,吉林長(zhǎng)春130033;2.中國(guó)科學(xué)院大學(xué),北京100049;3.總裝備部沈陽軍事代表局駐長(zhǎng)春地區(qū)軍事代表室,吉林長(zhǎng)春130033)
光電軸角編碼器是一種高精度角度測(cè)量裝置,它能把軸角信息轉(zhuǎn)換成數(shù)字代碼,將其與計(jì)算機(jī)和顯示裝置連接后即可實(shí)現(xiàn)動(dòng)態(tài)測(cè)量和實(shí)時(shí)控制。隨著光電編碼器在工業(yè)、國(guó)防、航天等領(lǐng)域的廣泛應(yīng)用,對(duì)編碼器的技術(shù)指標(biāo)的要求越來越高。其中最重要的就是精度,如何快速、準(zhǔn)確地檢測(cè)編碼器的精度,是業(yè)內(nèi)人士一直在研究的課題[1]。
目前國(guó)內(nèi)外在進(jìn)行低精度光電編碼器檢測(cè)時(shí),通常采用高精度角度基準(zhǔn)來檢測(cè)編碼器[2-3],將高精度編碼器和低精度編碼器進(jìn)行同軸連接,轉(zhuǎn)動(dòng)編碼器,高精度編碼器與被檢編碼器的示值差即為被檢編碼器在當(dāng)前位置的誤差;檢測(cè)高精度編碼器時(shí),通常采用正多面體和自準(zhǔn)直儀作為角度基準(zhǔn),將編碼器和正多面體進(jìn)行同軸連接,正多面體和自準(zhǔn)直儀作為角度基準(zhǔn)來檢測(cè)編碼器的誤差。通常情況下,檢測(cè)編碼器精度需要在嚴(yán)格的實(shí)驗(yàn)室條件下進(jìn)行,且檢測(cè)過程復(fù)雜、時(shí)間長(zhǎng)[4-5]。為實(shí)現(xiàn)快速、準(zhǔn)確的精度檢測(cè),本文研制了一套小型光電編碼器自動(dòng)檢測(cè)系統(tǒng)。首先采用一臺(tái)21位、均方差σ<2″的編碼器和被檢編碼器進(jìn)行同軸連接。開始檢測(cè)時(shí),系統(tǒng)控制電機(jī)轉(zhuǎn)動(dòng),在小型編碼器數(shù)據(jù)發(fā)生改變時(shí)刻采集基準(zhǔn)編碼器的角度,兩者角度差即為小型編碼器在該位置的誤差。檢測(cè)完成后,將數(shù)據(jù)通過USB接口傳輸給計(jì)算機(jī)進(jìn)行人機(jī)界面顯示及深度分析,還可以將數(shù)據(jù)存儲(chǔ)起來供以后參考。
光電編碼器誤差可以用編碼器的顯示值與真值之差來表示:
式中:S為顯示值,Q為真值。本系統(tǒng)中,用21位高精度編碼器來表示真值。由于光電編碼器的分辨力是有限的,所以編碼器本身也存在量化誤差,其量化誤差為正負(fù)半個(gè)分辨力。對(duì)于一個(gè)位數(shù)為N的光電編碼器,其分辨力為:
最高分辨率檢測(cè)是指利用各種檢測(cè)手段以高于被測(cè)對(duì)象最高分辨率的精度進(jìn)行檢測(cè)[6]。檢測(cè)裝置的精度高于被檢測(cè)光電編碼器分辨率4倍及以上才不會(huì)影響基于最高分辨率的檢測(cè)。本自動(dòng)檢測(cè)系統(tǒng)主要用于檢測(cè)15位及以下的小型低精度光電編碼器,且被檢編碼器的分辨率不高于40″,因此,用本系統(tǒng)檢測(cè)15位以下的小型低精度光電編碼器,理論上完全可行。
本編碼器的機(jī)械結(jié)構(gòu)設(shè)計(jì)如圖1所示。最下端為穩(wěn)速電機(jī),中間為21位基準(zhǔn)編碼器,最上端為被檢編碼器。
圖1 系統(tǒng)結(jié)構(gòu)Fig.1 System construction drawing
該自動(dòng)檢測(cè)系統(tǒng)主要有基準(zhǔn)編碼器、穩(wěn)速驅(qū)動(dòng)電機(jī)、處理電路、計(jì)算機(jī)等組成。檢測(cè)時(shí),基準(zhǔn)編碼器、驅(qū)動(dòng)電機(jī)、被檢編碼器固定在平臺(tái)上,電機(jī)軸、基準(zhǔn)編碼器軸和被檢編碼器軸需要調(diào)整到一條直線上。為了避免基準(zhǔn)編碼器和電機(jī)頻繁拆卸,系統(tǒng)工作之前已將基準(zhǔn)編碼器和電機(jī)軸調(diào)整到一條直線上,并緊固好螺釘。因此檢測(cè)編碼器時(shí),只需要將被檢編碼器軸和基準(zhǔn)編碼器軸調(diào)整到同一直線即可。
目前編碼器和主控計(jì)算機(jī)之間的接口主要有串行通信接口和并行通信接口。串行通信接口是將數(shù)據(jù)一位一位地傳輸給上位機(jī),需要的數(shù)據(jù)線較少,但是傳輸速率較慢;并行通信接口將數(shù)據(jù)一次或者數(shù)次通過并行線的方式傳輸給上位機(jī),根據(jù)數(shù)據(jù)線的多少,每次可以傳輸數(shù)位數(shù)據(jù),并行通信接口需要的數(shù)據(jù)線較多,但是傳輸速率較快。無論是串行接口方式還是并行接口方式,其數(shù)據(jù)傳輸協(xié)議一般分為有握手信號(hào)的接口和以廣播形式發(fā)送的無握手信號(hào)接口[7-8]。
本檢測(cè)系統(tǒng)的電路設(shè)計(jì)框圖如圖2所示。該檢測(cè)系統(tǒng)和編碼器之間的通信接口設(shè)有串行通信接口和并行通信接口兩種形式,可以和大多數(shù)的編碼器進(jìn)行通信。無被檢編碼器時(shí),該系統(tǒng)也可以獨(dú)立工作,通過OLED顯示屏可以實(shí)時(shí)地顯示基準(zhǔn)編碼器的角度信息,通過鍵盤接口可以輸入?yún)?shù),設(shè)定被檢編碼器的型號(hào)以及檢測(cè)的數(shù)據(jù)點(diǎn)個(gè)數(shù)等。該系統(tǒng)可以和計(jì)算機(jī)通過USB接口進(jìn)行高速通信,由于計(jì)算機(jī)處理數(shù)據(jù)的能力遠(yuǎn)超DSP,可以利用計(jì)算機(jī)對(duì)編碼器的數(shù)據(jù)進(jìn)行詳細(xì)分析和直觀的顯示,也可以對(duì)大批量的編碼器數(shù)據(jù)進(jìn)行保存及比對(duì)。
圖2 自動(dòng)檢測(cè)系統(tǒng)Fig.2 Automatic detection system
本自動(dòng)檢測(cè)系統(tǒng)的核心處理器選用TMS320F28335處理器,該數(shù)字信號(hào)處理器是TI公司最新推出的32位浮點(diǎn) DSP控制器。與TMS320F2812定點(diǎn)DSP芯片相比,增加了單精度浮點(diǎn)運(yùn)算單元(FPU),高精度PWM,F(xiàn)lash增加了1倍。
該系統(tǒng)的串行通信接口選用的芯片是MAXIM公司的MAX488型RS422全雙工型收發(fā)芯片,芯片自帶防靜電保護(hù),最高通信速率為250 Kbps。并行通信接口選用的芯片是TI公司的74LV16245型電壓轉(zhuǎn)換芯片。
該系統(tǒng)可以將基準(zhǔn)編碼器結(jié)構(gòu)輸出的光電信號(hào)轉(zhuǎn)換為軸角的位置信息,選用OP491型放大器作基準(zhǔn)編碼器信號(hào)放大器。DSP通過AD轉(zhuǎn)換器采集基準(zhǔn)編碼器放大后的原始信號(hào)。選用了MAX1316型AD轉(zhuǎn)換器,MAX1316為MAXIM公司生產(chǎn)的8通道14位同時(shí)采樣的A/D轉(zhuǎn)換芯片,最高轉(zhuǎn)換速率為250 Kbps,具有獨(dú)立的采樣/保持電路,該器件具有先進(jìn)/先出(FIFO)功能,可以減少接口的開銷,且在轉(zhuǎn)換結(jié)束或者轉(zhuǎn)換之間讀取轉(zhuǎn)換結(jié)果。
系統(tǒng)的DSP和計(jì)算機(jī)之間的接口采用USB接口,本系統(tǒng)選用的USB接口芯片為Cypress公司的帶單片機(jī)內(nèi)核的EZ-USB FX2系列的CY7C68013 芯片[9-10],其功能框圖如圖3。
圖3 CY7C68013的簡(jiǎn)化功能框圖Fig.3 Functional block diagram of CY7C68013
系統(tǒng)工作時(shí),DSP將采集到的被檢編碼器和基準(zhǔn)編碼器的角度進(jìn)行比對(duì),得到被檢編碼器的誤差,對(duì)編碼器的誤差進(jìn)行分析、顯示和輸出。DSP的程序流程圖見圖4。
系統(tǒng)上電初始化完畢之后從EEPROM中讀取存儲(chǔ)的被檢編碼器型號(hào)、位數(shù)、需要檢測(cè)數(shù)據(jù)點(diǎn)個(gè)數(shù)等參數(shù)。等待檢測(cè)開始命令,根據(jù)按鍵輸入信息可以更改編碼器型號(hào)和檢測(cè)數(shù)據(jù)點(diǎn)個(gè)數(shù)等。開始檢測(cè)時(shí),首先DSP控制電機(jī)轉(zhuǎn)到指定位置,采集被檢編碼器轉(zhuǎn)換點(diǎn)的角度,再采集基準(zhǔn)編碼器角度,二者做差得到被檢編碼器誤差。根據(jù)需要通過USB接口向上位機(jī)傳輸檢測(cè)結(jié)果,檢測(cè)完畢后等待下一次轉(zhuǎn)換命令。
圖4 DSP程序流程圖Fig.4 Program flow chart
對(duì)于本系統(tǒng)來說,USB芯片只是完成DSP和計(jì)算機(jī)之間的基本通信即可,USB接口選用的是已有的成熟技術(shù),無需改動(dòng)程序即可實(shí)現(xiàn)DSP和計(jì)算機(jī)之間的通信。
在計(jì)算機(jī)短的程序設(shè)計(jì)中,采用了虛擬儀器的設(shè)計(jì)思想,利用VC++設(shè)計(jì)了易于操作和直觀顯示的系統(tǒng)界面,該界面可以代替?zhèn)鹘y(tǒng)的硬件儀器對(duì)編碼器的數(shù)據(jù)進(jìn)行分析和保存。
對(duì)21位基準(zhǔn)編碼器的精度檢測(cè),采用了比較法,如圖5。利用正多面體和自準(zhǔn)直儀作為角度基準(zhǔn)來檢測(cè)該21位編碼器。采用的正多面體為正17面體,相鄰兩個(gè)面的法線之間的夾角為360°/17=21°10'35.3″,當(dāng)多面體一個(gè)面的法線與自準(zhǔn)直儀發(fā)出的光線平行時(shí),自準(zhǔn)直儀發(fā)出的光線沿原路返回,此時(shí)自準(zhǔn)直儀顯示的誤差為0;當(dāng)自準(zhǔn)直儀發(fā)出的光線與多面體面的法線有夾角時(shí),則自準(zhǔn)直儀將顯示夾角的大小。如果編碼器和多面以及自準(zhǔn)直儀都沒有誤差時(shí),將多面體的第一個(gè)面和自準(zhǔn)直儀進(jìn)行對(duì)準(zhǔn),此時(shí)自準(zhǔn)直儀顯示的角度誤差為0,將編碼器轉(zhuǎn)動(dòng)21°10'35.3″時(shí),此時(shí)自準(zhǔn)直儀顯示的角度誤差將依然是0。
圖5 精度檢測(cè)裝置Fig.5 Precision detection device
在實(shí)際檢測(cè)時(shí),首先將多面體和編碼器進(jìn)行同軸連接,編碼器調(diào)整到示值為0的位置,調(diào)整自準(zhǔn)直儀的位置,使自準(zhǔn)直儀對(duì)準(zhǔn)正17面體的第一面,且自準(zhǔn)直儀顯示的誤差為0。旋轉(zhuǎn)編碼器至示值為21°10'35.3″的位置(由于編碼器的分辨力有限,編碼器實(shí)際的顯示值為21°10'35.4″),此時(shí)自準(zhǔn)直儀顯示的誤差值即為編碼器在該位置的誤差。繼續(xù)旋轉(zhuǎn)編碼器至示值為42°21'10.6″的位置,以此類推。編碼器正轉(zhuǎn)及反轉(zhuǎn)各檢一次,整個(gè)檢測(cè)過程不得有間歇或更換檢測(cè)人員,如果在同一位置正轉(zhuǎn)及反轉(zhuǎn)檢測(cè)到的編碼器誤差值差別較大,超過編碼器的一個(gè)分辨力即0.6″時(shí),則本次檢測(cè)結(jié)果無效,需要重新檢測(cè)。檢測(cè)得到該21位編碼器在不同位置的誤差曲線如圖6所示,圖中的兩條曲線分別代表編碼器正轉(zhuǎn)及反轉(zhuǎn)時(shí)的誤差。
通過圖6得到編碼器誤差的均方差為1.22″,誤差峰峰值為5.2″。
圖6 誤差曲線圖Fig.6 Error curve
檢測(cè)某15位小型光電編碼器,該編碼器分辨力為39.4″,采用15位并行數(shù)據(jù)接口輸出編碼器角度,其數(shù)據(jù)刷新率為200 μs,數(shù)據(jù)格式為無握手信號(hào)的直接輸出。開始檢測(cè)前,將被檢編碼器與基準(zhǔn)編碼器進(jìn)行同軸連接,檢測(cè)系統(tǒng)發(fā)出電機(jī)轉(zhuǎn)動(dòng)命令,在被檢編碼器角度轉(zhuǎn)換時(shí)刻采集基準(zhǔn)編碼器的角度值,此時(shí)兩者之差即為被檢編碼器在該位置的誤差,旋轉(zhuǎn)一周,測(cè)得被檢編碼器的誤差曲線如圖7。采用傳統(tǒng)的檢測(cè)方法,即目前小型編碼器精度的檢測(cè)方法,將被檢編碼器和基準(zhǔn)編碼器編碼器進(jìn)行同軸連接,用手轉(zhuǎn)動(dòng)編碼器,記錄基準(zhǔn)編碼器和被檢編碼器的角度示值,兩者之差即為被檢編碼器在該位置的誤差,測(cè)得該編碼器的誤差曲線見圖7。
圖7 小型編碼器誤差曲線Fig.7 Error curve of miniature photoelectrical encoder
由圖7可以看出,本檢測(cè)系統(tǒng)測(cè)得該編碼器的峰值誤差為96.4″,均方差為σ=29.1″,采用傳統(tǒng)方法測(cè)得該編碼器的峰值誤差為96.2″,均方差為σ=28.5″。兩種檢測(cè)方法總體誤差曲線的趨勢(shì)是一樣的,兩種方法測(cè)得的結(jié)果差別與編碼器本身誤差相比是很小的。由于傳統(tǒng)編碼器的檢測(cè)方法即目前正在使用的檢測(cè)方法已經(jīng)使用多年,在實(shí)踐中也已經(jīng)證明這種檢測(cè)結(jié)果能夠反映實(shí)際編碼器的誤差。對(duì)于同一個(gè)編碼器,不管用何種辦法檢測(cè),其檢測(cè)得到的編碼器誤差應(yīng)該相差不大,采用該系統(tǒng)檢測(cè)出的編碼器誤差與傳統(tǒng)方法檢測(cè)出的誤差近似,由此可以證明,該系統(tǒng)檢測(cè)的結(jié)果真實(shí)可信。該系統(tǒng)用來檢測(cè)小型光電編碼器的誤差時(shí),與傳統(tǒng)方法相比,該系統(tǒng)具有檢測(cè)速度快、檢測(cè)準(zhǔn)確、可以檢測(cè)大量數(shù)據(jù)點(diǎn)等優(yōu)點(diǎn)。
該自動(dòng)檢測(cè)系統(tǒng)采用 TI公司的TMS320F28335型DSP作為處理器,采集被檢編碼器與基準(zhǔn)編碼器的角度差作為被檢編碼器在該位置的誤差,通過USB接口將編碼器的角度誤差傳輸給上位機(jī)。通過實(shí)驗(yàn)證明,采用該系統(tǒng)來檢測(cè)小型光電編碼器誤差時(shí),其具有檢測(cè)速度快、結(jié)果準(zhǔn)確、使用方便等特點(diǎn)。
[1] 趙長(zhǎng)海,萬秋華,孫瑩.光電軸角編碼器的誤碼檢測(cè)系統(tǒng)[J].電子測(cè)量與儀器學(xué)報(bào),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] 趙柱,續(xù)志軍,王顯軍.基于運(yùn)動(dòng)控制技術(shù)的編碼器自動(dòng)檢測(cè)系統(tǒng)[J].中國(guó)光學(xué)與應(yīng)用光學(xué),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] 劉志國(guó),王顯軍,趙柱.光電編碼器自動(dòng)沿面檢測(cè)系統(tǒng)[J].中國(guó)科學(xué)院研究生院學(xué)報(bào),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] 李洪,馮長(zhǎng)有,丁林輝.光電軸角編碼器細(xì)分誤差動(dòng)態(tài)評(píng)估方法[J].傳感技術(shù)學(xué)報(bào),2005,18(4):927-930.LI H,F(xiàn)ENG 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] 王顯軍.光電軸角編碼器細(xì)分信號(hào)誤差及精度分析[J].光學(xué) 精密工程,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] 鄧方,陳杰,陳文頡,等.一種高精度的光電編碼器檢測(cè)方法及其裝置[J].北京理工大學(xué)學(xué)報(bào),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ī)的高集成度光電編碼器電路設(shè)計(jì)[J].光學(xué) 精密工程,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] 左洋,龍科慧,喬克,等.航天編碼器調(diào)試系統(tǒng)顯示功能設(shè)計(jì)[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的高速數(shù)據(jù)采集系統(tǒng)[J].重慶大學(xué)學(xué)報(bào)(自然科學(xué)版),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路實(shí)時(shí)同步數(shù)據(jù)采集卡設(shè)計(jì)[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)