其m_bAll 0wSm00th = false;打斷前含有原圓弧端 點(diǎn)的,則將該圓弧簡(jiǎn)化成線段即對(duì)應(yīng)的弦,并滿足:弦長(zhǎng)< U,且弧中點(diǎn)與弦的距離<e ; d) 端點(diǎn)調(diào)整:如果相鄰兩段的m_bAllowSmooth均為true,則它們的銜接點(diǎn)為允許 調(diào)整,否則為不允許(或無(wú)需)調(diào)整。當(dāng)允許調(diào)整時(shí),顯然當(dāng)前相鄰的兩段均為G01線段: i. 計(jì)算銜接點(diǎn)處運(yùn)動(dòng)的偏轉(zhuǎn)角:如果為0,則該銜接點(diǎn)處無(wú)需調(diào)整;如果大于等于最大 偏轉(zhuǎn)角閾值0,則該銜接點(diǎn)處必須減速至0,也無(wú)需調(diào)整位置; ii. 否則,連接前段的起點(diǎn)與后段的終點(diǎn),在銜接點(diǎn)處形成三角形,確定其內(nèi)心,然后連 接銜接點(diǎn)至內(nèi)心,計(jì)算該線段的長(zhǎng)度,如果小于等于設(shè)定的弓高誤差e,則將銜接點(diǎn)直接調(diào) 整為該內(nèi)心處;否則在該線段上,從銜接點(diǎn)處截取e的距離,將銜接點(diǎn)平移至此處; e) 線段調(diào)整:線段有兩個(gè)端點(diǎn),存在兩次被調(diào)整的可能。如果起點(diǎn)被調(diào)整,則會(huì)影響到 其方向性,從而影響到終點(diǎn)的調(diào)整,即存在前后調(diào)整順序的問(wèn)題。為此,當(dāng)起點(diǎn)被調(diào)整時(shí),并 不立即更新的線段姿態(tài),而是僅保存起點(diǎn)調(diào)整的向量V0,待到得到終點(diǎn)需要調(diào)整的向量VI 后,只需將該段路徑的姿態(tài)向量加上V1-V0即可。
[0017] 本發(fā)明采用先將現(xiàn)有運(yùn)動(dòng)指令打斷成最多三段的方式,兩端的形成微線段,并被 允許繼續(xù)調(diào)整端點(diǎn),而中間的則不允許調(diào)整。這樣,即保留了長(zhǎng)線段及長(zhǎng)圓弧中間部分的精 度、同時(shí)又可僅針對(duì)減速點(diǎn)轉(zhuǎn)角附近進(jìn)行調(diào)整,從而速度和精度均可得到很好地平衡。對(duì) 長(zhǎng)線段及長(zhǎng)圓弧,先進(jìn)行打斷處理;長(zhǎng)圓弧打斷后,兩端的小圓弧用小線段代替;在轉(zhuǎn)角處 微調(diào),將銜接點(diǎn)沿夾角平分線進(jìn)行調(diào)整;計(jì)算銜接點(diǎn)的夾角,以原始軌跡為準(zhǔn);對(duì)線段的微 調(diào),在起點(diǎn)與終點(diǎn)的調(diào)整量得到后再進(jìn)行,僅需一次調(diào)整即可。
[0018] 因?yàn)檗D(zhuǎn)角平滑,可使銜接點(diǎn)移至三角形的內(nèi)心,形成的偏轉(zhuǎn)角為先前的一半,故可 以在保證在轉(zhuǎn)角加速度及轉(zhuǎn)角加加速均不超標(biāo)的前提下,轉(zhuǎn)角速度可有所提高;對(duì)于長(zhǎng)線 段,僅兩端略偏離原始刀路(保證弓高誤差的前提下),中間部分則完全忠實(shí)于原始刀路軌 跡;對(duì)于小圓弧,則在保證弓高誤差的前提下,直接打斷成1到2段線段,再經(jīng)過(guò)線段間的轉(zhuǎn) 角平滑處理,可使銜接點(diǎn)處的偏轉(zhuǎn)角降低,提高加工速度;對(duì)于長(zhǎng)圓弧,僅兩端略微偏離原 始刀路(但保證弓高誤差的前提下),中間部分則完全忠實(shí)于原始刀路軌跡,充分發(fā)揮圓弧 自身的光順特點(diǎn)。經(jīng)實(shí)驗(yàn)證明,經(jīng)過(guò)該算法平滑處理后的刀路,更圓潤(rùn)光滑。對(duì)于某些加工 領(lǐng)域,如高光處理,具有顯著效果,加工效率及加工質(zhì)量均大幅提升。
[0019] 以上實(shí)施方式只為說(shuō)明本發(fā)明的技術(shù)構(gòu)思及特點(diǎn),其目的在于讓熟悉此項(xiàng)技術(shù)的 人了解本發(fā)明的內(nèi)容并加以實(shí)施,并不能以此限制本發(fā)明的保護(hù)范圍,凡根據(jù)本發(fā)明精神 實(shí)質(zhì)所做的等效變化或修飾均涵蓋在本發(fā)明的保護(hù)范圍內(nèi)。
【主權(quán)項(xiàng)】
1. 一種CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于,包括如下步驟: a) 在CNC數(shù)控設(shè)備的刀路運(yùn)動(dòng)指令中設(shè)置一平滑參數(shù),該平滑參數(shù)用于標(biāo)記刀路終點(diǎn) 處是否允許被平滑調(diào)整,該平滑參數(shù)的默認(rèn)值為"是"; b) 設(shè)定或讀取CNC數(shù)控設(shè)備的刀路運(yùn)動(dòng)指令的最大偏轉(zhuǎn)角闊值0、弓高誤差e,從而 計(jì)算出最大分段長(zhǎng)度1。=£*(1+(3〇3(0/2))/8;[]1(0/2); C)讀取當(dāng)前刀路運(yùn)動(dòng)指令類型并獲得后續(xù)路徑的特征值,根據(jù)后續(xù)路徑的特征值將后 續(xù)路徑進(jìn)行分段處理; d) 端點(diǎn)調(diào)整;如果相鄰兩段路徑的平滑參數(shù)均為"是",則對(duì)相鄰兩段路徑的銜接 點(diǎn)進(jìn)行調(diào)整,調(diào)整時(shí)連接前段路徑的起點(diǎn)與后段路徑的終點(diǎn),從而在銜接點(diǎn)處形成=角 形,確定該S角形的內(nèi)屯、,然后連接銜接點(diǎn)至內(nèi)屯、,計(jì)算該線段的長(zhǎng)度,如果小于等于設(shè) 定的弓高誤差e,則將銜接點(diǎn)直接調(diào)整為該內(nèi)屯、處,否則在該線段上,從銜接點(diǎn)起截取 ^的距離,將銜接點(diǎn)平移至此處; e) 線段調(diào)整;當(dāng)一段路徑的起點(diǎn)被調(diào)整時(shí),保存起點(diǎn)調(diào)整的向量V。,待到得到終點(diǎn)需要 調(diào)整的向量Vi后,只需將該段路徑的姿態(tài)向量加上V1-V。即可。2. 根據(jù)權(quán)利要求1所述的CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于;所述的 運(yùn)動(dòng)指令類型包括G00、G01、G02、G03,其中;G00類型為快速定位狀態(tài),G01類型為直線切 削狀態(tài),G02類型為順時(shí)針圓弧切削狀態(tài),G03類型為逆時(shí)針圓弧切削狀態(tài)。3. 根據(jù)權(quán)利要求1或2所述的CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于:所 述的步驟C)中,如果運(yùn)動(dòng)指令類型為G00,則無(wú)需打斷并標(biāo)記平滑參數(shù)為"否"。4. 根據(jù)權(quán)利要求1或2所述的CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于:所 述的步驟C)中,如果運(yùn)動(dòng)指令類型為G01,計(jì)算出其路徑長(zhǎng)度L如果L< 1. 5L。,則無(wú)需打 斷;如果1.L< 2.化。,則取中點(diǎn)打斷成兩條;否則,從兩端各截取長(zhǎng)度為L(zhǎng)。打斷,分 為=段,其中中間那段終點(diǎn)無(wú)需平滑調(diào)整,故標(biāo)記其平滑參數(shù)為"否"。5. 根據(jù)權(quán)利要求1或2所述的CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于:所 述的步驟C)中,如果運(yùn)動(dòng)指令類型為G02或G03,計(jì)算出其路徑長(zhǎng)度L,如果1<1.5^,貝。 無(wú)需打斷;如果1. L< 2.化。,則取中點(diǎn)打斷成兩條;否則,從兩端各截取長(zhǎng)度為L(zhǎng)。打 斷,分為=段,其中中間那段終點(diǎn)無(wú)需平滑調(diào)整,故標(biāo)記其平滑參數(shù)為"否"。6. 根據(jù)權(quán)利要求5所述的CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于;打斷前 含有原圓弧端點(diǎn)的,則將該圓弧簡(jiǎn)化成線段即對(duì)應(yīng)的弦,并滿足;弦長(zhǎng)<L。,且弧中點(diǎn)與弦 的距離<5。7. 根據(jù)權(quán)利要求1所述的CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于;所述的 步驟d)中,銜接點(diǎn)處運(yùn)動(dòng)的偏轉(zhuǎn)角如果大于等于最大偏轉(zhuǎn)角闊值0,則該銜接點(diǎn)處必須減 速至0,同時(shí)無(wú)需調(diào)整位置。8. 根據(jù)權(quán)利要求1所述的CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于;所述的 步驟d)中,銜接點(diǎn)處運(yùn)動(dòng)的偏轉(zhuǎn)角如果為0,則該銜接點(diǎn)處無(wú)需調(diào)整。9. 根據(jù)權(quán)利要求1所述的CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,其特征在于;所述的 步驟d)中,當(dāng)需要調(diào)整時(shí),當(dāng)前相鄰的兩段路徑的運(yùn)動(dòng)指令類型為均為G01。
【專利摘要】本發(fā)明公開(kāi)了一種CNC數(shù)控設(shè)備刀路轉(zhuǎn)角平滑處理方法,包括在CNC數(shù)控設(shè)備的刀路運(yùn)動(dòng)指令中設(shè)置一平滑參數(shù),該平滑參數(shù)的默認(rèn)值為 “是”;設(shè)定或讀取CNC數(shù)控設(shè)備的刀路運(yùn)動(dòng)指令的最大偏轉(zhuǎn)角閾值θ、弓高誤差ε,從而計(jì)算出最大分段長(zhǎng)度;讀取當(dāng)前刀路運(yùn)動(dòng)指令類型并獲得后續(xù)路徑的特征值,根據(jù)后續(xù)路徑的特征值將后續(xù)路徑進(jìn)行分段處理;端點(diǎn)調(diào)整;線段調(diào)整。本發(fā)明即保留了長(zhǎng)線段及長(zhǎng)圓弧中間部分的精度、同時(shí)又可僅針對(duì)減速點(diǎn)轉(zhuǎn)角附近進(jìn)行調(diào)整,從而速度和精度均可得到很好地平衡。經(jīng)實(shí)驗(yàn)證明,經(jīng)過(guò)該算法平滑處理后的刀路,更圓潤(rùn)光滑。對(duì)于某些加工領(lǐng)域,如高光處理,具有顯著效果,加工效率及加工質(zhì)量均大幅提升。
【IPC分類】G05B19/19
【公開(kāi)號(hào)】CN104932424
【申請(qǐng)?zhí)枴緾N201510406868
【發(fā)明人】郭先強(qiáng), 何長(zhǎng)安
【申請(qǐng)人】蘇州谷夫道自動(dòng)化科技有限公司
【公開(kāi)日】2015年9月23日
【申請(qǐng)日】2015年7月13日