用于生成軌跡的方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明總體上涉及數(shù)字控制處理,更特別地,涉及針對數(shù)字控制處理確定空間坐標(biāo)的軌跡。
【背景技術(shù)】
[0002]數(shù)字控制(NC)涉及由在存儲(chǔ)介質(zhì)上編碼的抽象編程命令操作的機(jī)器工具的自動(dòng)化或通過凸輪實(shí)現(xiàn)機(jī)械自動(dòng)化的機(jī)器工具的自動(dòng)化。當(dāng)前大多數(shù)NC是計(jì)算機(jī)數(shù)字控制(CNC),在CNC中,計(jì)算機(jī)負(fù)責(zé)控制的整體部分。
[0003]在現(xiàn)代CNC系統(tǒng)中,使用計(jì)算機(jī)輔助設(shè)計(jì)(CAD)和計(jì)算機(jī)輔助制造(CAM)程序使端到端的組件設(shè)計(jì)高度自動(dòng)化。程序生成文件,該文件通過后置處理器被解釋以提取操作特定機(jī)器所需的命令,然后將文件加載到CNC機(jī)器中用于生產(chǎn)。通常,數(shù)字控制機(jī)器被提供參考軌跡,參考軌跡是表示致動(dòng)器位置或待移動(dòng)塊體的空間坐標(biāo)的一序列點(diǎn)的形式。CNC控制塊體的移動(dòng)以跟隨軌跡以及(有可能)機(jī)器的給定物理限制。
[0004]操作加工機(jī)器的運(yùn)動(dòng)控制器是CNC的一個(gè)示例。機(jī)床、研磨機(jī)和坐標(biāo)測量機(jī)器(CMM)是利用CNC進(jìn)行運(yùn)動(dòng)控制的制造設(shè)備的其它示例。三軸CNC加工機(jī)器具有其中安裝有工具的頭部和能相對于工具在X、Y平面內(nèi)移動(dòng)的工作臺(tái)。根據(jù)正交的Χ、Υ和Z笛卡爾坐標(biāo)系,電機(jī)控制工作臺(tái)在X和Y方向上的運(yùn)動(dòng)和工具在Z方向上的運(yùn)動(dòng)。位置傳感器(通常,編碼器或定標(biāo)器(scaler))提供反饋,所述反饋指示工具相對于加工機(jī)器的坐標(biāo)系的位置。
[0005]CNC部分地讀取指明工具在指定速率或進(jìn)料速率下將跟隨的工具路徑軌跡。通常,使用數(shù)字控制編程語言實(shí)現(xiàn)工具運(yùn)動(dòng),該語言也被稱為預(yù)備代碼或G代碼,參見(例如)RS274D和DIN 66025/IS0 6983標(biāo)準(zhǔn)??刂破鬟B續(xù)地比較當(dāng)前工具位置和指定工具路徑。利用這個(gè)反饋,控制器生成信號(hào),以在工具以所需速率沿著工具路徑移動(dòng)的同時(shí)使工具的實(shí)際軌跡盡可能接近地匹配輸入軌跡這樣的方式控制電機(jī)??刂破骺膳c計(jì)算機(jī)輔助加工(CAM)系統(tǒng)結(jié)合起來使用。
[0006]用所需加工結(jié)果的模型確定軌跡和對應(yīng)的G代碼。在確定了軌跡之后,CNC不訪問原始模型并且不能補(bǔ)償控制中的任何錯(cuò)誤。另外,軌跡信息可能不是所需加工的準(zhǔn)確表示,例如,軌跡可能因噪聲、坐標(biāo)的過度量化、模型幾何形狀的欠采樣而被損壞。
[0007]因此,在軌跡數(shù)據(jù)被供應(yīng)到控制器之前,一般有必要對軌跡數(shù)據(jù)進(jìn)行重新處理和重采樣。通常,這涉及對一序列點(diǎn)進(jìn)行過濾和平滑。已經(jīng)使用了多種傳統(tǒng)方法以改善輸入軌跡,這些方法包括求平均、插值、擬合簡單曲線、剔除異常的閾值,參見例如美國專利5815401,7444202 和 5723961。
[0008]然而,由于CNC的計(jì)算能力的限制,導(dǎo)致傳統(tǒng)方法局部地(即,在數(shù)據(jù)點(diǎn)的小窗口內(nèi))處理輸入軌跡。這導(dǎo)致明顯欠佳的結(jié)果,因?yàn)樾〈翱诳赡懿话ㄗ銐虻男畔⒁源_定特異點(diǎn)是否表示拐角、量化偽跡、過剩運(yùn)動(dòng)、采樣偽跡、欠采樣的曲率變化或一些其它偽跡。
【發(fā)明內(nèi)容】
[0009]本發(fā)明要解決的問題
[0010]本發(fā)明的各種實(shí)施方式是基于以下認(rèn)識(shí):只基于本地可用信息的針對數(shù)字控制(NC)處理的輸入軌跡的局部修改可能欠佳。這是因?yàn)?,在不考慮軌跡的其它部分的結(jié)構(gòu)和可能修改的情況下確定局部修改。
[0011]為了應(yīng)對這個(gè)缺陷,本發(fā)明的一些實(shí)施方式作為局部修改輸入軌跡的替代方式,在計(jì)算全部因素時(shí),使用這個(gè)局部修改作為一個(gè)因素,以考慮整體軌跡的全局修改。為此目的,一些實(shí)施方式基于各種各樣可能的本地修改形式的組合,修改軌跡。
[0012]例如,一個(gè)實(shí)施方式針對NC處理通過表示空間坐標(biāo)的點(diǎn)形成的輸入軌跡,以確定點(diǎn)的多個(gè)序列。各序列是通過從輸入軌跡中去除獨(dú)特點(diǎn)組合形成的并且可表示整個(gè)輸入軌跡的全局修改。對于各序列,實(shí)施方式確定輸入軌跡中各點(diǎn)的本地成本。例如,序列的點(diǎn)的本地成本基于該點(diǎn)相對于該序列中至少一些點(diǎn)的空間布置。
[0013]在一些實(shí)施方式中,確定針對序列的點(diǎn)的本地成本,即使從該序列去除該點(diǎn)。以此方式,實(shí)施方式可考慮更多可能的本地修改因素。實(shí)施方式通過針對各序列確定輸入軌跡的點(diǎn)的對應(yīng)本地成本的總和來比較各種序列,并且選擇具有本地成本總和的最佳值的最佳序列。例如,最佳值是本地成本總和的最小值或最大值。通過確定本地成本的總和,實(shí)施方式將點(diǎn)的本地成本視為全部因素中的一個(gè)因素,這些因素允許對基于最佳序列生成軌跡進(jìn)行全局決策。
[0014]因此,一個(gè)實(shí)施方式公開了一種針對數(shù)字控制(NC)處理基于由表示空間坐標(biāo)的點(diǎn)形成的輸入軌跡生成軌跡的方法。該方法包括:確定點(diǎn)的多個(gè)序列,其中,通過從所述輸入軌跡中去除獨(dú)特點(diǎn)組合來形成各序列;針對各序列,確定所述輸入軌跡中各點(diǎn)的本地成本,其中,序列的點(diǎn)的本地成本基于所述點(diǎn)相對于所述序列中的至少一些點(diǎn)的空間布置;針對各序列,確定所述輸入軌跡中各點(diǎn)的對應(yīng)本地成本的總和;基于具有本地成本總和的最佳值的最佳序列,確定所述軌跡,其中,所述最佳值是所述本地成本總和的最小值或最大值。所述方法的步驟由處理器執(zhí)行。
[0015]另一個(gè)實(shí)施方式公開了一種針對數(shù)字控制NC處理基于由表示空間坐標(biāo)的點(diǎn)形成的輸入軌跡生成軌跡的系統(tǒng)。所述系統(tǒng)包括處理器,所述處理器被構(gòu)造為用于:確定點(diǎn)的多個(gè)序列,其中,通過從所述輸入軌跡中去除獨(dú)特點(diǎn)組合來形成各序列,其中,所述去除包括將所述獨(dú)特點(diǎn)組合標(biāo)記為去除點(diǎn)并且將所述序列中的保留的點(diǎn)標(biāo)記為保留的點(diǎn)、拐角點(diǎn)、噪聲點(diǎn)或冗余點(diǎn)中的一個(gè)或組合;針對各序列,確定所述輸入軌跡中各點(diǎn)的本地成本,其中,針對序列的點(diǎn)的本地成本是基于所述點(diǎn)相對于所述序列中的至少一些點(diǎn)的空間布置;針對各序列,確定所述輸入軌跡中各點(diǎn)的對應(yīng)本地成本的總和;基于具有本地成本總和的最佳值的最佳序列,確定所述軌跡;使用所述標(biāo)記,將樣條曲線擬合到所述序列的保留的點(diǎn)。
【附圖說明】
[0016]圖1是采用本發(fā)明的一些實(shí)施方式的NC機(jī)器的流程圖。
[0017]圖2A是本發(fā)明的一些實(shí)施方式所使用的加工工具的軌跡的示意圖。
[0018]圖2B是本發(fā)明的一些實(shí)施方式所使用的工具的線性軌跡的示意圖。
[0019]圖2C是本發(fā)明的一些實(shí)施方式所使用的工具的曲線軌跡的示意圖。
[0020]圖3是根據(jù)本發(fā)明的一些實(shí)施方式的用于確定軌跡的方法的框圖。
[0021]圖4A是根據(jù)本發(fā)明的一些實(shí)施方式通過從輸入序列中去除點(diǎn)的不同組合來確定序列的示例。
[0022]圖4B是根據(jù)本發(fā)明的一些實(shí)施方式通過從輸入序列中去除點(diǎn)的不同組合來確定序列的示例。
[0023]圖4C是根據(jù)本發(fā)明的一些實(shí)施方式通過從輸入序列中去除點(diǎn)的不同組合來確定序列的示例。
[0024]圖4D是根據(jù)本發(fā)明的一些實(shí)施方式通過從輸入序列中去除點(diǎn)的不同組合來確定序列的示例。
[0025]圖5是根據(jù)本發(fā)明的一些實(shí)施方式的通過在一些點(diǎn)之間擬合樣條曲線來進(jìn)一步修改最佳序列的本發(fā)明的一個(gè)實(shí)施方式的示意圖。
[0026]圖6是根據(jù)一個(gè)實(shí)施方式的用于擬合樣條曲線的方法的框圖。
[0027]圖7是根據(jù)另一個(gè)實(shí)施方式的用于擬合樣條曲線的方法的框圖。
[0028]圖8A是用于確定本發(fā)明的一些實(shí)施方式所使用的距離的方法的示意圖。
[0029]圖8B是根據(jù)一些實(shí)施方式的原理確定的軌跡的示例。
[0030]圖9是根據(jù)本發(fā)明的一個(gè)實(shí)施方式的使用動(dòng)態(tài)規(guī)劃(DP)確定最佳序列的示例。
[0031]圖1OA是根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示出標(biāo)記和成本分配的段。
[0032]圖1OB是根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示出標(biāo)記和成本分配的段。
[0033]圖1OC是根據(jù)本發(fā)明的一個(gè)實(shí)施方式的示出標(biāo)記和成本分配的段。
[0034]圖11是根據(jù)一個(gè)實(shí)施方式分析點(diǎn)的序列的示例。
【具體實(shí)施方式】
[0035]系統(tǒng)和方法概況
[0036]圖1示出數(shù)字控制(NC)處理(S卩,NC加工系統(tǒng)100)和基于通過表示用于NC處理的空間坐標(biāo)的點(diǎn)所形成的輸入軌跡生成軌跡的系統(tǒng)150的示例。輸入軌跡可被直接提供到系統(tǒng)150或由G代碼106指定。系統(tǒng)150確定軌跡并且將軌跡輸出到系統(tǒng)100。例如,系統(tǒng)150可修改G代碼106或機(jī)器指令110。在一些實(shí)施方式中,NC加工系統(tǒng)100是NC銑削(milling)系統(tǒng)。
[0037]在NC加工系統(tǒng)100中,計(jì)算機(jī)輔助設(shè)計(jì)(CAD)模型102被輸入到計(jì)算機(jī)輔助制造(CAM)系統(tǒng)104,CAM系統(tǒng)104生成用于控制NC加工機(jī)器的G代碼106。在NC加工期間,G代碼被輸入到NC加工輸入控制臺(tái)108,NC加工輸入控制臺(tái)108處理各G代碼以生成對應(yīng)的一組NC機(jī)器指令110。NC機(jī)器指令被輸入到NC控制器112,NC控制器112生成一組電機(jī)控制信號(hào)114,以將工具116相對于工件118移動(dòng),以加工工件。
[0038]系統(tǒng)150可用計(jì)算機(jī)輔助制造系統(tǒng)104所生成的G代碼106或NC控制臺(tái)108所生成的NC機(jī)器指令110作為輸入。通過生成軌跡的計(jì)算機(jī)處理器152讀取系統(tǒng)150的輸入。
[0039]在一些實(shí)施方式中,系統(tǒng)150在NC加工期間實(shí)時(shí)生成軌跡。在替代實(shí)施方式中,系統(tǒng)150仿真工件