馮濟(jì)琴 張 健 鄭方燕 奚建平
(重慶理工大學(xué)機(jī)械檢測技術(shù)與裝備教育部工程研究中心,重慶 400054)
直驅(qū)轉(zhuǎn)臺把控制對象同電動(dòng)機(jī)做成一體化結(jié)構(gòu),將負(fù)載與電動(dòng)機(jī)的轉(zhuǎn)子直接相連,取消了電動(dòng)機(jī)到轉(zhuǎn)臺之間的一切中間環(huán)節(jié),把機(jī)械傳動(dòng)鏈長度縮短為零,完全用“電”來代替原來的機(jī)械傳動(dòng)環(huán)節(jié),具有定位準(zhǔn)確、動(dòng)態(tài)響應(yīng)速度及加速度高等特點(diǎn)[1]。時(shí)柵是一種“以時(shí)間測量空間”的新型位移傳感器,它可以不用常規(guī)的機(jī)械刻線而實(shí)現(xiàn)角位移的準(zhǔn)確測量,使制造成本大大降低[2]。因此,采用筆者所在實(shí)驗(yàn)室研究開發(fā)的時(shí)柵傳感器作為轉(zhuǎn)臺位置檢測元件代替光柵進(jìn)行位置反饋,在精度、可靠性和成本等方面具有顯著優(yōu)勢。為了消除時(shí)柵式直驅(qū)轉(zhuǎn)臺動(dòng)態(tài)位置反饋誤差,本文利用預(yù)測測量方法,研究時(shí)柵式直驅(qū)轉(zhuǎn)臺位置反饋與控制智能接口電路,將時(shí)柵絕對式離散角度測量值轉(zhuǎn)化為增量式連續(xù)脈沖信號。
時(shí)柵按時(shí)間均分采樣,測量空間位置。CNC系統(tǒng)在進(jìn)行全閉環(huán)位置伺服控制時(shí),要求按空間均分進(jìn)行位置反饋。因此,在全閉環(huán)位置反饋過程中時(shí)-空不同步。時(shí)柵測量周期T由V的大小決定,目前為2.5 ms。但由于V值不可能絕對恒定,測量周期會(huì)在2.5 ms左右波動(dòng)。CNC系統(tǒng)按時(shí)間序列采樣實(shí)現(xiàn)空間位置控制,采用硬件定時(shí)中斷方式獲取位置信息,定時(shí)時(shí)間一般為4 ms[3]。由于時(shí)鐘晶振、定時(shí)器、軟件響應(yīng)中斷和程序運(yùn)行時(shí)間的變化等因素的影響,時(shí)柵測量周期和CNC系統(tǒng)采樣周期也會(huì)在一定范圍內(nèi)波動(dòng)。并且時(shí)柵和CNC系統(tǒng)分別采樣各自獨(dú)立的時(shí)鐘系統(tǒng),兩套時(shí)間也不同步。上述時(shí)-空不同步、時(shí)-時(shí)波動(dòng)以及時(shí)-時(shí)不同步等因素會(huì)造成系統(tǒng)采樣得到的位置值并非當(dāng)前轉(zhuǎn)臺的實(shí)際位置,而是某一時(shí)間Δti(Δti≤T,大小不確定)以前的數(shù)據(jù),會(huì)引起動(dòng)態(tài)位置反饋誤差。
時(shí)柵前N個(gè)時(shí)刻的絕對角度測量值 θi-N+1,θi-N+2,…,θi可視為一個(gè)時(shí)間序列,因而它是序列動(dòng)態(tài)性和發(fā)展變化規(guī)律的描述。因此可以建立時(shí)間序列模型來對時(shí)間序列的未來取值進(jìn)行預(yù)測。
利用時(shí)柵前N個(gè)時(shí)刻的絕對角度測量值θi-N+1,θi-N+2,…,θi,在當(dāng)前時(shí)刻Ti預(yù)測出下一個(gè)測量周期T(從時(shí)刻Ti至Ti+1)內(nèi)時(shí)柵的角位移值Δθi,并在下一個(gè)測量周期T內(nèi)發(fā)出代表角位移預(yù)測值Δθi的增量式脈沖信號。采用這種預(yù)測方法就可以把絕對式離散角度測量值轉(zhuǎn)化為增量式連續(xù)脈沖信號。時(shí)柵第k個(gè)測量周期(從時(shí)刻Tk-1至Tk)內(nèi)直驅(qū)轉(zhuǎn)臺的角位移為
通過對直驅(qū)轉(zhuǎn)臺現(xiàn)在和過去N個(gè)采樣周期T的角位移值 Δθi-N+1,Δθi-N+2,…,Δθi建模,利用時(shí)間序列理論[4],得到下一個(gè)時(shí)柵測量周期(從時(shí)刻Ti至Ti+1)內(nèi)的直驅(qū)轉(zhuǎn)臺角位移預(yù)測值
則在下一個(gè)時(shí)柵測量周期(從時(shí)刻Ti至Ti+1)內(nèi)位置反饋智能控制接口采用脈寬調(diào)制PWM(Pulse-Width Modulation)方式發(fā)出脈沖的個(gè)數(shù)為
式中:Q為脈沖當(dāng)量;ei為上一個(gè)周期(從時(shí)刻Ti-1至Ti)內(nèi)的預(yù)測誤差。
將實(shí)際測量值作為預(yù)測值的標(biāo)準(zhǔn)量,在進(jìn)行當(dāng)前位置預(yù)測時(shí),利用當(dāng)前實(shí)際測量值對數(shù)控轉(zhuǎn)臺上一個(gè)周期內(nèi)的位置動(dòng)態(tài)預(yù)測誤差進(jìn)行修正[5]。從時(shí)刻Ti-1至Ti的預(yù)測誤差ei的計(jì)算式可表示為
結(jié)合式(3)和式(4),得到實(shí)際采用的用于計(jì)算脈沖個(gè)數(shù)Pi+1的計(jì)算公式為
式(5)表明在進(jìn)行當(dāng)前預(yù)測(從時(shí)刻Ti至Ti+1)時(shí),對上一個(gè)周期(從時(shí)刻Ti-1至Ti)的預(yù)測誤差進(jìn)行了實(shí)時(shí)修正。因此預(yù)測誤差不累積。
時(shí)柵式直驅(qū)轉(zhuǎn)臺位置反饋控制智能接口框圖如圖1所示。智能接口的輸入為時(shí)柵測量的絕對角度值,輸出為能與通用數(shù)控系統(tǒng)接口的增量式脈沖信號。時(shí)柵采用數(shù)字信號處理器DSP處理數(shù)據(jù)得到角度測量值,經(jīng)現(xiàn)場可編程邏輯器件CycloneII后送到ARM處理器,由ARM處理器完成預(yù)測測量算法設(shè)計(jì),預(yù)測角位移值以增量式脈沖信號輸出。時(shí)柵角度測量結(jié)果也可通過RS-232接口以數(shù)字方式直接輸出。由此,智能接口可以實(shí)現(xiàn)空間位置預(yù)測測量。
如圖1所示,時(shí)柵每隔一個(gè)測量周期得到一個(gè)實(shí)際測量角度值θk,通過U1的D31~D0端輸出,同時(shí)采用寫操作指令控制U1的/STRB、/PAGE3和A0端的狀態(tài),產(chǎn)生一個(gè)正脈沖,在脈沖的上升沿將U1的D31~D0輸出的角度值鎖存到U33的O31~O0端,通過指令將ARM處理器U2響應(yīng)中斷的方式設(shè)置為脈沖下降沿觸發(fā),在脈沖的下降沿觸發(fā)U2中斷。U2利用位操作指令控制P1.16和P1.17端狀態(tài)分兩次從兩片16位三態(tài)總線緩沖器(U34和U35)讀入32位的θk值,按照預(yù)測算法完成相關(guān)計(jì)算后,得到數(shù)控轉(zhuǎn)臺角位移預(yù)測值,并由U2的PWM1和PWM2端以PWM方式輸出代表預(yù)測角位移值的脈沖信號,兩個(gè)端口輸出的脈沖個(gè)數(shù)相等,但相位相差90°。若時(shí)柵角度值逐步增大,則PWM1端信號相位超前PWM2端信號90°;若時(shí)柵角度值逐步增小,則 PWM1端信號相位滯后PWM2端信號90°。U2的PWM1和PWM2端分別接辨向電路U36的兩個(gè)輸入端進(jìn)行辯向,并由具有預(yù)置功能的可逆計(jì)算器U37對兩個(gè)輸入端輸入的脈沖計(jì)數(shù),當(dāng)U37計(jì)數(shù)的脈沖個(gè)數(shù)與預(yù)置的初始值相等時(shí),U37計(jì)數(shù)的脈沖個(gè)數(shù)清零,并同時(shí)從R端輸出一個(gè)零位脈沖信號。U2的PWM1和PWM2端和U37的R端都接入差分驅(qū)動(dòng)器MAX3030(U4),將單端信號轉(zhuǎn)換為RS-422差分 TTL信號輸出。將 U31、U32、U33、U34、U35、U36和U37全部集成在一塊可編程邏輯芯片CycloneII(U3)內(nèi)部。
采用3階自回歸模型AR(p)作為預(yù)測測量的模型,接口軟件流程圖如圖2所示,首先初使化中斷、PWM控制器等,并置預(yù)測系數(shù)的初值。由ARM響應(yīng)外部中斷后采集時(shí)柵測量數(shù)據(jù),并完成對角位移的預(yù)測,然后輸出代表預(yù)測值的增量式脈沖。待采集到11個(gè)角度數(shù)據(jù)后,利用最小二乘法算法計(jì)算模型系數(shù)。在動(dòng)態(tài)預(yù)測過程中,需要根據(jù)預(yù)測均方誤差值調(diào)整模型系數(shù)。判斷出預(yù)測誤差偏大后,采用最新的11個(gè)測量數(shù)據(jù)重新利用最小二乘算法計(jì)算模型系數(shù)。
圖3為時(shí)柵直驅(qū)轉(zhuǎn)臺裝置,為了測試系統(tǒng)的動(dòng)態(tài)誤差,在轉(zhuǎn)臺下方安裝精度為±1″的HEIDHAIN圓光柵ROD880。在轉(zhuǎn)臺運(yùn)動(dòng)過程中同步采樣光柵值和時(shí)柵預(yù)測值,把光柵測量值作為直驅(qū)轉(zhuǎn)臺測量的標(biāo)準(zhǔn)量,時(shí)柵的預(yù)測測量值與之進(jìn)行比較,從而得到動(dòng)態(tài)預(yù)測測量的誤差值。
實(shí)驗(yàn)采用Heidenhain公司的IK220對ROD880圓光柵信號進(jìn)行處理。IK220是一種基于PCI總線的細(xì)分和計(jì)數(shù)卡[6]。在 Windows XP環(huán)境下,通過 WDM(Windows Driver Model)設(shè)備驅(qū)動(dòng)程序?qū)K220進(jìn)行訪問。計(jì)算機(jī)采用定時(shí)方式讀取光柵測量數(shù)據(jù),定時(shí)時(shí)間間隔設(shè)置為3 ms,一旦定時(shí)時(shí)間到,定時(shí)脈沖自動(dòng)鎖存IK220角度測量數(shù)據(jù)。
圖4為以光柵測量值為標(biāo)準(zhǔn)量,由軟件自動(dòng)繪制時(shí)柵測量值誤差曲線。由圖可知直驅(qū)轉(zhuǎn)臺動(dòng)態(tài)測量誤差為±4″。
時(shí)柵和直驅(qū)轉(zhuǎn)臺系統(tǒng)的時(shí)-空不同步、時(shí)-時(shí)波動(dòng)以及時(shí)-時(shí)不同步等因素,會(huì)引起動(dòng)態(tài)位置反饋誤差。為解決這一關(guān)鍵技術(shù)問題,提出了利用空間位置預(yù)測測量方法解決該問題。研制了基于ARM和CycloneII技術(shù)的時(shí)柵數(shù)控轉(zhuǎn)臺位置反饋與控制智能接口電路,接口電路輸入為時(shí)柵測量的絕對角度值,輸出為能與直驅(qū)系統(tǒng)接口的增量式脈沖信號,實(shí)現(xiàn)了空間位置的預(yù)測測量。開展了動(dòng)態(tài)預(yù)測實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,直驅(qū)轉(zhuǎn)臺空間位置的動(dòng)態(tài)預(yù)測誤差為±4″,解決了直驅(qū)轉(zhuǎn)臺動(dòng)態(tài)位置反饋誤差問題。
[1]王貴子.機(jī)床轉(zhuǎn)臺直接驅(qū)動(dòng)力矩電動(dòng)機(jī)及其控制器研究[D].沈陽:沈陽工業(yè)大學(xué),2007.
[2]Liu Xiaokang,Peng Donglin.Research on a novel high-precision intelligent sensor[J].Solid State Phenomena,Mechatronic Systems and Materials,2006,113(11):435 -441.
[3]白恩遠(yuǎn),王俊元,孫愛國.現(xiàn)代數(shù)控機(jī)床伺服及檢測系統(tǒng)[M].北京:國防工業(yè)出版社,2006.
[4]何書元.應(yīng)用時(shí)間序列分析[M].北京:北京大學(xué)出版社,2007.
[5]耿麗榮,周凱.基于時(shí)間序列預(yù)測技術(shù)的數(shù)控機(jī)床輪廓誤差實(shí)時(shí)補(bǔ)償方法研究[J].制造技術(shù)與機(jī)床,2004(6):22-25.
[6]DR.JOHANNES HEIDENHAIN GmbH.IK 220 user's manual[M].Germany:Heidenhain,2006.