




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGE目錄第一章緒論 11.1課題研究背景和意義 11.1.1設(shè)計手段 11.1.2分析理論 21.1.3外觀造形 21.1.4液壓部件CAD系統(tǒng)的意義 2HYPERLINK\l"_Toc262548641"1.2CAD技術(shù)的特點及應用 41.2.1CAD技術(shù)的特點 41.2.2CAD(算機輔助設(shè)計)應用 51.3CAD/CAM技術(shù)的發(fā)展概述 71.4SolidWorks軟件簡介及應用 101.4.1SolidWorks軟件主要有以下基本功能: 10HYPERLINK\l"_Toc262548647"第二章SolidWorks二次開發(fā) 132.1SolidWorks二次開發(fā)簡介 142.2SolidWorks二次開發(fā)的兩種基本方式 142.2.1基于OLE自動化技術(shù) 142.2.2基于COM
規(guī)范 152.3SolidWorks
的二次開發(fā)工具 152.4SolidWorks宏簡介 162.5SolidWorks二次開發(fā)方法比較 182.6SolidWorks二次開發(fā)的基本原理 48655\h192.7本系統(tǒng)的具體開發(fā)方案 20第三章數(shù)據(jù)庫 213.1數(shù)據(jù)庫的簡介 21HYPERLINK\l"_Toc262548659"3.1.1數(shù)據(jù)庫結(jié)構(gòu)及應用 213.1.2數(shù)據(jù)庫技術(shù)的應用 223.3數(shù)據(jù)庫接口技術(shù)(Access數(shù)據(jù)庫引擎) 22HYPERLINK\l"_Toc262548662"第四章VisualBasic6.0 254.1VisualBasic6.0簡介 254.1.2VisualBasic6.0的新特點 \h264.2VB開發(fā)液壓閥標準件庫的實例 284.2.1分析結(jié)構(gòu)特征,建立DV節(jié)流截止閥和單向節(jié)流截止閥體模型 294.3用VB開發(fā)人機交互界面及運行結(jié)果 PAGEREF_Toc262548667\h30結(jié)論 44致謝 45參考文獻 46PAGE-46-基于VB的DV節(jié)流截止閥和單向節(jié)流截止閥SolidWorks的二次開發(fā)060606415馬冶指導教師:高長銀教授第一章緒論1.1課題研究背景和意義液壓部件因具有結(jié)構(gòu)簡單、工藝適應性強、環(huán)境污染小等其他設(shè)備不可替代的性能特點,被廣泛應用于汽車制造、航空航天、國防、電力電子、塑料、機械、冶金和輕工等國民經(jīng)濟的各個領(lǐng)域。據(jù)不完全統(tǒng)計,目前我國以液壓部件為主要產(chǎn)品的設(shè)計部門和生產(chǎn)廠已達百家之多,但CAD的應用情況卻令人失望。液壓部件設(shè)計與制造業(yè)的整體技術(shù)水平遠遠落后于工業(yè)發(fā)達國家,使國際市場的激烈競爭和我國落后的設(shè)計水平這一矛盾日趨尖銳。具體表現(xiàn)在以下幾方面:1.1.1設(shè)計手段國內(nèi)液壓部件的主要設(shè)計單位,包括占主導地位的第一重型機械集團公司設(shè)計院在內(nèi)的一些大型設(shè)計院所,其設(shè)計工作仍然是以圖板作業(yè)為主,設(shè)計工作的好與壞完全取決于設(shè)計人員的技術(shù)素質(zhì)和工作狀態(tài)。因此,設(shè)計質(zhì)量(包括結(jié)構(gòu)設(shè)計的合理性、設(shè)計數(shù)據(jù)的準確性等)和設(shè)計效率低、設(shè)計周期長。同時,落后的設(shè)計手段也給報價工作帶來了許多不便,如報價書編制時間長、報價偏差大等。所有這些,都在不同程度上影響著一個企業(yè)的競爭能力。1.1.2分析理論近十幾年來,雖然在某些有條件的設(shè)計院所,對液壓系統(tǒng)的關(guān)鍵零部件也能作一些有限元結(jié)構(gòu)分析,但是由于設(shè)計手段落后,這些分析結(jié)果在設(shè)計中未能起到應有的作用。所以,液壓部件設(shè)計中的強度、剛度以及整體工作性能分析,仍然是以材料力學為依據(jù),甚至僅憑經(jīng)驗和直覺。用材料力學解決這樣復雜的實際問題,不得不把空間問題簡化為平面問題,這樣就極大地偏離了實際情況。為此,人們不得不把材料的許用強度降低,以犧牲結(jié)構(gòu)的合理性來換取結(jié)構(gòu)的安全性。由于科技含量相對低,所以與日本同類產(chǎn)品比較,就顯得結(jié)構(gòu)龐大、笨重,同樣能力的設(shè)備,其重量一般都要高出10%~20%。且其成本競爭力也完全處于劣勢。1.1.3外觀造形設(shè)備外觀造形問題,只是在最近幾年才引起人們的重視,剛剛在設(shè)計人員的頭腦中形成了一種意識。由于缺乏造形手段,這種意識最終也只能變成一種設(shè)計人員的個人行為。設(shè)計者各自為陣,各行其是,根本就談不上以此來塑造一個企業(yè)的風格和特征。產(chǎn)品的外觀造形缺少科學與藝術(shù)方面的考慮,也是產(chǎn)品缺乏競爭能力的一個重要因素。1.1.4液壓部件CAD系統(tǒng)的意義隨著機械行業(yè)CAD推廣應用工作的深化,絕大多數(shù)液壓機械設(shè)計院所及制造廠家在這方面也作了大量的工作,為實現(xiàn)真正意義上的CAD奠定了基礎(chǔ)。不過就目前的CAD應用情況來看,尚存以下兩個問題:其一,CAD工作進展緩慢,成果零散,難以發(fā)揮優(yōu)勢。幾個大院所從國外購買的軟件主要用于有限元分析,作為CAD平臺開展二次開發(fā)工作的極少,開發(fā)的軟件水平也不高,針對性太強,應用局限性很大。其二,現(xiàn)有的大多數(shù)CAD軟件在用戶界面方面存在著交互困難、操作不便的問題,極大地限制了CAD技術(shù)的推廣應用。
面向二十一世紀,企業(yè)要生存和發(fā)展,就必須有效地掌握先進的生產(chǎn)力,樹立強烈的市場、成本和效益意識。開發(fā)和設(shè)計產(chǎn)品,也必須滿足用戶對品種、批量、時間和質(zhì)量等諸方面的要求。所以,根據(jù)工藝用途、制造成本、機器性能等技術(shù)經(jīng)濟指標,能夠靈活修改設(shè)計方案,適時分析結(jié)構(gòu)性能,準確評價整機或關(guān)鍵部分的功能和性態(tài),優(yōu)化結(jié)構(gòu)參數(shù),為制造提供高質(zhì)量、高水平的成套技術(shù)資料,是現(xiàn)階段機械制造行業(yè)孜孜追求的目標,是促進CAD技術(shù)蓬勃發(fā)展的動力源泉。今天,是否掌握CAD應用技術(shù)已經(jīng)成為衡量一個企業(yè)能否邁入信息時代的重要標志。CAD已經(jīng)被公認為是提高企業(yè)參與競爭能力的有效技術(shù)和方法之一。
融合專家系統(tǒng)(ES)的CAD技術(shù),依賴專家的知識和經(jīng)驗、以人類專家的水平解決本領(lǐng)域中的技術(shù)設(shè)計問題,使設(shè)計過程智能化,無疑是對設(shè)計方法的一次革命。盡管把專家系統(tǒng)引入機械設(shè)計也只有短短十幾年的歷史,但是由于機械設(shè)計專家系統(tǒng)(MDES)可為現(xiàn)代化的機械設(shè)計提供詳實、可靠、規(guī)范、高效的設(shè)計依據(jù),所以已經(jīng)激發(fā)了大批企業(yè)的應用熱情。基于專家系統(tǒng)、面向微機的液壓部件CAD系統(tǒng),可望把我國液壓機本體設(shè)計技術(shù)從落后的圖板作業(yè)水平提高到現(xiàn)代設(shè)計的先進水平。開發(fā)這項先進的技術(shù),對于改善我國液壓機設(shè)計與制造業(yè)的落后局面,促進民族工業(yè)的進步,實現(xiàn)液壓機產(chǎn)品的優(yōu)化設(shè)計,縮短設(shè)計和開發(fā)周期,提高質(zhì)量,增強企業(yè)在國際市場上的競爭能力,使我國液壓機制造業(yè)逐步實現(xiàn)CAD/CAM一體化,具有極其重要的意義。1.2CAD技術(shù)的特點及應用1.2.1CAD技術(shù)的特點CAD技術(shù)是一項綜合性的,集計算機圖形學、數(shù)據(jù)庫、網(wǎng)絡(luò)通訊等計算機及其它領(lǐng)域知識于一體的高新技術(shù);是先進制造技術(shù)的重要組成部分;也是提高設(shè)計水平、縮短產(chǎn)品開發(fā)周期、增強行業(yè)競爭能力的一項關(guān)鍵技術(shù)。CAD能夠提高產(chǎn)品的設(shè)計質(zhì)量,縮短科研和新產(chǎn)品開發(fā)周期,降低消耗,提高新產(chǎn)品的可信度,大幅度提高勞動生產(chǎn)率,實現(xiàn)腦力勞動自動化??傮w來講,CAD系統(tǒng)具有以下優(yōu)點:縮短產(chǎn)品開發(fā)周期:由于計算機運算速度及數(shù)據(jù)查詢速度極快,用戶根據(jù)設(shè)計目標向計算機發(fā)出指令,計算機則根據(jù)人的意圖做出反應。對特定的產(chǎn)品,利用專門的軟件或程序,設(shè)計速度可以提高幾十倍。由于計算機能夠直觀地將設(shè)計結(jié)果展示出來,設(shè)計者根據(jù)計算機的顯示可以做出快速的反應。在計算機上修改設(shè)計比在圖紙上修改要容易得多,而且計算機能提供復制、查詢等功能。因此采用CAD系統(tǒng)能夠極大地提高設(shè)計效率。提高產(chǎn)品設(shè)計質(zhì)量:由于計算精度高和便于優(yōu)化設(shè)計,設(shè)計人員在具備專業(yè)知識的基礎(chǔ)上,利用CAD手段可以完成更高質(zhì)量的設(shè)計。設(shè)計人員利用實體造型可以直觀地在計算機中將產(chǎn)品制作出來。采用先進的參數(shù)化設(shè)計、全相關(guān)數(shù)據(jù)庫技術(shù)可以最大限度地避免設(shè)計上的疏忽。降低生產(chǎn)成本:由于CAD能夠縮短設(shè)計、加工和裝配的時間,降低廢品率,減少庫存,所以將大大降低企業(yè)的生產(chǎn)成本。提高管理水平:CAD系統(tǒng)所生成的設(shè)計結(jié)果主要是計算機數(shù)據(jù),保存和檢索都比較容易。在已經(jīng)建立企業(yè)內(nèi)部網(wǎng)的前提下,采用產(chǎn)品數(shù)據(jù)管理技術(shù)易于實現(xiàn)全局性的管理,提高企業(yè)的管理水平。盡管CAD系統(tǒng)功能非常強大,但如果沒有人能夠正確地操作和使用,CAD系統(tǒng)根本不可能產(chǎn)生經(jīng)濟效益。CAD對操作者的專業(yè)知識、外語能力和計算機水平要求較高。技術(shù)人員一般需要較長的時間熟悉CAD,了解其功能和用法。因此培養(yǎng)優(yōu)秀的CAD系統(tǒng)使用人員是當務(wù)之急。1.2.2CAD(算機輔助設(shè)計)應用計算機輔助設(shè)計開始用于機械行業(yè),到現(xiàn)在CAD已是一個包括范圍很廣的概念。概括來說,CAD的設(shè)計對象有兩大類,一類是機械、電氣、電子、輕工和紡織產(chǎn)品;另一類是工程建筑。而如今,CAD技術(shù)的應用范圍已經(jīng)延伸到藝術(shù)、電影、動畫、廣告和娛樂等領(lǐng)域,產(chǎn)生了巨大的經(jīng)濟及社會效益,有著廣泛的應用前景。CAD在機械制造行業(yè)的應用最早,也最為廣泛。采用CAD技術(shù)進行產(chǎn)品設(shè)計不但可以使設(shè)計人員“甩掉圖板”,更新傳統(tǒng)的設(shè)計思想,實現(xiàn)設(shè)計自動化,降低產(chǎn)品的成本,提高企業(yè)及其產(chǎn)品在市場上的競爭能力;還可以使企業(yè)由原來的串行式作業(yè)轉(zhuǎn)變?yōu)椴⑿凶鳂I(yè),建立一種全新的設(shè)計和生產(chǎn)技術(shù)管理體制,縮短產(chǎn)品的開發(fā)周期,提高勞動生產(chǎn)率。如今世界各大航空、航天及汽車等制造業(yè)巨頭不但廣泛采用CAD/CAM技術(shù)進行產(chǎn)品設(shè)計,而且投入大量的人力物力及資金進行CAD/CAM軟件的開發(fā),以保持自己技術(shù)上的領(lǐng)先地位和國際市場上的優(yōu)勢。計算機輔助建筑設(shè)計(ComputerAidedArchitectureDesign,簡稱CAAD)是CAD在建筑方面的應用,它為建筑設(shè)計帶來了一場真正的革命。隨著CAAD軟件從最初的二維通用繪圖軟件發(fā)展到如今的三維建筑模型軟件,CAAD技術(shù)已開始被廣為采用,這不但可以提高設(shè)計質(zhì)量,縮短工程周期,還可以節(jié)約2%至5%的建設(shè)投資,而近幾年來我國每年的基本建設(shè)投資都有幾千億元之多,如果全國大小近萬個工程設(shè)計單位都采用CAAD技術(shù),則可以大大提高基本建設(shè)的投資效益。CAD技術(shù)還被用于輕紡及服裝行業(yè)中。以前我國紡織品及服裝的花樣設(shè)計、圖案的協(xié)調(diào)、色彩的變化、圖案的分色、描稿及配色等均由人工完成,速度慢、效率低,而目前國際市場上對紡織品及服裝的要求是批量小、花色多、質(zhì)量高、交貨要迅速,這使得我國紡織產(chǎn)品在國際市場上的競爭力不強。采用CAD技術(shù)以后,大大加快了我國紡織及服裝企業(yè)走向國際市場的步伐。如今,CAD技術(shù)已進入到人們的日常生活中,在電影、動畫、廣告和娛樂等領(lǐng)域大顯身手。電影拍攝中利用CAD技術(shù)已有十余年的歷史。動畫和廣告制作中也充分利用了計算機造型技術(shù),實質(zhì)上也是一種虛擬現(xiàn)實技術(shù)。虛擬現(xiàn)實技術(shù)還被用于各種模擬器及景物的實時漫游、娛樂游戲中。近十年來,在CIMS工程和CAD應用工程的推動下,我國計算機輔助設(shè)計技術(shù)應用越來越普遍,越來越多的設(shè)計單位和企業(yè)采用這一技術(shù)來提高設(shè)計效率、產(chǎn)品質(zhì)量和改善勞動條件。目前,我國從國外引進的CAD軟件有好幾十種,國內(nèi)的一些科研機構(gòu)、高校和軟件公司也都立足于國內(nèi),開發(fā)出了自己的CAD軟件,并投放市場,我國的CAD技術(shù)應用呈現(xiàn)出一片欣欣向榮的景象。1.3CAD/CAM技術(shù)的發(fā)展概述CAD/CAM技術(shù)誕生至今已經(jīng)約有40年的歷史了,這項技術(shù)工程已經(jīng)成為當今世界設(shè)計、制造和管理領(lǐng)域內(nèi)重大的新興技術(shù)工程,備受世人的矚目。該技術(shù)應用的范圍及其廣泛,它可以應用于航空航天、船舶、海洋工程、汽車、電子、醫(yī)學等諸多領(lǐng)域。它的廣泛使用使得產(chǎn)品的開發(fā)周期大幅度的縮減,推動了各行業(yè)的快速發(fā)展。CAD/CAM技術(shù)的發(fā)展經(jīng)歷了三代。第一代CAD/CAM軟件的開發(fā)開始于二十世紀60年代中期,是以交互式圖形生成技術(shù)為基礎(chǔ)而建立的應用技術(shù)系統(tǒng),公司的CAD—l,美國航空空間協(xié)會(AIA)的APT、APTII和APTIII。但第一代產(chǎn)品的共同缺點是以二維繪圖為主、規(guī)模龐大、價格昂貴。第二代CAD/CAM系統(tǒng)軟件的開發(fā)是在二十世紀70年代,這一時期以小型三維繪圖和數(shù)據(jù)加工;線框、曲面、和實體建模;有限元分析等,屬于多數(shù)據(jù)庫和分散數(shù)據(jù)結(jié)構(gòu)、順序設(shè)計過程的系統(tǒng),但是其缺點是:難以實現(xiàn)系統(tǒng)的真正集成、數(shù)據(jù)分散、缺乏管理,三維技術(shù)不成熟。現(xiàn)再次推動了CAD/CAM技術(shù)的快速發(fā)展。工作站,是以個人計算環(huán)境和分布有較高的響應速度,其功能已超過了小型的CAD/CAM系統(tǒng)。這一代的主要特點是:使用單一數(shù)據(jù)庫和統(tǒng)一的數(shù)據(jù)結(jié)構(gòu),實現(xiàn)了系統(tǒng)的集成和各分系統(tǒng)的全關(guān)聯(lián),提供了數(shù)據(jù)管理功能。CAD/CAM技術(shù)發(fā)展至今,也已經(jīng)研發(fā)了諸多的軟件系統(tǒng),其中應用較為廣泛的CAD/CAM軟件有:AutoDesk公司的AutoCAD、3DMax;SolidWorks公司的SolidWorks;CV公司的CADDSPersonalDesigner;Pro/E軟件;Micro-CADAM軟件、Intergraph公司的SolidEdge軟件等。二十世紀70年代末,我國開始引進CAD/CAM技術(shù),并且最早在機械行業(yè)開始應用。近40年來,經(jīng)過“六五”探索、“七五”技術(shù)攻關(guān)、“八五"普及推廣、“九五”深化應用的促進,CAD/CAM技術(shù)已經(jīng)取得了長足的發(fā)展,亦為我國社會主義現(xiàn)代化建設(shè)作出來突出的貢獻。但是,我國企業(yè)CAD/CAM技術(shù)應用方面,在很長的一段時期內(nèi)主要停留在二維繪圖水平上,只是在近幾年三維技術(shù)才有了較為迅速的發(fā)展。隨著三維CAD技術(shù)的日趨完善,微機的普及及其性價比的提高,工數(shù)據(jù)庫管理系統(tǒng)(EngineeringDatabaseManagementSystem,EDBMS)的在工程繪圖中應用,從長遠發(fā)展觀點三維繪圖技術(shù)必將替代二維繪圖技術(shù)。經(jīng)過近幾十年的發(fā)展,我國CAD/CAM技術(shù)有了長足發(fā)展,已被廣泛用于我國企業(yè);我國CAD/CAM軟件的開發(fā)水平也逐漸接近國外先進水平。但是整體來說,我國目前CAD/CAM軟件不管是從產(chǎn)品開發(fā)水平還是從商品化、市場化程度都與發(fā)達國家尚有不小差距。例如:不少企業(yè)對CAD的認識還僅停留在繪圖階段,從而使CAD產(chǎn)生的效益尚未充分發(fā)揮;CAD/CAM軟件應用人員參差不齊,CAD軟件不能得到高效率應用;缺少既適合教學又滿足企業(yè)需求的軟件及教學平臺。CAD/CAM技術(shù)水平還處于向高技術(shù)集成和向產(chǎn)業(yè)化商品化過渡的時期,還沒有針對性的軟件,一般都是使用通用性軟件。雖在微機平臺上開發(fā)CAD/CAM軟件方面我國與國外起點差不多,但對引進的CAD/CAM系統(tǒng)的二次開發(fā)卻跟不上,致使引進軟件的效率不能完全發(fā)揮。針對21世紀機械制造行業(yè)的基本特征,CAD/CAM技術(shù)的發(fā)展趨勢也呈現(xiàn)出以下幾個特征:標準化、集成化技術(shù)、智能化技術(shù)、網(wǎng)絡(luò)技術(shù)的應用、多學科多功能綜合產(chǎn)品設(shè)計技術(shù)等。當然,我們也要看到我們的優(yōu)勢,那就是:了解本國市場,便于提供技術(shù)支持,相對價格便宜等。國際和國內(nèi)的理論和實踐給我們提供了很好的方法和理念,拓展了我們更多的發(fā)展空間。在這些前提下,我國CAD/CAM產(chǎn)業(yè)只要緊跟時代潮流,跟蹤國際最新動態(tài),遵守國際規(guī)范,形成自己獨特的優(yōu)勢,并且立足國內(nèi)、結(jié)合國情、面向國內(nèi)經(jīng)濟建設(shè)的需要,一定能夠開發(fā)出有特色的符合中國人習慣的CAD/CAM軟件,為我國制造業(yè)的發(fā)展插上騰飛的翅膀。1.4SolidWorks軟件簡介及應用SolidWorks軟件是在總結(jié)和繼承了大型機械CAD軟件的基礎(chǔ)上,在Windows環(huán)境下實現(xiàn)的全參數(shù)化三維實體造型軟件,它具有強大的零件設(shè)計、鈑金設(shè)計、管理設(shè)計、繪制二維工程圖、支持異地協(xié)同工作等功能,能使零件設(shè)計、裝配設(shè)計和工程圖保持時刻的全相關(guān)和同步。同時SolidWorks具有良好的開放性和兼容性,可以和多種軟件集成。SolidWorks是目前機械制造業(yè)應用非常廣泛的基于windows平臺的三維CAD軟件。它是一套基于windows平臺CAD/CAM/CAE/PDM桌面集成系統(tǒng)。它是設(shè)計數(shù)據(jù)100可以編程,尺寸、相互關(guān)系和幾何輪廓形狀可以隨時修改;具有特征管理器,復雜零部件的細節(jié)和布局設(shè)計清楚明了,操作簡單;全關(guān)于技術(shù)使得零部件之間和零部件與圖紙之間的更新安全同步;自動進行動態(tài)約束檢查,具有強勁的復雜曲面造型功能;既可以直接設(shè)計也可以按零件的三維立體圖形進行設(shè)計。由于采用了特征建模技術(shù)和設(shè)計工程的全相關(guān)技術(shù),而且為用戶提供了功能強大的應用程序API接口,是目前進行閥體等二次開發(fā)的一個非常理想的工具。用戶可通過對SolidWorks的二次開發(fā),設(shè)計制造出自己獨特的產(chǎn)品,以滿足不同企業(yè)對不同產(chǎn)品的工藝設(shè)計要求,由于以上特點,SolidWorks成為目前微機平臺上的主流三維設(shè)計軟件1.4.1SolidWorks軟件主要有以下基本功能:(1)易用性及對傳統(tǒng)數(shù)據(jù)格式的支持SolidWorks完全采用了Microsoftwindows的標準技術(shù),如菜單、工具條、組件技術(shù)、結(jié)構(gòu)化存取、內(nèi)嵌VB(VBA)技術(shù)等。設(shè)計者在進行三維設(shè)計的過程中可享受Windows系統(tǒng)的便捷與優(yōu)勢。SolidWorks將目前市場幾乎所有的機械CAD軟件集成到設(shè)計環(huán)境中。支持DWG/DXF文件的輸入與輸出,方便與AutoCAD軟件進行數(shù)據(jù)交換。SolidWorks還提供了各種三維軟件數(shù)據(jù)接口格式,可輸入Parasolid、UGII、Pro/E、SolidEdge、Inventor等格式的零件和裝配體的支持,還可輸出VRML、Tiff、Jpg等格式文件。(2)草圖功能基于幾何關(guān)系建立草圖繪制方法,使草圖的繪制快捷而簡單。SolidWorks使用三維設(shè)計方法。設(shè)計零件時,從初始草圖開始,創(chuàng)建一個模型,并且用這個模型可建立二維工程圖和三維裝配體。(3)特征一般可用草圖建立一個基本特征,然后附加上更多的特征,最終建立零件模型。在此過程中可通過對特征的增減、改變或調(diào)動來自由地重定義設(shè)計。以拉伸、旋轉(zhuǎn)、掃描、放樣等方式生成三維實體,并通過圓角、抽殼、倒角、變形、分割等操作對生成的實體進行加工。模擬機械加工方式,使用戶在設(shè)計制作零件、裝配體或產(chǎn)品時更加直觀。同時SolidWorks是一種尺寸驅(qū)動系統(tǒng)??芍付ǔ叽绾透鲗嶓w之間的關(guān)系,改變零件的大小和形狀,并保留原有的設(shè)計意圖。(3)裝配功能SolidWorks提供了完善的產(chǎn)品緩步裝配功能,以便創(chuàng)建和記錄裝配體設(shè)計過程,同時還支持大型裝配體模式,擁有干涉檢查、產(chǎn)品的簡單運動仿真、編輯零件裝配體透明度等功能。(4)工程圖SolidWorks模型由零件、裝配體和工程圖組成,并且三者具有聯(lián)動功能。零件、裝配體和工程圖之間的聯(lián)動關(guān)系,保證了一個視圖上的改變自動地反映到其它視圖,且可在設(shè)計過程中的任何時候生成工程圖和裝配體。可以從零件/裝配直接生成工程圖,或者新建工程圖后將零件/裝配體視圖插入工程圖。實體模型、圖紙和裝配能自動相關(guān)地更新??梢栽试S二維工程圖暫時與三維模型脫離關(guān)系,所有標注可以在沒有三維模型的狀態(tài)下添加,同時用戶又可隨時將二維工程圖與三維模型同步,從而大大加速工程圖的生成過程。(5)鈑金設(shè)計功能SolidWorks具有強大的鈑金設(shè)計功能,或以制作企業(yè)內(nèi)部的鈑金特征庫,鈑金零件庫。鈑金設(shè)計方法與零件設(shè)計完全相同,而且還可以在裝配環(huán)境下進行關(guān)聯(lián)設(shè)計,自動修改與其它零部件的關(guān)聯(lián)關(guān)系。(6)曲面功能SolidWorks提供了眾多的曲面創(chuàng)建和修改工具,而且是完全參數(shù)化的,設(shè)計者可以方便快捷地設(shè)計出具有復雜外形的產(chǎn)品(7)用戶化開發(fā)盡管SolidWorks有眾多優(yōu)點,但畢竟只是針對整個機械制造行業(yè)的通用軟件,不是針對具體企業(yè)和行業(yè)所設(shè)計,不可能夠滿足所有用戶某些方面的具體要求。這就需要企業(yè)或用戶結(jié)合自身的實際需求,進行對通用軟件進行程度不同的用戶化的二次開發(fā),實現(xiàn)對某一個產(chǎn)品的參數(shù)化設(shè)計,建立應用繪圖系統(tǒng)和數(shù)據(jù)庫,形成具有本企業(yè)特色的產(chǎn)品設(shè)計CAD系統(tǒng)。為方便軟件在某些特定方面的功能延伸,提供了完整的免費的開發(fā)工具API(ApplicationProgrammingInterface應用程序編程接口),提供應用程序與開發(fā)人員基于該軟件進行本地化的二次開發(fā)。用戶可以用支持OLE或COM的編程語言如VB、C”等建立自己的應用程序,為本企業(yè)服務(wù)。有效的二次開發(fā)是發(fā)揮軟件效能的關(guān)鍵環(huán)節(jié)。只有實現(xiàn)了產(chǎn)品參數(shù)化設(shè)計,才能真正提高產(chǎn)品的設(shè)計速度,實現(xiàn)設(shè)計產(chǎn)品的虛擬裝配和干涉檢查,最大限度地縮短產(chǎn)品研發(fā)周期,適應現(xiàn)代市場需求。雖然SolidWorks所提供的功能非常強大,但SolidWorks是一個通用的三維設(shè)計軟件,尚不能完全滿足國內(nèi)工程設(shè)計的特殊要求,例如,它沒有適合我國國標的標準件庫。而在工程設(shè)計中,無論是結(jié)構(gòu)強度分析還是施工圖設(shè)計均要涉及到標準零部件的繪制(3D/2D)。為了充分發(fā)揮SolidWorks在軟件設(shè)計中的作用,使一些常用的或重復的任務(wù)自動化,提高設(shè)計效率,縮短產(chǎn)品的開發(fā)周期,就必須對其進行有針對性的二次開發(fā)。本文以在液壓設(shè)備中常用的標準件DV節(jié)流截止閥和單向節(jié)流截止閥為例,詳細分析和說明了利用VB對SolidWorks進行二次開發(fā)的參數(shù)繪圖過程。第二章SolidWorks二次開發(fā)2.1SolidWorks二次開發(fā)簡介SolidWorks具有良好的開放性接口SolidWorksAPI(ApplicationProgrammingInterface應用程序編程接口)和功能擴充性,它支持0LE(0bjectLinkingandEmbedding對象的鏈接與嵌入)技術(shù)標準和采用COM(Component0bjectModel組件對象模型)技術(shù)標準,任何支持COM和OLE的編程語言如VisualBasic,VBA,C,VisualC”,C”,Delphi等等都可以成作為SolidWorks的開發(fā)工具。2.2SolidWorks二次開發(fā)的兩種基本方式作為一個
COM
\
OLE
服務(wù)器,
SolidWorks
提供了COM
規(guī)范和基于OLE自動化技術(shù)兩種不同的二次開發(fā)方式。2.2.1基于OLE自動化技術(shù)OLE技術(shù)是Microsoft
公司同計算機界合作并發(fā)展起來的產(chǎn)品規(guī)范,它允許在一個應用程序內(nèi)部操作另一個應用程序提供的對象,即使得應用程序之間能夠共享數(shù)據(jù)。SolidWorks
支持OLE標準,完全實現(xiàn)了OLE自動化。作為一個OLE服務(wù)器,SolidWorks
提供了大量的OLE
對象,以及這些對象所擁有的方法和屬性,用戶通過在客戶應用程序中對這些OLE對象及其方法和屬性的操作,可以在自己開發(fā)的應用軟件中實現(xiàn)諸如創(chuàng)建直線、構(gòu)造實體、檢查曲面表面參數(shù)等幾乎所有的SolidWorks
軟件功能。SolidWorks
系統(tǒng)提供數(shù)據(jù)操縱接口函數(shù)API,專門讀寫三維零件數(shù)據(jù),并提供了一系列的Automation
接口(包括對象、屬性和方法)
,使用戶進行二次開發(fā)更加容易。運用OLEAutomation
技術(shù)使得在應用程序中驅(qū)動三維CAD
系統(tǒng)中的零件變得可能而且容易。2.2.2基于COM
規(guī)范組件對象模型(COM)
是微軟公司為了使計算機工業(yè)的軟件生產(chǎn)更加符合人類的行為方式而開發(fā)的一種新的軟件開發(fā)技術(shù)。在COM
構(gòu)架下,人們可以開發(fā)出各種各樣的功能專一的組件,然后將它們按照需要組合起來,構(gòu)成復雜的應用系統(tǒng)。由此帶來的好處有:可以將系統(tǒng)中的組件用新的替換掉,以便隨時進行系統(tǒng)升級和定制;可以在多個應用系統(tǒng)中重復利用同一個組件;可以方便地將應用系統(tǒng)擴展到網(wǎng)絡(luò)環(huán)境下;COM
與語言和平臺無關(guān)的特性使所有程序員在編寫組件模塊均可充分發(fā)揮自己的才智與專長。COM
是開發(fā)軟件組件的一種方法。組件實際上是一些小的二進制可執(zhí)行程序,它們可以給應用程序、操作系統(tǒng)和其他組件提供服務(wù)。開發(fā)自定義的COM
組件就如同開發(fā)動態(tài)的、面向?qū)ο蟮腁PI。多個COM
對象可以連接起來形成應用程序或組件系統(tǒng)。并且組件可以在運行時刻,在不被重新鏈接或編譯應用程序的情況下被卸下或替換掉。SolidWorks
的API對象同樣可以在基于COM
方式的應用程序中被調(diào)用,以實現(xiàn)相應的功能。2.3SolidWorks
的二次開發(fā)工具任何支持OLE和COM的編程語言都可以作為SolidWorks
的開發(fā)工具最簡單的二次開發(fā)工具是VBA,在涉及Excel是用VBA最為方便,VBA常用于錄制宏,得到基本程序框架。易學易用的高級開發(fā)語言是VB,但功能有限。功能強大的語言是VisualC++,但是入門較難。Delphi集中了VB和VisualC++兩者的優(yōu)點,學習過程中很容易上手,而且功能也非常強大,尤其在界面設(shè)計、數(shù)據(jù)庫編程和網(wǎng)絡(luò)編程方面更具有獨特之處,但遺憾的是SolidWorks常常不支持Delphi+OLE??傊?,各種軟件都有各自的特點與不足,如果能將它們的優(yōu)點集中起來,必將達到更好的效果,一般設(shè)計中考慮采用VB開發(fā)SolidWorks
。使用VB
進行二次開發(fā)的優(yōu)勢在于容易使用、上手快。在VB
中引入了控件的概念,在Windows中控件的身影無處不在,各種各樣的按鈕、文本框、無線鈕都是控件的種類,VB
把這些控件模式化,并且每個控件都有若干屬性來控制控件的外觀和工作方法。這樣就可以像在畫板上一樣,隨意單擊幾下鼠標、一個按鈕就完成了,這些在以前的編程語言下是要經(jīng)過相當復雜工作的
。利用VB
,即使是初學者也可以編寫出漂亮的應用程序,況且其開發(fā)周期短,代碼效率高。所以,本例采用Visual
Basic6.
0語言作為開發(fā)工具,根據(jù)國家標準中的尺寸數(shù)據(jù)開發(fā)標準DC平衡閥,有效地實現(xiàn)了對SolidWorks
的二次開發(fā)。2.4SolidWorks宏簡介計算機科學里的宏是一種抽象,它根據(jù)一系列預定義的規(guī)則替換一定的文本模式。能自動執(zhí)行某種操作的命令統(tǒng)稱為“宏”?!昂?也是一種操作命令,它和菜單操作命令都是一樣的。可以錄制使用SolidWorks用戶界面執(zhí)行的操作,然后使用SolidWorks宏重新執(zhí)行這些操作。其所包含的調(diào)用相當于使用用戶界面執(zhí)行操作時對API函數(shù)的調(diào)用??梢杂涗浭髽藛螕簟⒉藛芜x擇和鍵擊,以便以后執(zhí)行。開始SolidWorks編程的最快捷的方式就是錄制宏。宏可以記錄用戶的操作將其記錄為一系列SolidWorksAPI函數(shù)調(diào)用。在SolidWorks“工具”菜單“宏"中有運行、錄制、新建、編輯等選項。宏錄制功能為VBA環(huán)境,與VisualBasic語法規(guī)則完全一致,再將其復制添加到主程序的相應部分,然后編輯修改調(diào)試以達到程序要求。但直接錄制的宏程序的可用性很差,需要對它進行一些合理的優(yōu)化,清理多余的語句,所以在錄制完成后需要編輯宏。保存并退出宏編輯,返回SolidWorks環(huán)境。指定“宏”操作在SolidWorks中可以指定宏命令的文件位置,并定制工具欄,將所執(zhí)行的宏操作按鈕添加到指定的位置上。利用“宏”在SolidWorks界面中添加指定的應用程序,如同SolidWorks調(diào)用了自身的功能一樣便捷。本課題將節(jié)流閥三維造型過程錄制成特定的宏,并分析宏文件,提取節(jié)流閥三維建模關(guān)鍵參數(shù)將其設(shè)置為變量,提取出完成這些動作所需要的API函數(shù),再使用SolidWorks宏重新執(zhí)行這些操作,從而實現(xiàn)齒輪的三維參數(shù)化設(shè)計。用VB技術(shù)和SolidWorks二次開發(fā)接口API開發(fā)的應用程序有兩種運行方式:一種方式是將應用程序作為可執(zhí)行文件直接運行,由程序控制SolidWorks的調(diào)入和退出。另一種方式是將程序作為一條宏命令嵌入到SolidWorks中。2.5SolidWorks二次開發(fā)方法比較對于SolidWorks進行二次開發(fā),如果采用VisualBasic或者VisualBasic.NET作為編程語言,可以采用一種簡單實用的方法SolidWorks的宏錄制。完全編程法和尺寸驅(qū)動法和兩種都可以使用宏錄制來簡化編程任務(wù),但兩者存在不同。(1)簡化程度不同完全編程法進行在三維造型同時,使用宏將造型的整個過程全部錄制下來,然后再對所錄制的宏代碼進行修改,將有關(guān)的常量換成變量。該方法雖然不必由開發(fā)者對整個造型過程全部編程,使編程簡化,卻有存在一個很大的缺點。即使用宏錄制造型的過程中,并不能將造型過程全部的錄制下來,對于被遺漏的部分,需要開發(fā)者自行查詢并使用SolidWorksAPI函數(shù)補全這部分代碼,而無論對于初學者還是有經(jīng)驗的開發(fā)者,都比較困難。使用尺寸驅(qū)動法,不必錄制整個造型的具體過程,而是在零件造型完成后,修改零件模型需要參數(shù)化的尺寸,用宏錄制修改尺寸的過程,產(chǎn)生程序代碼。這種方法不必慮模型的造型過程,只關(guān)心對造型參數(shù)化尺寸的修改,涉及到的API函數(shù)相對少,比較適用于初學者和非計算機專業(yè)的開發(fā)人員。(2)系統(tǒng)的執(zhí)行效率和可靠性不同從系統(tǒng)的可靠性、執(zhí)行效率考慮,尺寸驅(qū)動法比較比較簡單。編程法需要從頭到尾重新建立模型的過程,尺寸驅(qū)動只需改變改變已有模型的尺寸即可,可以節(jié)省圖形的更新速度。編程法VB程序調(diào)試過程中,經(jīng)常會出現(xiàn)SolidWorks繪制圖形的某一步驟沒有任何的反應,也不出現(xiàn)任何出錯的提示信息,這需要耐心地查找程序中存在的錯誤。本文選擇尺寸驅(qū)動功能完成對SolidWorks的二次開發(fā)。2.6SolidWorks二次開發(fā)的基本原理對SolidWorks的二次開發(fā)主要通過軟件內(nèi)嵌的API接口,該接口提供了大量0LE對象以及這些對象所擁有的方法和屬性。通過調(diào)用這些API,我們可以將SolidWorks中一些重復單調(diào)或者規(guī)則明確的操作使用程序語言描述,通過簡單的人機交互,讓計算機自己來完成此類工作,以提高工作效率。用戶通過SolidWorksAPI,借助支持0LE編程的高級編程語言作開發(fā)平臺,設(shè)計系統(tǒng)界面,編制應用程序,通過在程序中調(diào)用API對象訪問和操作SolidWorks,對SolidWorks進行二次開發(fā),建立起適于自己需要的、專用的SolidWorks功能模塊。如生成和編輯零件草圖、構(gòu)造三維實體、檢測曲面、建立標準標準零件庫、自動生成工程圖并進行尺寸標注等幾乎所有我們需要的參數(shù)化設(shè)計功能。如下圖所示圖1DV節(jié)流截止閥和單向節(jié)流截止閥三維實體圖這些專用功能模塊可通過生成DLL文件作為插件掛接在SolidWorks的菜單下,也可置于用戶開發(fā)的工具條中,或者獨立于SolidWorks之外使用。在所有對象中,ModelDoc2對象是最為常用的,代表SolidWorks的文檔。SolidWorks有三種最基本的文件格式:零件、裝配體、工程圖。ModeIDoc2對象可以直接對這三類文件進行操作。ModelDoc2又包含了很多子對象,其中PartDoc,AssemblyDoc和DrawingDoc分別屬于零件、裝配體和工程圖的API對象,使用它們來操作相應類型的文件。SolidWorksAPI每種對象都有自己特定的對象來表示,但是SolidWorks設(shè)定了~些通用的方法和屬性來操作這些對象。通過設(shè)置各自對象方法各屬性等就可以諸如視圖設(shè)置、輪廓線修改、參數(shù)控制、對象選擇、打開/保存文檔、生成編輯特征參數(shù)等與實體模型相關(guān)的各種操作,完成對應文件類型的相關(guān)二次開發(fā)。2.7本系統(tǒng)的具體開發(fā)方案選定開發(fā)方法后,就要制定本系統(tǒng)具體開發(fā)方案。選定一個DV節(jié)流截止閥和單向節(jié)流截止閥,按正確的設(shè)計關(guān)系在SolidWorks環(huán)境中繪制其三維標準模型圖并保存,根據(jù)用戶需要分析并確定模型的變量化參數(shù),如節(jié)流截止閥閥體的長度、螺紋大小、直徑等參數(shù),然后通過VisualBasic等編程環(huán)境設(shè)計操作界面,在程序中調(diào)用API對象獲取并修改標準模型中的相關(guān)約束變量參數(shù)值,使模型的幾何或拓撲信息發(fā)生改變,從而完成參數(shù)化的DV節(jié)流截止閥和單向節(jié)流截止閥零件建模。最后將程序置于SolidWorks的的菜單或工具條中。由于DV節(jié)流截止閥和單向節(jié)流截止閥系列的參數(shù)較多,基于Access等建立變量參數(shù)數(shù)據(jù)庫,并在VisualBasic中通過ADO數(shù)據(jù)控件實現(xiàn)對數(shù)據(jù)的調(diào)用。第三章數(shù)據(jù)庫3.1數(shù)據(jù)庫的簡介數(shù)據(jù)庫是應數(shù)據(jù)管理任務(wù)的需求而產(chǎn)生的,從五十年代以來,隨著計算機軟硬件的飛速發(fā)展,數(shù)據(jù)管理技術(shù)已經(jīng)經(jīng)歷了人工管理、文件管理和數(shù)據(jù)庫系統(tǒng)三個階段。20世紀年60代術(shù),軟硬件技術(shù)的發(fā)展,為數(shù)據(jù)庫技術(shù)的發(fā)展提供了良好的基礎(chǔ),數(shù)據(jù)庫管理系統(tǒng)取代了傳統(tǒng)的文件管理系統(tǒng),在各個領(lǐng)域獲得了廣泛的應用。數(shù)據(jù)庫系統(tǒng)(DatabaseSystem,簡稱DBS)是由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、應用系統(tǒng)、數(shù)據(jù)庫管理員和用戶構(gòu)成的人機系統(tǒng)。數(shù)據(jù)庫(DataBase,簡稱DB)是長期存儲在計算機上的、有結(jié)構(gòu)的、可共享的數(shù)據(jù)集合。數(shù)據(jù)庫管理系統(tǒng)(DataBaseManagementSystem,簡稱DBMS)是科學地組織和存儲數(shù)據(jù)、有效獲取和維護數(shù)據(jù)的系統(tǒng)軟件。它是位于用戶和操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。3.1.1數(shù)據(jù)庫結(jié)構(gòu)及應用1.層次模型(HierarchalModel)用樹結(jié)構(gòu)表示實體之間的聯(lián)系,樹有結(jié)點和連線組成,節(jié)點表示實體集,連線表示相連兩實體之間的關(guān)系,這種關(guān)系只能是l:N關(guān)系。2.網(wǎng)狀模型(NetworkModel)這種模型允許有零個或多個節(jié)點而無父節(jié)點,它可直接表示M:N關(guān)系。3.關(guān)系模型(RelationModel)關(guān)系模型由關(guān)系、關(guān)系上定義的操作和對關(guān)系的完整性的規(guī)則組成。它的二位表由兩部分組成一是表格的名字和屬性的名字,二是具體的數(shù)值。關(guān)系模型和層次模型、網(wǎng)狀模型的區(qū)別在于它通過表格數(shù)據(jù)而不是通過指針連接來表示和實現(xiàn)兩實體問的關(guān)系。以關(guān)系模型為基礎(chǔ)的數(shù)據(jù)庫就是關(guān)系數(shù)據(jù)庫,具有數(shù)據(jù)結(jié)構(gòu)簡單、符合工程習慣、數(shù)據(jù)獨立性高及數(shù)學基礎(chǔ)嚴密等優(yōu)點,是目前數(shù)據(jù)庫應用的主流。3.1.2數(shù)據(jù)庫技術(shù)的應用數(shù)據(jù)庫技術(shù)應用到CAD/CAM系統(tǒng)中,人們希望能夠利用數(shù)據(jù)庫技術(shù)有效的管理工程應用中所涉及的圖形、圖像、聲音等更加自然的信息形式,因此工程數(shù)據(jù)庫應運而生。工程數(shù)據(jù)庫是指能滿足人們工程活動中對數(shù)據(jù)處理要求的數(shù)據(jù)庫。它不但要能夠處理常規(guī)的表格數(shù)據(jù)、曲線數(shù)據(jù)等,還必須能夠處理圖形數(shù)據(jù)。圖形數(shù)據(jù)既有滿足工程繪圖的二維數(shù)據(jù),又有產(chǎn)品造型所需要的三維設(shè)計數(shù)據(jù)。圖形數(shù)據(jù)一般是網(wǎng)狀關(guān)系的層次結(jié)構(gòu),同一種實體可能在不同的使用階段使用幾種不同的表示方法,并且須實現(xiàn)不同表示方法之間的相互轉(zhuǎn)換。在工程數(shù)據(jù)庫管理系統(tǒng)EDBMS(EngineeringDataBaseManagementSystem)中,數(shù)據(jù)的表現(xiàn)形式不再是單一的實際參數(shù),由含參數(shù)的過程子程序生成產(chǎn)品商數(shù)據(jù)也是一種必不可少的表現(xiàn)形式。3.3數(shù)據(jù)庫接口技術(shù)(Access數(shù)據(jù)庫引擎)VisualBasic所編寫的數(shù)據(jù)庫應用程序,負責的是與用戶的交互。用該程序可以選擇數(shù)據(jù)庫中的數(shù)據(jù)項,并把所選擇的數(shù)據(jù)項按用戶的要求顯示出來。數(shù)據(jù)庫系統(tǒng)被稱為后臺系統(tǒng),通常是關(guān)系表的集合。這時就涉及到一個問題,應用程序如何與后臺的數(shù)據(jù)庫建立聯(lián)系呢?首先,數(shù)據(jù)庫要能支持用戶的訪問,其次,用戶的VisualBasic程序可以訪問這些數(shù)據(jù)庫,這兩點很關(guān)鍵。數(shù)據(jù)庫有三種方式支持應用程序的訪問,即通過Access數(shù)據(jù)庫引擎、MicrosoftODBC驅(qū)動程序、第三方ODBC驅(qū)動程序。VisualBasic6.0應用程序中支持多DBMS來開發(fā)數(shù)據(jù)庫,這種方法稱作ODBC,ODBC是Microsoft’sWindow的開放式服務(wù)體系結(jié)構(gòu)數(shù)據(jù)庫部分,是一個用于訪問多種數(shù)據(jù)庫的統(tǒng)一的界面標準。ODBC實際是一個數(shù)據(jù)庫訪問庫,但是只提供一個統(tǒng)一的應用程序接口(API)。這樣利用ODBC可以避免應用程序隨數(shù)據(jù)庫的改變而改變。ODBC通過使用數(shù)據(jù)庫驅(qū)動程序獲得數(shù)據(jù)庫的獨立性,驅(qū)動程序所提供的標準接口允許應用程序開發(fā)者和驅(qū)動程序提供者在應用程序之間傳遞數(shù)據(jù)。對VB而言,其內(nèi)置為MicrosoftAccess數(shù)據(jù)庫,可以提供不遜色于專業(yè)數(shù)據(jù)庫軟件的支持,可以進行完整的數(shù)據(jù)庫維護、操作及事務(wù)處理。在VisualBasic中,將非Access數(shù)據(jù)庫稱為外來數(shù)據(jù)庫。對于FoxPro、dBase、Paradox等外來數(shù)據(jù)庫,雖然借助VisualBasic的DataManager能夠?qū)@些數(shù)據(jù)庫進行NEW、OPEN、DESIGN、DELETE等操作,但在應用程序的運行狀態(tài)中不能從底層真正實現(xiàn)這些功能。VB的核心結(jié)構(gòu)是MicrosoftJET數(shù)據(jù)庫引擎。他的作用就像是一塊“面板’’在其上可以插入多種ISAM(IndexSequentialAccessMethod索引順序存取方法)數(shù)據(jù)庫驅(qū)動程序。JET引擎為Access格式數(shù)據(jù)庫提供了直接的內(nèi)建(build-in)支持,這就是VisualBasic對Access數(shù)據(jù)庫具有豐富支持的真正原因。因此,我們利用VisualBasic對Access數(shù)據(jù)庫的方便、實用和直接的內(nèi)建(build.in)支持,采用Access作為數(shù)據(jù)源,這為開發(fā)DV節(jié)流截止閥和單向節(jié)流截止閥數(shù)據(jù)庫帶來了極大的方便。如圖所示為:圖2DV節(jié)流截止閥和單向節(jié)流截止閥系列的兩個數(shù)據(jù)庫表1如圖:圖3數(shù)據(jù)庫中的尺寸表表2如圖:圖4數(shù)據(jù)庫中的屬性表第四章VisualBasic6.04.1VisualBasic6.0簡介VisualBasic6.0是Microsoft公司提供的一種Windows程序開發(fā)工具之一。它是一種面向?qū)ο蠛涂梢暬腤indows開發(fā)語言,采用事件驅(qū)動編程和交互式開發(fā)。它為程序設(shè)計人員提供了一整套的Windows程序開發(fā)工具,能夠快速有效的建立具有Windows風格窗口的程序。4.1.1VisualBasic的發(fā)展Basic語言是上世紀60年代由JohnG.Kemeny與ThomasKuntz首先創(chuàng)建的。它是一種非結(jié)構(gòu)化語言,易于理解和學習。但是它是一種解釋性語言,運行較慢。直到上世紀80年代,被譽為“VisualBasic之父”的AlanCooper在其基礎(chǔ)之上成功地實現(xiàn)了Windows開發(fā)工具的思想和理念,將Basic的易學易用和可視化編程以及事件驅(qū)動的原理結(jié)合起來,創(chuàng)建了VisualBasic語言。VisualBasic語言因為其易學易用的可視化等優(yōu)點,迅速的流行起來。經(jīng)過了近30年的發(fā)展,VisualBasic已經(jīng)相繼推出了多個版本,產(chǎn)品的功能日趨完善的強大,從1991年首次正式推出VisualBasic1.0,到1998年推出極為成熟和完善的VisualBasic6.0,以及近期的VisualBasic2005.net。目前,VisualBasic已經(jīng)成為Windows程序開發(fā)的主要設(shè)計軟件之一,收到廣大的程序設(shè)計人員的青睞。本系統(tǒng)開發(fā)使用到的VisualBasic6.0是1998年微軟公司推出的VisualStudio98的一個組件。VisualStudio98中包含VisualC++、VisualBasic、VisualFoxpro等五個組件。但是VisualBasic6.0相對而言,具有易用、通用和開發(fā)效率高的優(yōu)點。目前正在使用的大部分Windows應用程序都是用VisualBasic開發(fā)的。VisualBasic不僅可以迅速有效的編制程序界面,而且支持與其他的開發(fā)語言的結(jié)合,例如C等。設(shè)計人員可以其他語言完成內(nèi)核部分的編碼或者直接生成動態(tài)鏈接庫(DLL文件),再由VisualBasic來調(diào)用這部分的代碼或者DLL,并且完成程序的界面。4.1.2VisualBasic6.0的新特點VisualBasic6.0相對于VisualBasic5.0推出了許多新功能,其中改進的重點在數(shù)據(jù)庫概念的增加和Web網(wǎng)頁的制作。當然也增加了許多的ActiveX控件。VisualBasic6.0的新特點如下:(1)新的ActiveX控件:VisualBasic6.0推出了一系列新的ActiveX控件,其中有工具條控件Coolbar、圖形列表控件ImageCombo、日期控件MothView和DateTimePicker、滾動條控件FlatScrollBar等。(2)動態(tài)創(chuàng)建控件:所謂動態(tài)創(chuàng)建控件是指在程序運行的過程中根據(jù)用戶的需要創(chuàng)建控件。這個功能使得程序設(shè)計人員可以不必為界面控件不確定因素而預先在窗口中添加控件或者控件數(shù)組。(3)新的圖形增強:在VisualBasic6.0中,增強了許多控件的圖形能力。Imagelist控件所支持的圖形格式更多,而且其他的控件如ImageView和TabStrip控件也可以使用圖形或者圖標來裝飾和描述,大大的增強了開發(fā)出的程序的美觀程度和直觀性。(4)新的語言特性:VisualBasic6.0對語言進行了一些修改、添加和刪減,使得語法更加合理,不僅減少了程序設(shè)計的工作量,而且增強了程序的可讀性、移植性。(5)數(shù)據(jù)庫功能的增強:它除了增強Web數(shù)據(jù)庫的功能之外,還增強了諸如SQL服務(wù)器的連接、提供數(shù)據(jù)庫管理環(huán)境、數(shù)據(jù)庫控件的開發(fā)等等,并且除了改進原有的數(shù)據(jù)庫控件之外,還提供了新的數(shù)據(jù)庫控件ADODC。VisualBasic6.0數(shù)據(jù)庫功能的增強使用戶能夠以更輕松的方式實現(xiàn)對本地和遠程數(shù)據(jù)庫的控制和管理。(6)Internet的開發(fā):VisualBasic6.0加大了Internet的開發(fā)比重。通過引入新的項目類型IIS,擴展了微軟的InternetInformationService編寫服務(wù)器端應用的能力。另外,還引入了DHTML應用,以擴展和簡化DHTML的編程。VisualBasic6.0的這些新功能、新特性使得其功能更為強大,編寫更為便捷,運用范圍也更為廣泛。工程設(shè)計時,設(shè)計人員經(jīng)常要選用標準化、系列化的液壓閥,這些液壓閥將在設(shè)計時,反復地在裝配體的不同位置被選用,而且規(guī)格大小不同。本實例將建立DV節(jié)流截止閥和單向節(jié)流截止閥的三維模型庫,用戶選取各種規(guī)格的尺寸時,能夠自動從模型庫中取出,以便插入到裝配體中。這樣可以大大簡化設(shè)計工作,提高設(shè)計效率。4.2VB開發(fā)液壓閥標準件庫的實例在采用VB
所實現(xiàn)的SolidWorks
二次開發(fā)應用中,客戶通過VB
編寫的應用程序為客戶程序,
SolidWorks
是服務(wù)程序,
VB
編寫的應用程序驅(qū)動SolidWorks
完成指定工作。其基本思路是在SolidWorks
環(huán)境中,
任意選定某一型號的標準件,
按照正確的設(shè)計關(guān)系繪制標準件的模型,當需要生成另一規(guī)格的標準件時,
可根據(jù)用戶給定的相關(guān)約束變量參數(shù)值,
對已定義好的標準模型的相應約束關(guān)系進行修改與求解,
使其幾何元素和特征的幾何或拓撲關(guān)系發(fā)生改變,
并引起相關(guān)圖形元素及關(guān)系的聯(lián)動,
生成所需零件,
即零件設(shè)計采用尺寸驅(qū)動方式進行設(shè)計。由于標準件均為系列化零件,
因此設(shè)計時可用Access
建立各類標準件參數(shù)數(shù)據(jù)庫,
供用戶設(shè)計時選用相應規(guī)格零件。本設(shè)計用Access
建立了DC型平衡閥標準件的參數(shù)數(shù)據(jù)庫,
用VB
編程實現(xiàn)SolidWorks下標準件三維實體圖形的生成。系統(tǒng)基本框架如圖1
所示,
即以面向?qū)ο蟮腣B
語言為客戶端,
結(jié)合Access建立標準件參數(shù)庫,
通過ActiveX
Automation
技術(shù)控制服務(wù)端SolidWorks
自身二次開發(fā)接口API
函數(shù),
調(diào)用其對象、屬性、方法,
實現(xiàn)SolidWorks
的二次開發(fā)。SolidSolidworks二次開發(fā)應用程序SolidworksVisualBasic數(shù)據(jù)庫ActiveX
Automation通訊標準圖5系統(tǒng)開發(fā)設(shè)計框架圖4.2.1分析結(jié)構(gòu)特征,建立DV節(jié)流截止閥和單向節(jié)流截止閥體模型DV節(jié)流截止閥和單向節(jié)流截止閥的二維圖如圖2所示:圖6DV節(jié)流截止閥和單向節(jié)流截止閥的二維圖4.3用VB開發(fā)人機交互界面及運行結(jié)果對話框是一種方便、實用的人機交互界面,在CAD軟件中使用十分廣泛。SolidWorks允許用戶用VisualBasic創(chuàng)建自己的對話框,并在對話框中添加所需的控件。但是SolidWorks對VB程序的格式有一定的要求,我們可以通過不同的方法來運行VisualBasic應用程序,例如可以不用編譯直接在SolidWorks中運行(用Basic開發(fā)的程序把后綴替換為.swp,這類程序通常是只用來調(diào)用SolidWorksAPI函數(shù)庫)、當作一個獨立的.exe文件(可執(zhí)行文件)來運行以及在其它應用程序(如Excel)中運行等等。但是,用VisualBasic開發(fā)的程序段前面必須小。程序代碼如下:DimswAppAsObjectDimPartAsObjectDimBAsDoubleDimH2AsDoubleDimD1AsDoubleDimD2AsDoubleDimD3AsDoubleDimD4AsDoubleDimH3AsDoubleDimL1AsDoubleDimL2AsDoubleDimhAsDoubleDimH1AsDoubleDimsAsDoubleDimpAsDoubleDimcAsDoubleDimdAsDoubleDimD5AsDoubleDimlAsDoubleDimH4AsDoubleDimc1AsDoubleDimp1AsDoubleDims1AsDoubleDimDaihaoAsStringDimDanzhongAsStringDimMingchengAsStringDimBeizhuAsStringPrivateSubSetswApp=CreateObject("SldWorks.Application")swApp.Visible(True)SetPart=swApp.OpenDoc(App.Path&"\DV節(jié)流截止閥和單向節(jié)流截止閥.SLDPRT",1)SetPart=swApp.ActivateDoc("DV節(jié)流截止閥和單向節(jié)流截止閥")'設(shè)置零件的尺寸Part.Parameter("D1@草圖1").SystemValue=B/1000Part.Parameter("D2@草圖5").SystemValue=D1/1000Part.Parameter("D8@草圖5").SystemValue=D2/1000Part.Parameter("D1@草圖12").SystemValue=D3/1000Part.Parameter("D1@基準面2").SystemValue=H3/1000Part.Parameter("D1@基準面1").SystemValue=H2/1000Part.Parameter("D2@拉伸1").SystemValue=L1/1000Part.Parameter("D5@草圖5").SystemValue=l/1000Part.Parameter("D1@拉伸1").SystemValue=(L2-L1)/1000Part.Parameter("D7@草圖5").SystemValue=h/1000Part.Parameter("D4@草圖5").SystemValue=H4/1000Part.Parameter("D1@草圖5").SystemValue=D5/1000Part.Parameter("D9@草圖5").SystemValue=d/1000Part.Parameter("D3@螺旋線/渦狀線2").SystemValue=p*sPart.Parameter("D5@螺旋線/渦狀線2").SystemValue=sPart.Parameter("D4@螺旋線/渦狀線2").SystemValue=p/1000Part.Parameter("D1@草圖14").SystemValue=c/1000Part.Parameter("D4@螺旋線/渦狀線1").SystemValue=p1/1000Part.Parameter("D2@草圖7").SystemValue=c1/1000Part.Parameter("D3@螺旋線/渦狀線1").SystemValue=p1*s1Part.Parameter("D5@螺旋線/渦狀線1").SystemValue=s1Part.ShowNamedView2"*等軸測",7Part.ViewZoomtofit2Part.EditRebuildEndSubPrivateSub'添加tree列表DimnodXAsNodeSetnodX=TreeView1.Nodes.Add(,,"changjiangyeya","長江液壓")TreeView1.Nodes.Add"changjiangyeya",tvwChild,"DVjjieliujiezhifahedianxiangjieliujiezhifa","DV節(jié)流截止閥和單向節(jié)流截止閥"TreeView1.Nodes(1).Expanded=True'初始化數(shù)據(jù)庫Data1.DatabaseName=App.Path&"\1.mdb"Data1.RecordSource="表1"Data2.DatabaseName=App.Path&"\1.mdb"Data2.RecordSource="表2"Picture1.Picture=LoadPicture(App.Path&"\DV節(jié)流截止閥和單向節(jié)流截止閥.jpg")Image1.Picture=Picture1.Pict
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國燙發(fā)板數(shù)據(jù)監(jiān)測研究報告
- 科技產(chǎn)品電商物流配送的未來趨勢預測與探索
- 2025至2030年中國液壓脈沖式注肥泵數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國消毒包裝紗布數(shù)據(jù)監(jiān)測研究報告
- 營地團建合同范本
- 2025至2030年中國潔廁液數(shù)據(jù)監(jiān)測研究報告
- 大眾環(huán)保材料采購協(xié)議
- 2025至2030年中國水洗白鴨毛數(shù)據(jù)監(jiān)測研究報告
- 2024年南平市建陽區(qū)社會統(tǒng)一教師招聘筆試真題
- 孟津租房合同范本
- 新媒體藝術(shù)設(shè)計交互融合元宇宙
- 家長會課件:七年級家長會優(yōu)質(zhì)課件
- 《AutoCAD 中文版實例教程(AutoCAD 2020) (微課版)(第 2 版)》課件 馬連志 第1、2章 AutoCAD 2020 中文版入門、繪圖設(shè)置
- 小學一年級硬筆書法入門班教學課件
- 出貨單表格模板下載
- PEP六年級上冊英語unit1
- 接納與承諾(ACT)療法課件
- 裝配式混凝土建筑技術(shù)標準
- 房地產(chǎn)公司銷售管理部賞罰制度
- 《方位介詞介紹》課件
- 甲狀腺術(shù)后出血搶救流程
評論
0/150
提交評論