常州劉國(guó)鈞高等職業(yè)技術(shù)學(xué)校 胡丞熙
針對(duì)傳統(tǒng)方法在高精度數(shù)控機(jī)床加工軌跡控制實(shí)際應(yīng)用中存在誤差較大的問(wèn)題,提出基于PLC 技術(shù)的高精度數(shù)控機(jī)床加工軌跡控制方法。通過(guò)對(duì)數(shù)控機(jī)床運(yùn)動(dòng)學(xué)正變換和逆變換,求解數(shù)控機(jī)床刀具驅(qū)動(dòng)位移,建立數(shù)控機(jī)床運(yùn)動(dòng)數(shù)學(xué)模型,通過(guò)將讀取到的刀具實(shí)際點(diǎn)位數(shù)據(jù)與理想軌跡比對(duì),預(yù)測(cè)出高精度數(shù)控機(jī)床加工軌跡誤差,利用PLC 技術(shù)對(duì)誤差點(diǎn)位坐標(biāo)轉(zhuǎn)換,以及中心指令點(diǎn)擬合,生成加工軌跡控制程序,通過(guò)數(shù)控機(jī)床運(yùn)動(dòng)數(shù)學(xué)模型輸出,實(shí)現(xiàn)對(duì)數(shù)控機(jī)床加工軌跡優(yōu)化控制。經(jīng)實(shí)驗(yàn)證明,應(yīng)用設(shè)計(jì)方法機(jī)床加工誤差小于傳統(tǒng)方法,在機(jī)床加工軌跡控制方面具有良好的應(yīng)用前景。
數(shù)控機(jī)床作為一種零件加工設(shè)備,已經(jīng)被廣泛應(yīng)用到多個(gè)領(lǐng)域中。隨著加工行業(yè)對(duì)精度要求的不斷提高,在傳統(tǒng)數(shù)控機(jī)床的基礎(chǔ)上,通過(guò)優(yōu)化刀具、伺服給進(jìn)系統(tǒng)等,逐漸衍生出高精度數(shù)控機(jī)床,目前高精度數(shù)控機(jī)床已經(jīng)被廣泛應(yīng)用到航空航天制造業(yè)、汽車制造業(yè)等行業(yè)[1]。評(píng)價(jià)高精度數(shù)控機(jī)床的加工精度是衡量機(jī)床工作性能的關(guān)鍵指標(biāo),受到機(jī)床自身因素或者外界因素影響,高精度數(shù)控機(jī)床在加工過(guò)程中可能會(huì)存在動(dòng)態(tài)誤差或者靜態(tài)誤差,誤差的存在直接影響著高精度數(shù)控機(jī)床加工軌跡,從而機(jī)床加工生產(chǎn)的產(chǎn)品質(zhì)量無(wú)法達(dá)標(biāo),因此對(duì)高精度數(shù)控機(jī)床加工軌跡控制是非常有必要的。針對(duì)高精度數(shù)控機(jī)床加工誤差問(wèn)題,國(guó)外研究者從不同的角度提出了多種解決辦法,提出了高精度數(shù)控機(jī)床加工軌跡優(yōu)化控制方法,以及加工軌跡插補(bǔ)方法。但是國(guó)內(nèi)高精度數(shù)控機(jī)床加工軌跡控制技術(shù)起步比較晚,雖然近幾年掀起了研究熱潮,但是現(xiàn)有的控制方法在實(shí)際應(yīng)用中控制效果仍舊比較差,由于控制流程比較復(fù)雜,計(jì)算量較大,控制后數(shù)控機(jī)床加工軌跡與理想加工軌跡仍然存在較大的誤差,已經(jīng)無(wú)法滿足高精度加工需求,為此提出基于PLC 技術(shù)的高精度數(shù)控機(jī)床加工軌跡控制方法。
對(duì)于高精度數(shù)控機(jī)床加工軌跡的控制,涉及數(shù)控機(jī)床的運(yùn)動(dòng)學(xué),故此次設(shè)計(jì)的控制方法,第一步為建立數(shù)據(jù)機(jī)床運(yùn)動(dòng)數(shù)學(xué)模型,對(duì)高精度數(shù)控機(jī)床運(yùn)動(dòng)學(xué)以數(shù)學(xué)形式描述,將其作為控制對(duì)象;第二步,通過(guò)讀取數(shù)控機(jī)床加工文件中相關(guān)數(shù)據(jù),獲取到數(shù)控機(jī)床運(yùn)動(dòng)軌跡坐標(biāo)信息,并預(yù)測(cè)分析出數(shù)控機(jī)床加工軌跡誤差;第三步,根據(jù)預(yù)測(cè)結(jié)果,利用PLC 技術(shù)重新編碼數(shù)控機(jī)床加工軌跡,通過(guò)刀具空間位置坐標(biāo)系轉(zhuǎn)換和中間指令點(diǎn)擬合,對(duì)原有的運(yùn)動(dòng)軌跡進(jìn)行調(diào)整和優(yōu)化,實(shí)現(xiàn)對(duì)高精度數(shù)控機(jī)床加工軌跡的控制。
數(shù)控機(jī)床運(yùn)動(dòng)數(shù)學(xué)模型是加工軌跡控制轉(zhuǎn)換工具,由于其運(yùn)動(dòng)符合線性規(guī)律,可以利用數(shù)學(xué)方程式的形式將其運(yùn)動(dòng)軌跡表示出來(lái)[2]。數(shù)控機(jī)床運(yùn)動(dòng)軌跡為機(jī)床刀具位置在三維空間內(nèi)的變換所形成的路徑,其位置的變換主要依靠變換矩陣,假設(shè)數(shù)控機(jī)床工作面空間坐標(biāo)系為N,在該三維坐標(biāo)系中刀具繞空間坐標(biāo)軸做旋轉(zhuǎn)、平移運(yùn)動(dòng),故數(shù)控機(jī)床運(yùn)動(dòng)坐標(biāo)變換為:
公式(1)中,F(xiàn)表示數(shù)控機(jī)床運(yùn)動(dòng)坐標(biāo)變換數(shù)學(xué)模型;R(X,A)、R(Y,B)、R(Z,C)分別為數(shù)控機(jī)床刀具繞空間坐標(biāo)系X、Y、Z坐標(biāo)軸、沿矢量平移A、B、C的變換矩陣[3]。為了進(jìn)一步對(duì)數(shù)控機(jī)床加工運(yùn)動(dòng)學(xué)數(shù)學(xué)描述,基于數(shù)控機(jī)床運(yùn)動(dòng)坐標(biāo)變換數(shù)學(xué)模型,對(duì)數(shù)控機(jī)運(yùn)動(dòng)學(xué)逆變換和正變換。
逆變換是將刀具向空間坐標(biāo)軸位移脈沖當(dāng)量的轉(zhuǎn)換,假設(shè)數(shù)控機(jī)床工作面空間N中刀具參考點(diǎn)的位置信息為n,其中包括刀具參考點(diǎn)位的坐標(biāo)、角度等信息,當(dāng)機(jī)床刀具的擺動(dòng)角度為零時(shí),此時(shí)高精度數(shù)控機(jī)床可以等效為一個(gè)三軸聯(lián)動(dòng)機(jī)床,刀具的驅(qū)動(dòng)位移可表示為:
公式(2)中,q(t)表示刀具擺動(dòng)角度為零情況下,在t時(shí)刻驅(qū)動(dòng)刀具的位移;x、y、z表示在空間坐標(biāo)系中刀具參考點(diǎn)位橫坐標(biāo)、縱坐標(biāo)、斜坐標(biāo);xw、yw、zw表示刀具偏置矢量的橫坐標(biāo)、縱坐標(biāo)和斜坐標(biāo)[4]。當(dāng)?shù)毒叩臄[動(dòng)角度不為零時(shí),此時(shí)高精度數(shù)控機(jī)床可以等效為一個(gè)五軸聯(lián)動(dòng)機(jī)床,刀具的擺動(dòng)角度由刀具繞坐標(biāo)軸的角度所決定,利用歐拉角的形式描述刀具的位姿,進(jìn)而可以求出刀具的驅(qū)動(dòng)位移,其用公式表示為:
公式(3)中,q0(t)表示刀具擺動(dòng)角度不為零情況下,在t時(shí)刻驅(qū)動(dòng)刀具的位移;r表示刀具參考點(diǎn)在固定參考坐標(biāo)系中的方位矢量;a表示三維空間坐標(biāo)系N相對(duì)于固定參考坐標(biāo)系的歐拉角;b表示刀具的姿態(tài)矢量;x0、y0表示參考點(diǎn)在固定參考坐標(biāo)系中的橫坐標(biāo)與縱坐標(biāo)。
正變換是將刀具向空間坐標(biāo)軸位置與擺動(dòng)角度的變換,假設(shè)數(shù)控機(jī)床各支鏈轉(zhuǎn)動(dòng)副的轉(zhuǎn)角為α,根據(jù)牛頓-拉斐遜數(shù)值理論,可以將數(shù)控機(jī)床運(yùn)動(dòng)學(xué)正變換表示為:
公式(4)中,q1(t)表示數(shù)控機(jī)床運(yùn)動(dòng)學(xué)正變換位移;β表示數(shù)控機(jī)床刀具擺動(dòng)角度[5]。通過(guò)以上數(shù)控機(jī)床運(yùn)動(dòng)學(xué)正變換和逆變換分析,建立數(shù)控機(jī)床運(yùn)動(dòng)數(shù)學(xué)模型為:
公式(5)中,Q表示數(shù)控機(jī)床運(yùn)動(dòng)數(shù)學(xué)模型,在該數(shù)學(xué)模型上控制機(jī)床加工軌跡。
高精度數(shù)控機(jī)床所有運(yùn)動(dòng)數(shù)據(jù)都記錄在機(jī)床的加工文件中,利用OSHFI 讀卡器對(duì)數(shù)控機(jī)床加工文件中所有刀具點(diǎn)位數(shù)據(jù)讀取,將其作為加工軌跡誤差預(yù)測(cè)的數(shù)據(jù)依據(jù)。數(shù)控機(jī)床運(yùn)動(dòng)軌跡可以分解成為直線和曲線兩種,其軌跡誤差為直線軌跡誤差與曲線軌跡誤差總和,因此需要對(duì)這兩種誤差進(jìn)行計(jì)算。將獲取的點(diǎn)位數(shù)據(jù)與理想點(diǎn)位比對(duì),可以得出高精度數(shù)控機(jī)床的直線軌跡誤差,機(jī)床直線軌跡誤差如圖1所示。
圖1 高精度數(shù)控機(jī)床直線軌跡誤差示意圖Fig.1 Schematic diagram of linear trajectory error of high precision cnc machine tool
如圖1可以看出,γ表示數(shù)控機(jī)床理想軌跡與空間坐標(biāo)系中的橫坐標(biāo)軸的夾角,點(diǎn)T為數(shù)控機(jī)床刀具運(yùn)動(dòng)指令位置點(diǎn),G為當(dāng)前數(shù)控機(jī)床刀具實(shí)際位置點(diǎn),m為數(shù)控機(jī)床刀具實(shí)際位置點(diǎn)與理想軌跡最近距離直線的交點(diǎn),根據(jù)這幾個(gè)點(diǎn)的幾何關(guān)系,求出數(shù)控機(jī)床直線運(yùn)動(dòng)橫坐標(biāo)軸跟隨誤差和縱坐標(biāo)軸跟隨誤差,進(jìn)而求出數(shù)控機(jī)床直線軌跡誤差:
公式(6)中,c表示數(shù)控機(jī)床直線運(yùn)動(dòng)軌跡誤差;s表示橫坐標(biāo)軸的跟隨誤差;l表示縱坐標(biāo)軸的跟隨誤差[6]。假設(shè)數(shù)控機(jī)床參考圓弧曲線軌跡為ρ,該曲線圓弧的圓心為ε,根據(jù)數(shù)控機(jī)床刀具參考點(diǎn)與實(shí)際點(diǎn)位的幾何關(guān)系,求出數(shù)控機(jī)床曲線誤差:
公式(7)中,c0表示數(shù)控機(jī)床曲線運(yùn)動(dòng)軌跡誤差;x*表示圓弧曲線圓心ε的橫坐標(biāo);δ表示圓弧曲線上過(guò)期望加工點(diǎn)的切線與橫軸的夾角;ex表示實(shí)際加工點(diǎn)的橫坐標(biāo);ey表示實(shí)際加工點(diǎn)的縱坐標(biāo)[7]。將以上計(jì)算得出的直線運(yùn)動(dòng)誤差c與曲線運(yùn)動(dòng)誤差c0相加,即可得到高精度數(shù)控機(jī)床加工軌跡誤差,為后續(xù)加工軌跡實(shí)時(shí)插補(bǔ)控制提供依據(jù)。
在上述基礎(chǔ)上,利用PLC 技術(shù)對(duì)加工軌跡實(shí)時(shí)插補(bǔ)控制,生成加工軌跡實(shí)時(shí)插補(bǔ)控制程序,并通過(guò)可編程邏輯控制器(PLC)執(zhí)行,其控制程序如下。
打開(kāi)待控制的高精度數(shù)控機(jī)床的刀位文件,根據(jù)刀位誤差,將刀位工件坐標(biāo)系轉(zhuǎn)換為高精度數(shù)控機(jī)床坐標(biāo)系,實(shí)現(xiàn)誤差優(yōu)化后的坐標(biāo)轉(zhuǎn)換,假設(shè)P為與工件固聯(lián)的刀具坐標(biāo)系,工件中心點(diǎn)為該坐標(biāo)系的原點(diǎn),L為數(shù)控機(jī)床刀具與定軸固聯(lián)的坐標(biāo)系,該坐標(biāo)系原點(diǎn)在工件固聯(lián)坐標(biāo)系P的位置矢量為J,建立完坐標(biāo)系后,利用以下公式確定工件坐標(biāo)系下誤差點(diǎn)位在數(shù)控機(jī)床空間坐標(biāo)系下的對(duì)應(yīng)值:
公式(8)中,C表示誤差點(diǎn)位在數(shù)控機(jī)床空間坐標(biāo)系下的對(duì)應(yīng)值;?表示工件坐標(biāo)系下刀軸矢量對(duì)應(yīng)的機(jī)床坐標(biāo)系下的旋轉(zhuǎn)角度;υ表示誤差點(diǎn)位繞機(jī)床坐標(biāo)系橫坐標(biāo)軸的旋轉(zhuǎn)角度;xC、yC分別表示誤差點(diǎn)位的橫坐標(biāo)和縱坐標(biāo)[8]。
根據(jù)上述公式計(jì)算結(jié)果,在工件坐標(biāo)系中對(duì)誤差點(diǎn)位進(jìn)行調(diào)整,使其恢復(fù)到理想點(diǎn)位上,其用公式表示為:
公式(9)中,C*表示轉(zhuǎn)換后的工件坐標(biāo)系中刀具坐標(biāo)。通過(guò)PLC 技術(shù)對(duì)中間指令點(diǎn)擬合,使數(shù)控機(jī)床運(yùn)動(dòng)數(shù)學(xué)模型輸出的運(yùn)動(dòng)點(diǎn)集形成新的刀具軌跡,使刀具運(yùn)動(dòng)點(diǎn)坐標(biāo)無(wú)線接近轉(zhuǎn)換后的刀具坐標(biāo),對(duì)其進(jìn)行插補(bǔ)控制[9]。考慮到直接使用直線段對(duì)誤差點(diǎn)位進(jìn)行逼近,會(huì)破壞掉原曲線的連續(xù)性,致使在數(shù)控機(jī)床加工軌跡插補(bǔ)控制過(guò)程中,機(jī)床的速度和加速度不連續(xù),因此采用曲線擬合方法對(duì)中間指令進(jìn)行擬合,其擬合公式為:
公式(10)中,Zu表示中間指令擬合曲線;?表示節(jié)點(diǎn)向量;Pi表示曲線參數(shù);κ表示權(quán)值,為了簡(jiǎn)化運(yùn)算,將該權(quán)值默認(rèn)為1。通過(guò)中間指令曲線擬合,使數(shù)控機(jī)床運(yùn)動(dòng)數(shù)學(xué)模型輸出的點(diǎn)位逼近理想軌跡,以此消除軌跡誤差。將以上程序使用編碼編寫在可編輯邏輯控制器(PLC)中,將PLC 與高精度數(shù)控機(jī)床伺服電機(jī)連接,通過(guò)執(zhí)行控制程序,調(diào)整高精度數(shù)控機(jī)床刀具加速度以及刀具移動(dòng)姿態(tài),從而實(shí)現(xiàn)基于PLC 的高精度數(shù)控機(jī)床加工軌跡控制。
實(shí)驗(yàn)以某高精度數(shù)控機(jī)床為實(shí)驗(yàn)對(duì)象,該數(shù)控機(jī)床型號(hào)為SAFAE/55414,是典型的立式數(shù)控機(jī)床,刀具直徑為80-300mm,刀具重量為8kg,該數(shù)控機(jī)床目前主要用于加工汽車零部件,對(duì)加工精度要求較高,利用此次設(shè)計(jì)方法與傳統(tǒng)方法對(duì)該高精度數(shù)控機(jī)床加工軌跡進(jìn)行控制。實(shí)驗(yàn)以8 種汽車零部件為高精度數(shù)控加工對(duì)象,開(kāi)啟數(shù)控機(jī)床開(kāi)關(guān),根據(jù)零部件加工需求,將數(shù)控機(jī)床的加速度設(shè)定為45000mm/s3,給進(jìn)速度設(shè)定為100mm/s,每個(gè)零部件各加工1000 件,將準(zhǔn)備好的OSHFI 讀卡器與數(shù)控機(jī)床生產(chǎn)系統(tǒng)連接,并通過(guò)USB 接口接收到數(shù)控機(jī)床加工文件中的刀位數(shù)據(jù),具體如表1所示。
表1 數(shù)控機(jī)床刀位文件中刀位數(shù)據(jù)Tab.1 Tool position data in tool position file of nc machine tool
通過(guò)對(duì)讀取到的刀位數(shù)據(jù)分析、誤差預(yù)測(cè)、插補(bǔ)控制,完成零部件加工任務(wù)。實(shí)驗(yàn)使用專用測(cè)量?jī)x器對(duì)每個(gè)加工部件加工誤差進(jìn)行測(cè)量,取平均值作為最終加工誤差,并使用電子表格對(duì)數(shù)據(jù)進(jìn)行記錄,兩種方法應(yīng)用下機(jī)床加工誤差對(duì)比如表2所示。
表2 兩種方法應(yīng)用下機(jī)床加工誤差對(duì)比(mm)Tab.2 Comparison of machining errors of machine tools under the application of two methods (mm)
通過(guò)對(duì)表2中數(shù)據(jù)分析可以得出結(jié)論:應(yīng)用設(shè)計(jì)方法對(duì)高精度數(shù)控機(jī)床加工軌跡控制后,零部件加工誤差最大僅為0.03mm,最小加工誤差為0.01mm,均在誤差允許范圍內(nèi),說(shuō)明應(yīng)用設(shè)計(jì)方法高精度數(shù)控機(jī)床運(yùn)動(dòng)軌跡與理想軌跡基本一致,設(shè)計(jì)方法具有良好的控制效果;而應(yīng)用傳統(tǒng)方法對(duì)高精度數(shù)控機(jī)床加工軌跡控制后,加工的零部件誤差最大為0.34mm,遠(yuǎn)遠(yuǎn)超出誤差允許范圍,而且最小加工誤差也已經(jīng)達(dá)到了0.13mm,遠(yuǎn)遠(yuǎn)高于設(shè)計(jì)方法,因此實(shí)驗(yàn)結(jié)果證明了,在控制精度方面設(shè)計(jì)方法優(yōu)于傳統(tǒng)方法,能夠有效控制高精度數(shù)控機(jī)床加工軌跡,相比較傳統(tǒng)方法更適用于高精度數(shù)控機(jī)床加工軌跡控制。
將PLC 技術(shù)與數(shù)控機(jī)床加工軌跡控制融合,提出了一個(gè)新的加工軌跡控制思路,并通過(guò)實(shí)驗(yàn)驗(yàn)證了該思路的可行性,此次研究有助于提高高精度數(shù)控機(jī)床加工精度,同時(shí)還有助于提高生產(chǎn)質(zhì)量,以及高精度數(shù)控機(jī)床加工軌跡的控制技術(shù)水平,具有良好的現(xiàn)實(shí)研究意義。但是由于該方法尚未在實(shí)際中進(jìn)行大量的操作和應(yīng)用,在某些方面可能存在一些不足之處,今后會(huì)對(duì)基于PLC技術(shù)的高精度數(shù)控機(jī)床加工軌跡控制方法優(yōu)化研究,為高精度數(shù)控機(jī)床加工軌跡的控制提供有力的理論支撐。
數(shù)字技術(shù)與應(yīng)用2022年11期