本發(fā)明屬于銑削加工相關技術領域,更具體地,涉及一種用于生成無干涉的五軸加工軌跡的投影算法。
背景技術:
計算機數控(CNC)加工在制造業(yè)中占據重要位置。相比于三軸加工,五軸加工增加了兩個旋轉軸的自由度,可實現刀具和被加工表面之間更好的貼合性,減少加工時間,提高表面加工精度。無論是三軸加工還是五軸加工都涉及加工刀具軌跡的計算,目前常用的刀具軌跡計算策略大致可分成三種:(1)CL-surface策略;(2)Contact-driven策略;(3)Projection-based策略,如圖1所示。對于CL-surface策略,將刀具與工件恰好相切時的刀位點(CL)的集合定義為CL surface,刀具軌跡可直接通過確定的CL surface計算得到,如文獻《Mesh-based tool path generation for constant scallop-height machining》公開了將驅動面和偏置曲面離散的的三角片模型求交確定CL軌跡,該方法可在計算CL軌跡的過程中檢測并消除干涉,可適用于所有的APT(Automatically Programmed Tools)刀具三軸加工和球頭刀五軸加工,但是不能適用于平底刀、環(huán)形刀和一般的APT刀具五軸加工;在Contact-driven策略中,首先計算CC軌跡,然后決定刀軸,再計算CL軌跡,如文獻《Adaptive iso-planar tool path generation for machining of free-form surfaces》及《Five-axis tool path generation based on machine-dependent potential field》中均有介紹,這些方法最終生成的軌跡可能存在過切,導致加工精度不高,加工表面質量較差;對于Projection-based策略,首先確定驅動面,規(guī)劃驅動軌跡,然后利用投影算法生成加工軌跡。如文獻《Fixed-axis tool positioning with built-in global interference checking for NC path generation》公開了采用基于驅動軌跡的刀具向曲面離散的三角片投影的算法生成刀具加工軌跡,專利CN201410597489.5記載了一種用于五軸數控加工的等殘留高度刀觸點軌跡的生成方法,針對復雜網格模型的五軸加工,提出自適應的投影偏置方法來生成五軸等殘留刀觸點軌跡,該算法可直接生成無過切的加工軌跡,適用于任意APT刀具,但是軌跡計算效率較低。
目前刀具軌跡的投影算法還主要存在如下主要局限性:1、大多的投影算法關于防過切處理的研究僅適用于三軸加工;2、投影算法用于生成加工軌跡,加工軌跡計算效率往往較低,需要求解非線性高階方程,方程的根即投影點位置,如果方程有多個根,極易遺漏一些根,即找不到最優(yōu)解,從而導致投影算法失敗,得不到正確的刀觸點,使得加工軌跡缺失,嚴重影響被加工件表面質量;3、由于五軸加工增加了兩個旋轉軸自由度,導致每一個刀觸點的刀軸方向都是任意的,而目前的投影算法沒有給出沿任意方向投影到三角片的具體實現方案,限制了投影算法在五軸加工中的使用,使得加工軌跡相對于驅動軌跡沒有規(guī)律且不均勻。
技術實現要素:
針對現有技術的以上缺陷或改進需求,本發(fā)明提供了一種用于生成無干涉的五軸加工軌跡的投影算法,其基于Projection-based策略中的投影算法的特點,針對用于生成加工軌跡的投影算法進行了設計。所述投影算法選擇最短投影距離對應的刀具與三角片模型的接觸點作為刀觸點,其可適用于三軸及五軸、任意工件表面的加工及任意APT刀具,且可保證生成的軌跡無過切;所述投影算法給出了刀具-面和刀具向三角片的邊投影的原理,將刀觸點的計算集中于刀具坐標系CCS下,然后轉化到工件坐標系WCS下,提高了投影效率;所述投影算法針對刀具圓環(huán)體-邊投影,將刀具沿刀軸方向的投影轉化為對一個一元四次方程的直接求解,避免了采用數值迭代,提高了計算效率;所述投影算法針對刀具圓環(huán)體-邊投影,提出了將刀具沿任意方向投影轉化為采用Bezier截斷的方法求得僅包含一個實根的解區(qū)間集合并利用二分法求得一元8次方程的所有實根,進一步計算投影點,以得到加工軌跡,提高了搜索算法的靈活性,使得投影算法適用于五軸加工,保證了加工軌跡的均勻和規(guī)律性。
為實現上述目的,本發(fā)明提供了一種用于生成無干涉的五軸加工軌跡的投影算法,其包括以下步驟:
(1)將工件表面離散成三角片模型;
(2)對每一個刀具初始位置,沿投影方向對刀具建立AABB box;
(3)選出所述AABB box沿投影方向的投影覆蓋的三角片模型;
(4)刀具向單個三角片投影:首先,刀具向三角片的面投影,若刀具向三角片的面投影成功,則輸出投影點和所述投影點對應的投影距離,否則進行刀具向三角片的邊投影,其中,刀具向三角片的邊投影包括刀具圓環(huán)體向三角片的邊投影,刀具圓環(huán)體向三角片的邊投影時,根據約束條件得到一個投影方程,當投影方向沿刀軸方向時,將所述投影方程轉化為一元四次方程,根據Abel–Ruffini理論及Ferrari Lodovico方法求得所述一元四次方程的解析解;當投影方向為任意方向時,將所述投影方程轉化為一元八次方程,采用改進的Bezier截斷方法細分區(qū)間并采用二分法求解所述一元八次方程的所有實根,進而求得投影點,若刀具向三角片的邊的投影成功,則輸出投影點和對應的投影距離,否則進行刀具向三角片的頂點投影,若刀具向三角片的頂點投影成功,則輸出投影點和對應的投影距離,否則刀具向三角片投影失??;記錄每次投影成功的投影點和對應的投影距離,并計算刀觸點和刀位點,循環(huán)將刀具向單個三角片投影的過程,直到循環(huán)次數等于篩選的三角片的數量;
(5)找出最小投影距離對應的投影點作為最終的刀觸點,對每一個刀具初始位置,計算出相應的刀觸點和刀位點,最后得到工件曲面的加工軌跡。
進一步的,刀具向三角片的面投影和刀具向三角片的邊投影分別根據投影面的法矢NF和投影約束條件計算刀具坐標系CCS下的投影點,然后將計算獲得的投影點轉化到工件坐標系WCS下,輸出刀觸點。
進一步的,刀具圓環(huán)體向三角片的邊投影,投影平面由三角片的邊向量和投影方向決定,所述約束條件為:(1)投影點在圓環(huán)體上的法矢與三角片的邊向量垂直;(2)投影點在投影平面上。
進一步的,所述一元四次方程為:
(S12-1)(d(-UzS1)+Q)2+R2((UxVx+UyVy+UzVz)S1)2=0
式中,S1=cos(θ)Vy-sin(θ)Vx(d,h)為刀具圓環(huán)體部分的圓心在刀具坐標系的坐標值,R為刀具圓環(huán)體的圓弧部分的半徑,V(Vx,Vy,Vz)為三角片的邊向量,PV(Ux,Uy,Uz)為投影方向,θ為刀具圓環(huán)體的回轉面的緯度角,Q=hUxVy-hUyVx-PxUyVz+PxUzVy+PyUxVz-PyUzVx-PzUxVy+PzUyV1P1,(Px,Py,Pz)為三角片的邊上任意一個頂點。
進一步的,所述一元八次方程為:
f(x)=a8x8+a7x7+a6x6+a5x5+a4x4+a3x3+a2x2+a1x+a0=0
式中,ai(i=0,1,2…8)為根據刀具圓環(huán)體的參數、三角片的邊向量及投影方向確定的系數,θ為刀具圓環(huán)體的回轉面的緯度角。
進一步的,所述的刀具圓環(huán)體向三角片的邊投影,投影方向為任意向時,采用改進的Bezier截斷方法細分區(qū)間并采用二分法求解一元八次方程的所有實根,具體包括以下步驟:
(51)求n次多項式中變量的范圍,fn(x),x∈[a,b];
(52)將n次多項式fn(x),x∈[a,b],表示成n次Bernstein多項式p(t)t∈[0,1],輸出Bernstein多項式的系數{bi};
(53)利用求得的所述系數{bi}來構造Bezier曲線,其中d(t)表示Bernstein多項式p(t)上的點到t軸的距離,Di表示Bezier曲線D(t)的控制點;
(54)求Bezier曲線D(t)的最小凸包{Ai};
(55)求Bezier曲線D(t)的控制多邊形{Di}及所述最小凸包{Ai}和t軸的交點,得到關于t的初始解區(qū)間{[ti,ti+1]};
(56)優(yōu)化初始解區(qū)間,保證每個解區(qū)間有唯一根;
(57)輸出優(yōu)化后的解區(qū)間集合;
(58)利用二分法以求出每一個區(qū)間的解,并根據獲得的解計算出投影點及對應的投影距離,找出最小投影距離對應的投影點。
進一步的,優(yōu)化初始解區(qū)間,保證每個解區(qū)間有唯一根的過程包括以下步驟:
S561,對待檢測區(qū)間[ti,ti+1],由公式x=a+(b-a)*t,反算x,得到區(qū)間[xi,xi+1];
S562,將n次多項式fn(x),x∈[xi,xi+1]轉換成n次Bernstein多項式p(t),計算其系數{bi};
S563,判斷Bernstein多項式的系數{bi}的符號,若系數符號變更次數大于2,轉S564;若系數符號變更次數為1,轉S565;若系數符號變更次數為0,轉S566;
S564,對包含兩個根或者無根的區(qū)間優(yōu)化,判斷并去掉無根的區(qū)間,對包含兩個根的區(qū)間進行細分,結合最大控制點和最小控制點的特性,對細分得到的區(qū)間進行優(yōu)先級選定,以確定區(qū)間搜索的先后順序;
S565,輸出Bernstein多項式的系數{bi}的符號變更次數為1的區(qū)間;
S566,對下一個區(qū)間進行檢測。
總體而言,通過本發(fā)明所構思的以上技術方案與現有技術相比,本發(fā)明提供的用于生成無干涉的五軸加工軌跡的投影算法,其選擇最短投影距離對應的刀具與曲面的接觸點作為刀觸點,其可適用于三軸及五軸、任意工件表面的加工及任意APT刀具,且可保證生成的軌跡無過切;所述投影算法給出了刀具-面和刀具向三角片的邊投影的原理,將刀觸點的計算集中于刀具坐標系CCS下,然后轉化到工件坐標系WCS下,提高了投影效率;所述投影算法針對刀具圓環(huán)體-邊投影,將刀具沿刀軸方向的投影轉化為對一個一元四次方程的直接求解,避免了采用數值迭代,提高了計算效率;所述投影算法針對刀具圓環(huán)體-邊投影,提出了將刀具沿任意方向投影轉化為采用Bezier截斷的方法求得僅包含一個實根的解區(qū)間并利用二分法求得一元8次方程的所有實根,進一步計算投影點,以得到加工軌跡,提高了搜索的靈活性,使得投影算法適用于五軸加工,保證了加工軌跡的均勻和規(guī)律性。
附圖說明
圖1是三種常用的刀具軌跡計算方策略的流程圖。
圖2是刀具向工件表面投影的示意圖。
圖3是刀具向單個三角片投影的示意圖。
圖4是本發(fā)明較佳實施方式提供的用于生成無干涉的五軸加工軌跡的投影算法涉及的模型示意圖。
圖5是APT刀具的示意圖。
圖6是圖4中的用于生成無干涉的五軸加工軌跡的投影算法的流程圖。
圖7是圖4的用于生成無干涉的五軸加工軌跡的投影算法涉及的APT刀具向三角片模型的面投影的示意圖。
圖8是圖4中的用于生成無干涉的五軸加工軌跡的投影算法涉及的APT刀具向三角片模型的邊投影的示意圖。
圖9是圖4中的用于生成無干涉的五軸加工軌跡的投影算法涉及的APT刀具的圓環(huán)體向三角片模型的邊投影的推導示意圖。
圖10是利用Bezier截斷方法求解圖4中的用于生成無干涉的五軸加工軌跡的投影算法涉及的8次投影方程的流程圖。
圖11是圖4中的用于生成無干涉的五軸加工軌跡的投影算法涉及的由相鄰的兩個三角片的法矢確定搜索角度范圍的示意圖。
圖12是圖4中的用于生成無干涉的五軸加工軌跡的投影算法涉及的n次多項式轉化為n次Bernstein多項式的示意圖。
圖13是圖4中的用于生成無干涉的五軸加工軌跡的投影算法涉及的構造Bezier曲線的示意圖。
圖14是圖4中的用于生成無干涉的五軸加工軌跡的投影算法涉及的最小凸包的形成示意圖。
圖15是圖12中的Bezier曲線的控制多邊形及圖13中的最小凸包和t軸的交點示意圖。
圖16是圖4中的用于生成無干涉的五軸加工軌跡的投影算法涉及初始解區(qū)間的示意圖。
圖17是圖16中的初始解區(qū)間的優(yōu)化流程圖。
具體實施方式
為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施案例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個實施方式中所涉及到的技術特征只要彼此之間未構成沖突就可以相互組合。
請參閱圖2,本發(fā)明較佳實施方式提供的用于生成無干涉的五軸加工軌跡的投影算法,其使刀具位于一個無干涉的初始位置,刀具沿著某一給定的方向朝曲面移動的同時保持刀具姿態(tài)不變(僅平移,沒有旋轉),直到接觸曲面并與曲面相切,切點即為刀觸點。
為了解決工件曲面形狀比較復雜的問題,利用三角片模型逼近工件表面,將刀具向工件表面投影問題簡化為刀具向三角片模型投影。請參閱圖3,刀具向三角片模型投影包括以下步驟:(1)將工件表面離散成三角片模型;(2)對刀具沿投影方向建立AABB box(axis aligned bounding box);(3)篩選可能投影到的三角片;(4)刀具向單個三角片投影;(5)輸出最短投影距離對應的投影點。請參閱圖4,刀具向單個三角片投影,包括刀具向三角片的面投影、刀具向三角片的邊投影和刀具向三角片的頂點投影。刀具可分為刀具圓錐體部分和刀具圓環(huán)體部分。由于刀具圓環(huán)體的數學表達式為4次方方程,而刀具圓錐體的數學表達式為2次方程,因此刀具圓環(huán)體投影到三角片更加困難。其中,刀具圓環(huán)體向三角片的面投影可根據面的法矢求得投影點,刀具圓環(huán)體向三角片的頂點投影可轉化為直線與圓環(huán)體求交的問題。對刀具圓環(huán)體向三角片的邊投影,當投影方向為刀軸方向時,根據約束條件求得投影方程,根據投影方程推導出一元四次方程并求所述一元四次方程的解析解;當投影方向為任意方向時,根據所述投影方程推導出一元8次方程,采用基于Bezier截斷的數值迭代方法細分區(qū)間,求解投影點。本發(fā)明保證投影算法適應于五軸加工,且生成的軌跡沒有干涉,進而獲得較好的加工表面質量。
本實施方式中,所述投影算法適用于三軸及五軸無干涉加工軌跡的生成;同時,所述投影算法可適應任意的APT(Automatically Programmed Tools)刀具,同時提高了軌跡計算效率;此外,所述投影算法首次給出了刀具沿任意方向投影到三角片的具體解決方案,保證了加工軌跡的均勻性和規(guī)律性。
APT刀具圓環(huán)體部分的圓心為(d,h),刀具的刀桿長度H、刀具切削長度L、尖角A1、側端角A2、直徑D、圓弧部分半徑R,如圖5(a)所示;刀具有效切削區(qū)域包含上部圓錐體、中部的圓環(huán)體和下部圓錐體,如圖5(b)所示。
請參閱圖3至圖8,本發(fā)明較佳實施方式提供的用于生成無干涉的五軸加工軌跡的投影算法主要包括以下步驟:
步驟一,建立工件表面的三角片模型,在滿足給定的誤差范圍內,三角片模型可逼近曲面模型;
步驟二,對每一個刀具初始位置,沿投影方向對刀具建立AABB box;
步驟三,篩選三角片,即所述AABB box沿投影方向的投影覆蓋的三角片;
步驟四,刀具向單個三角片投影,由于刀具向三角片的頂點投影可轉化為刀具圓錐體或刀具圓環(huán)體部分與直線求交。因此僅介紹刀具向三角片的面投影和刀具向三角片的邊投影的原理。
(41)刀具向三角片的面投影
具體地,首先,請參閱圖7建立工件坐標系WCS(Workpiece Coordinate System),然后,建立刀具坐標系CCS(Cutter Coordinate System),其中刀具坐標系CCS的X-Z平面由刀軸方向TA和三角片法矢NF決定,投影距離定義為dP,三角片的法矢NF與圓環(huán)體上任意一點的法矢NT互為相反數,其中NF=P1P2×P1P3,使得NF=-NT即可。根據初始刀位點CL0、刀軸方向TA(0,0,1)、投影方向PV、刀具信息Ts及三角片信息TF(三角片的三個頂點P1,P2,P3);計算獲得刀觸點CC、刀位點CL及投影距離dP,基本流程如下:
S411,將工件坐標系WCS下面的法矢NF轉化到刀具坐標系CCS下;
S412,計算刀具坐標系CCS下的刀具偏置矢量O,即CCS下的點CC0;
S413,在刀具坐標系CCS下將過點CC0沿投影方向的直線與三角片求交,可得到刀具坐標系CCS下的CC點和投影距離dP;
S414,由公式CL=CL0+dPPV計算刀具坐標系CCS下的CL點,并轉化到工件坐標系WCS下;若CC點不在三角片內部,轉刀具向三角片的邊投影,否則輸出CC點、CL點和投影距離dP;
(42)刀具向三角片的邊投影
請參閱圖8,刀具向三角片的邊投影的基本算法流程如下:
S421,計算由投影方向PV和三角片的邊向量V確定投影平面;
S422,投影平面與刀具曲面求交,計算CCS下的CC點和投影距離dP;
S423,由公式CL=CL0+dPPV計算刀具坐標系CCS下的CL點,并轉化到工件坐標系WCS下;
S424,若CC點不在三角片內部,將刀具向三角片的邊投影,否則輸出CC點、CL點和邊投影dP。
由于刀具圓環(huán)體的數學表達式為4次方方程,而刀具圓錐體的數學表達式為2次方程,因此圓環(huán)體投影到三角片更加困難。其中圓環(huán)體-面投影可根據面的法矢求投影點,圓環(huán)體-頂點投影可轉化為直線與圓環(huán)體求交的問題。刀具圓環(huán)體-邊投影具體推導如下:
請參閱圖9,投影平面由邊向量V(Vx,Vy,Vz)和投影方向PV(Ux,Uy,Uz)決定,邊上任意一個頂點可表示為P1(Px,Py,Pz),圓環(huán)體可由圓心(d,h)和角度(α,θ)來描述。
根據投影條件推導出投影方程,具體推導過程如下。
所述圓環(huán)體上的任意一點PT可描述為:
式中,0≤θ<2π。
圓環(huán)體上任意一點的法矢為NT
投影平面的法矢NP可由邊的向量V和投影向量PV決定
當三角片的邊與圓環(huán)體相切時,需要滿足兩個投影約束條件:一是圓環(huán)體上的切點對應的法矢與邊向量垂直,二是切點位于投影平面內。可以得到如下方程。
NT·V=0
(PT-P1)·NP=0
以上兩個投影約束方程均為關于變量α和θ的兩個非線性方程,聯立兩個方程即可得到一個關于角度θ的非線性方程。
(S12-1)(d(VzS2-UzS1)+Q)2+r2((UxVx+UyVy+UzVz)S1-S2)2=0
式中S1=cos(θ)Vy-sin(θ)Vx,S2=cos(θ)Uy-sin(θ)Ux
Q=hUxVy-hUyVx-PxUyVz+PxUzVy+PyUxVz-PyUzVx-PzUxVy
+PzUyV1
當投影方向為刀軸方向時,PV(Ux,Uy,Uz)即刀軸方向TA(0,0,1),變量S2=0,投影方程可化簡為一個關于變量S1的一元四次方程,,根據Abel-Ruffini理論并利用Ferrari Lodovico方法來求解一元4次方程所有的實數根,進而得到投影點。
(S12-1)(d(-UzS1)+Q)2+R2((UxVx+UyVy+UzVz)S1)2=0
當刀具沿任意方向投影時,利用三角函數的萬能公式,替換系數ai(i=0,1,2…8)可得到一元八次方程,求得所述一元八次方程所有的實根,然后從獲得的實根中選取對應最短投影距離的根作為投影點,即刀觸點。
f(x)=a8x8+a7x7+a6x6+a5x5+a4x4+a3x3+a2x2+a1x+a0=0
對于上述8次方程,采用改進的Bezier截斷方法求得只包含一個根的區(qū)間的集合,并利用二分法求解一元八次方程所有的實根。基本流程如下:
(a)求n次多項式中變量的范圍,fn(x),x∈[a,b];
請參閱圖10及圖11,根據投影的順序可知,向面投影失敗的會繼續(xù)向邊投影,由幾何關系可知,如果圓環(huán)體向邊可以投影成功,則切點在圓弧上對應的法矢的反方向一定位于兩個相鄰三角片的法矢的之間,定義α1和θ1為表示法矢NF1的參數,α2和θ2為表示法矢NF2的參數,可得:
當NF1和NF2已知,角度α1,θ1,α2,θ2可求得,由可求出變量x的范圍[a,b]。
(b)請參閱圖12,將n次多項式fn(x),x∈[a,b],表示成n次Bernstein多項式p(t)t∈[0,1],輸出Bernstein多項式的系數{bi};
(c)利用求得的所述系數{bi}來構造Bezier曲線,其中d(t)表示Bernstein多項式p(t)上的點到t軸的距離,Di表示Bezier曲線D(t)的控制點,請參閱圖13;
(d)求Bezier曲線D(t)的最小凸包{Ai};
請參閱圖14,根據Bezier曲線D(t)的控制點{Di},i=0,1,…,n,獲得Bezier曲線D(t)的凸包頂點{Ai},具體步驟如下:
S41,比較所有控制點的t的值,選出t值最大的點,記為A0,若有多個點的t值相等,取在這些點中取d(t)值最大的點為A0,方向與縱軸正向一致的射線記為L0,如圖14(a)所示;
S42,依次以Ai為開始點,讓Li逆時針旋轉,在所有控制點中找一點Ai+1,使得以Ai為始點且過Ai+1的射線與射線Li之間的夾角最小,記這條射線為Li+1(i=0,1…n);
S43,重復步驟S42,直到找到某個An=A0,這時A1,A2,…An就是凸包的全部頂點;
S44,按凸包全部頂點的索引由小到大順序連線,形成最小凸包,如圖14(b)所示。
(e)求Bezier曲線D(t)的控制多邊形{Di}及所述最小凸包{Ai}和t軸的交點,得到關于t的初始解區(qū)間{[ti,ti+1]};
請參閱圖15,根據Bezier曲線的控制點{Di}及凸包頂點{Ai},以獲得初始解區(qū)間{[ti,ti+1]},具體步驟如下:
S51,判斷控制多邊形的每一條邊DiDi+1與t軸是否相交,若相交,求出交點的參數tDi;
S52,判斷最小凸包的每一條邊AiAi+1與t軸是否相交,若相交,求出其交點的參數tAi;
S53,將步驟S51和步驟S52求得的交點參數按從小到大的順序排序,每兩個參數形成一個區(qū)間,則可得到對應的初始區(qū)間[t0,t1],[t1,t2]…。
S54,輸出初始解區(qū)間{[ti,ti+1]}。
(f)優(yōu)化初始解區(qū)間,保證每個解區(qū)間有唯一根;
請參閱圖16及圖17,得到的一系列的解區(qū)間后,在解區(qū)間內Bezier曲線有可能與t軸不相交,或者不止一個交點,如圖16所示在區(qū)間[t0,t1]有一個根,在區(qū)間[t1,t2]內有兩個根,在區(qū)間[t2,t3]內無根,因此對解區(qū)間進行優(yōu)化,具體步驟如下:
S61,對待檢測區(qū)間[ti,ti+1],由公式x=a+(b-a)*t,反算x,得到區(qū)間[xi,xi+1];
S62,將n次多項式fn(x),x∈[xi,xi+1]轉換成n次Bernstein多項式p(t),計算其系數{bi};
S63,判斷Bernstein多項式的系數{bi}的符號,若系數符號變更次數大于2,轉S64;若系數符號變更次數為1,轉S65;若系數符號變更次數為0,轉S66。
S64,對可能包含兩個根或者無根的區(qū)間優(yōu)化,具體地,Bernstein系數{bi}符號改變兩次,則凸包與t軸相交,由于控制點的作用是將樣條曲線拉著接近控制點,因此可以根據區(qū)間[α,β]上的最高或者最低控制點將區(qū)間分成兩部分,若第一個控制點b0>0,則找最低控制點及其對應參數γ;若第一個控制點b0<0,則找最高控制點及其對應參數γ。將區(qū)間[α,β]分為[α,γ]和[γ,β],計算區(qū)間[α,γ]上的Bernstein系數{bi}1和區(qū)間[γ,β]上的Bernstein系數{bi}2。
若系數{bi}1和系數{bi}2均不變號,則求解方程在[α,γ]和[γ,β]內無根,因此在區(qū)間[α,β]無根;若系數{bi}1和系數{bi}2中至少有一個變號一次,表明至少有一個根。若系數{bi}1變號一次,系數{bi}2不變號,在區(qū)間[α,γ]有一個根;若系數{bi}1不變號,系數{bi}2變號一次,在區(qū)間[γ,β]有一個根;若系數{bi}1變號一次,系數{bi}2變號一次,則在區(qū)間[α,γ]和區(qū)間[γ,β]內各有一個根。若系數{bi}1和系數{bi}2中至少有一個變號兩次,都需要進一步細分區(qū)間。若系數{bi}1變號兩次,系數{bi}2不滿足,則對區(qū)間[α,γ]細分;若系數{bi}1不滿足,系數{bi}2變號兩次,則對區(qū)間[γ,β]細分;若系數{bi}1變號兩次,系數{bi}2變號兩次,則對區(qū)間[α,γ]和區(qū)間[γ,β]內作一個判斷,對包含根可能性大的區(qū)間優(yōu)先細分。
S65,輸出Bernstein多項式的系數{bi}的符號變更次數為1的區(qū)間;
S66,對下一個區(qū)間進行檢測。
(g)輸出優(yōu)化后的解區(qū)間。具體地,將可能包含兩個根或者無根的區(qū)間[α,β]上的最高或者最低控制點將區(qū)間分成兩部分后,基于步驟(5)中的符號變更法則,考慮凸包與t軸相交的特性,不斷細分區(qū)間進行判斷,最終輸出包含一個根的區(qū)間和無根的區(qū)間。
(h)利用二分法以求出每一個區(qū)間的解,并根據求得的解計算出對應的投影點及投影距離,并求得投影點。
步驟五,輸出最短投影距離對應的投影點,給定刀具初始位置,刀具逐一向所有可能投影成功的三角片投影,并記錄相應的投影點和投影距離。找出最小投影距離對應的投影點作為最終的刀觸點,由刀觸點計算出刀位點。對每一個刀具初始位置,計算出相應的刀位點,最后得到工件曲面的加工軌跡。
本發(fā)明提供的用于生成無干涉的五軸加工軌跡的投影算法,選擇最短投影距離對應的刀具與三角片模型的接觸點作為刀觸點,其可適用于三軸及五軸、任意工件表面的加工及任意APT刀具,且可保證生成的軌跡無過切;所述投影算法給出了刀具-面和刀具向三角片的邊投影的原理,將刀觸點的計算集中于刀具坐標系CCS下,然后轉化到工件坐標系WCS下,提高了投影效率;所述投影算法針對刀具圓環(huán)體-邊投影,將刀具沿刀軸方向的投影轉化為對一個一元四次方程的直接求解,避免了采用數值迭代,提高了計算效率;所述投影算法針對刀具圓環(huán)體-邊投影,提出了將刀具沿任意方向投影轉化為采用Bezier截斷的方法求得僅包含一個實根的解區(qū)間并利用二分法求得一元8次方程的所有實根,進一步計算投影點,以得到加工軌跡,提高了搜索算法的靈活性,使得投影算法適用于五軸加工,保證了加工軌跡的均勻和規(guī)律性。
本領域的技術人員容易理解,以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內。