




已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
目 錄摘 要IIAbstractIII1 緒 論11.1研究對(duì)象11.2行業(yè)分析21.3技術(shù)支持22 Creo二次開(kāi)發(fā)技術(shù)分析42.1 Creo的發(fā)展歷程及應(yīng)用42.2 Creo在實(shí)際使用中的問(wèn)題42.3 Creo二次開(kāi)發(fā)的特點(diǎn)52.4 creo二次開(kāi)發(fā)關(guān)鍵技術(shù)52.5 二次開(kāi)發(fā)的使用工具及手段63 液壓缸設(shè)計(jì)83.1 液壓缸的特點(diǎn)83.2 液壓缸的一般組成部分83.3 液壓缸設(shè)計(jì)和參數(shù)化93.4液壓缸參數(shù)關(guān)系式確定124 二次開(kāi)發(fā)系統(tǒng)設(shè)計(jì)144.1創(chuàng)建設(shè)計(jì)系統(tǒng)客戶端144.2開(kāi)發(fā)液壓缸參數(shù)化設(shè)計(jì)系統(tǒng)164.2.1 環(huán)境配置164.2.2 Creo/VBA API調(diào)用184.2.3 新建項(xiàng)目204.3最終結(jié)果展示255 結(jié) 論30參考文獻(xiàn)31致 謝33IIICreo二次開(kāi)發(fā)-液壓缸參數(shù)化設(shè)計(jì)系統(tǒng)開(kāi)發(fā)摘 要隨著科技的不斷進(jìn)步,三維CAD系統(tǒng)在機(jī)械行業(yè)的應(yīng)用越來(lái)越廣泛,因?yàn)樗某霈F(xiàn)使得產(chǎn)品設(shè)計(jì)的周期加快,企業(yè)的競(jìng)爭(zhēng)力提高了。其中使用廣泛的creo軟件有著互操作性,并能在許多產(chǎn)品開(kāi)發(fā)過(guò)程中使開(kāi)發(fā)效率得到突破性的增長(zhǎng),例如液壓缸,齒輪軸等。 針對(duì)目前液壓缸設(shè)計(jì)計(jì)算過(guò)程重復(fù)的問(wèn)題,提出了一種Creo二次開(kāi)發(fā)實(shí)現(xiàn)液壓缸參數(shù)化設(shè)計(jì)的方法。一個(gè)是為了提高設(shè)計(jì)效率,適應(yīng)當(dāng)今時(shí)代快速發(fā)展的需求;另一個(gè)則是為了提高了設(shè)計(jì)的質(zhì)量,使設(shè)計(jì)更加的系列化,標(biāo)準(zhǔn)化。我們通過(guò)液壓缸設(shè)計(jì)需求分析,確定設(shè)計(jì)流程,利用 Creo 提供的 VB API 接口,并通過(guò)C語(yǔ)言的匯編開(kāi)發(fā)了基于 Creo 的液壓缸參數(shù)化設(shè)計(jì)系統(tǒng)。由于Creo軟件自帶的VB VPI二次開(kāi)發(fā)模塊,可根據(jù)不同需求做出相應(yīng)的二次開(kāi)發(fā),系統(tǒng)通過(guò)快速參數(shù)化設(shè)計(jì)的菜單選項(xiàng),大幅度提高液壓機(jī)油缸的設(shè)計(jì)效率,為液壓缸的標(biāo)準(zhǔn)化、系列化設(shè)計(jì)提供了一個(gè)實(shí)現(xiàn)的可能性。關(guān)鍵詞: Creo;二次開(kāi)發(fā);C語(yǔ)言;液壓缸;參數(shù)化設(shè)計(jì) Creo secondary development - hydraulic cylinder parametric design system development.AbstractWith the continuous improvement of science and technology, the application of 3d CAD system in the mechanical industry has become more and more extensive, which has greatly accelerated the cycle of product design and improved the competitiveness of enterprises.The use of extensive creo software is interoperable and can lead to breakthroughs in development efficiency in many product development processes, such as hydraulic cylinders, gear shafts, and so on.In view of the repetitive problems in the calculation process of hydraulic cylinder design, a simple method for the design of hydraulic cylinder parameterization is presented.One is to improve design efficiency and adapt to the rapid development of modern times.The other is to improve the quality of the design, making the design more serialized and standardized.Through the analysis of the design requirements of the hydraulic cylinder, we determined the design process, used the VB API interface provided by Creo, and developed the hydraulic cylinder parameterized design system based on Creo through the assembly of C language.Due to Creo software with VB VPI secondary development module, can make corresponding secondary development according to different demand, system through fast parametric design menu options, greatly improve the efficiency of the design of the hydraulic oil cylinder, for the standardization, seriation of hydraulic cylinder design provides the possibility of an implementation.Key words: Creo; Secondary development; C language; Hydraulic cylinder;Parametric design1 緒 論經(jīng)過(guò)多年的發(fā)展,creo在我國(guó)的制造行業(yè)有了長(zhǎng)足的發(fā)展。廣泛的被應(yīng)用于各大企業(yè),為我國(guó)的制造業(yè)的發(fā)展貢獻(xiàn)了巨大的力量,也讓我國(guó)的制造業(yè)慢慢的趕上先進(jìn)國(guó)家的水平。當(dāng)然同樣的,時(shí)代在不停的發(fā)展,隨著行業(yè)日新月異的發(fā)展和需求,我們?cè)谲浖矫孀非蟮母叨纫苍谔嵘?。也因此我們這個(gè)課題的主要意義也是為了將這個(gè)發(fā)展的理念繼承下來(lái),用以提升我國(guó)制造業(yè)的競(jìng)爭(zhēng)力,為液壓缸的標(biāo)準(zhǔn)化提供有力的保障。1.1研究對(duì)象液壓缸主要完成的運(yùn)動(dòng)是直線往復(fù)運(yùn)動(dòng),將高壓液體的能量轉(zhuǎn)化為我們所需要的機(jī)械能,也是所有的液壓系統(tǒng)中應(yīng)用的最多的執(zhí)行元件,現(xiàn)在我們?cè)O(shè)計(jì)液壓缸的各種軟件中,使用最廣的軟件中以三維的設(shè)計(jì)軟件居多,因此在此基礎(chǔ)上對(duì)creo軟件進(jìn)行二次開(kāi)發(fā),添加便于使用的菜單選型,便于我們?cè)谠O(shè)計(jì)液壓缸時(shí)隨時(shí)改變各項(xiàng)參數(shù)用以保證設(shè)計(jì)的速度和精度,同時(shí)也是提高了我們?cè)O(shè)計(jì)工作中的效率。液壓缸作為在工業(yè)中最常使用到的元件之一,被研究者們時(shí)時(shí)刻刻的關(guān)注著,也因此液壓缸的種類非常的豐富。雖然其種類非常的豐富但是不同類型的液壓缸結(jié)構(gòu)卻是十分的相似,也因此在設(shè)計(jì)人員工作時(shí),大量的設(shè)計(jì)操作是重復(fù),這樣會(huì)有兩個(gè)缺點(diǎn):1)降低了設(shè)計(jì)的效率;2)增加設(shè)計(jì)人員的錯(cuò)誤率。我們正在一個(gè)高速發(fā)展的時(shí)代,互聯(lián)網(wǎng)時(shí)代的到來(lái),我們的生活受到了很大的沖擊,在這個(gè)信息爆炸的時(shí)代生活,必須緊追時(shí)代的腳步,提高行業(yè)的競(jìng)爭(zhēng)力,否則被時(shí)代淘汰可能僅僅只是時(shí)間問(wèn)題,因此通過(guò)對(duì)CREO軟件的二次開(kāi)發(fā),軟件的實(shí)效性會(huì)得到巨大的提升,企業(yè)產(chǎn)品的開(kāi)發(fā)效率自然也會(huì)得到相應(yīng)的提高,設(shè)計(jì)周期將會(huì)縮短,更多的時(shí)間可以節(jié)省和使用。越來(lái)越多的企業(yè)已經(jīng)不僅僅滿足簡(jiǎn)單使用CREO軟件,而是提出二次開(kāi)發(fā)的要求以提高企業(yè)的競(jìng)爭(zhēng)力。同時(shí)相對(duì)比國(guó)內(nèi)外基礎(chǔ)制造業(yè)的發(fā)展,國(guó)內(nèi)的水平某些方面在國(guó)際上還是無(wú)法做到領(lǐng)先地位。因此,在這個(gè)時(shí)代的發(fā)展背景之下,我們更加需要注重的就是這個(gè)信息時(shí)代的能給我們帶來(lái)了什么。在基礎(chǔ)機(jī)械制造業(yè)設(shè)計(jì)中,設(shè)計(jì)軟件可謂是重中之重,一個(gè)是它能實(shí)現(xiàn)特別多復(fù)雜功能的設(shè)計(jì),節(jié)省設(shè)計(jì)人員的時(shí)間成本,另一個(gè)則是因?yàn)檐浖腔谟?jì)算機(jī)語(yǔ)言的,而這正是互聯(lián)網(wǎng)大數(shù)據(jù)時(shí)代給我們帶來(lái)的便利和機(jī)遇。二次開(kāi)發(fā)的意義已經(jīng)不僅僅只是提高企業(yè)的競(jìng)爭(zhēng)力,是對(duì)一個(gè)國(guó)家未來(lái)發(fā)展的一個(gè)衡量,在這個(gè)背景之下,本課題的研究也就應(yīng)運(yùn)而生。1.2行業(yè)分析近年來(lái),由于三維軟件自帶強(qiáng)大的建模功能而得到廣泛的應(yīng)用,在行業(yè)中各個(gè)三維建模軟件都占據(jù)著舉足輕重的作用。在設(shè)計(jì)過(guò)程中,需要我們通過(guò)三維建模的方法來(lái)實(shí)現(xiàn)所需要的零件設(shè)計(jì),并進(jìn)行大量的調(diào)試和計(jì)算,在調(diào)試過(guò)程中,難免會(huì)有大量的重復(fù)計(jì)算。比如有大量類似的標(biāo)準(zhǔn)件的設(shè)計(jì),設(shè)計(jì)過(guò)程中有著大量重復(fù)的計(jì)算和參數(shù),增加了工作量的負(fù)擔(dān),也因此在設(shè)計(jì)過(guò)程中降低了一部分的效率。本次研究的是常見(jiàn)軟件creo2.0,creo這個(gè)軟件能實(shí)現(xiàn)的功能眾多,同時(shí)它又以參數(shù)化著稱,是參數(shù)化技術(shù)的最早應(yīng)用,占據(jù)著CAD/CAM設(shè)計(jì)軟件領(lǐng)域的重要地位,隨著中國(guó)基礎(chǔ)制造業(yè)及其它領(lǐng)域的飛速發(fā)展,許多企業(yè)越來(lái)越需要精通Creo/UG/CATIA/SolidWorks等等這一些設(shè)計(jì)類的人才。這些3D軟件如果被我們熟練掌握,將會(huì)極大的提升自己的就業(yè)競(jìng)爭(zhēng)力?,F(xiàn)如今在中國(guó)關(guān)于CREO二次開(kāi)發(fā)的文獻(xiàn)少之又少,而關(guān)于液壓缸方面的二次開(kāi)發(fā)設(shè)計(jì)更是鳳毛麟角。目前來(lái)說(shuō)大部分的二次開(kāi)發(fā)文獻(xiàn)都是在講述工具和環(huán)境變量的配置,例如Creo二次開(kāi)發(fā)異步模式配置(作者不詳),講述的就是用VS2010進(jìn)行對(duì)CREO二次開(kāi)發(fā)的環(huán)境配置,為二次開(kāi)發(fā)的進(jìn)行準(zhǔn)備工作。其中最值得探討研究的就是劉濤等人的Creo二次開(kāi)發(fā)實(shí)現(xiàn)液壓缸參數(shù)化設(shè)計(jì)。在劉濤研究的Creo二次開(kāi)發(fā)液壓缸軟件已經(jīng)相當(dāng)成熟,但是在其中能選擇的界面不是很友好,我歸納出兩點(diǎn),第一點(diǎn),尺寸較多的時(shí)候,需要設(shè)計(jì)人員自己判斷需要修改的尺寸在哪里,所以在本次設(shè)計(jì)中,直接能在示意圖所在的對(duì)應(yīng)尺寸中;第二點(diǎn),在更改完尺寸和參數(shù)后,不能在模型中體現(xiàn)出來(lái)。第三,只針對(duì)了缸體進(jìn)行了研究和開(kāi)發(fā),沒(méi)有對(duì)全部零件的開(kāi)發(fā)。正是這個(gè)原因,給本課題提供了想法和設(shè)計(jì)的靈感。也同樣可以看出如今中國(guó)對(duì)于creo軟件的二次開(kāi)發(fā)程度不夠高,重視程度也遠(yuǎn)遠(yuǎn)不夠,當(dāng)然也有一部分的保密因素(個(gè)人想法)。1.3技術(shù)支持 在研究設(shè)計(jì)過(guò)程中,包括二次開(kāi)發(fā)的技術(shù)和液壓缸的設(shè)計(jì),參考了 王哲 的 Creo二次開(kāi)發(fā)參數(shù)化設(shè)計(jì)技術(shù)的應(yīng)用研究;趙慧的Creo2.0二次開(kāi)發(fā)技術(shù)在空氣壓縮機(jī)三維參數(shù)化設(shè)計(jì)中的應(yīng)用;creo2.0+VS2010采用protoolkit二次開(kāi)發(fā)環(huán)境配置(64位win7);趙樹(shù)國(guó)的基于Creo的液壓缸設(shè)計(jì)及優(yōu)化等。這些文章的使用讓整個(gè)設(shè)計(jì)過(guò)程效率變得更高,并且提供了相當(dāng)多的技術(shù)方法。在研究CREO二次開(kāi)發(fā)的過(guò)程中,發(fā)現(xiàn)有多個(gè)開(kāi)發(fā)的辦法和工具,其中實(shí)現(xiàn)功能最多的肯定是creo/toolkit,其接入口使用的是c+/java語(yǔ)言匯編,原本的程序庫(kù)包含的功能就非常豐富。而本課題選擇的是使用VB API接口進(jìn)行開(kāi)發(fā),第一是因?yàn)橄鄬?duì)于java和C+,VB和C#更加容易入手,同時(shí)本課題能夠?qū)崿F(xiàn)的功能,這兩種匯編語(yǔ)言也同樣能實(shí)現(xiàn)。第二是因?yàn)樵诖髮W(xué)學(xué)習(xí)的課程中有C語(yǔ)言課程的基礎(chǔ)進(jìn)修,上手更加容易不會(huì)比較陌生。第三是基于VS 2010的強(qiáng)大語(yǔ)言兼容能力。我們能在里面使用C語(yǔ)言編譯,并通過(guò)VB VPI接口進(jìn)行輸出到CREO軟件中,進(jìn)而實(shí)現(xiàn)各種不同的功能。322 Creo二次開(kāi)發(fā)技術(shù)分析2.1 Creo的發(fā)展歷程及應(yīng)用Creo(Pro/E)是美國(guó)參數(shù)技術(shù)公司(PTC)旗下的CAD/CAM/CAE一體化的三維軟件,于1988年問(wèn)世。經(jīng)歷多次的次的改版,已成為全世界及中國(guó)地區(qū)最普及的三維CAD/CAM系統(tǒng)的標(biāo)準(zhǔn)軟件,廣泛應(yīng)用于電子、機(jī)械、模具、工業(yè)設(shè)計(jì)、汽車、航天、家電、玩具等行業(yè)。Pro/E是全方位的三維產(chǎn)品開(kāi)發(fā)軟件包和相關(guān)軟件Pro/DESINGER(造型設(shè)計(jì))、Pro/MECHANICA(功能仿真),集成了零件設(shè)計(jì)、產(chǎn)品裝配、模具開(kāi)發(fā)、加工制造、鈑金件設(shè)計(jì)、鑄造件設(shè)計(jì)、工業(yè)設(shè)計(jì)、逆向工程、自動(dòng)測(cè)量、機(jī)構(gòu)分析、有限元分析、產(chǎn)品數(shù)據(jù)庫(kù)管理等功能,從而使用戶縮短了產(chǎn)品開(kāi)發(fā)的時(shí)間并簡(jiǎn)化了開(kāi)發(fā)的流程;國(guó)際上有27000多家企業(yè)采用了Pro/E軟件系統(tǒng),作為企業(yè)的標(biāo)準(zhǔn)軟件進(jìn)行產(chǎn)品設(shè)計(jì)開(kāi)發(fā),特別是在國(guó)內(nèi)產(chǎn)品設(shè)計(jì)領(lǐng)域占據(jù)重要位置。Creo是美國(guó)PTC公司于2010年10月推出CAD設(shè)計(jì)軟件包。Creo是整合了PTC公司的三個(gè)軟件Pro/E的參數(shù)化技術(shù)、CoCreate的直接建模技術(shù)和ProductView的三維可視化技術(shù)的新型CAD設(shè)計(jì)軟件包,是PTC公司閃電計(jì)劃所推出的第一個(gè)產(chǎn)品。Creo具有數(shù)據(jù)庫(kù)同一、特征化實(shí)體建模、參數(shù)化變形設(shè)計(jì)等特點(diǎn),在機(jī)械行業(yè)得到廣泛應(yīng)用,深受大家的喜愛(ài)。設(shè)計(jì)人員可通過(guò)Creo快速高效的進(jìn)行維實(shí)體建模,并且其工程圖模塊利用其全相關(guān)性實(shí)現(xiàn)工程圖的出圖。Creo還可與機(jī)械系統(tǒng)動(dòng)力學(xué)自動(dòng)分析軟件(Adams)和有限元分析軟件(ABAQUS、ANSYS)結(jié)合使用,從而達(dá)到提高產(chǎn)品設(shè)計(jì)質(zhì)量、優(yōu)化產(chǎn)品結(jié)構(gòu)設(shè)計(jì)、縮短產(chǎn)品研發(fā)周期、減少產(chǎn)品開(kāi)發(fā)成本的目的。2.2 Creo在實(shí)際使用中的問(wèn)題1)易用性 CAD軟件雖然已經(jīng)技術(shù)上逐漸成熟,但是軟件的操行還很復(fù)雜,宜人化程度有待提高。2)互操作性 不同的設(shè)計(jì)軟件造型方法各異,包括特征造型、直覺(jué)造型等,二維設(shè)計(jì)還在廣泛的應(yīng)用。但這些軟件相對(duì)獨(dú)立,操作方式完全不同,對(duì)于客戶來(lái)說(shuō),魚(yú)和熊掌不可兼得。3)數(shù)據(jù)轉(zhuǎn)換 這個(gè)問(wèn)題依然是困擾CAD軟件應(yīng)用的大問(wèn)題。一些廠商試圖通過(guò)圖形文件的標(biāo)準(zhǔn)來(lái)鎖定用戶,因而導(dǎo)致用戶有很高的數(shù)據(jù)轉(zhuǎn)換成本。4)配置需求 由于客戶需求的差異,往往會(huì)造成由于復(fù)雜的配置,而大大延長(zhǎng)的產(chǎn)品交付的時(shí)間。Creo最大的問(wèn)題,是交互操作非常繁雜。因此在我們得設(shè)計(jì)過(guò)程中會(huì)產(chǎn)生出大量重復(fù)的操作,但由于creo軟件自帶的creo/tooltik二次開(kāi)發(fā)模塊,為我們提供了一個(gè)簡(jiǎn)化設(shè)計(jì)的可能,增加在行業(yè)中的競(jìng)爭(zhēng)力。2.3 Creo二次開(kāi)發(fā)的特點(diǎn)Creo的二次開(kāi)發(fā)是以軟件自帶的二次開(kāi)發(fā)工具,增加原軟件未擁有的功能的程序設(shè)計(jì)方法,Creo作為一個(gè)CAD/CAM/CAE軟件集成包由美國(guó)PTC公司推出,除了擁有強(qiáng)大的通用性和參數(shù)化功能,在軟件設(shè)計(jì)的時(shí)候提供了大量的可供二次開(kāi)發(fā)的接口,比如說(shuō)用戶自定義(UDF),Program,ProToolkit,VB API,J-Link等。其中前兩者為軟件自帶的功能,比較簡(jiǎn)單,而后三者方法是要求設(shè)計(jì)開(kāi)發(fā)人員有一定的程序設(shè)計(jì)基礎(chǔ)。其中運(yùn)用Pro/ Toolkit的開(kāi)發(fā)是難度最大,但同時(shí)功能也是最多的。對(duì)于許多特殊產(chǎn)品(比如齒輪系統(tǒng)、特種裝備等)而言,因?yàn)槠洚a(chǎn)品設(shè)計(jì)的復(fù)雜性,如果僅僅使用標(biāo)準(zhǔn)的設(shè)計(jì)工具進(jìn)行設(shè)計(jì),往往對(duì)設(shè)計(jì)人員的技術(shù)要求非常高,設(shè)計(jì)工作量非常大,使得設(shè)計(jì)效率非常低下。同時(shí),因?yàn)楫a(chǎn)品設(shè)計(jì)的復(fù)雜性,人為引入設(shè)計(jì)缺陷的潛在風(fēng)險(xiǎn)也大幅上升。通過(guò)對(duì)CREO(Pro/E)軟件進(jìn)行二次開(kāi)發(fā),針對(duì)企業(yè)的產(chǎn)品特點(diǎn),得到專門的專家產(chǎn)品系統(tǒng),可以大幅降低產(chǎn)品設(shè)計(jì)的復(fù)雜程度與工作量,降低對(duì)設(shè)計(jì)人員的個(gè)人技能要求,在大幅提升工作效率的同時(shí),降低產(chǎn)生設(shè)計(jì)缺陷的風(fēng)險(xiǎn),提高產(chǎn)品的使用質(zhì)量。Creo Parametric是三維CAD設(shè)計(jì)領(lǐng)域的標(biāo)準(zhǔn)。擁有這最先進(jìn)的生產(chǎn)效率工具,能為用戶選擇最優(yōu)的設(shè)計(jì)方案,還能夠保證它的一個(gè)規(guī)范性,比如說(shuō)業(yè)界和公司標(biāo)準(zhǔn)。CreoParametric提供的三維CAD功能范圍最廣強(qiáng)大而又靈活,可幫助客戶解決設(shè)計(jì)挑戰(zhàn)和要求,包括適應(yīng)后期變更、使用多CAD數(shù)據(jù)和機(jī)電設(shè)計(jì)方案。Creo Parametric能夠與其他Creo應(yīng)用程序無(wú)縫地共享數(shù)據(jù)。這意味著無(wú)需浪費(fèi)時(shí)間來(lái)轉(zhuǎn)換數(shù)據(jù),并能消除因轉(zhuǎn)換數(shù)據(jù)而產(chǎn)生的錯(cuò)誤。用戶可在不同的建模模式之間無(wú)縫切換,而且2D和3D設(shè)計(jì)數(shù)據(jù)可以輕松地在應(yīng)用程序之間移動(dòng),同時(shí)保留設(shè)計(jì)意圖。這將產(chǎn)生空前的互操作性,并能在許多產(chǎn)品開(kāi)發(fā)過(guò)程中導(dǎo)致開(kāi)發(fā)效率出現(xiàn)突破性的增長(zhǎng)。2.4 creo二次開(kāi)發(fā)關(guān)鍵技術(shù)隨著Creo軟件問(wèn)世之后的廣泛應(yīng)用,在行業(yè)中得到大量的好評(píng),一方面由于其強(qiáng)大的參數(shù)化能力,另一個(gè)是軟件本身提供的二次開(kāi)發(fā)端口使得軟件的后續(xù)功能有大量的發(fā)展可能性。目前來(lái)說(shuō)為了適應(yīng)各種快捷方便高效的設(shè)計(jì),無(wú)論是國(guó)內(nèi)還是國(guó)外都會(huì)選擇通過(guò)軟件的二次開(kāi)發(fā)來(lái)提升某些方面的不足,在這一點(diǎn)上,國(guó)內(nèi)外都做了很多的研究,也因此Creo的二次開(kāi)發(fā)越來(lái)越頻繁,越來(lái)越受到企業(yè)的認(rèn)可和重視。Creo具有特征化實(shí)體建模技術(shù)、參數(shù)化變形設(shè)計(jì)的應(yīng)用,其操作簡(jiǎn)單,方便易學(xué)。同時(shí),Creo還提供了采用標(biāo)準(zhǔn)windows“部件對(duì)象模式(COM)”技術(shù)和對(duì)象連接的嵌入(OLE)技術(shù)的應(yīng)用程序接口,使得用戶可對(duì)軟件進(jìn)行二次開(kāi)發(fā),滿足自身的功能需求。任何一種支持ActiveXAutomation技術(shù)的編程工具都可通過(guò)調(diào)用Creo的對(duì)象體系結(jié)構(gòu)實(shí)現(xiàn)對(duì)其的二次開(kāi)發(fā)。Creo的功能封裝在對(duì)象之中。一個(gè)對(duì)象包括類型、屬性和方法方面內(nèi)容。通過(guò)對(duì)對(duì)象的操作建立應(yīng)用程序,實(shí)現(xiàn)Creo軟件的二次開(kāi)發(fā)。二次開(kāi)發(fā)的示意圖如圖2.1所示:三維建模配置CREO工作環(huán)境 C編程語(yǔ)言VB VPI接口添加菜單選項(xiàng)程序內(nèi)部編寫生成模型圖2.1 CREO二次開(kāi)發(fā)示意圖2.5 二次開(kāi)發(fā)的使用工具及手段Creo軟件的二次開(kāi)發(fā)工具有VB VPI、用戶定義特征(UDF)、PRO/Program、J-link、CREO/Toolkits。1)VB VPICreo具有的VB接口,可以使得一些VB平臺(tái)可以進(jìn)行對(duì)它的開(kāi)發(fā),軟件內(nèi)部提供不少API函數(shù)。缺點(diǎn)就是軟件提供的 VB API函數(shù)庫(kù)有限,實(shí)現(xiàn)的功能有限。之前也提到VS 2010這是一個(gè)綜合性開(kāi)發(fā)平臺(tái),因此,在VB接口依舊可以用VC編程實(shí)現(xiàn)不同的功能。2)UDF用戶定義特征這個(gè)方法就是建立自己的一個(gè)用戶自定義特征庫(kù),有點(diǎn)類似于收藏夾一樣的,但是這樣的快速調(diào)用適合常年的積累,且不容易更新。3)ProgramProProgram是組件自動(dòng)化與零件設(shè)計(jì)的有效工具,設(shè)計(jì)人員通過(guò)類似BASIC的高級(jí)語(yǔ)言,根據(jù)實(shí)際功能編寫該模型的ProProgram。4)JLinkJLink是使用Java進(jìn)行二次開(kāi)發(fā)的程序接口,它是 creo 自帶的一個(gè)功能菜單,通過(guò)這個(gè)菜單選項(xiàng)能獲得creo內(nèi)部的模型屬性。5)CREO/ToolkitCreo/toolkit是creo里最強(qiáng)大的開(kāi)發(fā)工具,主要是源于C語(yǔ)言和VC+強(qiáng)大的函數(shù)能力,幾乎是能夠?qū)崿F(xiàn)所有的一種開(kāi)發(fā)手段,但是由于其難度系數(shù)比較大,在本課題中不做過(guò)多的研究。一般來(lái)說(shuō)二次開(kāi)發(fā)的模式有兩種,異步模式和同步模式。在異步模式下,VB VPI應(yīng)用程序與creo可以實(shí)現(xiàn)并行操作,就是說(shuō),不啟動(dòng)軟件時(shí),可以單獨(dú)運(yùn)行VB VPI應(yīng)用程序,當(dāng)需要creo支持是,creo會(huì)被調(diào)用。在同步模式下兩個(gè)程序必須同時(shí)運(yùn)行才能加載VB VPI的應(yīng)用小程序。本次課題選擇的開(kāi)發(fā)方式為異步模式,開(kāi)發(fā)軟件為VS2010,使用的開(kāi)發(fā)工具是VB VPI。其中的匯編語(yǔ)言是選擇的C語(yǔ)言,雖然CREO/Toolkits開(kāi)發(fā)工具能夠?qū)崿F(xiàn)的功能最多,但是使用VB API完全可以實(shí)現(xiàn)本系統(tǒng)打開(kāi)模型和修改模型參數(shù)等各項(xiàng)功能。 3 液壓缸設(shè)計(jì)3.1 液壓缸的特點(diǎn)一部現(xiàn)代機(jī)器,如果不是以行走為工作目的,它通常由機(jī)架、原動(dòng)機(jī)、傳動(dòng)裝置和工作機(jī)構(gòu)四個(gè)主要部分構(gòu)成,其中機(jī)架為載體,原動(dòng)機(jī)的作用是進(jìn)行能量形式的轉(zhuǎn)換,為機(jī)器提供適當(dāng)形式的動(dòng)力,傳動(dòng)裝置的作用是進(jìn)行動(dòng)力的傳遞,工作機(jī)構(gòu)即執(zhí)行機(jī)構(gòu),其作用是消耗能量而做功。如果原動(dòng)機(jī)將其他形式的能轉(zhuǎn)換成液壓能,執(zhí)行元件消耗液壓能而做功,則稱為液壓機(jī)械(或液壓機(jī))。液壓機(jī)械的執(zhí)行元件即做功元件是液壓馬達(dá)和液壓缸。液壓馬達(dá)和液壓缸是通用化和標(biāo)準(zhǔn)化程度很高的液壓元件,用戶或設(shè)計(jì)者在研制一部新的液壓機(jī)械時(shí),應(yīng)盡量選擇標(biāo)準(zhǔn)化的液壓元件,以避免金錢的浪費(fèi)和時(shí)間、精力的消耗。但由于使用要求的千差萬(wàn)別,液壓元件的專用化設(shè)計(jì)是不可避免的,其中以液壓缸設(shè)計(jì)居多。這是由于液壓缸配置的靈活性、設(shè)計(jì)、制造比較容易、維護(hù)比較方便的特點(diǎn)決定的。因而,相對(duì)其他液壓元件而言,液壓缸的設(shè)計(jì)是極為常見(jiàn)的,這也是工程技術(shù)人員必須具有的一項(xiàng)基本技能。3.2 液壓缸的一般組成部分液壓缸的常規(guī)組成部分為缸筒,缸底,活塞,活塞桿,缸蓋五大件。當(dāng)然會(huì)有一些特殊的結(jié)構(gòu),本文研究的是液壓缸的參數(shù)化以實(shí)現(xiàn)標(biāo)準(zhǔn)化,因此選擇常規(guī)液壓缸作為研究對(duì)象。1)缸筒: 缸筒又經(jīng)常被稱為缸體,是液壓缸的主體,內(nèi)孔使用鉸孔、鏜削、滾壓或珩磨等精密加工工藝制造,其目的是使活塞及其密封件等部件能順利滑動(dòng),從而既保證密封效果,又能夠減少磨損;缸體要承擔(dān)大量的壓強(qiáng),因此,在材料選擇上和精度要求一樣需要嚴(yán)格的選用。2)缸底: 缸底又有叫法為后端蓋,是與缸體連接部分,其中包含著密封、緩沖和排油等功能,同樣需要高精度和對(duì)材料的高要求,其目的是為了防止液壓液的泄露和提供穩(wěn)定的液壓缸工作環(huán)境。同時(shí)還提供對(duì)活塞桿的緩沖作用。3)活塞、活塞桿: 兩者都是活塞組件的主要組成部分,活塞桿的作用是傳遞作用于活塞上的力,同時(shí)帶動(dòng)活塞進(jìn)行運(yùn)動(dòng)。一般來(lái)說(shuō),我們對(duì)活塞組件的要求為良好的耐磨性,足夠的強(qiáng)度,穩(wěn)定性,較高的精度和表面粗糙度,結(jié)構(gòu)上減少集中應(yīng)力,保證連接可靠,便于活塞的拆裝。4)缸蓋:端蓋的作用與缸底類似,有所不同的是端蓋上需要有個(gè)通孔以便于活塞桿的對(duì)外運(yùn)動(dòng),要求需要更好的密封性和耐磨性。液壓缸的一般結(jié)構(gòu)如圖3.1 圖3.2所示,資料來(lái)源于網(wǎng)絡(luò)圖3.1常規(guī)液壓缸1剖視圖圖3.2常規(guī)液壓缸2剖視圖3.3 液壓缸設(shè)計(jì)和參數(shù)化由上面二圖可知,兩者在設(shè)計(jì)時(shí)結(jié)構(gòu)類似,大多數(shù)的參數(shù)化是一樣的,考慮大量設(shè)計(jì)時(shí)會(huì)出現(xiàn)大量的重復(fù)操作,因此將其中進(jìn)行重復(fù)操作的參數(shù)和結(jié)構(gòu)提取出來(lái)并進(jìn)行簡(jiǎn)化分析設(shè)計(jì),用以保證其結(jié)構(gòu)的完整性和簡(jiǎn)便性。在分析簡(jiǎn)化液壓缸時(shí),發(fā)現(xiàn)幾乎所有的參數(shù)都與液壓缸缸體的各個(gè)參數(shù)有關(guān),因此在建立模型時(shí)我大膽的選擇只建立一個(gè)液壓缸的缸體零件并確定其需要變化的參數(shù)。在選擇建立模型的時(shí)候?qū)⒁簤焊追譃槿齻€(gè)大分部建立:缸體,端蓋 活塞桿。1)缸體模型的建立在本次課題中所選用建立的是比較通用的液壓缸模型其中含有2個(gè)進(jìn)出油口分別位于缸體和端蓋上,選用的大小直徑為D=100mm,d=50mm本次設(shè)計(jì)的缸體大體尺寸選用如下:缸體長(zhǎng)度L=1650mm,與端蓋連接的凸臺(tái)長(zhǎng)度l=150mm,缸筒長(zhǎng)度為1200mm,缸筒外壁直徑為D=560mm,內(nèi)壁直徑d=460mm缸頭內(nèi)孔直徑d=420mm,缸頭缸底外徑D=660mm缸頭內(nèi)部凸臺(tái)長(zhǎng)度l=250mm,外部凸臺(tái)的長(zhǎng)度l=300mm在缸頭處添加了兩條密封槽,可以加密封圈加以固定初定距離為125mm,取內(nèi)部凸臺(tái)的中點(diǎn)。圖3.3為建立的缸體三維模型圖3.4為提取的需要變化的參數(shù)原始尺寸如圖3.4所示 圖3.3 液壓缸缸體三維模型 圖3.4 液壓缸缸體參數(shù)化2)端蓋的設(shè)計(jì)端蓋設(shè)計(jì)三維視覺(jué)圖如圖所示:在設(shè)計(jì)的過(guò)程端蓋起到的作用是密封和緩沖作用;各個(gè)尺寸如下圖所示:所有的尺寸都來(lái)自缸體參數(shù)的變化而變化。端蓋設(shè)計(jì)尺寸如下:端蓋外直徑為D=660mm,內(nèi)徑為420mm,與缸體連接處外徑為460mm,端蓋厚度為300mm,壁厚為100mm,連接處深入長(zhǎng)度為100mm,進(jìn)出油孔大小直徑分別為D=80mm,d=50mm。未標(biāo)注倒角為5mm 圖3.5 液壓缸端蓋三維圖和尺寸圖3)活塞桿的設(shè)計(jì)在設(shè)計(jì)時(shí),考慮到結(jié)構(gòu)的簡(jiǎn)易性和完整性,將活塞桿與活塞合為一體,一次性加工生成的?;钊麠U設(shè)計(jì)三維視覺(jué)圖: 圖3.6 液壓缸活塞桿三維圖在液壓缸中,活塞桿是運(yùn)動(dòng)元件,是將高壓液體的能量轉(zhuǎn)換輸出的元件。詳細(xì)尺寸如下:活塞直徑D=460mm,寬度l=200mm;左部分細(xì)桿長(zhǎng)度l=150mm,直徑D=260mm;主桿長(zhǎng)度L=1700mm,直徑d=410mm;右部分細(xì)桿直徑d=200mm,長(zhǎng)度l=400mm 圖3.7 液壓缸活塞桿尺寸圖從圖中尺寸和之前端蓋和缸體尺寸做對(duì)比可知,其各項(xiàng)參數(shù)均與缸體有直接關(guān)系并由缸體決定其尺寸大小。由此可知關(guān)鍵元件為缸體,所以在設(shè)計(jì)過(guò)程中,將缸體設(shè)計(jì)完之后就可以節(jié)約大量的時(shí)間,提高設(shè)計(jì)的效率。3.4液壓缸參數(shù)關(guān)系式確定三維建模完成后在工具中選擇族表里的關(guān)系和參數(shù),進(jìn)行模型的參數(shù)化,和進(jìn)行關(guān)系式的確定。關(guān)系式和參數(shù)化的結(jié)果如下:其數(shù)據(jù)與圖3.4一一對(duì)應(yīng)d34=(d3-d1)/2+5d30=(d34-5)*5/12d15=d16d16=(d3-d1)/16d14=d13d37=d8/2d36=d8*0.74d3=W1d2=W2d6=W3d1=W4d5=L1d9=L2d7=L3d8=L4d37=L5d17=L6d13=L7d28=W5d27=W6圖3.8 液壓缸缸體參數(shù)化示意圖其原始的初始化數(shù)據(jù)如下所示:?jiǎn)挝籱md3=660d2=560d6=460d1=420d5=150d9=1200d7=300d8=250d37=125d17=40d13=17d28=50d27=100當(dāng)液壓缸體的各項(xiàng)參數(shù)確定完之后,可以依據(jù)這些參數(shù)進(jìn)行全局的計(jì)算和設(shè)計(jì),同時(shí)二次開(kāi)發(fā)只需要更改關(guān)鍵的參數(shù),其余參數(shù)都可依靠關(guān)系式進(jìn)行更改,因此這樣就能節(jié)省大量的設(shè)計(jì)時(shí)間,特別是大規(guī)模的設(shè)計(jì)時(shí),將會(huì)極大得提高設(shè)計(jì)的效率,而不是把大量的時(shí)間花在大量的重復(fù)操作上。而改變參數(shù)化的關(guān)系式就能適應(yīng)其他不同類別液壓缸大量的設(shè)計(jì),而不需要去耗費(fèi)大量的精力。4 二次開(kāi)發(fā)系統(tǒng)設(shè)計(jì)4.1創(chuàng)建設(shè)計(jì)系統(tǒng)客戶端1)WinForm基本知識(shí)Windows窗體(Form,形狀/表單)原本是Visual Basic程序的用戶界面,后來(lái)成為.NET程序的GUI,被Visual Studio中的開(kāi)發(fā)語(yǔ)言工具所使用。窗體實(shí)質(zhì)上只是一個(gè)(類似于對(duì)話框的)簡(jiǎn)單框架窗口,內(nèi)含一塊空白板。開(kāi)發(fā)人員可通過(guò)添加控件(包括公共控件、容器、菜單和工具欄、數(shù)據(jù)和公用對(duì)話框等)來(lái)創(chuàng)建用戶界面,并通過(guò)編寫代碼來(lái)操作數(shù)據(jù),從而填充這個(gè)空白板。為此,Visual Studio提供了一個(gè)有助于編寫代碼的集成開(kāi)發(fā)環(huán)境,以及一個(gè)針對(duì).NET框架編程的豐富的控件集。通過(guò)使用代碼來(lái)補(bǔ)充這些控件的功能,可以方便快捷地開(kāi)發(fā)所需要的解決方案。 圖4.2工具箱示意圖 圖4.1窗體示意圖 兩種形式添加Windows窗體模式直接通過(guò)Visual Studio創(chuàng)建Windows窗體應(yīng)用程序,自動(dòng)創(chuàng)建的程序;在解決方案中添加Windows窗體;窗體文件生成后包括以下文件:在項(xiàng)目目錄下包涵項(xiàng)目文件(.sln)和C#項(xiàng)目(Design文件夾);在窗體的代碼文件中包涵Program.cs(程序入口)、Form1.cs(窗體編程)、Form1.Designer.cs(窗體設(shè)計(jì))。圖4.2窗體模式示意圖2)窗體設(shè)計(jì)流程添加按鈕及按鈕響應(yīng)事件的過(guò)程:添加按鈕直接從”工具箱”中選擇”按鈕”,將“按鈕”直接拖動(dòng)到From面板上;添加按鈕響應(yīng)選中按鈕,選擇“屬性”窗口的事件頁(yè),在“操作”欄的“Click”屬性中,利用該屬性項(xiàng)右端的下拉式列表,選擇對(duì)應(yīng)菜單項(xiàng)的響應(yīng)方法名; 圖4.3按鈕及按鈕響應(yīng)事件添加示意圖4.2開(kāi)發(fā)液壓缸參數(shù)化設(shè)計(jì)系統(tǒng)4.2.1 環(huán)境配置1)安裝Creo2.0 VB API安裝Creo2.0時(shí),在自定義界面選中 Visual Basic API 圖4.4安裝示意圖2)添加計(jì)算機(jī)的環(huán)境變量計(jì)算機(jī)右鍵屬性高級(jí)系統(tǒng)設(shè)置環(huán)境變量系統(tǒng)變量新建變量名:PRO_COMM_MSG_EXE變量值:安裝盤:ProgramFilesPTCCreo2.0CommonFilesM040x86e_win64objpro_comm_msg.exe圖4.5添加環(huán)境變量示意圖3)運(yùn)行批處理命令:vb_api_register.bat批處理的內(nèi)容為: echo off/根據(jù)系統(tǒng)變量%PROCESSOR%,%PROCESSOR_ARCHITECTURE%來(lái)設(shè)定MC的值 set MC=unset if %PROCESSOR% = INTEL_64 set MC=ia64_nt if %PROCESSOR% = INTEL_486 set MC=i486_nt if %PROCESSOR_ARCHITECTURE% = IA64 set MC=ia64_nt if %PROCESSOR_ARCHITECTURE% = AMD64 set MC=x86e_win64 if %PROCESSOR_ARCHITECTURE% = x86 set MC=i486_nt REM cygwin sets this on 64bit OS if %PROCESSOR_ARCHITEW6432% = AMD64 set MC=x86e_win64 if not %MC% = unset goto mc_done/如果沒(méi)有找到對(duì)應(yīng)的MC值,就直接退出,否則執(zhí)行mc_done后的程序 echo ERROR Cannot detect what machine type you have. echo Please make one of the following settings: echo. echo set PROCESSOR=INTEL_486 - For Windows NT Intel based machines. echo. echo set PROCESSOR=INTEL_64 - For Windows Intel Itanium based machines. echo. echo set PROCESSOR_ARCHITECTURE=AMD64 - For Windows AMD 64 based machines. echo. exit :mc_doneif NOT %CREO_DIRECTORY% = goto creoset/如果%CREO_DIRECTORY%變量不為空,則轉(zhuǎn)到 creoset標(biāo)簽后的語(yǔ)句執(zhí)行 set APPDIR=%dp0. set cf=%dp0. set PRODIR=%cf%Common FilesM040 goto pdirset :creoset set PRODIR=%CREO_DIRECTORY%Common FilesM040 :pdirset set PRO_MACHINE_TYPE=%MC% set start_cmd=start set PRO_DIRECTORY=%PRODIR% set CREOAPP_DIRECTORY=%APPDIR% if NOT %PTCPATH% = goto ptcpathset set path=%PRO_DIRECTORY%bin;%path% set PTCPATH=true :ptcpathset %PRO_DIRECTORY%MC%objpfclscom.exe ./regserver :ptc_end exit /B %ERRORLEV EL%/退出當(dāng)前作業(yè),并返回錯(cuò)誤代碼%ERRORLEVEL%4.2.2 Creo/VBA API調(diào)用1)啟動(dòng)和停止Pro/ENGINEER當(dāng)使用C#程序,下列方法用來(lái)啟動(dòng)和停止Pro/ENGINEER。 方法介紹: CcpfcAsyncConnection.Start() IpfcAsyncConnection.End() 一個(gè)C#程序可以通過(guò)CcpfcAsyncConnection.Start()方法去產(chǎn)生并連接到一個(gè)Pro/ENGINEER進(jìn)程。一旦方法返回異步連接對(duì)象,C#程序可以使用相應(yīng)的API去調(diào)用Pro/ENGINEER進(jìn)程。在交互模式,當(dāng)它運(yùn)行時(shí),你還可以在你的計(jì)算機(jī)上訪問(wèn)Pro/ENGINEER會(huì)話。 當(dāng)Pro/ENGINEER終止時(shí),這個(gè)程序不會(huì)終止。當(dāng)程序只是臨時(shí)需要進(jìn)行Pro/ENGINEER操作的時(shí)候很有用,因此在會(huì)話中,必須啟動(dòng)和停止Pro/ENGINEER一次以上。 在任何時(shí)候,只有一個(gè)Pro/ENGINEER會(huì)話可以被啟動(dòng)或連接。如果C#程序產(chǎn)生出第二個(gè)會(huì)話,對(duì)第一個(gè)會(huì)話的連接將丟失。 為終止任何程序連接的Pro/ENGINEER進(jìn)程,調(diào)用IpfcAsyncConnection.End()方法。 2)Session 對(duì)象Pro/ENGINEER Session 對(duì)象(包含在 IpfcSession 對(duì)象里),是 VBA API中的頂級(jí)對(duì)象。任何對(duì)Pro/ENGINEER 數(shù)據(jù)的訪問(wèn),在訪問(wèn)更多特定對(duì)象前,必須先得到Session 對(duì)象的句柄。Session 對(duì)象包含進(jìn)行執(zhí)行下列操作的方法: 訪問(wèn)模型和窗口(在模型和窗口里說(shuō)明); 同 Pro/ENGINEER 用戶接口工作; 允許在session 里交互選擇條目; 訪問(wèn)全局設(shè)置,例如線型,顏色和配置選項(xiàng)。3)主要函數(shù)IpfcBaseSession.GetCurrentDirectory()方法返回Pro/ENGINEER的當(dāng)前工作目錄的絕對(duì)路徑名。IpfcBaseSession.ChangeDirectory()方法改變Pro/ENGINEER到另一個(gè)工作目錄。 IpfcBaseSession.GetConfigOptionValue()區(qū)獲得一個(gè)指定配置文件選項(xiàng)的值。傳遞配置文件選項(xiàng)的名字給這個(gè)方法。方法返回任何配置文件選項(xiàng)設(shè)置的一個(gè)值數(shù)組。如果配置文件選項(xiàng)不是一個(gè)多值選項(xiàng),它返回一個(gè)單值。如果指定配置文件選項(xiàng)不存在,它返回一個(gè)null。 IpfcBaseSession.SetConfigOption()方法用來(lái)設(shè)置指定配置文件選項(xiàng)的值。如果選項(xiàng)是個(gè)多值選項(xiàng),它向已經(jīng)存在的值數(shù)組里增加一個(gè)新值。 IpfcBaseSession.LoadConfigFile()方法加載一整個(gè)配置文件到Pro/ENGINEER里。 IpfcBaseSession.RunMacro()方法跑一個(gè)宏串。一個(gè) VB API宏串等于一個(gè)Pro/ENGINEER映射鍵減去鍵序列和映射鍵名。為生成一個(gè)宏串,在Pro/ENGINEER里創(chuàng)建個(gè)映射鍵。IpfcSession.UIDisplayFeatureParams()方法強(qiáng)制Pro/ENGINEER去顯示存儲(chǔ)在一個(gè)指定特征的尺寸或其它參數(shù)。顯示的尺寸然后可以被用戶交互選擇。CMpfcModelItem. CreateDoubleParamValue ()方法允許Pro/ENGINEER去創(chuàng)建一個(gè)Double類型的參數(shù)值。IpfcParameterOwner. GetParam()方法允許Pro/ENGINEER去獲取一個(gè)參數(shù)。IpfcSession.UIOpenFile()方法引發(fā)一個(gè)打開(kāi)文件和瀏覽目錄的Pro/ENGINEER對(duì)話框。這個(gè)方法允許你通過(guò)輸入?yún)?shù)IpfcFileOpenOptions去指定幾個(gè)選項(xiàng)。 使用CcpfcFileOpenOptions.Create()去創(chuàng)建一個(gè)新IpfcUI.FileOpenOptions對(duì)象實(shí)例。 這個(gè)方法返回用戶選擇的文件。程序必須使用其它方法或技術(shù)去進(jìn)行在這個(gè)文件上的所需操作。 IpfcSession.UISaveFile()方法調(diào)用Pro/ENGINEER的保存文件對(duì)話框。這個(gè)方法接受同IpcSession.UIOpenFile()相似的選項(xiàng)。用戶將被允許去給給一個(gè)不存在的文件設(shè)置一個(gè)名字。方法返回用戶選擇的文件名;程序必須使用其它方法或技術(shù)去進(jìn)行對(duì)這個(gè)文件的所需操作。 IpfcSession.UISelectDirectory()方法提示用戶去使用Pro/ENGINEER瀏覽目錄對(duì)話框去選擇一個(gè)目錄。指定對(duì)話框的標(biāo)題,一系列到其它目錄的快捷方式,和瀏覽目錄的默認(rèn)目錄。如果默認(rèn)目錄為空,使用當(dāng)前目錄。這個(gè)方法接受對(duì)話框標(biāo)題,快捷鍵和默認(rèn)目錄選項(xiàng)。方法返回選擇的目錄路徑;程序必須使用其它方法或技術(shù)去進(jìn)行對(duì)這個(gè)目錄的所需操作。4.2.3 新建項(xiàng)目1)使用Visual Studio 2010新建一個(gè)解決方案,在”引用”中添加Creo VB API Type Library for Creo Parametric 2.0圖4.6 VB VPI接口添加示意圖2)添加啟動(dòng)按鈕,并在啟動(dòng)按鈕單擊事件中異步啟動(dòng)Creo代碼編寫流程圖:加入命名空間加載并顯示模型配置交互界面獲取啟動(dòng)文件位置更新模型,刷新窗口添加菜單參數(shù)傳遞添加設(shè)計(jì)對(duì)話框、變量圖4.7 代碼編寫流程圖(1)在代碼里加入命名空間using pfcls;(2)然后獲取creo的啟動(dòng)文件位置string str = Environment.CurrentDirectory;string str1 = str + + path.txt;string strline=;if (File.Exists(str1)using (StreamReader sr = new StreamReader(str1)string line;while (line = sr.ReadLine() != null)strline = strline + line (3)啟動(dòng)Creo,獲取SessioncAC = new CCpfcAsyncConnection();asyncConnection = cAC.Start(strline, .);theSession = asyncConnection.Session as IpfcBaseSession;theSession.ChangeDirectory(System.Environment.CurrentDirectory);theSession.SetConfigOption(regen_failure_handling, resolve_mode);圖4.8窗口設(shè)計(jì)示意圖(4)添加監(jiān)聽(tīng)器(IpfcActionSource)asyncConnection).AddActionListener(terminationListener);(5)添加菜單IpfcUICommand designCommand;IpfcUICommand exitCommand;IpfcUICommandActionListener buttonListener;/液壓缸參數(shù)化設(shè)計(jì)IpfcUICommandActionListener eListener;/退出系統(tǒng)buttonListener = new ButtonListener(theSession);eListener = new ExitListener(asyncConnection);string str = menu.txt;asyncConnection.Session.UIAddMenu(參數(shù)化設(shè)計(jì), Windows, str, null);exitCommand = asyncConnection.Session.UICreateCommand(EXIT, eListener);asyncConnection.Session.UIAddButton(exitCommand, 參數(shù)化設(shè)計(jì), null, 退出系統(tǒng), 退出系統(tǒng), str);exitCommand.SetIcon(Environment.CurrentDirectory + + close.png);designCommand=asyncConnection.Session.UICreateCommand(DESIGN,buttonListener)asyncConnection.Session.UIAddButton(designCommand, 參數(shù)化設(shè)計(jì), null, 液壓缸參數(shù)化設(shè)計(jì), 液壓缸參數(shù)化設(shè)計(jì), str);designCommand.SetIcon(Environment.CurrentDirectory + + design.png);(6)配置菜單資源文件新建menu.txt文件,內(nèi)容如下:#參數(shù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 民用節(jié)能鍋爐維修方案(3篇)
- 環(huán)衛(wèi)績(jī)效考核方案(3篇)
- 樓房救援方案(3篇)
- 道口施工方案(3篇)
- 壁畫(huà)方案模板(3篇)
- 農(nóng)資提成方案(3篇)
- 酒店弱電養(yǎng)護(hù)方案(3篇)
- 縣城環(huán)衛(wèi)保潔方案(3篇)
- 桉樹(shù)育苗場(chǎng)建造方案(3篇)
- 客服差價(jià)安撫方案(3篇)
- 湖南鄉(xiāng)村教育現(xiàn)狀分析報(bào)告
- 網(wǎng)絡(luò)安全技術(shù)與攻防演練
- 鐵路車輛-鐵路車輛的運(yùn)用與檢修
- 火鍋店領(lǐng)班的崗位職責(zé)和工作流程
- 二人合伙協(xié)議書(shū)(電子版)
- 上門廚師項(xiàng)目商業(yè)計(jì)劃書(shū)
- 第35屆中國(guó)化學(xué)奧林匹克(初賽競(jìng)賽)試題及參考答案
- 許可證有效期內(nèi)輻射安全和防護(hù)工作總結(jié)
- 四川省中小流域暴雨洪水計(jì)算表格(尾礦庫(kù)洪水計(jì)算)
- 山東大學(xué)齊魯醫(yī)學(xué)院
- 椅子部件圖紙
評(píng)論
0/150
提交評(píng)論