由于生產規(guī)模、產品類型和管理制度等的差異,不同的企業(yè)對PDM和CAD等企業(yè)信息化軟件的具體需求千差萬別,這對PDM和CAD軟件具體實施時客戶化定制技術要求較高。Teamcenter Engineering和NX這兩款西門子公司推出的PDM和CAD軟件,提供了開放的定制接口和二次開發(fā)技術,為系統(tǒng)實施人員進行客戶化制提供了方便,提高了系統(tǒng)實施效率,較好地滿足了不同的企業(yè)信息化的個性化需求。
1 客戶化定制相關技術
1.1 Teamcenter中業(yè)務對象(Business Objiect)和業(yè)務建模器集成開發(fā)環(huán)境(Business Modeler IDE)
產品和構成產品的每個組成部分都可以作為Teameenter管理的對象,稱為業(yè)務對象(Business Object),Teamcenter用數(shù)據(jù)模型(data model)來組織存儲業(yè)務對象,業(yè)務對象在Teamcenter Engineering中稱為類型(type)。零組件業(yè)務對象(Item)是Teameenter中進行數(shù)據(jù)建模的基礎業(yè)務對象,它用于標識產品元素(如組件、裝配、底層業(yè)務對象)或采購規(guī)格、測試過程、標準件、車間加工等信息。零組件業(yè)務對象基本結構包括Item、ItemMaster(Form)、ItemRevision和ItemRevision Master(Form)四部分,其中Item收集零組件業(yè)務對象各個版本都使用的全局數(shù)據(jù)、ItemMaster(Form)是用于擴展存儲用戶零組件業(yè)務對象屬性數(shù)據(jù)的表單,ItemRevision收集零組件業(yè)務對象某一版本使用的數(shù)據(jù),ItemRevision Master(Form)是用于擴展存儲用戶零組件業(yè)務對象某一版本屬性數(shù)據(jù)的表單。
Business Modeler IDE是Teamcenter 2007的一個新增功能部件,是Teamcenter實施過程中客戶化定制數(shù)據(jù)建模的工具,使用Business Modeler IDE可以創(chuàng)建業(yè)務對象、類、屬性、值列表(LOVs)、選項、常數(shù)和規(guī)則等。在創(chuàng)建了新的數(shù)據(jù)模型對象之后,可以在Business Modeler IDE中將新建的數(shù)據(jù)模型對象部署到產品服務器。
1.2 Teamcenter屬性映射機制與NX Manager
Teamcenter提供了與NX系統(tǒng)以及其他各類文檔的屬性映射機制,很好的解決了傳統(tǒng)PDM系統(tǒng)難以解決的結構化數(shù)據(jù)來源問題,實現(xiàn)了與軟件的深度集成利用。通過屬性映射技術,可以方便地進行Teamcenter與NX及其他CAD系統(tǒng)之間屬性雙向映射,實現(xiàn)在Teamcenter和CAD系統(tǒng)之間數(shù)據(jù)集成、相互訪問。
NX Manager是Teamenter Engineering的子集,提供針對NX數(shù)據(jù)的管理方案,改進NX內部和外部數(shù)據(jù)的溝通能力,是Teamenter Engineering與NX的集成應用工具。通過NX Manager可以實現(xiàn)Teamcenter/NX數(shù)據(jù)的無縫集成,并對數(shù)據(jù)進行有效的組織和管理。
在Teamcenter服務器端執(zhí)行export_attr_mappings.exe和import_attr mappings.exe命令行程序可以實現(xiàn)Teamcenter與NX Manager的屬性映射。
1.3 NX Open API
NX 0pen API是NX提供的二次開發(fā)工具之一,通過調用NX應用編程界面(API)函數(shù)進行NX的客戶化定制軟件開發(fā),是一個允許程序訪問和影響NX對象模型的一系列程序集。它提供.NET API,支持所有.NET語言,包擴Visual Basic.NET和C#,與新的Visual Studio.NET開發(fā)環(huán)境完全集成。用戶可以在Visual Studio.Net IDE中使用.NET編程語言,調用NX Open API進行編程,結合NX的界面開發(fā)工具UIStyle和NX Menuscript等,在NX中定制滿足企業(yè)個性需求的功能,如:配置設計環(huán)境、建立NX模型、查詢模型對象、建立并遍歷裝配體、創(chuàng)建工程圖等。
2 Teamcenter與NX集成客戶化定制技術思路
綜合運用Teamcenter和NX集成各客戶化定制技術,完成企業(yè)系統(tǒng)實施個性化需求(如圖紙標題欄、明細表、NX Open API編程等),可采用以下技術思路:
1)在業(yè)務建模器IDE中創(chuàng)建滿足客戶化需求的零組件業(yè)務對象Item,設置Item各屬性項;
2)將定制的零組件業(yè)務對象部署到Teamcenter服務器中;
3)在Teamcenter服務器中創(chuàng)建相應零組件業(yè)務對象類型的業(yè)務對象,并賦以屬性值;
4)通過Teameenter的屬性映射機制將新類型對象映射到NX Manager中;
5)使用NX Open API等二次開發(fā)技術,客戶化定制NX功能模塊,包括定制用戶界面、通過交互方式存取Nx Manager中映射的TeamCenter對象屬性值等編程工作,以實現(xiàn)Teamcenter與NX客戶化定制數(shù)據(jù)的互訪。
3 基于Teamcenter的NX工程圖紙標題欄定制實例的實現(xiàn)
3.1 實例描述
工程圖紙標題欄是工程師工作中最常用到的一種具有企業(yè)化特性的工具,主要用于標注所設計圖紙的名稱、圖號、繪圖的比例以及設計者的姓名等內容。標題欄在圖框的位置、式樣和尺寸都有一定的標準,每個企業(yè)都有自己統(tǒng)一的標題欄格式和填寫要求。
本實例可以根據(jù)企業(yè)需求定制表格、由工程師通過NX系統(tǒng)交互界面設定標題欄填寫項,并從Teamcenter中獲取填寫值,自動生成圖紙標題欄。
3.2 實現(xiàn)關鍵步驟
步驟1:在業(yè)務建模器IDE中創(chuàng)建“新建業(yè)務建模器IDE模板項目”,如:Draw Project。在Draw_Project的業(yè)務對象視圖中新建業(yè)務對象“TideBlockItem”,填寫表單TitleBlockItem Master屬性:CompanyName、Materials、SheetSize、SheetScale、SheetPage、FirstIssued、DrawnBy、CheckedBy、ApprovedBy等,新建業(yè)務對象TitleBlockItem Revision及Title Blockhem Revision Master。保存項目,并部署到Teamcenter服務器。
步驟2:在TeamCenter服務器中創(chuàng)建TitleBlockItem類型的零組件業(yè)務對象,并給各屬性項賦值。
步驟3:通過Teamcenter的屬性映射機制將新類型對象映射到NX Manager中。
?、僭趖c—MYDB—command_prompt命令行窗口中運行命令行程序:export attr mappings.exe-file=d:TitleBlock_mapping.txt-u=infodbap=infodba,將Teamcenter中缺省的映射關系導出到TitleBloek_mapping.txt映射文本文件;
②NX Part在Teamcenter對應的數(shù)據(jù)集類型是UGMASTER,要實現(xiàn)Item與NX Part的屬性同步,需要在映射文件中的Title-BtockItem Master數(shù)據(jù)集下加入屬性映射代碼。編輯TitleBlock_mapping.txt文件,添加的屬性映射代碼片段如下:
{Dataset type=“UGMASTER”
#(hard-wired)DB_PART_NAME:“Part Name”
#(hard-wired)DB_PART_DESC:“Part Description”
{Item type=“TifleBlockhem”
CompanyName:Item.GRMOMAN_master_form,TitleBloekItem Master).CompanyName/master=both
Materials:Item.GRM(IMAN_master_form,TitleBlockhem Master).Materials/master=both
……}}
其中,/master后的參數(shù)可以是iman、cad或both,表示相應的屬性值只能在Teamcenter中修改,NX Manager中只讀、Teamcenter中只讀,NX Manager中可修改或在Teamcenter和NX Manager都可修改、訪問。
?、墼趖c_MYDB_command_prompt命令行窗口中運行命令行程序:import_attr_mappings.exe-file=d:TitleBlock_mapping.txt-u=infodba-P=infodba,將添加新的映射關系后的TitleBlock_mapping.txt映射文本文件,再導入到Teamcenter中,完成屬性映射;
屬性映射完成后,在NX Manager中打開TitleBlockItem下面的UGMaster,在NX Manager的文件屬性列表里,將會看到CompanyName、Materials等屬性已經映射了,在Teamcenter的Form里,修改相應的值,NX Manager中屬性值會跟著改變,反之亦然。
步驟4:客戶化定制NX工程圖紙標題欄自動生成程序。
工程圖紙標題欄自動生成程序包括定制客戶化界面、定制自動插入標題欄和智能填寫標題欄三部分功能模塊:
?、俣ㄖ瓶蛻艋缑?/P>
該模塊主要包括標題欄定制菜單、工具欄及標題欄顯示項對話框??赏ㄟ^NX二次開發(fā)工具UIStyle和NX Menuscript編程實現(xiàn),界面效果如圖1所示。

圖1 工程圖紙標題欄定制界面
?、谧詣硬迦霕祟}欄
在Drafting應用環(huán)境下.插入一個Tabular Note,按照企業(yè)要求規(guī)劃圖紙標題欄格式,將主要涉及單位名稱、零件名稱、圖號、比例、圖幅大小、署名等內容插入相應的位置,并進行相關設置,使其滿足企業(yè)需求,并保存為模板格式,方便以后的調用,標題欄模板樣例如圖2所示。

圖2 定制的標題欄
編寫UF函數(shù),將定制好的標題欄以調用模板的形式,插入到當前的圖紙。實現(xiàn)標題欄的插入主要用到UF_DRAW_ask drawing_info()和UF TABNOT_create_from template()兩個函數(shù)。
?、圩詣犹顚憳祟}欄內容
該模塊通過定制的對話框獲取用戶標題欄需要填寫的屬性項,訪問Teamcenter映射到NX中的屬性值,填寫到標題欄相應的單元格內,保證跟Teamcenter中TitleBlockhem Master Form保持實時更新,實現(xiàn)Teamcenter中智能管理標題欄的功能。
實現(xiàn)該標題欄填寫功能主要用到UF_PART_ask_display_part()、UF_OBJ_cycle_objs_in_part()、
UF_STYLER_ask_value()、UF_TABNOT_ask_nth_row()、UF_TABNOT_ask_nth_column()、UF_TABNOT_ask_cell_at_row_col()、UF_TABNOT_set_cell text()等函數(shù)。
4 結束語
作為企業(yè)信息化的一個重要環(huán)節(jié),PDM是企業(yè)進行管理創(chuàng)新的有效工具,采取與實際應用相結合的原則,使用集成客戶化定制技術高效實施PDM產品,在知識經濟環(huán)境下對于提高企業(yè)的競爭力,迎接市場的全球性的挑戰(zhàn)有積極的作用。
如有任何看法或投稿請聯(lián)系 MSN:hjf_2009@hotmail.com;QQ:761006944
相關文章
- 2021-09-08BIM技術叢書Revit軟件應用系列Autodesk Revit族詳解 [
- 2021-09-08全國專業(yè)技術人員計算機應用能力考試用書 AutoCAD2004
- 2021-09-08EXCEL在工作中的應用 制表、數(shù)據(jù)處理及宏應用PDF下載
- 2021-08-30從零開始AutoCAD 2014中文版機械制圖基礎培訓教程 [李
- 2021-08-30從零開始AutoCAD 2014中文版建筑制圖基礎培訓教程 [朱
- 2021-08-30電氣CAD實例教程AutoCAD 2010中文版 [左昉 等編著] 20
- 2021-08-30電影風暴2:Maya影像實拍與三維合成攻略PDF下載
- 2021-08-30高等院校藝術設計案例教程中文版AutoCAD 建筑設計案例
- 2021-08-29環(huán)境藝術制圖AutoCAD [徐幼光 編著] 2013年PDF下載
- 2021-08-29機械AutoCAD 項目教程 第3版 [繆希偉 主編] 2012年PDF