0 引言
現在許多商業三維建模軟件如CREO,NX,CATIA等都有自己專門的布線模塊,但在實際布線應用中都存在著布線操作復雜、線軸文件管理混亂、無法輸出布線信息文件等諸多問題。針對這一問題國外學者Robinson G將沉浸式虛擬現實技術應用線束設計中Thantulage GI將啟發式搜索算法應用到線纜路徑規劃中,從理論層面解決布線效率低下等問題,也有諸多學者從軟件層面入手,運用各三維造型軟件提供的二次開發接口,開發智能布線系統。
本文運用二次開發技術開發輔助布線系統以彌補現有軟件布線模塊的缺陷。基于CREO平臺,結合Visual Studio提供的MFC界面開發窗口,運用CREO/TOOLKIT二次開發語言,對線纜零件庫的搭建、快速布線、線纜信息文件輸出等關鍵技術進行了研究,拓展了CREO現有的布線功能,提高了布線效率。在文章的最后,開發出了具有上述功能的布線系統,驗證了相關技術的可行性和有效性。
1 系統框架
基于CREO的復雜機電產品輔助布線系統,主要包括了布線數據設計模塊、布線設計模塊、布線信息輸出模塊,如圖1所示。
圖1 布線系統框架
1)布線數據設計模塊
布線數據設計模塊主要負責線纜布線設計前所需要的各種數據準備,包括結構件模型裝配、線纜線夾的創建和管理、布線端口坐標系安裝、用于管理線纜的線束零件的創建管理、線纜規格模型庫和布線空間干涉檢查。這些布線之前的準備為下一步的布線操作準備好數據,并排除可能在布線過程中存在的電氣干涉問題。在此過程創建好的零件、線夾和線纜等數據可以上傳到數據庫,方便日后的使用。
2)線纜布線設計模塊
線纜布線設計模塊主要利用上一過程中準備好的數據進行線纜模型創建和在CREO布線空間環境下進行線纜布線。線纜模型創建主要根據線纜規格模型庫中所選的線纜規格生成三維線纜模型,自由布線是指布線設計人員可以根據自己的設計經驗來控制線纜走線位置,設計線纜的走線姿態。接線表布線可以根據接線表內的線纜連接關系進行布線,免去了人工布線的繁瑣過程。接線表是虛擬布線設計的重要輸入信息,該表詳細給出了線纜中所有導線兩端的端子信息,包括導線規格、接插件代號、接插件規格和針腳號等。布線設計過程中就是根據接線表獲取線纜的詳細連接關系信息,作為布線設計的數據來源,接線表格式如圖2所示。布線路徑搜索功能可以在CREO布線空間內搜索出符合布線約束的走線路徑,然后在此路徑上自動生成線纜完成線纜布線過程。
3)布線結果輸出
布線結果輸出模塊主要包括以下功能:1)線纜材料清單:線纜布線結束后可以對布線空間內的線纜進行分類統計,并可以按照實際需要選擇某個線束零件中的線纜或者全部線纜進行統計,然后輸出到Excel表格中,為后續的線纜制作做準備。2)電氣信息查詢:電氣信息查詢包含連接件信息查詢和線纜路徑點查詢,連接件信息查詢可以獲取連接件端口的線纜連接情況,線纜路徑點查詢可以獲取線纜在布線空間內的走線位置情況。
圖2 接線表
2 關鍵技術
2.1 電氣元件庫
在復雜機電產品線纜裝配設計的過程中,需要使用到大量不同規格的接線端子。接線端子是實現電氣元件間相互連接不可或缺的元件,隨著工業自動化程度和高準確率標準的提升,接線端子的數量急劇增加,因此建立常用接線端子的元件庫將會大幅提高布線效率。
為實現電氣元件的自動化裝配,需要使用以下CREO二次開發接口函數:
2.2 自由布線
在CREO中有兩種布線方式:簡單布線和網絡布線兩大類。簡單布線在布線過程中只需選擇線纜的起點和終點,系統自動生成線纜路徑,生成的默認路徑一般無法滿足線纜的實際敷設標準,需要人工進行后續的路徑調整。網絡布線是先創建出線纜的路徑點網絡,然后設定各個網絡段的優先級,然后依據優先級靠前的路徑網絡生成布線路徑。這兩種布線方法都需要進行大量的重復工作。
基于本文提出的自由布線技術,可以通過連續點擊路徑平面創建路徑位置點,自動生成經過這些位置點的線纜路徑,無需重復點選線纜的起始位置端口和線纜位置的后續調整。自由布線的主要代碼如下所示:
2.3 布線信息輸出
布線信息輸出是布線模塊二次開發的關鍵部分。布線結果文件可以提高布線的便捷性,同時避免因為無法預估線纜長度而造成的浪費。線纜的長度信息存儲在CREO的線纜參數中,線纜參數的結構體如下所示:
3 CREO二次開發技術
利用CREO/TOOLKIT工具對CREO進行開發時,有兩種工作方式,分別是同步模式(Synchronous Mode)和異步模式(Asynchronous Mode)。在同步模式下CREO系統和利用TOOLKIT工具開發的應用程序必須同時運行,開發的應用程序不可以獨立運行。在此模式下CREO系統和利用TOOLKIT工具開發的應用程序交替獲取運行控制權。同步模式下又分為動態鏈接庫模式(DLL Mode)和多進程模式(Multi-process Mode),其中多進程模式又被稱為派生模式(Sprawled Mode)。動態鏈接庫模式需要編寫DLL文件,在運行開發程序時需要將利用CREO/TOOLKIT工具編寫的動態鏈接庫文件加載進CREO系統,新開發的功能將無縫集成到CREO系統內。在動態鏈接庫模式下,開發的應用程序和CREO系統進行通信時,應用程序直接調用接口函數實現。在多進程模式下CREO與CREO/TOOLKIT應用程序之間通過進程進行數據交換。相比于動態鏈接庫模式,多進程模式需要更多的通信時間,而且隨著應用程序復雜程度的增加,兩者之間的通信時間消耗更多。
在異步模式下,CREO/TOOLKIT應用程序可以遠程啟動CREO系統,CREO系統和CREO/TOOLKIT應用程序可以獨立運行。此模式下的CREO/TOOLKIT應用程序不同于同步模式下的應用程序。與同步模式相比,異步模式下應用程序執行速度較慢,而且異步模式下的應用程序可開發性也不好。所以除了有特殊要求外,基于CREO的CREO/TOOLKIT應用程序開發一般都采用同步模式下的動態鏈接庫模式,故本文針采用同步模式下的動態鏈接庫模式進行布線原型系統的開發。
基于CREO/TOOLKIT應用程序的開發流程大致分為三個步驟:源文件編寫、動態鏈接庫文件編譯鏈接和DLL文件的加載運行。
1)源文件編寫
源文件包括程序文件和資源文件。程序文件是根據實現的功能需求編寫的C或者C++代碼文件,代碼文件主要是所要實現的功能的核心代碼,需要根據所需要的功能進行編寫。資源文件主要用于菜單創建、UI創建和一些信息輸出。資源文件的書寫格式有其特殊的要求,以菜單資源為例,每個菜單需要四行內容來描述,第一行為特殊標識,不能和其他內容重復,第二行為菜單的中文名稱,第三行為菜單英文名稱,可以設置為空,第四行暫時未用。資源文件如圖3(a)所示。
2)DLL編譯鏈接
編寫完程序文件后,需要在編譯環境下進行編譯鏈接以檢查程序代碼是否有錯誤。當出現錯誤后需要進行調試,DLL程序代碼不能像EXE程序一樣進行調試,需要附加到CREO進程中進行調試。
圖3 資源文件和注冊文圖
3)DLL加載運行
DLL文件必須加載進CREO系統中運行而不能單獨運行。加載時需要注冊事先編寫擴展名為.dat的文本文件。在注冊.dat文件時,可以選擇自動注冊和手動注冊兩種方式。自動注冊需要將注冊文件放到指定的CREO啟動目錄下,當CREO啟動時注冊文件將自動被注冊。手動注冊是指在CREO中的“輔助應用程序”中運行注冊文件,注冊文件格式如圖3(b)所示。
4 輔助布線原型系統開發與驗證
根據本文所提出的布線系統設計的體系框架,結合CREO/TOOLKIT工具開發了復雜機電產品輔助布線系統。
4.1 電氣元件庫
所開發的線軸庫的界面如圖4(a)所示,主要功能包括:線軸的創建與編輯,線纜參數的展示以及線纜的查詢和刪除等功能。圖4(b)為卡箍庫界面,它可以實現卡箍零件的預覽以及根據用戶選擇的裝配位置實現自動裝配等功能。圖4(c)為接線端子庫界面,針對不同規格的接線端子,當用戶雙擊庫列表上的任意接線端子,在下方可以展示出端子的參數信息以及圖形預覽,此外使用者可以在模型中任意選擇接線端子的裝配位置實現自動裝配,大大提高了裝配效率。
圖4 電氣元件庫
4.2 自由布線
自由布線在布線前可以先創建布線自由點,通過布線自由點完成線纜布線路徑的規劃,而且可以實現沿局部線纜和整條線纜布線,如圖5所示。
圖5 自由布線
4.3 線纜信息文件輸出
電氣整機布線結束后,可以通過線纜材料清單輸出功能將所布線纜信息輸出到Excel表中,為線纜制作或其它后續工作提供參考依據,如圖6所示。
圖6 布線信息輸出
5 結束語
文章在CREO布線模塊現有功能的基礎上,針對線纜布局設計中存在的效率低、可靠性差等問題,在CREO平臺上,對線纜敷設所需零件庫、CREO簡單布線技術、接線表的讀取、布線信息的參數化輸出等技術進行了相關研究,結合Visual Studio環境下的CREO/TOOLKIT二次開發技術,成功開發出了一個面向快速布線的輔助布線系統,提高了布線效率和準確度,具有現實的工程意義和使用價值。
由于CREO軟件本身的接口限制等問題,通過二次開發工具提升布線效率也存在一定的局限性,需要進一步的學習和研究。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文網址:http://www.guhuozai8.cn/html/consultation/10839624339.html