程志華,呂炘宇
(上海大學(xué) 機(jī)電工程與自動化學(xué)院,上海 200072)
金屬構(gòu)件常作為連接與支撐件在工程建設(shè)方面廣泛應(yīng)用,眾多專業(yè)從事設(shè)計(jì)與制造金屬構(gòu)件加工機(jī)床的企業(yè)中,德國、意大利、日本在這一領(lǐng)域處于領(lǐng)先地位[1],已出現(xiàn)了系列化、高度自動化的專用機(jī)床。我國相關(guān)行業(yè)起步較晚,加工裝備大多是普通機(jī)床或手動、半自動機(jī)械加工設(shè)備等通用加工設(shè)備。在專用數(shù)控系統(tǒng)加工方面,國內(nèi)研究人員已取得一定成果。如李成華等[2]基于AutoCAD開發(fā)了一套圖元數(shù)控編程系統(tǒng),解決了圖元排序、識別和程序輸出問題,但是并未對圖元信息進(jìn)行定義,系統(tǒng)缺乏可擴(kuò)展性。章勇等[3]基于DXF文件開發(fā)了切割加工自動編程系統(tǒng),解決了開放數(shù)據(jù)參數(shù)問題,但是并未對加工路徑進(jìn)行規(guī)劃,系統(tǒng)加工效率低。因此,結(jié)合幕墻行業(yè)的特點(diǎn),開發(fā)行業(yè)專用的先進(jìn)制造設(shè)備對提升行業(yè)的技術(shù)水平具有十分重要的意義。
本文針對圖元自動數(shù)控編程系統(tǒng)中的關(guān)鍵技術(shù)進(jìn)行研究,以軟件工程為實(shí)現(xiàn)方法,實(shí)現(xiàn)了圖元信息的統(tǒng)一以及由圖元向G代碼的轉(zhuǎn)換。同時(shí),針對遺傳算法在實(shí)現(xiàn)路徑規(guī)劃的搜索過程中的收斂過慢和容易早熟問題[4],本文采用了將不同適應(yīng)度種群進(jìn)行分類的方法,對于不同類別的個體分別采用混合交叉算子和混合變異算子來加快算法的收斂速度,從而改進(jìn)遺傳算法,使其在加工路徑規(guī)劃問題中達(dá)到多樣性和收斂速度的平衡。
系統(tǒng)整體設(shè)計(jì)思路是以IPC作為主機(jī),工控機(jī)的CPU與PMAC卡的CPU構(gòu)成主從式雙微處理器開放式模塊化結(jié)構(gòu),系統(tǒng)主要模塊規(guī)劃結(jié)構(gòu)如圖1所示。
圖1 幕墻專用數(shù)控系統(tǒng)主要模塊規(guī)劃結(jié)構(gòu)圖
其中,上位機(jī)模塊需完成圖元信息的處理、自動數(shù)控編程、機(jī)床加工路徑優(yōu)化等上層功能,下位機(jī)模塊需實(shí)現(xiàn)伺服計(jì)算、插補(bǔ)運(yùn)算、位置控制、刀具補(bǔ)償、速度處理以及離散邏輯PLC等實(shí)時(shí)控制。
對于幕墻金屬構(gòu)件所用到的標(biāo)準(zhǔn)圖元,其信息可以精簡為:主要由基點(diǎn)、坐標(biāo)系、加工信息和尺寸信息4部分組成。通過對每一個圖元所包含的信息進(jìn)行分析、總結(jié)和歸納,得出它們之間的相互關(guān)系,發(fā)現(xiàn)并提煉出它們的共性,最終實(shí)現(xiàn)將各種金屬構(gòu)件的各加工面上所有圖元信息統(tǒng)一起來,形成一種標(biāo)準(zhǔn)的圖元信息數(shù)據(jù)結(jié)構(gòu),如表1所示。
表1 圖元后臺信息數(shù)據(jù)結(jié)構(gòu)
為了讓圖元自動數(shù)控編程系統(tǒng)輸出的數(shù)控程序適應(yīng)加工工藝需求,具有更好的應(yīng)用性,研究采取基于模板的圖元數(shù)控程序輸出方式。預(yù)先在系統(tǒng)中定制多種加工循環(huán)的代碼模板,根據(jù)自定義的圖元數(shù)據(jù)結(jié)構(gòu),實(shí)現(xiàn)對不同圖元的加工(模板中存在常量和變量兩種數(shù)據(jù),常量包括程序頭中和程序尾中的固定 G96,M03,M30 等代碼,變量包括: 轉(zhuǎn)速,進(jìn)給,刀具,刀具軌跡點(diǎn)位等。圖元尺寸和陣列參數(shù)設(shè)計(jì)軟件窗體如圖2所示,圖3為鑰匙孔型圖元的模板加工示例)。
圖2 圖元信息輸入模塊和圖元陣列設(shè)計(jì)模塊
圖3 基于模板的程序加工示例
在CAD/CAM集成系統(tǒng)中,走刀路徑的規(guī)劃對加工工藝和數(shù)控代碼的生成都有重要影響。通俗講,對加工路徑進(jìn)行規(guī)劃的目的是:在加工金屬構(gòu)件的各待加工面上的一系列異形孔,獲得一條最優(yōu)或次優(yōu)的加工路徑,讓刀具在整個加工過程中空行程最短(或盡可能短)、主軸姿態(tài)變換和換刀次數(shù)最少。
在路徑規(guī)劃問題中,簡單遺傳算法具有收斂速度慢,易于陷入局部最優(yōu)解的特點(diǎn),所以,遺傳算法中一個較難解決的問題是如何較快地找到最優(yōu)解并防止“早熟”收斂問題。
本文算法采用加工路徑表示形式進(jìn)行編碼,其中圖元按加工的順序進(jìn)行排列,編碼串(x1,x2,…xn)表示從圖元x1開始加工,依次加工圖元x2,x3…xn,最后回到起始圖元x1。例如對于路徑 4- 3- 5- 6- 1- 2- 7,可簡單表示為(4 3 5 6 1 2 7),表示從4號圖元開始加工,依次加工3,5,6,1,2,7然后回到4的一條加工路徑。
由于所求為加工路徑最短,即最小值問題,因此將算法中某一個體x=(x1,x2,…xn)的適應(yīng)度值定義為個體所代表加工路徑a的距離,即:
(1)
其中,vx(i)為個體x所代表的加工路徑a上的第i個圖元。d(vx(i),vx(j))為兩點(diǎn)間的距離,而且d(vx(i),vx(j) )=d(vx(j),vx(i))。
為求函數(shù)優(yōu)化問題最小值為例進(jìn)行動態(tài)分級。設(shè)將群體分成k級,記,
f(x*1)=max{f(x1)},f(x*2)=min{f(x1)}
(2)
(3)
在進(jìn)行選擇操作時(shí),應(yīng)使個體被選中并遺傳到下一代群體中的概率和這個個體的適應(yīng)度大小相關(guān),適應(yīng)度大的個體,被選中的可能性就越大。反之,適應(yīng)度值越小的個體,被選中的概率就越小。
設(shè)群體大小為n,其中i的適應(yīng)度值為fi,則i被選擇的概率為:
(4)
對群體進(jìn)行分類后,基于不同的適應(yīng)度等級進(jìn)行雜交操作(級別較低的個體采用常見的部分匹配雜交算子PMX,級別較高的個體采用啟發(fā)式雜交算子)。對于種群中兩個父代個體X=(x1,x2,…xn),Y=(y1,y2,…yn),通過啟發(fā)式交叉算子產(chǎn)生兩個子代個體a1,a2的步驟如下:
(1)隨機(jī)選定一個圖元c作為交叉的起點(diǎn),初始化子代個體的代碼串使它們僅包含一個圖元c,并將X、Y中的圖元c刪除;
(2)找到X、Y中圖元c的下一個圖元cR1、cR2(將X、Y當(dāng)作一個環(huán)處理)。計(jì)算圖元c與cR1、cR2的距離d1、d2。
(3)如果d1≤d2,則將cR1加入到a1,并將X、Y中的圖元cR1刪除;如果d1>d2,則將cR2加入到a1,并將X、Y中的圖元cR2刪除。
(4)如果此時(shí)X、Y的圖元數(shù)目為1,則直接將該圖元加入到a1后結(jié)束,否則轉(zhuǎn)(2)重復(fù)執(zhí)行。
同理,將上述(2)~(4)的相關(guān)操作改為查找c在X、Y中的的前一個圖元cL1、cL2,由圖元c與cL1、cL2的距離來決定選取,可生成另一個子代個體a2。
同理,對群體進(jìn)行分類后,基于不同的適應(yīng)度等級進(jìn)行變異操作。級別較低的個體采用常見的2-opt交換變異,級別較高的個體采取了如下的一種啟發(fā)式倒位變異算子。
啟發(fā)式倒位變異算子的基本思想是首先隨機(jī)選擇一個圖元c,然后在除c、cR、cL外的其他圖元中選距離c最近的圖元c′,再對cR到c′之間的圖元進(jìn)行倒位。例如對一個隨機(jī)父輩個體P(6 2 5 4 3 1),若隨機(jī)選擇一個圖元2,離圖元2最近的圖元有4和3,若選擇圖元4作為第二點(diǎn),則產(chǎn)生新個體a1(6 2 4 5 3 1),若選擇圖元3作為第二點(diǎn),則產(chǎn)生新個體a2(6 2 3 4 5 1)。這種方法考慮了原有邊的鄰接關(guān)系,將巡回路線上的優(yōu)良性能很好地遺傳到了下代的群體中,因此提高了算法的收斂速度。
對本文算法,設(shè)定群體規(guī)模采用60,分為4級,而每級產(chǎn)生的下一代個體數(shù)目分別為60、90、120、150。以51個坐標(biāo)的問題為例,算法運(yùn)行的路徑如圖4、圖5、圖6所示:當(dāng)運(yùn)行代數(shù)分別為5、10、20時(shí),算法所得最終距離分別為437.3、431.5和428.8。
圖4 T=5,length=437.3
圖5 T=10,length=431.5
圖6 T=20,length=428.8
實(shí)驗(yàn)結(jié)果表明,實(shí)驗(yàn)獲得的最優(yōu)解要接近于TSPLIB問題庫中給出的最優(yōu)解,見表2。
表2 實(shí)驗(yàn)結(jié)果對比
圖7為綜合本文算法和結(jié)論所得的圖元自動數(shù)控編程系統(tǒng)軟件主界面及加工路徑規(guī)劃示例。
圖7 圖元路徑規(guī)劃示意圖
本文針對幕墻金屬構(gòu)件的標(biāo)準(zhǔn)圖元,設(shè)計(jì)了一套自動數(shù)控編程系統(tǒng)。重點(diǎn)闡述了圖元數(shù)據(jù)結(jié)構(gòu)的定義方法和基于改進(jìn)遺傳算法的加工路徑規(guī)劃方法。機(jī)床應(yīng)用結(jié)果表明,該系統(tǒng)具有較高的加工效率,各項(xiàng)基本功能滿足設(shè)計(jì)要求。