




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 本科畢業(yè)設計說明書(論文) 第 37 頁 共35頁1 緒論1.1 參數化設計概述1.1.1 參數化設計概念參數化設計是通過改動圖形的某一部分或某幾部分的尺寸,或修改己定義好的零件參數,自動完成對圖形中相關部分的改動,從而實現(xiàn)對圖形的驅動。參數驅動的方式便于用戶修改和設計。用戶在設計輪尺寸廓時無需準確地定位和定形,只需勾畫出大致輪廓,然后通過修改標注的尺寸值來達到最終的形狀,或者只需將零件的關鍵部分定義為某個參數,通過對參數的修改實現(xiàn)對產品的設計和優(yōu)化。參數化的含義有兩種:設計參數化和圖形參數化。設計參數化對應于產品的設計過程,其特點是:控制產品的參數在整個設計過程中其數目、數值和類型都不斷發(fā)
2、生變化,在設計的某一時刻還有可能發(fā)生參數轉換,即控制參數由一組變?yōu)榱硪唤M。圖形參數化對應于最終產品或某些常用零部件,此時控制參數只有數值變化,不存在參數類型和整組控制參數的轉換。CAD技術在機械工業(yè)中的一個重要應用就是參數化設計,能否實現(xiàn)參數化設計也成為評價CAD系統(tǒng)優(yōu)劣的重要技術指標,它更符合和貼近現(xiàn)代CAD中概念設計以及并行設計思想,工程設計人員在設計開始階段可快速草擬產品的零件圖,通過對產品形狀及大小的約束最后精確成圖。同一系列產品的第二次設計可直接通過修改第一次設計來實現(xiàn),設計參數不但可以驅動設計結果,而且影響產品的整個開發(fā)周期,設計參數可以來自其他系統(tǒng)。參數化設計又是變量設計的前提,
3、借助變量化設計思想可實現(xiàn)動態(tài)設計,機構設計的運動仿真模擬等。同時,參數化設計還能夠使設計人員在設計的同時可實現(xiàn)參數化建立標準件的數據庫,極大地方便后續(xù)工作。因此,參數化設計以及建庫工具的研究對進一步提高設計和繪圖效率以及柔性化設計具有十分重要的意義1。1.1.2 參數化設計理論方法近十幾年來,因為參數化設計在工程實際中有廣泛的應用價值,國內外從事CAD研究的專家學者對其投入極大的精力和熱情進行研究,從方法上做了大量的研究和嘗試,取得了重大成果。目前參數化設計方法主要有以下幾種:(1)基于幾何約束的數學方式利用尺寸約束建立方程組,將幾何約束轉變?yōu)橐幌盗幸蕴卣鼽c為變元的非線性方程組,對于給定的約束
4、,通過數值方法解非線性方程組,一次解出所有特征點的坐標值,確定出幾何細節(jié)。采用該方法必須輸入充分且一致的尺寸約束,才能求解約束方程組。但由于非線性方程組求解過程本身的不足,求解穩(wěn)定性的問題并沒有得到根本解決,現(xiàn)在有不少研究正在尋求提高求解穩(wěn)定性的途徑。(2)基于幾何推理的人工智能法人工智能的發(fā)展,促進了參數化設計方法的發(fā)展,產生了幾何推理法。這種方法又有兩個方面:一是建立在專家系統(tǒng)的基礎上,采用謂語表示幾何約束,通過推理機制導出幾何細節(jié)。這種方法可檢驗幾何約束模型的合理性并能處理局部修改,但系統(tǒng)龐大,對遞歸約束無法處理。二是擴展現(xiàn)有的數據結構,使其包含拓撲信息,并通過程序實現(xiàn)從幾何約束到幾何細
5、節(jié)的推理。但由于在推理過程中要查詢匹配規(guī)則,所以用這種方法建立的系統(tǒng)過于龐大,而且速度較慢。(3)基于特征的實體造型方法特征是作為捕捉設計者意圖的方式而提出的,以取代用直線、圓弧、圓等本幾何元素構圖的方式。特征實體具有一定的智慧,它們不但具有明確的工藝特征結構,而且能始終記憶自己的功能屬性和與其它相關實體的適應關系。修改某一特征實體,會自動引起整個設計模型的相關變化,其中包括實體本身的物理量(如質心和慣性矩等數據)的變化圖。(4)基于輔助線法這種方法的幾何圖形輪廓線都建立在輔助線的基礎上,輔助線的求解條件在作圖的過程中己明確規(guī)定,由輔助線來管理圖形的幾何約束和結構約束,并直接定義圖形的約束集,
6、這樣就可以在圖中搜索和檢查求解條件,使約束的表達得以簡化,減小了約束方程的求解規(guī)模。從本質上講,這種方法屬于幾何約束的變量幾何法,不同之處是用輔助線來表達約束。當圖形比較簡單和有規(guī)則時,這種方法的求解速度較快,但當圖形比較復雜時,作輔助線會增加作圖的操作,影響作圖速度,而且要保證用輔助線定義圖形約束集的完整性比較困難。(5)基于關系的建模方法關系模型的建立能方便地進行修改以適應不同用戶的特殊要求,從而大大提高設計速度。以關系型數據結構構造參數化模型是德國西門子公司首先提出來的。在系統(tǒng)內,關系可建立在所在系統(tǒng)能識別的對象之間,也可在任意大的模型中建立任意復雜的關系模型,這種關系的建立過程是以符合
7、設計師設計習慣的、非常簡便自然的方式進行。(6)知識驅動的智能化設計知識驅動的基本思想是要尋求、記錄不同類型知識的方法,這些知識用來策劃、設計和完成一種產品、項目或工程,是將人工智能(包括知識庫、知識規(guī)則、邏輯推理等)與CAX集成系統(tǒng)有機地結合為一體.但知識庫必須儲存大量專家的經驗、知識及已知的事實和采用這些知識的規(guī)則,并且知識庫中的知識數據能夠被推理機制所采納,可以通過相應的軟件來添加、修改和維護,因此這種基于知識的智能化設計仍然在研究和發(fā)展中1。1.2 基于AutoCAD參數化設計概述1.2.1 基于AutoCAD開發(fā)工具AutoCAD因為具有開放的體系結構,允許用戶和開發(fā)者采用高級編程語
8、言對其進行擴充和修改,即二次開發(fā),能最大限度地滿足用戶的特殊要求。其常用的二次開發(fā)語言有AutoLisp,ADS,ObjectARX等。AutoLISP是一種嵌入AutoCAD里并運行于其中的、駐留在擴展內里的解釋執(zhí)行語言,具有編程簡單的特點,但在開發(fā)大項目時顯得力不從心。ADS是一種開發(fā)AutoCAD應用程序的C語言程序設計環(huán)境。ADS程序不再包含于AutoCAD內部,它與AutoCAD之間并不直接通信,而是以AutoLISP為中介聯(lián)系起來的,這就擺脫了AutoCAD的約束,具有很大的靈活性,其缺點是不適應當前可視化編程的需要。在執(zhí)行ObjectARX應用程序所需系統(tǒng)開銷最小,速度最快,但是
9、開發(fā)過程相當復雜。AutoLISP運行速度不快,開發(fā)界面單調且不友好;ADS是建立在C語言基礎上的,而C語言是面向Windows編程的,學習難度相對較大。因此,不論用還是ADS在AutoCAD上進行二次開發(fā),都受到了一定的局限。而VB的語言代碼可以說是世界上最簡單的編程語言,但其功能不弱。從數據計算、數據庫管理到Intemet軟件開發(fā),都可以見到VB的身影。Aut0CAD中的ActiveX對象模型十分有用,它顯示了每一個對象的方法和屬性,用戶可以按照自己的愿望編程或定制AutoCAD,具有全開放式的對象模型。VB良好的運行速度,可以很好的與AutoCAD溝通2。1.2.2 基于AutoCAD的
10、VB參數化設計概述VB為開發(fā)者提供了一種新的選擇,也為用戶訪問AutoCAD中豐富的技術框架打開一條新的通道。VB和AutoCAD中強大的ActiveX自動化對象模型的結合,代表了一種新型的定制AutoCAD的模式構架。通過VB,可以操作AutoCAD,控制ActiveX和其它一些應用程序,使它們發(fā)生互動。VB通過AutoCAD ActiveX Automation接口向AutoCAD發(fā)送消息。AutoCAD允許VB環(huán)境和Aut0CAD同時運行,并且通過AutoCAD ActiveX Automation接口界面提供AutoCAD的編程控制3。目前,AutoCAD參數化設計系統(tǒng)主要采用的是二維
11、圖紙的繪制,設計者打開AutoCAD設計界面,由VB管理器新建一個工程,并且保存在適當的位置,在此工程中創(chuàng)建標準件,系列件的數據庫,各種零件的幾何參數基于(Access,F(xiàn)oxPro(R)等)數據庫系統(tǒng)建立通訊與調用,設計過程的主要信息和數據均存儲在數據庫中.并通過動態(tài)數據交換口(DDE)功能向繪圖程序傳遞標準件的尺寸參數。然后進入VB開發(fā)環(huán)境,新建窗體和模塊,在該窗體創(chuàng)建需要的控件,設定其屬性要與數據庫匹配,在各自代碼區(qū)編寫繪圖程序,調用數據庫中的相應數據,來完成參數化的設計程序代碼5。1.3 基于AutoCAD參數化設計的數據庫的概述1.3.1 標準件庫框架結構構建標準件庫的基本目的,就是
12、讓用戶可以以交互的方式,查詢所需的標準件并得到相關的信息及圖形,進而方便地插入到當前圖形中,根據這一目的,建立機械標準件庫的框架結構如圖1所示,框架主要由用戶交互界面、數據庫模塊和圖形繪制模塊組成,各部分功能如下:(l)用戶交互界面對其它模塊起到協(xié)調作用,通過數據庫接口與標準件數據庫相連,使用戶交互式地從標準件庫中選擇、查詢、瀏覽或補充標準件,并可以調用繪圖模塊,將生成的標準件圖形插入到當前圖形中。(2)數據庫模塊主要包括數據庫接口和數據庫,數據庫接口是連接用戶界面與數據庫的通道,可以對數據庫中的數據記錄進行查詢、修改、增減等。數據庫由相應的數據庫軟件建立,里面存放標準件的結構參數和其它的一些
13、信息,如材料、熱處理、性能等級及國標標號等。(3) 圖形繪制模塊主要根據用戶交互界面發(fā)出的命令,采用從數據庫中查詢所得的標準件結構數,調用參數化繪圖過程,在當前繪圖區(qū)中繪制相應的標準件6。圖1 標準零件庫框架1.3.2 數據庫的建立目前使用的數據庫FoxBase,F(xiàn)oxPro,Access均以mdb為后綴。在利用數據庫時,首先要創(chuàng)建數據庫,數據庫的建立有2種方法。,一種是直接采用數據庫軟件Microsoft Office Access建立相應數據庫,數據庫由3個數據表組成,一個為主表,另外2個為輔助表.主表主要包括標準件的類型、型號、名稱等字段,它的每一個字段可用于標準件的檢索關鍵詞,輔助表主
14、要存放與主表一一對應的標準件的信息。2個輔助表,一個為結構參數輔助表,存放標準件的結構參數,用于參數化繪圖時的參數輸入,另一個為相關信息表,存放有關標準件的使用材料、熱處理、性能等級及國標標號等信息,便于用戶對標準件的進一步了解。建立數據庫的另外一種方法是通過AutoCAD的二次開發(fā)工具VBA來建立Access數據庫,這種方法是使用ADO通過編程實現(xiàn)的,ADO(DataAcessObject)是建立在Microsoft Jet 上的一種對象化關系數據庫管理系統(tǒng)。使用ADO通過編程創(chuàng)建Access數據庫主要需要以下幾個步驟:(1)用D而語句聲明一個新的工作空間和數據庫對象變量。(2)用Creat
15、2Database方法創(chuàng)建數據庫對象;(3)用Dim語句聲明表對象變量,并用CreateTableDef方法創(chuàng)建數據庫中的表對象;(4)為表對象設置必要的屬性;(5)聲明域和索引對象變量,用CreateField和CreateIndex方法創(chuàng)建域對象和索引對象,并為域和索引對象設置屬性;(6)使用Append方法,將域和索引追加到表中,將表追加到數據庫中7。1.3.3 數據庫訪問常用的數據庫訪問對象DAO(Data Accees Objects)技術,遠程數據對象RDO(Remote Data Objects)技術和Active數據對象ADO(ActiveX Data Objects)。DAO
16、它是Jet數據庫引擎的接口,專門用來訪問本地的Jet和諸如Access,Btrieve bBase,F(xiàn)oxPro等數據庫。當訪問本地數據時,采用DAO是較理想的方法。但是當要與遠程數據庫打交道時,雖然DAO也能訪問ODBC數據源,但性能不太理想。另外與直接調用API接口和使用RDO相比,處理遠程數據庫的功能有限。RDO提供了一系列的對象,用來滿足遠程數據訪問的特殊要求。在ODBC API和驅動程序管理之上,RD0實現(xiàn)了很薄的一個代碼層,用來建立連接,創(chuàng)建結果集,并且使用盡可能少的工作站資源執(zhí)行復雜的過程。如果代碼創(chuàng)建ODBC Direct Workspace對象,那么RDO也是可以被DAO訪問
17、。ADO是OLEDB的COM(Component Object Model)接口,是Microsoft的最新的對通用數據的全功能多機制接口。ADO的對象模型是所有數據訪問接口對象模型中最簡單的一種,它的優(yōu)勢在于它可用于各種程序設計語言,所以ADO技術成為數據庫訪問功能的新突破。使用ADO,在能創(chuàng)建一個數據集之前,必須建立和保持對數據源的連接。這就意味著代碼行要多,而且需要管理的對象引用也較多。開發(fā)出來的應用程序開銷也較大。訪問 Access數據庫的典型步驟如下:1) 連接數據源。如:Set daoDb=OpenDatabase(“E:shuojukuming.db”)2) 打開記錄集對象。如:
18、Set daoRS=daoDb.openReCordset (“biaoming”,2)3) 使用記錄集。在各個記錄集之間切換一般可以使用記錄集對象的Move、MoveFirst、MoveNext、MovePrevious 和MoveLast方法,添加用Add,修改用Edit,刪除用delete。4) 斷開連接。使用close方法能夠關閉記錄集和數據庫對象的連接。在退出程序之后必須關閉這兩個對象 8。1.4 參數化設計發(fā)展狀況1.4.1 國外研究狀況CAD/CAE技術發(fā)展至今,已經歷了二維繪圖、線框模型、自由曲面造型、三維實體造型、特征造型等重要的發(fā)展階段,其間又有參數化、變量化等輔助技術的出
19、現(xiàn)。參數化設計是CAD技術在實際設計應用中被提出來、并得到發(fā)展的、有著強大實用價值的技術。國外在參數化方面的起步比較早,上世紀七十年代末八十年代初美國麻省理工大學的Gmssajd教授等人就提出了參數化設計的思想。直到1987年底PARAMETRIC TECI-INOLOGY公司推出了參數化造型軟件PRO/ENGINER后,參數化技術得到了迅猛的發(fā)展、并且參數化技術成了新的CAD標志。隨后涌現(xiàn)出大量的參數化的商品軟件。如麻省理工大學畢業(yè)的幾位博士創(chuàng)辦了Premise公司,吸收了Gossard的理論思想,形成了微機和工作站上的商品軟件,稱作Design View。之后,CV公司吸收了Design
20、View,形成了CV的系列產品。1.4.2 國內研究狀況國內從上世紀70年代中期開始研究參數化的技術,并且形成了與國外不同的參數化技術,如參數尺寸代碼法,輔助線作圖法等。但由于CAD技術的普及程度不夠,所以在參數化技術研究以及開發(fā)商品化軟件方面相對滯后于國外。近些年,國家科委和各部委共同實施CAD應用工程項目的推廣,推動了參數化技術的發(fā)展,各種學術研討會和技術骨干X101上發(fā)表的論文數量急劇增加,出現(xiàn)了一些二次開發(fā)和自主版權的參數化軟件加高華CAD、開目CAD、機械工程師和緯衡CAD等,但軟件的總體水平仍停留在Aut0CAD功能上,且缺少三維參數化功能10。我國各高校、機械制造業(yè)、研究所目前都
21、競相在進行CAD/CAM參數化設計的研究,并且和數據庫相結合來開發(fā)本行業(yè)的零部件和本企業(yè)內的零部件,來提高設計效率、生產效率。提高自身的市場應變能力、抵抗能力、更好的在市場發(fā)揮企業(yè)的優(yōu)勢,獲得更高的經濟效益。但各個單位大多考慮自身的實際情況,一般都是進行針對性較強的,應用于某一專項的二次開發(fā)。例如CAXA軟件只對齒輪進行了開發(fā)。部分高校也都對國家標準件進行了開發(fā),但都不是進行完整開發(fā),對尺寸公差標注系統(tǒng)和孔、軸的公差配合也并沒有設計開發(fā)。雖然機械工程師對AutocAD進行了全面的、系統(tǒng)的開發(fā),但是由于開發(fā)的規(guī)模大,成本大,因此其價格也較昂貴,屬于行業(yè)機密。一般個人企業(yè)無法承受使用時所負的經濟負
22、擔。另外也有許多企事業(yè)單位對三維軟件進行了二次開發(fā)。例如,機械設計手冊、Geartax基于SolidWorks進行了二次開發(fā)和pro的二次開發(fā)12。參數化設計隨著AutoCAD技術的發(fā)展而興起的一種新興的繪圖技術,目前并沒有在我國大規(guī)模的開發(fā)和應用開來。以往對參數化設計的研究,大部分集中在幾何模型的驅動上,其參數化的對象是產品的零件。應用現(xiàn)有的參數化設計軟件,用戶可以方便地修改零件模型的幾何尺寸,但是對于零件的構造、裝配、組合等一系列產品級的設計工作,仍然是非常復雜而又煩瑣的,傳統(tǒng)的參數化設計明顯不足,但參數化設計可以大大提高模型的生成和修改的速度,在產品的標準設計、系列設計、相似設計及專用C
23、AD系統(tǒng)開發(fā)方面都具有較大的應用價值。目前,參數化設計中的參數化建模方法主要有變量幾何法和基于結構生成歷程的方法,前者主要用于平面模型的建立,而后者更適合于三維實體或曲面模13。現(xiàn)今,傳統(tǒng)意義上的CAD系統(tǒng)(軟件)技術已進入了成熟的發(fā)展時期,隨著計算機軟硬件技術的快速發(fā)展.機械產品設計正經歷著由二維CAD設計向三維設計延伸和發(fā)展的過渡時期。國內外眾多機械CAD軟件一方面向標準化、集成化的方向發(fā)展。另一方面由二維圖形軟件向三維實體軟件轉化與傳統(tǒng)的二維設計相比,三維設計更符人們的思維習慣且可視化程度高,它己成為今后機械設計的主流方向。今后技術的總體發(fā)展趨勢是不斷地向設計、產品、開發(fā)和應用的全過程拓
24、展其內涵,在更高的層次上、更廣泛的范圍內,向智能化與一體化、集成化與并行工程、通用化與標準化以及商品化與實用化等方向發(fā)展14。1.5 本文研究的主要內容1.5.1 本文研究對象本文研究對象是圓柱齒輪減速器。1.5.2 本文研究意義雖然現(xiàn)在三維制圖軟件已經得到很大程度上的應用,但目前行業(yè)上的主流機械制圖軟件仍然上使用二維制圖軟件,其中AutoCAD仍是應用最為廣泛的平面制圖軟件.參數化設計是AutoCAD應用中最為重要的研究領域之一,能否實現(xiàn)參數化設計也成為評價系統(tǒng)CAD優(yōu)劣的重要技術指標,它更符合和貼近現(xiàn)代CAD中概念設計以及并行設計思想15。齒輪減速器是把機械傳動中的動力機(主動機)與工作機
25、(從動機)聯(lián)接起來,在原動機和工作機或執(zhí)行機構之間起匹配轉速和傳遞轉矩的作用,若減速器設計不合理出現(xiàn)了局部應力集中,很容易出現(xiàn)事故.在減速器的傳統(tǒng)設計過程中,主要采用傳統(tǒng)的計算方法,并沒有采用一些先進的設計技術,設計安全系數的選擇往往偏大,造成制造材料的浪費。減速器的箱體受力情況較復雜,常常會受到較大的彎曲和扭轉應力作用,因此如何在不大幅度增加重量的情況下提高箱體的剛度就顯得很關鍵。若減速器的強度不夠,就很難滿足減速器正常工作時的穩(wěn)定性的要求。若為了保證減速器的強度而增加箱體的壁厚,使得箱體的總體的重量和體積很大。而且減速器已形成了系列化生產,它的設計與繪圖往往要花費大量的人力與物力。本文采用
26、的參數化技術實現(xiàn)了減速器的參數化設計,只通過修改其中的幾個參數就能得到新的模型,大大的節(jié)省了時間和精力,同時提高設計質量16。本文在廣泛查閱大量有關文獻、吸收和消化目前對減速器研究成果的基礎上,做了以下工作:1) 介紹減速器CAD參數化設計的各功能模塊;2) 建立減速器設計所需的各類數據庫;3) 完成圖形數據信息入庫、編輯、修改、查詢等功能17。2 圓柱齒輪減速器CAD系統(tǒng)AutoCAD是當前應用最廣泛的CAD圖形支撐平臺,但缺乏參數化設計功能,因而不能完成零部件的自動設計與繪圖,設計效率難以提高。本研究著眼于為專業(yè)用戶開發(fā)二級圓柱齒輪減速器的計算機輔助設計軟件,通過輸入工作參數(如傳遞功率和
27、轉速等),即能實現(xiàn)減速器關鍵零部件的參數化設計、零件圖庫的管理和計算機輔助工藝分析等,為減速的計算機輔助設計與制造提供幫助。2.1 減速器CAD系統(tǒng)的構成CAD系統(tǒng)的結構如圖所示圖2-1 CAD系統(tǒng)的構成2.2 零件圖的繪制通過創(chuàng)建對AutoCAD部件對象的引用,VB語言即可實現(xiàn)創(chuàng)建AutoCAD文件并繪制零件圖的功能。圖2-2至2-9即為減速器部分主要零件圖,它們都可以CAD參數化繪圖系統(tǒng)來實現(xiàn)。圖2-2 通氣器零件圖圖2-3 放油螺栓零件圖圖2-4 游標零件圖圖2-5吊環(huán)零件圖圖2-6螺栓零件圖圖2-7 輸出軸零件圖圖2-8 齒輪軸零件圖圖2-9 齒輪零件圖3 零件圖庫管理模塊設計除齒輪、
28、軸和箱體等主要部件之外,減速器的構成還包括眾多附件(如通氣器、吊環(huán))和標準件(如軸承、螺栓),為實現(xiàn)對這些零件工程圖的統(tǒng)一分類管理,故設計開發(fā)此模塊。圖庫管理模塊應實現(xiàn)如下功能:對圖形文件庫進行添加、刪除和修改;對零件信息的編輯和查詢;對指定零件圖的瀏覽和打印輸出。3.1 圖庫管理模塊設計AutoCAD圖庫管理模塊主要包括基本圖形庫的創(chuàng)建、相關數據信息的統(tǒng)計、界面的設計和管理程序的實現(xiàn)等。圖庫管理模塊設計主要分為兩個部分:一是采用Access創(chuàng)建零件信息數據庫,二是用VB編寫程序實現(xiàn)AutoCAD圖形與相關信息的統(tǒng)一。3.2 數據庫的創(chuàng)建與維護Microsoft Office Access(前
29、名 Microsoft Access)是由微軟發(fā)布的關聯(lián)式數據庫管理系統(tǒng)。它結合了 Microsoft Jet Database Engine 和 圖形用戶界面兩項特點,是 Microsoft Office的成員之一。其實Access 也是微軟公司另一個通訊程序的名字,想與 ProComm 以及其他類似程序來競爭??墒鞘潞笪④涀C實這是個失敗計劃,并且將它中止。數年后他們把名字重新命名于數據庫軟件。另外,Access還是c語言的一個函數名和一種交換機的主干道模式。在Access中創(chuàng)建數據庫,有兩種方法:一是使用模板創(chuàng)建,模板數據庫可以原樣使用,也可以對它們進行自定義,以便更好地滿足需要;二是先建
30、立一個空數據庫,然后再添加表、窗體、報表等其他對象,這種方法較為靈活,但需要分別定義每個數據庫元素。無論采用哪種方法,都可以隨時修改或擴展數據庫。3.2.1 使用模板創(chuàng)建Access提供了種類繁多的模板,使用它們可以加快數據庫創(chuàng)建過程。模板是隨即可用的數據庫,其中包含執(zhí)行特定任務時所需的所有表、窗體和報表。通過對模板的修改,可以使其符合自己的需要。 3.2.2 直接創(chuàng)建空數據庫通常情況下,用戶都是先創(chuàng)建數據表等組件之后才創(chuàng)建數據庫,或者先創(chuàng)建一個空數據庫,然后再在此空數據庫中添加表、查詢、窗體等組件。 3.2.3 轉換數據庫格式新建的數據庫采用的是Access 2002-2003文件格式,如果
31、用戶希望將其轉換為Access 2007文件格式,則可以使用Office菜單中的“轉換”命令來實現(xiàn)。3.2.4 備份數據庫對于數據庫文件,應該經常定期備份,以防止在硬件故障或出現(xiàn)意外事故時丟失數據。這樣,一旦發(fā)生意外,用戶就可以利用創(chuàng)建數據時制作的備份,還原這些數據。同時,備份和還原還可以備份并還原Access項目(.adp),該項目獨立于但鏈接到SQL Server數據庫。 3.2.5 零件數據庫的建立采用Microsoft Access建立零件相關信息的數據庫,包括零件的圖號、圖樣名稱、繪圖者、審核者、材料、入庫時間和修改時間等信息。數據庫如下圖所示。圖1 零件相關信息的數據庫3.3 VB
32、程序對數據庫的調用程序界面主要由3個區(qū)域組成:信息顯示區(qū)、圖片預覽區(qū)、功能按鈕區(qū),如圖3所示。圖2 圖庫管理模塊用戶界面信息顯示區(qū)用于顯示圖庫中零件的相關信息;圖片預覽區(qū)顯示AutoCAD圖形文件;功能按鈕區(qū)用于實現(xiàn)對零件圖的查詢、修改、刪除等操作。3.3.1 搜索功能的實現(xiàn)有時候零件庫的零件較多,使用下一個來瀏覽尋找某零件的信息時會比較的慢,因此可以采取搜索的功能來查找。當單擊搜索控制按鈕時,檢索的窗體就會加載,為了便于用戶的使用,一共設計了兩種檢索方式,分別是按照零件的圖號來檢索和按圖樣的名稱來檢索,它們的程序控制界面分別如圖1和圖2。為實現(xiàn)兩種方式,其程序主要有三部分構成,窗體加載程序模
33、塊、按零件搜索程序模塊和按圖樣名稱搜索模塊這三個部分組成。 圖3 圖號搜索界面圖4 圖樣名稱搜索界面主要程序代碼如下:Private Sub cmdSearch_Click() frmPartsSearch.Show 1 搜索窗體顯示End SubPrivate Sub cboDrawingNumber_Click() txtDrawingNumber.Text = cboDrawingNumber.TextEnd SubPrivate Sub cmdSearch1_Click() Dim name As String '定義變量,臨時圖樣名稱 '讀取圖號 DrawingNum
34、ber = txtDrawingNumber.Text '判斷是否輸入圖號,如果輸入則進行如下查詢 If DrawingNumber <> "" Then '按圖號進行查詢,找出指定圖號記錄 rs1.Open "select * from parts where 圖號 = '" & DrawingNumber & "'", conn If rs1.RecordCount <> 0 Then '顯示查詢結果 MsgBox "您所查找的零件信息如下所
35、示", vbOKOnly, "搜索結果" Unload frmPartsSearch name = App.Path & "partsDB" & rs1.Fields(0) & ".wmf" frmPartsManage.imgParts.Picture = LoadPicture(name) Dim i As Integer '定義變量,循環(huán)變量 For i = 0 To 8 If Not IsNull(rs.Fields(i) Then frmPartsManage.txtMessage(
36、i).Text = rs1.Fields(i) Else frmPartsManage.txtMessage(i).Text = "" End If Next Else MsgBox "沒有找到相關數據", vbOKOnly, "搜索結果" End If Else MsgBox "圖號不正確,請重新輸入", vbOKOnly, "搜索結果" End IfEnd SubPrivate Sub cmdSearch2_Click() Dim name As String '定義變量,臨時圖樣名
37、稱 '讀取圖樣名稱 DrawingName = txtDrawingName.Text '判斷是否輸入圖樣名稱,如果輸入則進行如下查詢 If DrawingName <> "" Then '按圖樣名稱進行查詢,找出指定圖樣名稱的記錄 rs1.Open "select * from parts where 圖樣名稱 = '" & DrawingName & "'", conn If rs1.RecordCount <> 0 Then '顯示查詢結果
38、MsgBox "您所查找的零件信息如下所示", vbOKOnly, "搜索結果" Unload frmPartsSearch name = App.Path & "partsDB" & DrawingName & ".wmf" frmPartsManage.imgParts.Picture = LoadPicture(name) Dim i As Integer '定義變量,循環(huán)變量 For i = 0 To 9 If Not IsNull(rs.Fields(i) Then frm
39、PartsManage.txtMessage(i).Text = rs1.Fields(i) Else frmPartsManage.txtMessage(i).Text = "" End If Next Else MsgBox "沒有找到相關數據", vbOKOnly, "搜索結果" End If Else MsgBox "圖樣名稱不正確,請重新輸入", vbOKOnly, "搜索結果" End IfEnd Sub3.3.2 編輯功能的實現(xiàn)如果零件庫打開零件信息需要編輯,使用編輯按鈕即可,它的
40、程序控制代碼我就不做詳細的介紹了將核心控制代碼如下:Private Sub cmdEdit_Click() '“編輯記錄”按鈕代碼On Error GoTo editErriblstatus.Caption=“編輯記錄”mbeditflag = TrueExit SubeditErr:MsgBox Err.Description 錯誤提示Call displayRecordEnd Sub3.3.3 添加功能的實現(xiàn)如果零件庫有新的零件信息需要寫入數據庫,我們不用打開數據庫,可以直接使用添加這個控制按鈕來實現(xiàn)新的零件的信息的錄入。它的核心控制代碼如下:Private Sub cmdAdd_
41、Click() '“新增記錄”按鈕代碼On Error GoTo AddErrWith adoprimaryrsIf Not (.BOF And .EOF) Then 如果當前不是處于開始或結束位置mvbookmark = .Bookmark 保存記錄書簽End IfRs.AddNew 用AddNew方法向記錄集添加新記錄iblstatus.Caption=“添加記錄”mbaddnewflag = truesetbuttons FalseEnd WithExit SubAddErr:MsgBox Err.DescriptionCall displayRecordEnd Sub3.3.3
42、 取消功能的實現(xiàn)如果零件庫有新的零件信息寫入數據庫時發(fā)生錯誤,可以使用取消控件。它的核心控制代碼如下:Private Sub cmdCancel_Click() '“取消記錄”按鈕代碼On Error Resume Nextsetbuttons Truembeditflag = Falseadoprimaryrs.CancelUpdate 對象關聯(lián)的所有掛起更改,從而恢復上一次調用 Refresh 方法之后的值。 If mvbookmark > 0 Then adoprimaryrs.Bookmark = mvbookmarkElseadopeimaryrs.
43、MoveFirst '移動到第一條記錄End Ifmbdatachangrd = FalseCall displayRecordEnd Sub3.3.4 刪除功能的實現(xiàn)如果零件庫有些的零件信息需要從數據庫中刪除,可以使用這個控件。它的核心控制代碼如下:Private Sub cmddelete_click( ) '“刪除記錄”按鈕代碼On Error GoTo deleteerrWith adoprimaryrs.Delete 用Delete方法刪除記錄集中當前的記錄.MoveNext 指針移到下一記錄If .EOF Then .MoveLast 如果刪除的是末記錄,則使指針指
44、向新的末記錄End WithExit Subdeleteerr:MsgBox Err.Description 錯誤提示Call displayRecordEnd Sub3.3.5 退出功能的實現(xiàn)該控件是當零件信息管理完畢,退出管理界面時使用。它的核心控制代碼如下:Private Sub cmdExit_Click() '“退出”按鈕代碼 Unload Me 關閉窗體End Sub3.3.6 瀏覽功能的實現(xiàn)對零件的信息進行瀏覽其中包括第一個、前一個、后一個、最后一個四個控制按鈕,其主要程序如下:Private Sub cmdFirst_Click() '“第一條記錄”按鈕代碼On
45、 Error GoTo gofirsterroradoprimaryrs.MoveFirst '移動到第一條記錄mbDataChanged = FalseExit Subgofirsterror:MsgBox Err.Description 錯誤提示Call displayRecordEnd SubPrivate Sub cmdNext_Click() '“下一條記錄”按鈕代碼On Error GoTo GonexterrorIf Not adoprimaryrs.EOF Then adoprimaryrs.MoveNextIf adoprimaryrs.EOF And ado
46、primaryrs.RecordCount > 0 ThenBeepadoprimaryrs.MoveLast 已到最后返回End IfmbDataChanged = FalseEnd IfmbDataChanged = fasleExit SubGonexterror:MsgBox Err.Description 錯誤提示Call displayRecordEnd SubPrivate Sub cmdLast_Click() '“最后一條記錄”按鈕代碼On Error GoTo Golasterror adoprimaryrs.MoveLast '移動到最后一條記錄 m
47、bDataChanged = fasleExit SubGolasterror:MsgBox Err.Description 錯誤提示Call displayRecordEnd SubPrivate Sub cmdPrevious_Click( ) '“前一條記錄”按鈕代碼On Error GoTo GopreverrorIf Not adoprimaryrs.BOF Then adoprimaryrs.MovePreviousIf adoprimaryrs.BOF And adoprimaryrs.RecordCount > 0 ThenBeepadoprimaryrs.Mov
48、eFirst 已到最前返回End IfmbDataChanged = FalseEnd IfmbDataChanged = fasleExit SubGopreverror:MsgBox Err.Description 錯誤提示Call displayRecordEnd Sub結 論歷時兩個多月的畢業(yè)設計已經完成。由于我的專業(yè)方向是機械工程及自動化,而本次畢業(yè)設計的內容側重于參數化設計方向,所以在正式的畢業(yè)設計前,我花了幾周的時間進行必要的知識準備,掌握一些計算機編程方面的知識。然后又在老師的指導下對參數化設計有了更深的理解,這也為論文的順利完成奠定了基礎。全文主要完成減速器設計過程中標準零件
49、圖形庫的建立。論文首先是對參數化設計、基于AutoCAD的參數化設計、基于AutoCAD參數化設計的數據庫做了概述,介紹了參數化設計的理念和設計的理論方法,基于AutoCAD的VB參數化設計思路。然后是對圓柱齒輪減速器CAD系統(tǒng)做了全面的介紹,分別減速器CAD系統(tǒng)的構成、零部件參數化設計模塊、圖庫管理模塊計算機、輔助工藝分析模塊等組成部分的作用及功能和實現(xiàn)的原理方法做了簡單的介紹。最后是對零件圖庫管理模塊的詳細設計,這一模塊主要是對圖形文件庫進行添加、刪除和修改;對零件信息的編輯和查詢;對指定零件圖的瀏覽和打印輸出。為實現(xiàn)這些功能,對VB程序調用數據庫做了全面的程序設計,包括搜索、編輯、添加、
50、取消、刪除、退出、瀏覽等功能。本課題主要完成減速器設計過程中標準零件圖形庫的建立,利用VB設計數據庫應用程序,并利用VB提供的ActiveX技術對AutoCAD進行鏈接,實現(xiàn)圖形數據信息入庫、編輯、修改、查詢等功能,從而實現(xiàn)圖庫的計算機管理。由于時間、學識和能力有限,再加之實踐經驗的不足,因而在設計中間錯誤和不足可能在所難免,懇請老師和同學們的批評和指正,不甚感謝!致 謝本論文是在肖老師的親切關懷和悉心指導下完成的。承蒙肖老師的親切關懷和精心指導,雖然有繁忙的工作,但仍抽出大量時間給予我學習上的指導和幫助,肖老師淵博的學識、嚴謹的治學態(tài)度和精益求精的科學作風將使我終身受益,值得永遠學習。在此謹
51、向肖老師致以最崇高的敬意和衷心的感謝!本課程的完成和論文的準備中,得到了其他同學和朋友的幫助和支持,對他們及在大學學習期間,曾經給予本人關心和幫助的領導、老師、同學、朋友, 也對一直支持我學業(yè)和生活的家人,在此表示最誠摯的謝意!參考文獻l程寶義.計算機輔助設計基礎明.長沙:國防科技大學出版社,1992 童秉樞.現(xiàn)代CAD技術M.北京:清華大學出版社,20003 劉文生.基于AutoCAD的機械零件參數化設計J.武漢工業(yè)學院學報,2004,23(1):132一1364 普建濤,王華昌,王耕耘等.幾何約束系統(tǒng)求解策略研究與實踐J.計算機輔助設計與制造,1999(5):23 一27,1595 任碧波
52、.基于Aul0CAD的機械零件參數化圖庫的建立方法J.云南民族學院學報(自然科學版 ),2002,11(1):611。6紀豐偉,陳懇,張保根·二維參數化技術的發(fā)展趨勢及現(xiàn)狀J.機械設計與制造工程,2000(7): 98-1027趙永平,賀賽男,于嬌等.基于VB的Auto CAD二次開發(fā)與圖形自動生成技術J.森林工程,2006,22(1):61648吳睿,劉華明,任秉銀.基于約束分離的參數化設計技術研究J.機械設計,1999(12):47499孫正興等.基于特征的機械設計以D系統(tǒng)研究J,機械設計,2004(9):565810吳睿,劉華明,任秉銀.基于約束分離的參數化設計技術研究J.機械
53、設計,l999(12):4611王明軍,楊偉,王靜等.淺談基于AutoCAD建立符號庫的設計J.科技廣場,200 5(12):767912翟震,張小黎.基于AutoCAD環(huán)境下的數據庫的連接與參數化圖J.中國科技信息,2005(15):6972l3張潤生,何廣湘,趙銼.基于AutoCAD二次開發(fā)方法的探討J.計算機應用研究,1999(3):132一133,1514張帆,鄭立楷,王華杰.AutoCADVBA開發(fā)精彩實例教程M.北京:清華大學出版社,200415潘地林.Visual Basic程序設計M.北京:高等教育出版社,200516肖猛,劉艷艷.基于AutoCAD用VB二次開發(fā)圓柱齒輪減速器
54、CAD系統(tǒng)J.重慶科技學院學報(自然科學版),148150附錄1:主窗體程序如下:Option ExplicitPrivate WithEvents adoprimaryrs As RecordsetPrivate mvbookmark As VariantPrivate mbchangedbycode As BooleanPrivate mbeditflag As BooleanPrivate mbaddnewflag As BooleanPrivate mbdatachanged As BooleanPrivate Sub cmdSearch_Click()frmPartsSearch.Show 1End SubPrivate Sub Form_Load() '設置窗體啟動初始狀態(tài)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 語言、文化與交際知到課后答案智慧樹章節(jié)測試答案2025年春湖南大學
- 江蘇省徐州市2024-2025學年高一上學期1月期末信息技術試題 含解析
- 2024年自然資源部第一海洋研究所招聘真題
- 2025汽車零部件供應商合同管理咨詢協(xié)議
- 高一英語學案:預習導航SectionⅡ
- 深圳施工總價合同范本
- 2024年山東濟南福和數控機床有限公司招聘真題
- 2024年梅河口市市屬事業(yè)單位考試真題
- 2024年廉江市市屬事業(yè)單位考試真題
- 光纜顆粒采購合同范本
- ICH-Q9:風險管理分享課件
- 整流變壓器試驗報告
- 施工進場通知書
- 步進電機控制系統(tǒng)課件
- 幼兒園小班科學藝術:《歡樂的小芽兒》 課件
- 子宮肌瘤課件PPT(共38張PPT)
- 漢字的五行屬性與三才五格計算方法
- 唐山高科總部大廈幕墻工程幕墻招標技術評估總結
- 蘇教版三年級下冊數學 第三單元 解決問題的策略 測試卷
- 《學前教育科學研究方法》全套課件(完整版)
- 機電經典安裝工程相冊圖解PPT86頁
評論
0/150
提交評論