亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ProToolkit的Pro/E線束制造模型研究

        2020-02-11 04:39:36陸承佳
        機(jī)械工程師 2020年1期
        關(guān)鍵詞:線軸線束線纜

        陸承佳

        (英格索蘭亞太工程技術(shù)中心,江蘇 太倉215400)

        0 引 言

        線纜模型在產(chǎn)品控制部分由電氣原理圖到實(shí)際生產(chǎn)的過程中,扮演了至關(guān)重要的角色。線纜本身的長度、直徑、顏色等信息,及其兩端連接器的電氣參數(shù)均會直接影響到線纜件的采購和加工。然而,使用Pro/E操作軟件的“纜”(Cabling) 模塊建立的三維線纜組件無法直觀表現(xiàn)上述內(nèi)容,必須再將其線束零件導(dǎo)入“制造模型”(Manufacturing Model)進(jìn)行進(jìn)一步的處理,使原先彎曲的線纜平整。此外,利用纜模塊指令生成模型的過程與其他模塊存在一定區(qū)別,在其基礎(chǔ)上建立的制造模型更是和組件、零件模型大不相同。

        本文旨在運(yùn)用PTC官方提供的ProToolkit工具對Pro/E展開研究,試圖通過編程從線束制造模型讀取信息,進(jìn)而分析其內(nèi)在邏輯關(guān)系,同時(shí)為二次開發(fā)出提高工程師工作效率、減少產(chǎn)品設(shè)計(jì)錯誤的實(shí)際應(yīng)用提供理論基礎(chǔ)。

        1 開發(fā)環(huán)境簡介

        Creo Parametric TOOLKIT是PTC官方針對C語言定制,采取面向?qū)ο笤O(shè)計(jì)風(fēng)格的一款工具包。同時(shí),它也是對于Creo Parametric主要的“應(yīng)用程序編程接口”(API)。而且,其提供了大量可以接入Creo Parametric數(shù)據(jù)庫與用戶操作界面的C語言函數(shù)庫和外部應(yīng)用,供用戶及第三方人員通過編寫C語言代碼進(jìn)行二次開發(fā),并將生成的應(yīng)用功能無縫集成進(jìn)Creo Parametric軟件內(nèi)部[1]。

        本文以Visual Studio 2015為開發(fā)平臺編寫程序,借助TOOLKIT創(chuàng)建接口,從而獲取Creo 4.0中線束制造模型信息并進(jìn)行處理。最終,生成一個(gè)可以在Creo 4.0中運(yùn)行的動態(tài)鏈接庫(dll格式文件)[1],將無法直接從用戶操作界面看到的各項(xiàng)數(shù)據(jù)導(dǎo)出,幫助工程師對模型內(nèi)部邏輯有更清晰地認(rèn)識。

        2 線束制造模型解析

        現(xiàn)假定有一線纜組件的三維模型如圖1所示。該組件的所有線纜(不包含兩端連接器)均建立在同一個(gè)“線束”(Harness) 零件內(nèi)。盡管該零件的后綴名為.PRT,但與一般零件不同,只能在進(jìn)入纜模塊后,點(diǎn)擊“創(chuàng)建線束”(Create Harness)生成,且無法被單獨(dú)打開。此外,圖1線束零件又分為16個(gè)子線束——被捆在一起的線纜歸入同一子線束,單根線纜則視作獨(dú)立子線束。在繪制線纜展平工程圖前,需要分別為每個(gè)子線束創(chuàng)建制造模型以供圖樣參考。

        現(xiàn)以其中一個(gè)子線束為例,為創(chuàng)建它的線束制造模型,應(yīng)先在“新建”對話框的類型和子類型下分別選擇“制造”(Manufacturing)與“線束”(Harness),再引用線束零件。接著,還需新建一個(gè)類型為“裝配”(Assembly)、子類型為“平整線束”(Flat harness)的子件,并在隨后彈出的線束窗口內(nèi)選取要展平的子線束。最后,在如圖2所示的兩個(gè)窗口中執(zhí)行展平操作——大窗口對應(yīng)制造模型、小窗口對應(yīng)線束零件。

        圖1 線纜三維模型

        從圖中即可發(fā)現(xiàn)諸多僅從建模角度無法解釋的問題:1)在新建模型時(shí),先后選擇了制造和裝配兩種不同的類型,但實(shí)際生成的模型后綴名都是.ASM,兩者是否有所不同;2)引入的線束零件無法在左側(cè)模型樹下找到,是否已被拆分成了制造模型子裝配中的9個(gè)“平整段”(Flat Segment)特征;3)線束制造模型是否有導(dǎo)入原線纜組件的線束、線軸及連接器電氣參數(shù)。

        接下來便將借助ProToolkit提供的函數(shù)編寫程序,提取制造模型數(shù)據(jù),分析其內(nèi)在邏輯關(guān)系,進(jìn)而逐一對上述問題做出解答。

        圖2 線束制造模型操作窗口

        3 線束制造解析

        3.1 制造模型結(jié)構(gòu)

        圖3 零件和裝配制造模型層級

        制造模型可分為零件制造和裝配制造兩種模式,它們的層次結(jié)構(gòu)如圖3所示。

        兩種模式的最上層均為制造(MFG),然后裝配(ASM)次之,只是裝配制造的層級較多,還包括子裝配。因?yàn)橹圃炷P椭淮娣殴ぞ咝畔?,并且其特征集成在頂層裝配模型內(nèi),所以它既不在模型樹下顯示,又不會生成獨(dú)立文件。由此可知,圖2線束制造模型實(shí)際為4 層結(jié)構(gòu),屬于裝配制造——對該模型更深入地研究將通過編程繼續(xù)展開。

        3.2 模型類型判斷

        首先,通過ProMdlCurrentGet()和ProMdlTypeGet()函數(shù)可知,“當(dāng)前”(即圖2窗口)模型的類型為“制造”(PRO_MDL_MFG)[2]。接著,調(diào)用ProMfgAssemGet()函數(shù)獲得該制造模型的頂層裝配句柄。然后,利用ProMdlMdlnameGet()函數(shù)分別讀取兩個(gè)模型對象的名稱[3]。最終得到的結(jié)果相同,但實(shí)際只存在一個(gè)使用該名稱且后綴名為.ASM的文件。

        綜上所述,線束制造模型的文件格式確實(shí)是.ASM,不過它相比一般裝配模型,同時(shí)還具備了制造模型的特征。換而言之,針對制造與裝配兩種不同模型的函數(shù)在具體功能開發(fā)過程中都可對其生效。

        4 模型數(shù)據(jù)讀取

        借助ProToolkit不僅能夠獲取封裝在模型內(nèi)部、無法從“表層”看到的信息,還能訪問“不存在”于模型樹的特征,并從中采集數(shù)據(jù)進(jìn)一步驗(yàn)證線束制造模型特性。此外,鑒于線纜的長度及其電氣參數(shù)會直接影響到實(shí)際線纜的采購、加工,故若能通過程序自動將這些信息導(dǎo)出,亦將對具體工作提供一定幫助。

        4.1 平整段尺寸提取

        不同于線纜組件,線束零件被引入線束制造模型后,原先的線纜特征轉(zhuǎn)換成了“平整段”,線纜亦不再按“根”劃分,而是改由若干“段”組成。

        為采集這些平整段的尺寸數(shù)據(jù),首先應(yīng)調(diào)用ProMfg-SolidGet()函數(shù)獲取儲存了線束制造模型特征的“實(shí)體模型”(ProSolid)句柄,再通過ProSolidFeatVisit()函數(shù)遍歷其“特征”(ProFeature)對象[4]。接著,調(diào)用ProFeatureFilter-Action 類型的回調(diào)函數(shù)過濾掉類型不為“平整段”(PRO_FEAT_ISEGM)的特征。

        至此,針對圖2線束制造模型,由程序共獲得11個(gè)平整段特征——并且均“可見”(visible)(ProFeatureVisibilityGet()函數(shù)返回值為PRO_B_TRUE),但模型樹下僅能找到9個(gè)。初步推測是因?yàn)槎嗳肟诙诉B接器原先只和一根線纜相連,在執(zhí)行“散開”(Fan Out)操作后,其余線纜也與相應(yīng)入口端連接,同時(shí)“解除”了平整狀態(tài)。如圖4所示的連接器只有第三根線纜有平整段特征,不過在將其拆除并重新展平線纜后,另外兩個(gè)平整段特征亦會出現(xiàn)在模型樹下。

        圖4 線束制造模型連接器

        雖然通過修改模型成功使得在模型樹下顯示的平整段特征數(shù)量,與利用程序檢索到的達(dá)成一致,但結(jié)論仍不夠完善,還需讀取每段的尺寸值做進(jìn)一步驗(yàn)證。

        在特征完成過濾后,調(diào)用ProFeatureVisitAction類型的回調(diào)函數(shù)依次訪問每個(gè)平整段對象。在該函數(shù)內(nèi),再調(diào)用ProFeatureDimensionVisit()函數(shù)遍歷平整段的尺寸對象。 與ProSolidFeatVisit () 函 數(shù) 類 似, 先 調(diào) 用ProDimensionFilterAction類型的回調(diào)函數(shù)篩選出長度(PRODIMTYPE_LINEAR)和角度(PRODIMTYPE_ANGLE)尺寸,再通過ProDimensionVisitAction類型的回調(diào)函數(shù)進(jìn)行訪問。最后,調(diào)用ProDimensionValueGet()函數(shù)提取存放在尺寸對象中的具體數(shù)值。

        綜上所述,原線束零件的子線束在制造模型中轉(zhuǎn)換為11個(gè)平直段特征,而不是從模型樹觀察到的9個(gè)。使用ProToolkit不僅能檢索到無法從用戶操作界面看到的特征,還能直接采集其儲存的尺寸數(shù)據(jù)——所有平整段對象的尺寸都保持散開前數(shù)值。

        4.2 模型參數(shù)提取

        在線纜組件中,電氣參數(shù)分別被儲存在“線束”(Harness)、“線軸”(Spool)及“連接器”(Connector)中。由于無論是線束制造的頂層裝配還是其子裝配模型都不含上述元件或特征,因此比起按照“線束/線軸/連接器→線纜→線纜參數(shù)”的順序逐個(gè)訪問對象,本文優(yōu)先考慮直接遍歷模型全部參數(shù),再從中篩選出電氣參數(shù)。

        首先,調(diào)用ProMdlToModelitem()函數(shù)將頂層裝配或其子裝配對象轉(zhuǎn)換為“模型項(xiàng)”(ProModelitem)對象,再使用ProParameterVisit()函數(shù)遍歷其“參數(shù)”(ProParameter)對象(不做任何過濾)。其次,通過ProParameterValueWith-UnitsGet()函數(shù)讀取得到的“參數(shù)數(shù)值對象”(ProParamvalue),進(jìn)而調(diào)用ProParamvalueTypeGet()與ProParamvalue-ValueGet()函數(shù)按類提取并導(dǎo)出其存放的具體信息。但最終獲取的所有數(shù)據(jù)如圖5所示,其中并不含電氣參數(shù)。

        在與三維模型對照后發(fā)現(xiàn),上述“參數(shù)”特指圖2右側(cè)“線纜制造”(CABLE MFG) 菜單中“設(shè)置”(Set Up) 選項(xiàng)下的“參數(shù)”(Parameters) 窗口內(nèi)信息,與線纜組件中的“電氣參數(shù)”(Electrical Parameters)對話框內(nèi)容無關(guān)。

        圖5 線束制造模型參數(shù)

        4.3 電氣參數(shù)提取

        雖然線束零件、線軸及連接器都未顯示在線束制造模型的模型樹下,但在圖2兩個(gè)窗口的模型中,它們均有所體現(xiàn)。故而,在直接讀取電氣參數(shù)失敗的情況下,現(xiàn)參照線纜組件模型從獲取它們的對象開始展開進(jìn)一步研究。

        首先,通過ProAssemblyHarnessesCollect()、ProAssemblySpoolsCollect()及ProAssemblyConnectorsGet()三個(gè)函數(shù)采集頂層裝配模型的線束、線軸及連接器對象,同時(shí)觀察函數(shù)的返回值——只有線軸未被找到(返回PRO_TK_E_NOT_FOUND),線束和連接器的函數(shù)都成功運(yùn)行(返回PRO_TK_NO_ERROR)。

        接著,使用ProArraySizeGet()函數(shù)獲取線束和連接器數(shù)。但連接器的數(shù)量為0,故實(shí)際在上一步并未獲得連接器對象。而線束的數(shù)量為1——在創(chuàng)建線束制造模型時(shí)也確實(shí)只引用了一個(gè)線束零件,且未涉及線軸及連接器。

        隨后,調(diào)用ProHarnessCablesCollect () 和ProArray-SizeGet()函數(shù)讀取線束中全部“線纜對象”(ProCable)及其總數(shù)。不過得到的線纜數(shù)量與圖2小窗口顯示的線束零件相同,多于大窗口的子線束線纜。若只希望采集子線束的電氣參數(shù),可利用ProHarnessSubharnessesCollect()和Pro-SubharnessCablesCollect()函數(shù)進(jìn)行區(qū)分,本文不再贅述。

        然后,以線纜數(shù)為循環(huán)次數(shù)設(shè)置循環(huán)體,繼續(xù)提取每個(gè)線纜對象儲存的信息及子對象,如圖6所示。

        圖6 線纜對象處理代碼

        鑒于線束制造模型由數(shù)個(gè)平整段組成,只能從特征對象讀取單段線纜的長度。但對于線纜對象,可以使用ProCableLengthGet()函數(shù)直接獲取線纜總長。而其它參數(shù)仍被存放在子對象“線纜參數(shù)對象”(ProCableparam)中,需通過線束ProCableParametersCollect()函數(shù)采集。

        最后,將線纜參數(shù)對象傳遞給自定義函數(shù)CableParameter(),再于該函數(shù)內(nèi)調(diào)用ProParamvalueTypeGet()與ProParamvalueValueGet()函數(shù)按類提取并導(dǎo)出線纜電氣參數(shù),如圖7所示。

        由于從線束制造模型中僅獲得了線束對象,因此最終也只能采集每根線纜及其引用線軸和兩端連接器的名稱,而無法采集線纜顏色、連接器類型(凸形/凹形)等電氣參數(shù)。

        結(jié)合4.2節(jié)和4.3節(jié)可知,盡管“參數(shù)數(shù)值對象”與“線纜參數(shù)對象”儲存的數(shù)據(jù)均可調(diào)用ProParamvalueValueGet()函數(shù)提取,但這兩個(gè)對象本身及它們上層對象的獲取方式截然不同。此外,線纜的電氣參數(shù)只存放在線纜參數(shù)對象中,無法從其它對象讀取。

        圖7 線束電氣參數(shù)

        5 結(jié) 語

        本文詳細(xì)介紹了如何利用ProToolkit工具編寫程序?qū)ro/E的線束制造模型進(jìn)行研究。最終成功提取了無法直接從用戶操作界面看到的信息(如制造模型的層次結(jié)構(gòu),散開平整段的特征、線纜的總長度等)。通過分析這些數(shù)據(jù),不僅可以幫助工程師對模型內(nèi)部邏輯有更深刻的理解,同時(shí)還能以此為基礎(chǔ)或與其它應(yīng)用結(jié)合,二次開發(fā)出能夠提升工作效率及設(shè)計(jì)正確率的具體功能。

        猜你喜歡
        線軸線束線纜
        初中歷史教學(xué)中“時(shí)空觀念”核心素養(yǎng)的培養(yǎng)
        線束工業(yè)軟件應(yīng)用之中線CAD標(biāo)準(zhǔn)版
        汽車電器(2022年5期)2022-05-23 12:06:18
        上海福爾欣線纜有限公司
        汽車電器(2019年9期)2019-10-31 07:51:08
        自動甩干機(jī)
        來做一個(gè)氣墊飛行器
        彈上線纜布設(shè)技術(shù)研究
        汽車線束設(shè)計(jì)及線束用原材料的選取
        某輕卡線束設(shè)計(jì)方案
        華通線纜:“通”向未來的品牌夢
        中國品牌(2015年11期)2015-12-01 06:20:54
        最新線束優(yōu)化方法
        汽車電器(2014年8期)2014-02-28 12:14:26
        精品人妻少妇丰满久久久免| 爱我久久国产精品| 精品无人区无码乱码大片国产| 白丝美女扒开内露出内裤视频| 草逼短视频免费看m3u8| 亚洲春色在线视频| 久久网视频中文字幕综合| 日本精品极品视频在线| 精品人妻久久一日二个| 国产精品亚洲а∨天堂2021| 欧美丰满熟妇bbbbbb百度| 果冻蜜桃传媒在线观看| 男女搞事在线观看视频| 成人无码网www在线观看| 亚洲最大天堂无码精品区| 亚洲熟妇夜夜一区二区三区| 手机在线播放av网址| 亚洲国产天堂久久综合| 国产黑丝在线| 亚洲精品一区二区视频| 亚洲av不卡免费在线| 乱人伦人妻中文字幕无码| 亚洲AV成人无码国产一区二区 | 欧美日韩午夜群交多人轮换| 国产亚洲人成a在线v网站| 男人天堂av在线成人av| 亚洲男同免费视频网站| 极品白嫩的小少妇| 亚洲产国偷v产偷v自拍色戒| 亚洲一区二区三区成人在线| 精品国产亚洲av麻豆| 台湾无码av一区二区三区| 久久中文字幕久久久久| 一区二区三区在线观看人妖| 国产v片在线播放免费无码| 最新亚洲av日韩av二区| 一本一道久久a久久精品综合蜜桃| 国产亚洲人成在线观看| 色偷偷av男人的天堂| 亚洲国产一区二区三区最新| 高清国产国产精品三级国产av|