本申請要求享有2014年10月14日提交的美國臨時專利申請62/063,712的提交日的權(quán)益,其由此通過引用被合并。
技術(shù)領(lǐng)域:
本公開一般針對計算機輔助設(shè)計、可視化和制造系統(tǒng)、產(chǎn)品生命周期管理(“PLM”)系統(tǒng)和管理針對產(chǎn)品和其它項的數(shù)據(jù)的類似的系統(tǒng)(集體地,“產(chǎn)品數(shù)據(jù)管理”系統(tǒng)或PDM系統(tǒng))。
背景技術(shù):
:PDM系統(tǒng)管理PLM和其它數(shù)據(jù)。改進的系統(tǒng)是合期望的。技術(shù)實現(xiàn)要素:各種所公開的實施例包括用于端口處理器開發(fā)的方法以及對應(yīng)的系統(tǒng)和計算機可讀介質(zhì)。一種方法包括生成具有多個層級的機器工具后處理器,所述多個層級包括庫層級、控制器層級和至少一個其它層級。所述方法包括在對應(yīng)于所述機器工具后處理器的動態(tài)用戶接口中與用戶交互。所述方法包括存儲所述機器工具后處理器。前文已經(jīng)相當(dāng)寬泛地概述了本公開的特征和技術(shù)優(yōu)點,使得本領(lǐng)域技術(shù)人員可以更好地理解隨后的詳細描述。后文將描述形成權(quán)利要求的主題的本公開的附加特征和優(yōu)點。本領(lǐng)域技術(shù)人員將領(lǐng)會到,他們可以容易地使用所公開的概念和具體實施例作為用于修改或設(shè)計用于實施本公開的相同目的的其它結(jié)構(gòu)的基礎(chǔ)。本領(lǐng)域技術(shù)人員還將認識到,這樣的等同構(gòu)造不脫離于以其最寬泛形式的本公開的精神和范圍。在著手進行以下的具體實施方式之前,闡述遍及本專利文獻所使用的某些詞語或短語的定義可能是有利的:術(shù)語“包含”和“包括”,以及其派生詞,意味著包括而沒有限制;術(shù)語“或者”是包括性的,意味著和/或;短語“與……相關(guān)聯(lián)”和“與其相關(guān)聯(lián)”,以及其派生詞,可以意味著包括、被包括在……內(nèi)、與……互連、包含、被包含在……內(nèi)、連接到或與……連接、耦合到或與……耦合、可與……通信、與……協(xié)作、交錯、并置、接近于、結(jié)合到或與……結(jié)合、具有、具有……的性質(zhì)等;并且術(shù)語“控制器”意味著控制至少一個操作的任何設(shè)備、系統(tǒng)或其部分,無論這樣的設(shè)備以硬件、固件、軟件還是硬件、固件、軟件中的至少兩個的某種組合來實現(xiàn)。應(yīng)當(dāng)指出的是,與任何特定控制器相關(guān)聯(lián)的功能可以是集中式的或分布式的,無論在本地還是遠程地。遍及本專利文獻而提供針對某些詞語和短語的定義,并且本領(lǐng)域普通技術(shù)人員將理解到,這樣的定義在許多實例(如果不是大多數(shù)實例的話)中適用于這樣定義的詞語和短語的在先以及將來使用。雖然一些術(shù)語可能包括多種多樣的實施例,但是隨附權(quán)利要求可以將這些術(shù)語明確地限制到具體實施例。附圖說明為了本公開及其優(yōu)點的更加完整的理解,現(xiàn)在參照結(jié)合隨附各圖理解的以下描述,其中相同的數(shù)字指代相同的對象,并且其中:圖1圖示了其中可以實現(xiàn)實施例的數(shù)據(jù)處理系統(tǒng)的框圖;圖2圖示了依照所公開的實施例的后處理器;圖3圖示了其它后處理器的總體結(jié)構(gòu);圖4圖示了依照所公開的實施例的具有對象、性質(zhì)和值的動態(tài)用戶接口;圖5圖示了如本文所公開的動態(tài)用戶接口的示例,其中添加了新的對象;圖6圖示了依照所公開的實施例的用戶層級定義;以及圖7圖示了依照所公開的實施例的方法。具體實施方式以下討論的圖1至7以及用于描述本專利文獻中的本公開的原理的各種實施例僅作為說明,并且不應(yīng)當(dāng)以任何方式解釋成限制本公開的范圍。本領(lǐng)域技術(shù)人員將理解到,本公開的原理可以實現(xiàn)在任何經(jīng)適當(dāng)布置的設(shè)備中。將參照示例性非限制性實施例來描述本申請的眾多創(chuàng)新教導(dǎo)。典型地,CAM后處理器開發(fā)者從零開始創(chuàng)建新的后處理器。重用來自由其他人開發(fā)的后處理器的現(xiàn)有功能可能是非常困難的。所公開的實施例包括克服該問題的基于庫的模型。所公開的后處理器包括各種層級??梢员Wo這些層級不受讀取和修改,但是較低層級的功能可以被超馳(override)以實現(xiàn)其自己的結(jié)構(gòu)。該層級概念允許交換底層層級并且因而更新和重用現(xiàn)有代碼。另外,為了使后處理器的適配更加容易且更加舒適,所公開的實施例包括動態(tài)用戶接口(UI)和標(biāo)志能力。這允許后處理器開發(fā)者和內(nèi)部軟件開發(fā)使一個層的某個功能對較高層級可訪問和可編輯。通過這樣,軟件開發(fā)使得后處理器開發(fā)者和作者能夠選擇要使用的某些類型的變換,并且原始后處理器開發(fā)者和作者可以允許最終用戶定制輸出NC程序。這使得后處理器開發(fā)者和/或最終用戶能夠以對于其需要而言非常舒適的方式調(diào)節(jié)CAM后處理器。圖1圖示了其中可以實現(xiàn)實施例的數(shù)據(jù)處理系統(tǒng)的框圖,例如作為PDM或CAM系統(tǒng),其特別地通過軟件或以其它方式配置成執(zhí)行如本文所描述的過程,并且特別地作為如本文所描述的多個互連且通信的系統(tǒng)中的每一個。所描繪的數(shù)據(jù)處理系統(tǒng)包括連接到二級高速緩存/橋104的處理器102,所述二級高速緩存/橋104進而連接到本地系統(tǒng)總線106。本地系統(tǒng)總線106可以是例如外圍組件互連(PCI)架構(gòu)總線。在所描繪的示例中同樣連接到本地系統(tǒng)總線的是主存儲器108和圖形適配器110。圖形適配器110可以連接到顯示器111。諸如局域網(wǎng)(LAN)/廣域網(wǎng)/無線(例如WiFi)適配器112之類的其它外設(shè)也可以連接到本地系統(tǒng)總線106。擴展總線接口114將本地系統(tǒng)總線106連接到輸入/輸出(I/O)總線116。I/O總線116連接到鍵盤/鼠標(biāo)適配器118、盤控制器120和I/O適配器122。盤控制器120可以連接到存儲裝置126,所述存儲裝置126可以是任何合適的機器可使用或機器可讀存儲介質(zhì),其包括但不限于非易失性、硬編碼類型介質(zhì)(諸如只讀存儲器(ROM)或可擦除、電可編程只讀存儲器(EEPROM)、磁帶存儲裝置)和用戶可記錄類型介質(zhì)(諸如軟盤、硬盤驅(qū)動器和壓縮盤只讀存儲器(CD-ROM)或數(shù)字多功能盤(DVD))以及其它已知的光學(xué)、電學(xué)或磁性存儲設(shè)備。在所示示例中同樣連接到I/O總線116的是音頻適配器124,揚聲器(未示出)可以連接到所述音頻適配器124以用于播放聲音。鍵盤/鼠標(biāo)適配器118提供用于定點設(shè)備(未示出)的連接,所述定點設(shè)備諸如鼠標(biāo)、跟蹤球、跟蹤指示器、觸摸屏等。本領(lǐng)域普通技術(shù)人員將領(lǐng)會到,圖1中所描繪的硬件可以針對特定實現(xiàn)而變化。例如,諸如光盤驅(qū)動器等之類的其它外圍設(shè)備也可以附加于或替代于所描繪的硬件而使用。所描繪的示例僅出于解釋的目的而提供,并且不意在暗示關(guān)于本公開的架構(gòu)限制。依照本公開的實施例的數(shù)據(jù)處理系統(tǒng)包括采用圖形用戶接口的操作系統(tǒng)。操作系統(tǒng)準(zhǔn)許多個顯示窗口同時呈現(xiàn)在圖形用戶接口中,其中每一個顯示窗口提供去到不同的應(yīng)用或去到相同應(yīng)用的不同實例的接口。圖形用戶接口中的光標(biāo)可以由用戶通過定點設(shè)備來操縱。光標(biāo)的位置可以改變和/或生成諸如點擊鼠標(biāo)按鈕之類的事件以致動期望的響應(yīng)。如果經(jīng)適當(dāng)修改,可以采用各種商業(yè)操作系統(tǒng)中的一個,諸如位于華盛頓州雷德蒙德的微軟公司的產(chǎn)品MicrosoftWindowsTM的版本。依照如所描述的本公開來修改或創(chuàng)建操作系統(tǒng)。LAN/WAN/無線適配器112可以連接到網(wǎng)絡(luò)130(不是數(shù)據(jù)處理系統(tǒng)100的部分),其可以是任何公共或私有的數(shù)據(jù)處理系統(tǒng)網(wǎng)絡(luò)或網(wǎng)絡(luò)的組合,如對本領(lǐng)域技術(shù)人員已知的,包括因特網(wǎng)。數(shù)據(jù)處理系統(tǒng)100可以通過網(wǎng)絡(luò)130與服務(wù)器系統(tǒng)140通信,服務(wù)器系統(tǒng)140也不是數(shù)據(jù)處理系統(tǒng)100的部分,但是可以例如實現(xiàn)為單獨的數(shù)據(jù)處理系統(tǒng)100。圖2圖示了依照所公開的實施例的后處理器200。根據(jù)所公開的實施例,基礎(chǔ)層級是“庫層級”202,其包含比如文件訪問(I/O功能)或數(shù)學(xué)功能(例如變換)那樣的基本功能,并且可以跨每一個單獨的后處理器共享。庫層級202可以被供應(yīng)為受保護的層級以防止其被后處理器開發(fā)者修改,并且可以如所圖示的那樣被鎖220鎖定。在庫層級之上的是控制器層級204,其包含對機器工具控制器(諸如來自西門子的Sinumerik自動化系統(tǒng)、Dr.JohannesHeidenhainGmbH的產(chǎn)品、FANUCAmerica的自動化產(chǎn)品和其它產(chǎn)品)特定的功能。在一些實施例中,在此庫層級202的功能可以被超馳,但是由于該層級可以通過軟件開發(fā)供應(yīng)并且針對用戶和開發(fā)者而被保護,因此這將僅為罕見的情況。該層級包含對于控制器類型而言獨特的具體功能,但是它們對于某種機器類型不是特定的。可選地,這之后是機器層級210,其實現(xiàn)對某個機器特定的功能。這可以例如由高級后處理器開發(fā)者或機器工具制造商來開發(fā),并且被加密以防通過最終用戶讀取。在機器工具構(gòu)建器(MTB)層206中實現(xiàn)機器工具模型的運動學(xué)結(jié)構(gòu)。這可以包含諸如位置、方向和其它軸數(shù)據(jù)(例如限制、動態(tài)性質(zhì)等)以及其它數(shù)據(jù)之類的信息。該層級可以從諸如西門子產(chǎn)品生命周期管理軟件公司(德克薩斯州普萊諾)的NXCAM機器工具構(gòu)建器之類的工具導(dǎo)出??梢钥蛇x地包括原始設(shè)備制造商(OEM)層級208。OEM層級208類似于以下描述的服務(wù)層212,但是在該層中定義所有OEM系列特定代碼和設(shè)置。對于給定機器制造商而言相同的功能可以在此被抽象并且通過溯源(source)該層級而被重用。用于添加客戶特定功能的主層級是服務(wù)層212,其可以由高級后處理器開發(fā)者開發(fā)并且可以被保護不受最終用戶讀取。在各種實施例中,頂層級是可由最終用戶修改的僅有層級,并且被稱為客戶層級214。在該層級中,最終客戶可以根據(jù)他的需要調(diào)節(jié)后處理器。這取決于后處理器的設(shè)置,后處理器的功能在此對用戶是可訪問的。所公開的實施例使得能夠?qū)崿F(xiàn)對于共享知識和努力的內(nèi)置支持。層概念允許現(xiàn)有技術(shù)的重用,其被保護不受想要的和不想要的修改,并且沒有非法拷貝它的可能性,但是如果必要的話則包括超馳實現(xiàn)的選項。這使得現(xiàn)有解決方案能夠與其他合作伙伴共享。圖3圖示了其它后處理器的總體結(jié)構(gòu)。要指出的是,其僅包含作為主后處理器文件的單個層級300。圖3可以與圖2的后處理器200形成對照,圖2圖示了如本文所公開的后處理器的總體結(jié)構(gòu),其可以利用如本文所公開的后配置器技術(shù)來創(chuàng)建。取代于具有所有功能在其中的一個單片式后處理器,所公開的實施例可以將功能拆分到可互換且可保護的不同層中。這為后開發(fā)者給出通過重用來自各種源的層而重用現(xiàn)有技術(shù)的更好方式。如以上所討論的,所公開的實施例可以包含多個層,其中的每一個可以向之前的層級附加功能。在各種實施例中,第一和最后一層固定(lib和客戶),并且在這些層之間可以存在靈活數(shù)目的層。在各種實施例中,層可以包括:客戶層級214這是其中可以在動態(tài)用戶接口中保存用戶在圖形接口中所做的所有設(shè)置的層。服務(wù)層級212這是其中諸如后開發(fā)者或最終客戶之類的服務(wù)人員以腳本語言做出其改變的層。將在此做出深度修改中的大部分。機器層級210(可選)類似于服務(wù)層,但是在該層中定義所有機器系列特定代碼和設(shè)置。對于給定機器系列而言相同的功能可以在此被抽象并且通過溯源該層級而被重用。OEM層級208(可選)類似于服務(wù)層,但是在該層中定義所有OEM系列特定代碼和設(shè)置。對于給定機器制造商而言相同的功能可以在此被抽象并且通過溯源該層級而被重用。MTB層級206在此存儲關(guān)于運動學(xué)結(jié)構(gòu)的信息,以及各種其它CAM和NC相關(guān)設(shè)置??刂破鲗蛹?04(Ctrl)在此存儲所有機器控制器相關(guān)功能。庫層級202(Lib)在此存儲所有基礎(chǔ)技術(shù),其被需要以使層運作、以處置文件并且與CAM軟件和其它外部工具交互。圖4圖示了依照所公開的實施例的具有對象402、性質(zhì)404和值406的動態(tài)用戶接口400。如本文所公開的后處理器可以維護多個對象,在此示出為對象402。每一個對象402可以具有相關(guān)聯(lián)的性質(zhì)404,并且每一個性質(zhì)404可以具有值406。在該示例中,對象CONF_SPF_msg具有設(shè)置成值“OFF”的性質(zhì)“輸出事件消息(Outputeventmessage)”和設(shè)置成值“連同停止(Alongwithstop)”的性質(zhì)“停止注釋位置(Stopcommentposition)”。用于性質(zhì)的值還可以稱為“標(biāo)志”。對于每一層中的每一個性質(zhì)項,后處理器作者可以決定哪一種類型的許可對于查看針對該性質(zhì)的值或者對其做出一些修改是必要的。這允許每一層的開發(fā)者使標(biāo)志可用于下一層的開發(fā)者或甚至最終客戶。例如,后處理器作者可以允許最終用戶修改他們在服務(wù)層級中創(chuàng)建的標(biāo)志的某個子集。基于許可,可以使可用標(biāo)志不可見、只讀或讀取/寫入。如本文所公開的可配置后處理器使得開發(fā)者能夠容易地適配現(xiàn)有后處理器或甚至允許最終用戶修改后處理器的部分,但是僅在由后處理器開發(fā)者允許的定義的范圍中。所公開的實施例可以使用具有自生成用戶接口的自動或半自動方案,其基于原始庫的經(jīng)修改的版本以強調(diào)“現(xiàn)成的”后處理器組件的可重用性和可支持性。動態(tài)地定義后處理器UI是可能的??梢允姑恳粋€對象402、性質(zhì)404及其當(dāng)前值406對UI是可讀或可寫的,或者其被后處理器作者完全禁止。這包括定義在每一層級內(nèi)的對象和性質(zhì),無論其通過軟件開發(fā)還是后處理器開發(fā)來提供。最終用戶和不太高級的后編寫者可以容易地配置所公開的后處理器或后配置器,而同時高級后編寫者具有引入其自己的代碼并且在程序上利用現(xiàn)有對象、性質(zhì)及其訪問標(biāo)志的完全靈活性。以下非限制性代碼示例向用戶接口添加新對象:圖5圖示了如本文所公開的動態(tài)用戶接口500的示例,其中添加新的對象502。稱為“New_Object”的對象502具有稱為“New_Property”的相關(guān)聯(lián)的性質(zhì)504。性質(zhì)504具有相關(guān)聯(lián)的值506。在該示例中,值506作為經(jīng)由下拉選擇呈現(xiàn)的“選項1”或“選項2”的選擇而被呈現(xiàn)。所公開的實施例為開發(fā)者給出定制向其最終客戶呈現(xiàn)的UI的手段。存在可以被預(yù)定義和歸檔的不同對象類型。訪問層級可以為如下:基本許可高級許可完全許可讀取/寫入讀取/寫入讀取/寫入[0-2][0-2][0-2]其中0指示沒有訪問,1指示讀取訪問,并且2指示讀取/寫入/完全訪問。例如:圖6圖示了依照所公開的實施例的用戶層級定義。在該示例中,基本用戶602(諸如最終客戶或CAM用戶)具有基本層級訪問612。在該示例中,該訪問層級與CAM系統(tǒng)一起出現(xiàn),包括公共性質(zhì),不包括工具命令語言(TCL)代碼,并且不能創(chuàng)建后處理器。在該示例中,高級用戶604(諸如后處理器開發(fā)者)具有高級層級訪問614。在該示例中,該訪問層級與附加許可、對公共性質(zhì)的訪問、對受保護性質(zhì)的訪問、沒有外部TCL代碼或配置文件以及創(chuàng)建定制TCL代碼和后處理器的能力一起出現(xiàn)。在該示例中,完全訪問用戶606(諸如OEM或服務(wù)用戶)具有完全層級訪問616。在該示例中,該訪問層級與附加許可、對公共性質(zhì)的訪問、對受保護性質(zhì)的訪問、其自身的TCL編輯器、創(chuàng)建定制TCL代碼和后處理器的能力、加密工具、執(zhí)行純TCL的能力以及添加層或修改溯源次序的能力一起出現(xiàn)。根據(jù)各種實施例,可以在現(xiàn)有庫之上設(shè)計和開發(fā)后配置器庫與CAM系統(tǒng)的整個集成。所公開的實施例可以包括基礎(chǔ)層之上的功能的清晰分離:定制、服務(wù)、機器、OEM、機器工具構(gòu)建器(MTB),如與未結(jié)構(gòu)化的或單片式后處理器相對的。各種實施例包括運動學(xué)和數(shù)字控制的(NC)相關(guān)數(shù)據(jù)從機器工具模型的提取,以及本文所公開的動態(tài)UI。針對對象和性質(zhì)的訪問代碼可以用于三個或更多不同的許可層級。圖7圖示了可以例如由一個或多個數(shù)據(jù)處理系統(tǒng)100(其以下一般被稱為“系統(tǒng)”)執(zhí)行的方法。所述系統(tǒng)可以生成具有多個層級的機器工具后處理器,所述多個層級包括庫層級、控制器層級和至少一個其它層級(705)。所述至少一個其它層級可以包括客戶層級、服務(wù)層級、機器層級、OEM層級和機器工具構(gòu)建器(MTB)層級中的一個或多個。所述多個層級可以包括控制器層級或庫層級中的至少一個。所述多個層級中的每一個可以與由所述層級的性質(zhì)定義的訪問層級相關(guān)聯(lián)。所述系統(tǒng)可以在對應(yīng)于機器工具后處理器的動態(tài)用戶接口中與用戶交互(710)。動態(tài)用戶接口可以基于對應(yīng)的訪問層級而選擇性地顯示所述多個層級??梢詮臋C器工具后處理器動態(tài)地生成所述動態(tài)用戶接口。動態(tài)用戶接口可以包括多個對象,每一個具有相關(guān)聯(lián)的性質(zhì)和值。所述系統(tǒng)可以存儲機器工具后處理器(715)。這可以包括存儲運動學(xué)和NC數(shù)據(jù)。當(dāng)然,本領(lǐng)域技術(shù)人員將認識到,除非由操作的順序具體地指示或要求,否則以上描述的過程中的某些步驟可以被省略、同時或順序地執(zhí)行或以不同的次序執(zhí)行。本領(lǐng)域技術(shù)人員將認識到,為了簡化和清楚,本文未描繪或描述適合于供本公開使用的所有數(shù)據(jù)處理系統(tǒng)的完整結(jié)構(gòu)和操作。而是,僅描繪和描述如對本公開而言獨特的或?qū)τ诒竟_的理解而言必要的數(shù)據(jù)處理系統(tǒng)那么多。數(shù)據(jù)處理系統(tǒng)100的構(gòu)造和操作的其余部分可以遵從本領(lǐng)域中已知的各種當(dāng)前實現(xiàn)和實踐中的任何一個。重要的是要指出,雖然本公開包括在完整功能性系統(tǒng)的上下文中的描述,但是本領(lǐng)域技術(shù)人員將領(lǐng)會到,本公開的機制的至少部分能夠以包含在以各種形式中的任何一個的機器可使用、計算機可使用或計算機可讀介質(zhì)內(nèi)的指令的形式分布,并且本公開與用于實際地實施分布的指令或信號承載介質(zhì)或存儲介質(zhì)的特定類型無關(guān)地同等適用。機器可使用/可讀或計算機可使用/可讀介質(zhì)的示例包括:易失性、硬編碼類型介質(zhì)(諸如只讀存儲器(ROM)或可擦除、電可編程只讀存儲器(EEPROM))以及用戶可記錄類型介質(zhì)(諸如軟盤、硬盤驅(qū)動器和壓縮盤只讀存儲器(CD-ROM)或數(shù)字多功能盤(DVD))。盡管已經(jīng)詳細描述了本公開的示例性實施例,但是本領(lǐng)域技術(shù)人員將理解到,可以在不脫離以其最寬形式的本公開的精神和范圍的情況下做出本文所公開的各種改變、替換、變型和改進。本申請中沒有描述應(yīng)當(dāng)被認為暗示任何特定元件、步驟或功能是必須被包括在權(quán)利要求范圍中的關(guān)鍵元素:專利主題的范圍僅由授權(quán)的權(quán)利要求限定。而且,這些權(quán)利要求中沒有一項旨在援引35USC§112(f),除非確切的詞語“用于……的部件”之后是分詞。當(dāng)前第1頁1 2 3