本發(fā)明涉及模具設計開發(fā)技術領域,特別是涉及一種基于UG NX系統(tǒng)的后處理程序自動分割方法及系統(tǒng)。
背景技術:
UG NX是Siemens PLM Software公司出品的一個產(chǎn)品工程解決方案,它為用戶的產(chǎn)品設計及加工過程提供了數(shù)字化造型和驗證手段,針對用戶的虛擬產(chǎn)品設計和工藝設計的需求,提供了經(jīng)過實踐驗證的解決方案。UG NX系統(tǒng)是一個交互式計算機輔助設計(Computer Aided Design,CAD)/計算機輔助制造(Computer-Aided Manufacturing,CAM)系統(tǒng),它功能強大,可以輕松實現(xiàn)各種復雜實體及造型的建構。它在誕生之初主要基于工作站,但隨著PC硬件的發(fā)展和個人用戶的迅速增長,在PC上的應用取得了迅猛的增長,已經(jīng)成為模具行業(yè)三維設計的一個主流應用。
UG NX系統(tǒng)處理后處理程序組時,是以后處理程序組為單位輸出為一個后處理程序文件,當需要對后處理程序組中的每段程序進行單個輸出處理時,則需要進行手工復制粘貼操作,才能得到多個后處理子程序文件,這樣會嚴重影響UG NX系統(tǒng)的編程效率,且不利于程序員對后處理程序進行檢查核對。另外,手工進行復制粘貼操作容易出錯,從而影響編程質(zhì)量。
技術實現(xiàn)要素:
鑒于以上所述現(xiàn)有技術的缺點,本發(fā)明的目的在于提供一種基于UG系統(tǒng)的加工后處理程序自動分割方法及系統(tǒng),用以解決手工進行后處理程序分割所導致的編程效率較低及編程質(zhì)量較差的問題。
為實現(xiàn)上述目的及其他相關目的,本發(fā)明實施例提供一種基于UG NX系統(tǒng)的后處理程序自動分割方法,預設加工后處理程序組并在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符,將添加完成后的后處理程序組輸出到一個后處理程序文件;該方法還包括:
接收到程序分割指令時,確定所述后處理程序文件中的后處理程序組中程序分隔符的位置;
根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件。
優(yōu)選地,所述根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件,包括:
若所述程序分隔符位于每個子程序的起始位置,則提取所述后處理程序組中每兩個相鄰程序分隔符的位置之間的子程序,并提取最后一個程序分隔符的位置之后的子程序;將每個子程序輸出到相應的后處理子程序文件;
若所述程序分隔符位于每個子程序的結束位置,則提取所述后處理程序組中第一個程序分隔符的位置之前的子程序,并提取后面每兩個相鄰程序分隔符的位置之間的子程序;將每個子程序輸出到相應的后處理子程序文件。
優(yōu)選地,所述在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符之后,所述方法還包括:
在所述后處理程序組中添加每個子程序的名稱信息,將添加完成后的后處理程序組輸出到一個后處理程序文件;
所述根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件之后,所述方法還包括:
在所述后處理程序組中提取每個子程序的名稱信息;
根據(jù)每個子程序的名稱信息為相應的后處理子程序文件命名。
優(yōu)選地,所述程序分隔符為C語言程序中的程序起始符號或程序結束符號。
根據(jù)上述方法,本發(fā)明實施例提供了一種基于UG NX系統(tǒng)的后處理程序的自動分割系統(tǒng),該系統(tǒng)包括:添加模塊、確定模塊、分割輸出模塊;其中,
所述添加模塊,用于預設加工后處理程序組并在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符,將添加完成后的后處理程序組輸出到一個后處理程序文件;
所述確定模塊,用于接收到程序分割指令時,確定所述后處理程序文件中的后處理程序組中程序分隔符的位置;
所述分割輸出模塊,用于根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件;
優(yōu)選地,所述分割輸出模塊具體用于:
若所述程序分隔符位于每個子程序的起始位置,則提取所述后處理程序組中每兩個相鄰程序分隔符的位置之間的子程序,并提取最后一個程序分隔符的位置之后的子程序;將每個子程序輸出到相應的后處理子程序文件;
若所述程序分隔符位于每個子程序的結束位置,則提取所述后處理程序組中第一個程序分隔符的位置之前的子程序,并提取后面每兩個相鄰程序分隔符的位置之間的子程序;將每個子程序輸出到相應的后處理子程序文件。
優(yōu)選地,所述添加模塊,還用于在所述后處理程序組中添加每個子程序的名稱信息,將添加完成后的后處理程序組輸出到一個后處理程序文件;
所述系統(tǒng)還包括:
文件命名模塊,用于在所述后處理程序組中提取每個子程序的名稱信息;
根據(jù)每個子程序的名稱信息為相應的后處理子程序文件命名。
優(yōu)選地,所述程序分隔符為C語言程序中的程序起始符號或程序結束符號。
綜上所述,本發(fā)明提供的基于UG NX系統(tǒng)的加工后處理程序自動分割方法及系統(tǒng),包括:預設加工后處理程序組并在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符,將添加完成后的程序組輸出到一個后處理程序文件;接收到程序分割指令時,確定所述后處理程序文件中的后處理程序組中程序分隔符的位置;根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件,這樣能夠自動實現(xiàn)后處理程序組中的每個子程序的單獨輸出,且整個程序分割過程具有快速、簡單、準確、方便的特點,從而提高了UG NX系統(tǒng)的編程效率及編程質(zhì)量,且有利于程序員對后處理程序進行檢查核對。
附圖說明
圖1顯示為本發(fā)明的基于UG系統(tǒng)的后處理程序自動分割方法的流程示意圖;
圖2顯示為本發(fā)明的基于UG系統(tǒng)的后處理程序自動分割系統(tǒng)的組成結構示意圖;
圖3顯示為本發(fā)明的后處理程序組中每個子程序的起始位置添加程序分隔符的示意圖;
圖4顯示為本發(fā)明的后處理程序組中每個子程序的結束位置添加程序分隔符的示意圖;
圖5顯示為本發(fā)明的控制成組輸出的操作界面的示意圖;
圖6顯示為本發(fā)明的控制程序分割的操作界面的示意圖;
圖7顯示為本發(fā)明的后處理子程序文件保存及命名的示意圖。
具體實施方式
以下通過特定的具體實例說明本發(fā)明的實施方式,本領域技術人員可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點與功效。本發(fā)明還可以通過另外不同的具體實施方式加以實施或應用,本說明書中的各項細節(jié)也可以基于不同觀點與應用,在沒有背離本發(fā)明的精神下進行各種修飾或改變。需說明的是,在不沖突的情況下,以下實施例及實施例中的特征可以相互組合。
需要說明的是,以下實施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構想,遂圖式中僅顯示與本發(fā)明中有關的組件而非按照實際實施時的組件數(shù)目、形狀及尺寸繪制,其實際實施時各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復雜。
本發(fā)明實施例中,首先預設加工后處理程序組并在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符,將添加完成后的后處理程序組輸出到一個后處理程序文件;接收到程序分割指令時,確定所述后處理程序文件中的后處理程序組中程序分隔符的位置;根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件。
下面結合附圖及具體實施例對本發(fā)明做進一步詳細的說明。
本發(fā)明實施例提出了一種基于UG系統(tǒng)的加工后處理程序自動分割方法,如圖1所示,該方法包括:
步驟S100:預設加工后處理程序組并在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符,將添加完成后的后處理程序組輸出到一個后處理程序文件。
具體的,由于UG NX系統(tǒng)是基于C語言開發(fā)實現(xiàn)的,因此,所述程序分隔符可以為C語言程序中的程序起始符號或程序結束符號,例如,分隔符“#”、分隔符“end”。
步驟S101:接收到程序分割指令時,確定所述后處理程序文件中的后處理程序組中程序分隔符的位置。
具體的,所述后處理程序組中的程序分隔符位于每個子程序的起始位置或結束位置。
步驟S102:根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件。
具體的,若所述程序分隔符位于每個子程序的起始位置,則提取所述后處理程序組中每兩個相鄰程序分隔符的位置之間的子程序,并提取最后一個程序分隔符的位置之后的子程序;將每個子程序輸出到相應的后處理子程序文件;若所述程序分隔符位于每個子程序的結束位置,則提取所述后處理程序組中第一個程序分隔符的位置之前的子程序,并提取后面每兩個相鄰程序分隔符的位置之間的子程序;將每個子程序輸出到相應的后處理子程序文件。
進一步地,在步驟S100中在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符之后,還包括:
在所述后處理程序組中添加每個子程序的名稱信息,將添加完成后的后處理程序組輸出到一個后處理程序文件;
相應的,在執(zhí)行步驟S102之后,所述方法還包括:
在所述后處理程序組中提取每個子程序的名稱信息,并根據(jù)每個子程序的名稱信息為相應的后處理子程序文件命名。
為實現(xiàn)上述方法,本發(fā)明實施例提供了一種基于UG系統(tǒng)的加工后處理程序自動分割系統(tǒng),由于該系統(tǒng)解決問題的原理與方法相似,因此,系統(tǒng)的實施過程及實施原理均可以參見前述方法的實施過程及實施原理描述,重復之處不再贅述。
本發(fā)明實施例提出了一種基于UG系統(tǒng)的加工后處理程序自動分割系統(tǒng),如圖2所示,該系統(tǒng)包括:添加模塊200、確定模塊201、分割輸出模塊202;其中,
所述添加模塊200,用于預設加工后處理程序組并在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符,將添加完成后的后處理程序組輸出到一個后處理程序文件;
所述確定模塊201,用于接收到程序分割指令時,確定所述后處理程序文件中的后處理程序組中程序分隔符的位置;
所述分割輸出模塊202,用于根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件;
具體實施中,所述分割輸出模塊202具體用于:
若所述程序分隔符位于每個子程序的起始位置,則提取所述后處理程序組中每兩個相鄰程序分隔符的位置之間的子程序,并提取最后一個程序分隔符的位置之后的子程序;將每個子程序輸出到相應的后處理子程序文件;
若所述程序分隔符位于每個子程序的結束位置,則提取所述后處理程序組中第一個程序分隔符的位置之前的子程序,并提取后面每兩個相鄰程序分隔符的位置之間的子程序;將每個子程序輸出到相應的后處理子程序文件。
具體實施中,所述添加模塊200,還用于在所述后處理程序組中添加每個子程序的名稱信息,將添加完成后的后處理程序組輸出到一個后處理程序文件;
所述系統(tǒng)還包括:
文件命名模塊203,用于在所述后處理程序組中提取每個子程序的名稱信息;并根據(jù)每個子程序的名稱信息為相應的后處理子程序文件命名。
具體實施中,所述程序分隔符為C語言程序中的程序起始符號或程序結束符號。
以上功能模塊的劃分方式僅為本發(fā)明實施例給出的一種優(yōu)選實現(xiàn)方式,功能模塊的劃分方式不構成對本發(fā)明的限制。為了描述的方便,以上所述系統(tǒng)的各部分以功能分為各種模塊分別描述。上述功能模塊可以是軟件功能模塊,也可以是硬件設備。該系統(tǒng)可以是分布式系統(tǒng)或集中式系統(tǒng),若為分布式系統(tǒng),則上述功能模塊可分別由硬件設備實現(xiàn),各硬件設備之間通過通信網(wǎng)絡交互;若是集中式系統(tǒng),則上述各功能模塊可由軟件實現(xiàn),集成在一個硬件設備中。
在實際應用中,當所述添加模塊200、確定模塊201、分割輸出模塊202、文件命名模塊203集成于一個硬件設備中時,所述添加模塊200、確定模塊201、分割輸出模塊202、文件命名模塊203可由位于該硬件設備中的中央處理器(CPU)、微處理器(MPU)、數(shù)字信號處理器(DSP)、現(xiàn)場可編程門陣列(FPGA)、或存儲器實現(xiàn)。
為了更清楚地對本發(fā)明實施例進行說明,下面結合具體實施例對該基于UG NX系統(tǒng)的加工后處理程序自動分割流程進行詳細描述。
步驟S1:添加模塊預設加工后處理程序組,在所述后處理程序組中的每個子程序的起始位置或結束位置添加程序分隔符并在所述后處理程序組中添加每個子程序的名稱信息,將添加完成后的后處理程序組輸出到一個后處理程序文件。
具體的,在所述后處理程序組中每個子程序的起始位置添加程序分隔符的示意圖如圖3所示,從所述后處理程序組的起始位置到結束位置,分別在每個子程序的起始位置添加有第一程序分隔符G1、第一程序分隔符G2,…,第N程序分隔符GN,其中,N為正整數(shù),第N程序分隔符GN為最后一個程序分隔符;在所述后處理程序組中每個子程序的結束位置添加程序分隔符的示意圖如圖4所示,從所述后處理程序組的起始位置到結束位置,分別在每個子程序的結束位置添加有第一程序分隔符G1、第一程序分隔符G2,…,第N程序分隔符GN;其中,N為正整數(shù),第N程序分隔符GN為最后一個程序分隔符。
具體的,可以在所述后處理程序組中的每個子程序中添加相應的名稱信息,例如,在某個子程序中添加:name:process。
具體的,控制成組輸出的操作界面如圖5所示,用戶只需要點擊后處理程序組的右鍵菜單,從右鍵菜單中選擇成組輸出程序選項,此時觸發(fā)成組輸出操作,以該添加完成后的后處理程序組為單位輸出為一個后處理程序文件。
步驟S2:確定模塊接收到程序分割指令時,確定所述后處理程序文件中的后處理程序組中程序分隔符的位置。
具體的,控制程序分割的操作界面如圖6所示,用戶只需要點擊所述后處理程序文件的右鍵菜單,從右鍵菜單中選擇程序分割選項,此時觸發(fā)程序分割操作,由系統(tǒng)發(fā)出程序分割指令,確定模塊接收到程序分割指令時,首先需要確定所述后處理程序文件中的后處理程序組中程序分隔符的位置。
步驟S3:分割輸出模塊根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件。
具體的,參見圖3,當所述后處理程序組中程序分隔符位于每個子程序的起始位置時,在輸出后處理子程序文件的過程中,首先提取所述后處理程序組中每兩個相鄰程序分隔符的位置之間的子程序,并提取最后一個程序分隔符GN的位置之后的子程序;然后將每個子程序輸出到相應的后處理子程序文件。
參見圖4,當所述后處理程序組中程序分隔符位于每個子程序的結束位置時,在輸出后處理子程序文件的過程中,首先提取所述后處理程序組中第一個程序分隔符G1的位置之前的子程序,并提取后面每兩個相鄰程序分隔符的位置之間的子程序;然后將每個子程序輸出到相應的后處理子程序文件。
具體的,可以將所述后處理子程序文件保存在所述后處理程序文件的目錄下,以便管理及操作。
步驟S4:在所述后處理程序組中提取每個子程序的名稱信息;并根據(jù)每個子程序的名稱信息為相應的后處理子程序文件命名。
具體的,將后處理子程序文件保存在后處理程序文件的目錄下,并根據(jù)每個子程序的名稱信息為相應的后處理子程序文件命名的示意圖如圖7所示,Process1.exe、Process2.exe、Process3.exe、Process4.exe及Process5.exe都為后處理子程序文件,每個后處理子程序文件中存儲相應的子程序。
需要說明的是:圖3、圖4、圖5、圖6及圖7僅為本發(fā)明的示例,并不構成對本發(fā)明的限制。
綜上所述,本發(fā)明實施例中預先在后處理程序組中每個子程序的起始位置或結束位置添加程序分隔符,將添加完成后的后處理程序組輸出到一個后處理程序文件;在需要對后處理程序組中的每個子程序進行單獨輸出處理時,首先確定所述后處理程序文件中的后處理程序組中程序分隔符的位置,然后根據(jù)所述程序分隔符的位置提取所述后處理程序組中的每個子程序,并將每個子程序輸出到相應的后處理子程序文件,整個程序分割過程具有快速、簡單、準確、方便的特點,能夠提高UG NX系統(tǒng)的編程效率及編程質(zhì)量,且有利于程序員對后處理程序進行檢查核對。
上述實施例僅例示性說明本發(fā)明的原理及其功效,而非用于限制本發(fā)明。任何熟悉此技術的人士皆可在不違背本發(fā)明的精神及范疇下,對上述實施例進行修飾或改變。因此,舉凡所屬技術領域中具有通常知識者在未脫離本發(fā)明所揭示的精神與技術思想下所完成的一切等效修飾或改變,仍應由本發(fā)明的權利要求所涵蓋。