畢業(yè)設(shè)計(論文)AutoCAD環(huán)境下的液壓系統(tǒng)符號開發(fā)_第1頁
畢業(yè)設(shè)計(論文)AutoCAD環(huán)境下的液壓系統(tǒng)符號開發(fā)_第2頁
畢業(yè)設(shè)計(論文)AutoCAD環(huán)境下的液壓系統(tǒng)符號開發(fā)_第3頁
畢業(yè)設(shè)計(論文)AutoCAD環(huán)境下的液壓系統(tǒng)符號開發(fā)_第4頁
畢業(yè)設(shè)計(論文)AutoCAD環(huán)境下的液壓系統(tǒng)符號開發(fā)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、蚌埠學(xué)院本科畢業(yè)設(shè)計(論文)畢業(yè)設(shè)計(論文)autocad環(huán)境下液壓系統(tǒng)符號開發(fā)系 別 :機(jī)械與電子工程系專業(yè)(班級):機(jī)械設(shè)計制造及自動化07級2班作者(學(xué)號):指導(dǎo)教師:完成日期: 2011年6月1日蚌埠學(xué)院教務(wù)處制目 錄摘 要:3abstract:41 引 言52 緒 論62.1 國內(nèi)外的研究現(xiàn)狀和發(fā)展趨勢62.2 autocad二次開發(fā)的目的和意義62.3 autocad二次開發(fā)現(xiàn)狀82.4 autocad二次開發(fā)工具選擇82.5 課題研究的主要內(nèi)容和意義93 開發(fā)工具的介紹103.1 visual lisp概述103.2 visuallisp的主要組成部分和功能103.3 auto

2、lisp語言的特點113.4 運行autolisp程序114 典型液壓元件autolisp程序開發(fā)125 菜單的加載385.1 菜單命令的程序385.2 菜單命令的加載396 結(jié) 論40謝 辭41參考文獻(xiàn)42autocad環(huán)境下的液壓系統(tǒng)符號開發(fā)摘 要:autocad是目前市場上最流行的cad系統(tǒng),它所具有的可編程,易于定制以及可 擴(kuò)展等特性顯著提高了用戶的工作效率。本課題是在autocad環(huán)境下對液壓系統(tǒng)符號進(jìn)行 開發(fā),利用autocad 2008內(nèi)嵌的visual lisp編輯器,對液壓系統(tǒng)符號進(jìn)行參數(shù)化設(shè)計,其目的是將液壓元件的圖形符號匯編成參數(shù)化程序模塊掛接入autocad系統(tǒng)運行環(huán)境

3、中,不但為相關(guān)液壓元件設(shè)計人員提高其設(shè)計效率,增強(qiáng)其設(shè)計產(chǎn)品的市場競爭能力還使設(shè)計者有跟多的時間和精力從事創(chuàng)造性的勞動。而且能提高液壓系統(tǒng)圖的通用化及標(biāo)準(zhǔn)化程度。本設(shè)計主要對液壓泵、換向閥和液壓系統(tǒng)輔助元件等典型的液壓元件圖進(jìn)行了參數(shù)化設(shè)計。關(guān)鍵字:cad系統(tǒng);二次開發(fā);visual lisp;液壓元件;參數(shù)化設(shè)計autocad environment of hydraulic system symbols developmentabstract:autocad on the market at present is the most popular cad system, which has

4、 the programmable, easy to customize and extensible characteristics significantly improve users work efficiency. this topic is in autocad environment symbol of development, the hydraulic system using autocad 2008 embedded visual in lisp editor, hydraulic system symbols of parametric design, its purp

5、ose is to hydraulic components graphic symbols are compiled into parametric programs module hang access operating system environment in autocad, not only for related hydraulic components design personnel to improve the design efficiency and enhance its design product market competition ability to en

6、able the designer has with more time and effort in creative labor. but also improve the hydraulic system graph generalization and standardization level. this design is mainly to the hydraulic pump, reversing valves and hydraulic system auxiliary components and other typical of the hydraulic componen

7、ts figure on the parametric design. key words:cad-system ;the second development ;visual lisp;hydraulic cell;parametric design1 引 言隨著工程技術(shù)的發(fā)展,計算機(jī)輔助設(shè)計(cad技術(shù))得到了迅速普及,已經(jīng)成為電子信息技術(shù)的重要組成部分。它使得產(chǎn)品設(shè)計工作的內(nèi)容和方式產(chǎn)生了根本性變革;是提高產(chǎn)品和工作設(shè)計水平、降低消耗、縮短科研和新產(chǎn)品開發(fā)周期、大幅度提高勞動生產(chǎn)率的一項關(guān)鍵技術(shù);成為設(shè)計產(chǎn)品保持競爭優(yōu)勢,開拓市場的主要技術(shù)手段。 伴隨著cad技術(shù)的發(fā)展和應(yīng)用,各種商品化

8、的cad軟件也應(yīng)運而生并迅速發(fā)展,autocad軟件就是其中的優(yōu)秀軟件之一。autocad是美國auto-desk公司1982年推出的,目前世界上最為流行,最為成功的cad軟件。這不僅僅是因為它有非常強(qiáng)大的功能、支持的外設(shè)和平臺很多、價格又低、易學(xué)易用,最主要的是autocad具有開放式的體系結(jié)構(gòu),允許用戶在幾乎所有方面對其進(jìn)行修改和擴(kuò)充,用以滿足各種用戶自己的特殊需要。通過對autocad功能的調(diào)整、擴(kuò)充以滿足用戶特定要求的方法有時稱為對autocad的定制。通過定制,可以構(gòu)造出符合用戶習(xí)慣的autocad系統(tǒng),也可提高工作效率。由于autocad的每一部分都可以按要求定制,如定義一個對話框

9、,生成一種特殊線型。因此,定制可能是應(yīng)用autocad中最有創(chuàng)造性和最令人感興趣的工作。 本課題正是利用其能滿足特定用戶要求的各種定制功能,適應(yīng)市場對基本零部件繪圖模塊的需求,對一些常用的液壓元件進(jìn)行定制,包括:菜單、繪制圖形、幻燈片顯示,并介紹了auto lisp、visual lisp、以及基于這部分的應(yīng)用,實現(xiàn)一個完整的工程體。 通過本課題的實踐,綜合cad開發(fā)系統(tǒng)的特點,很容易讓我們發(fā)現(xiàn),我們不必是autocad專家或程序員,只要知道autocad的基本命令,就可以完成對各種需求產(chǎn)品的定制。在程序編制過程中,由小程序出發(fā),一步一步分段進(jìn)行程序調(diào)試,極大的提高了整個工作過程的效率,使我們

10、很輕松的完成了對常用液壓元件繪圖模塊的定制,實現(xiàn)了基于產(chǎn)品零件的autocad的二次開發(fā)。2緒 論2.1 國內(nèi)外的研究現(xiàn)狀和發(fā)展趨勢機(jī)械設(shè)計是一門古老而成熟的學(xué)科,自第一次工業(yè)革命以來,經(jīng)過幾百年的發(fā)展現(xiàn)在已臻于完善,然而,傳統(tǒng)的手工進(jìn)行計算繪圖的機(jī)械設(shè)計方法在日新月異的社會發(fā)展需求面前顯得捉襟見肘,力不從心。正因為如此,以計算機(jī)為代表的信息技術(shù)推動整個社會各方面發(fā)展的同時也為機(jī)械設(shè)計這門古老的學(xué)科帶來新的生機(jī),這就是計算機(jī)輔助設(shè)計(cad)。計算機(jī)繪圖具有非常的優(yōu)越性,在工程同樣中存在的一些具備標(biāo)準(zhǔn)化、規(guī)格化、參數(shù)化的零部件、符號等,利用計算機(jī)功能特點來實現(xiàn),具有效率高,操作簡便。cad軟件

11、的發(fā)展已進(jìn)入第四代,正朝著所謂的nad(net aided design)方向發(fā)展。我國的cad技術(shù)起步于六十年代,在引進(jìn)國外先進(jìn)技術(shù)和軟件的同時,大力開發(fā)有自主版權(quán)的cad系統(tǒng)如中科院、清華大學(xué)、北航、東大阿爾派等科研院所都為國內(nèi)cad技術(shù)的進(jìn)一步發(fā)展、提高和應(yīng)用起到了積極的促進(jìn)作用。據(jù)統(tǒng)計,cad在我國不同行業(yè)的分布為:機(jī)械占39%,電子占28%,建筑占33%,其它占10%。2.2 autocad二次開發(fā)的目的和意義autocad軟件作為cad工業(yè)的旗幟產(chǎn)品,以其強(qiáng)大的功能得到廣大用戶的青睞。它具有精確的坐標(biāo)系,能夠完成各種圖形的精確繪制、任意縮放和修改,支持?jǐn)?shù)字化儀的精確輸入。盡管如此,

12、由于autocad是作為一個通用的繪圖軟件而設(shè)計開發(fā)的,但各行各業(yè)都有自己的行業(yè)和專業(yè)標(biāo)準(zhǔn),許多單位也有自己的技術(shù)規(guī)格和企業(yè)標(biāo)準(zhǔn),化工行業(yè)也不例外,有著大量的各種圖紙設(shè)計標(biāo)準(zhǔn),因而,autocad不可能完全滿足每一用戶的具體應(yīng)用要求。但是,autocad具有開放的體系結(jié)構(gòu),它允許用戶和開發(fā)者在幾乎所有方面對其進(jìn)行擴(kuò)充和修改,同時可以利用多種開發(fā)語言,開發(fā)可以自動完成某一繪制任務(wù)的軟件,可大大提高繪制速度,改善工作效率。以上工作可稱之為autocad的二次開發(fā)技術(shù)。也就說autocad二次開發(fā)技術(shù)主要包括兩個方面:一方面是對它的功能進(jìn)行擴(kuò)充和修改,如修改或增加菜單、進(jìn)行各種定制工作;另一方面是利

13、用開發(fā)工具編寫能夠完成特殊任務(wù)的自動繪制軟件,如下面將介紹的通過人機(jī)交互界面輸入必要的數(shù)據(jù)后,系統(tǒng)自動完成法蘭的繪制,就屬于這一類型,在化工繪圖中,我們需要的也是有關(guān)這一方面的開發(fā)軟件,它能最大限度地滿足用戶的特殊需要,通過調(diào)用各種已經(jīng)開發(fā)好的專用零件圖繪制軟件,加快繪制速度,提高工作效率。尤其重要的是,可以將大量的計算工作交給計算機(jī)去完成。這樣,不僅提高了繪圖速度,同時也提高了繪制精度,避免了人為的計算錯誤。目前很多化工技術(shù)人員對autocad的使用一般還僅限于它自身的各種繪圖功能,使用鼠標(biāo)手工繪制各種圖件,對其強(qiáng)大的二次開發(fā)功能還沒有進(jìn)行深入使用。如果能使用autocad的二次開發(fā)技術(shù)開發(fā)

14、出一套軟件,讓autocad自動繪制我們目前使用的各種圖件,就可以大大提高作圖效率,發(fā)揮出autocad的強(qiáng)大圖形編輯、修改功能,對圖件中的各種元素進(jìn)行任意修改,滿足各種不同的圖件格式和繪圖標(biāo)準(zhǔn),由此可見,對于一個化工技術(shù)人員來說,學(xué)會自己開發(fā)autocad二次應(yīng)用軟件顯得十分必要,因為這將大大減少具體的繪制工作,而可以將主要精力集中到設(shè)備的設(shè)計中去,從而加快化工設(shè)備的開發(fā)速度。近幾年來,隨著計算機(jī)軟、硬件技術(shù)的飛速發(fā)展及其應(yīng)用的普及,也帶來了化工領(lǐng)域使用計算機(jī)的浪潮。首先是各課程教學(xué)使用了cai課件,學(xué)生們可以清楚地看到各種物質(zhì)的具體顏色,并可以看到動畫反應(yīng),讓學(xué)生們能夠形象生動地上課。然后

15、是各種實驗仿真軟件的出現(xiàn),讓學(xué)生們不用親自下到工廠,也不用浪費任何原料,在沒有危險的情況下就可以完成對實驗過程或者是生產(chǎn)流程的學(xué)習(xí)和實習(xí)。同時計算機(jī)可以對反應(yīng)進(jìn)行模擬,對實驗數(shù)據(jù)的擬合都大大方便了化工工作者。隨之誕生的各種化工專用軟件,給化學(xué)工業(yè)的發(fā)展注入了新鮮血液,使化學(xué)工業(yè)的發(fā)展如虎添翼。目前,隨著化學(xué)工業(yè)的進(jìn)一步向前發(fā)展,各種新的機(jī)械設(shè)備被人們設(shè)計和制造,這些設(shè)備的工程圖都是一件很大的工程。比如一個完整熱交換器圖紙,就需要一個專人12天的工夫才能完成。利用autocad的二次開發(fā)技術(shù),可以編出對熱交換器的圖進(jìn)行批處理的程序,只需通過簡單的人機(jī)會話,計算機(jī)能自動繪制出圖紙,這也是化工技術(shù)人

16、員學(xué)習(xí)掌握autocad二次開發(fā)技術(shù)的目的之所在。隨著化學(xué)工業(yè)的不斷日新月異,對設(shè)備圖紙繪制的速度要求也將越來越快,利用autocad二次開發(fā)技術(shù)開發(fā)而成的軟件直接繪制各種設(shè)備的技術(shù)將在化學(xué)工業(yè)中得到更加廣泛的應(yīng)用,其開發(fā)技術(shù)必將伴著化學(xué)工業(yè)一起發(fā)展。掌握了autocad的二次開發(fā)技術(shù),可以充分發(fā)掘autocad的潛力,簡化了繪圖程序在工作中能夠事半功倍,大大提高工作效率。autocad二次開發(fā)就是利用它所提供的下拉菜單、圖標(biāo)菜單、lisp語言編輯器等簡單易學(xué)功能強(qiáng)大的開發(fā)工具,用戶可以開發(fā)出適合自己的界面、工具、程序等。大大減少重復(fù)繪圖時間,提高設(shè)計效率,使用戶有更多的時間投入到創(chuàng)新設(shè)計中去

17、。2.3 autocad二次開發(fā)現(xiàn)狀autocad應(yīng)該是機(jī)械工程師最為熟悉的工程軟件了,而且在工程師眼中autocad幾乎成了cad軟件的代名詞了,一提到cad三個字母,首先會想到的是autocad。autocad發(fā)展到現(xiàn)在已經(jīng)是一個比較通用的適合各個行業(yè)進(jìn)行設(shè)計工作的平臺了,這是毋庸置疑的,在這里只談autocad的二維功能,可能有好多人都不知道autocad還能夠進(jìn)行三維建模,不過比起其三維平臺inventor的建模功底autocad的這點小伎倆可以忽略了。隨著autocad軟件在各行各業(yè)的應(yīng)用日趨廣泛,其二次開發(fā)的應(yīng)用研究也逐漸深入,不在局限于上述的領(lǐng)域的參數(shù)化設(shè)計。像利用autolis

18、p二次開發(fā)語言對分形幾何圖形進(jìn)行設(shè)計研究,用autolisp開發(fā)出注塑模澆注系統(tǒng),用autocad二次開發(fā)技術(shù)實現(xiàn)了技術(shù)要求自動標(biāo)注系統(tǒng),用vba開發(fā)出了autocad標(biāo)注圖紙圖欄系統(tǒng)等各種技術(shù),從而為autocad二次開發(fā)的技術(shù)應(yīng)用開辟了一條新路徑。2.4 autocad二次開發(fā)工具選擇要完成以上的要求,應(yīng)有不同的軟件要求與之相對應(yīng),經(jīng)過比較分析,選擇一種適合我們的軟件是很重要的,那將有助于課題實物的實現(xiàn),并對工作進(jìn)度起到事半功倍的效果。主要是在對繪圖程序語言和對話框編輯語言的選擇上,將一些常用編制語言進(jìn)行了比較。(1) autolispautolisp的全名是list processing

19、 language,她出現(xiàn)于1985年推出的autocad r2.18中,是一種嵌入在autocad內(nèi)部的編程語言,是lisp原版的一個子集,她一直是低版本autocad的首選編程語言。它是一種表處理語言,是被解釋執(zhí)行的,任何一個語句鍵入后就能馬上執(zhí)行,它對于交互式的程序開發(fā)非常方便。其缺點是繼承了lisp語言的編程規(guī)則而導(dǎo)致繁多的括號。(2) adsads的全名是autocad development system,它是autocad的c語言開發(fā)系統(tǒng),ads本質(zhì)上是一組可以用c語言編寫autocad應(yīng)用程序的頭文件和目標(biāo)庫,它直接利用用戶熟悉的各種流行的c語言編譯器,將應(yīng)用程序編譯成可執(zhí)行的

20、文件在autocad環(huán)境下運行,這種可以在autocad環(huán)境中直接運行的可執(zhí)行文件叫做ads應(yīng)用程序。ads由于其速度快,又采用結(jié)構(gòu)化的編程體系,因而很適合于高強(qiáng)度的數(shù)據(jù)處理,如二次開發(fā)的機(jī)械設(shè)計cad、工程分析cad、建筑結(jié)構(gòu)cad、土木工程cad、化學(xué)工程cad、電氣工程cad等。(3) objectarxobjectarx是一種嶄新的開發(fā)autocad應(yīng)用程序的工具,她以c+為編程語言,采用先進(jìn)的面向?qū)ο蟮木幊淘?,提供可與autocad直接交互的開發(fā)環(huán)境,能使用戶方便快捷地開發(fā)出高效簡潔的auto cad應(yīng)用程序。objectarx并沒有包含在autocad中,可在autodesk公司

21、網(wǎng)站中去下載,其最新版本是objectarx for autocad 2000,它能夠?qū)utocad的所有事務(wù)進(jìn)行完整的、先進(jìn)的、面向?qū)ο蟮脑O(shè)計與開發(fā),并且開發(fā)的應(yīng)用程序速度更快、集成度更高、穩(wěn)定性更強(qiáng)。(4) vlispvlisp已經(jīng)被完整地集成到autocad 2000中,她為開發(fā)者提供了嶄新的、增強(qiáng)的集成開發(fā)環(huán)境,一改過去在autocad中內(nèi)嵌atuolisp運行引擎的機(jī)制,這樣開發(fā)者可以直接使用autocad中的對象和反應(yīng)器,進(jìn)行更底層的開發(fā)。其特點為自身是autocad 2000中默認(rèn)的代碼編輯工具;用它開發(fā)autolisp程序的時間被大大地縮短,原始代碼能被保密,以防盜版和被更改

22、;能幫助大家使用activex對象及其事件;使用了流行的有色代碼編輯器和完善的調(diào)試工具,使大家很容易創(chuàng)建和分析lisp程序的運行情況。(5) vbavba 即mcrosoft office中的visual basic for applications,它被集成到autocad 2000中。vba為開發(fā)者提供了一種新的選擇,也為用戶訪問autocad 2000中豐富的技術(shù)框架打開一條新的通道。vba和autocad 2000中強(qiáng)大的activex自動化對象模型的結(jié)合,代表了一種新型的定制autocad的模式構(gòu)架。通過vba,我們可以操作autocad,控制activex和其它一些應(yīng)用程序,使之相

23、互之間發(fā)生互易活動。2.5 課題研究的主要內(nèi)容和意義本文主要結(jié)合模具企業(yè)的技術(shù)要求來進(jìn)行設(shè)計研究,主要通過autocad這個軟件平臺使用visual lisp進(jìn)行編程,主要完成如下工作:(1)基于機(jī)械工程設(shè)備的液壓系統(tǒng)符號建立符號系統(tǒng); (2)利用所建立的符號系統(tǒng),可以方便的對液壓系統(tǒng)進(jìn)行設(shè)計,從而可以避免在系統(tǒng)設(shè)計中符號畫法的繁瑣問題; (3)通過對設(shè)計的模塊的建立進(jìn)行編譯符合autocad環(huán)境中運行的文件; (4)完成在autocad環(huán)境中菜單開發(fā)進(jìn)行掛接調(diào)用; (5)完成開發(fā)系統(tǒng)的加載、調(diào)試、排錯;實現(xiàn)整個工程的鏈接; (6)運用系統(tǒng)完成模具標(biāo)準(zhǔn)件圖形的繪制。 autocad環(huán)境下的液壓

24、系統(tǒng)符號開發(fā)是將液壓元件的圖形符號匯編成參數(shù)化程序模塊掛接入autocad系統(tǒng)運行環(huán)境中,本設(shè)計完成后對cad軟件的功能可以進(jìn)行增強(qiáng),可以方便企業(yè)設(shè)計人員進(jìn)行設(shè)計工作,參數(shù)的輸入也可以通過界面來控制,實現(xiàn)可視化的操作。這樣不僅可以減輕設(shè)計者的勞動強(qiáng)度提高工作效率和工作質(zhì)量,使設(shè)計者有跟多的時間和精力從事創(chuàng)造性的勞動。而且能提高液壓系統(tǒng)圖的通用化及標(biāo)準(zhǔn)化程度。3 開發(fā)工具的介紹3.1 visual lisp概述 visual lisp是 autocad自帶的一個集成的可視化autolisp開發(fā)環(huán)境,最早的autolisp程序需要用文本編輯工具如記事本等編輯,然后在autocad中加載調(diào)試,很不方

25、便。從autocad2000開始,有了集成的開發(fā)環(huán)境:visual lisp。作為開發(fā)工具,visual lisp提供了一個完整的集成開發(fā)環(huán)境(ide),包括編譯器、調(diào)試器和其他工具,可以實時調(diào)試autolisp命令。定義autocad的效率。 visual lisp具有自己的窗口和菜單,但它并不能獨立于autocad運行。3.2 visuallisp的主要組成部分和功能作為開發(fā)工具,visual lisp提供了一個完整的集成開發(fā)環(huán)境(ide),包括編譯器、調(diào)試器和其他工具,可以提高自定義autocad的效率。另外,visual lisp提供了發(fā)布用autolisp編寫的獨立應(yīng)用程序的工具。v

26、isual lisp沒有任何特殊的硬件需求,能運行autocad系統(tǒng)即可運行visual lisp。功能如下:(1) 語法檢查器:可識別autolisp語法錯誤和調(diào)用內(nèi)置函數(shù)時的參數(shù)錯誤。(2) 文件編譯器:改善了程序的執(zhí)行速度,并提供了安全高效的程序發(fā)布平臺。(3) 源代碼調(diào)試器:專為autolisp設(shè)計,利用它可以在窗口中單步調(diào)試autolisp源代碼,同時還在autocad圖形窗口顯示代碼運行結(jié)果。(4) 文字編輯器:可采用autolisp和dcl語法著色,并提供其他autolisp語法支持功能。(5) autolisp格式編排程序:用于調(diào)整程序格式,改善其可讀性。(6) 全面的檢驗和監(jiān)

27、視功能:用戶可以方便地訪問變量和表達(dá)式的值,以便瀏覽和修改數(shù)據(jù)結(jié)構(gòu)。這些功能還可用來瀏覽autolisp數(shù)據(jù)和autocad圖形的圖元。(7) 上下文相關(guān)幫助:提供autolisp函數(shù)的信息。強(qiáng)大的自動匹配功能方便了符號名查找等操作。(8) 工程管理系統(tǒng):維護(hù)多文件應(yīng)用程序更加容易。(9) 打包功能:可將編譯后的autolisp文件打包成單個模塊。(10) 桌面保存和恢復(fù)能力:可保存和重用任意vlisp任務(wù)的窗口環(huán)境。(11) 智能化控制臺窗口:它給autolisp用戶提供了極大的方便,從而大大提高了用戶的工作效率??刂婆_的基本功能與autocad文本屏幕類似,還提供了許多交互功能,例如歷史記

28、錄功能和完整的行編輯功能等。3.3 auto lisp語言的特點lisp是一種計算機(jī)的表處理語言,是在人工智能學(xué)科領(lǐng)域廣泛應(yīng)用的一種程序設(shè)計語言。autolisp語言是嵌套于autocad內(nèi)部,將lisp語言和autocad有機(jī)結(jié)合的產(chǎn)物。使用autolisp可直接調(diào)用幾乎所有的autocad命令。autolisp語言既具備一般高級語言的基本結(jié)構(gòu)和功能又具有高級語言所沒有的強(qiáng)大的圖形處理功能,是當(dāng)今世界上cad軟件中被廣泛采用的語言之一。利用autolisp對autocad進(jìn)行二次開發(fā),可以實現(xiàn)直接增加和修改autocad命令,隨意擴(kuò)大圖形的編輯功能,建立圖形庫和數(shù)據(jù)庫對當(dāng)前圖形進(jìn)行直接訪問和

29、修改。auto lisp語言的特點(1)autolisp語言是在普通的lisp語言基礎(chǔ)上,擴(kuò)充了許多適用于cad應(yīng)用的特殊功能而形成的,一種僅能以解釋方式運行于autocad內(nèi)部的解釋性程序設(shè)計語言。(2)autolisp語言中的一切成分都是以函數(shù)的形式給出的,它沒有語句概念或其他語法結(jié)構(gòu)。執(zhí)行autolisp程序就是執(zhí)行一些函數(shù),再調(diào)用其他函數(shù)。(3)autolisp把數(shù)據(jù)和程序統(tǒng)一表達(dá)為表結(jié)構(gòu),即s-表達(dá)式,故可把程序當(dāng)作數(shù)據(jù)來處理,也可把數(shù)據(jù)當(dāng)作程序來執(zhí)行。(4)autolisp語言中的程序運行過程就是對函數(shù)求值的過程,是在對函數(shù)求值的過程中實現(xiàn)函數(shù)的功能。(5)autolisp語言的主

30、要控制結(jié)構(gòu)是采用遞歸方式。遞歸方式的使用使得程序設(shè)計簡單易懂。3.4 運行autolisp程序(1) 確認(rèn)編輯窗口處于前臺狀態(tài),選擇菜單【tools(工具)】【load text in editor(加載編輯器中的文字)】,則該程序被加載并運行。系統(tǒng)將返回autocad窗口,并提示用戶選擇一點,并以指定點為基點來繪制文字。(2) 如果用戶退出visual lisp環(huán)境并返回autocad系統(tǒng)窗口,則需要對該程序進(jìn)行加載后,才能運行。選擇菜單【tools(工具)】【load appcation.(加載應(yīng)用程序)】,彈出load/unload applications(加載/卸載應(yīng)用程序)對話框。

31、查找并選擇上一步中所創(chuàng)建的hello.lsp文件,并單擊按鈕進(jìn)行加載。加載后的文件名稱將顯示在loaded applications(已加載的應(yīng)用程序)列表中,并在對話框的左下部顯示加載信息。(3) 完成加載后,單擊按鈕關(guān)閉對話框,系統(tǒng)將運行hello.lsp程序。4 典型液壓元件autolisp程序開發(fā)1. 按鈕式人力控制器按鈕式人力控制器是液壓系統(tǒng)的控制機(jī)構(gòu),其圖形符號如圖4-1-1所示:圖4-1-1 按鈕式人力控制器圖形符號建立坐標(biāo)、尺寸(可以自行比例確定)及基點,標(biāo)定線如圖4-1-2所示:基點:x0,y0x1=x0+12y1=y0+8x2=x0-12y2=y0+10x3=x0-15y3

32、=y0+12y4=y0+14圖4-1-2 按鈕式人力控制器圖形坐標(biāo)圖用到的命令只有圓弧“arc”和直線“l(fā)ine”或“pline”。用“arc”命令繪制圓弧p7p10p8,“pline”命令繪制線段p6 p3 p2 p0 p1,“l(fā)ine”命令繪制直線p7 p8、p3 p4、p5 p2。程序代碼如下所示:(defun c:button() (setq cp(getpoint確定基點) (setq x0(car cp); 取拾取點x坐標(biāo) (setq y0(cadr cp);取拾取點y坐標(biāo) (setq x1(+ x0 12) (setq x2(- x0 12) (setq x3(- x0 15)

33、(setq y1(+ y0 8) (setq y2(+ y0 10) (setq y3(+ y0 12) (setq y4(+ y0 14) (setq p0(list x0 y0) (setq p1(list x1 y0) (setq p2(list x0 y2) (setq p3(list x0 y3) (setq p4(list x1 y3) (setq p5(list x2 y2) (setq p6(list x2 y3) (setq p7(list x2 y4) (setq p8(list x2 y1) (setq p9(polar p5(* 0.5 pi) 1) (setq p10

34、(polar p9 pi 3) (command linep7 p8) (commandlinep3 p4) (commandlinep5 p2) (commandplinep6 p3 p2 p0 p1) (commandarcp7 p10 p8) (princ) ) 2. 雙作用單活塞桿液壓缸雙作用單活塞桿液壓缸是實現(xiàn)直線往復(fù)運動執(zhí)行元件,它是將流體的壓力能轉(zhuǎn)化為機(jī)械能的元件,其圖形符號如圖4-2-1所示:圖4-2-1 單桿活塞圖形符號建立坐標(biāo)、尺寸(可以自行比例確定)及基點,標(biāo)定線如圖4-2-2所示:基點:x0,y0x1=x0+1 y1=y0+3.5x2=x0+3 y2=y0+7x3=x0

35、+9 y3=y0-2x4=x0+10 x5=x0+14圖4-2-2 單桿活塞圖形坐標(biāo)圖用到的命令只有直線“l(fā)ine”或“pline”。p0是圖形的插入點,用“setq”命令分別確定各點的坐標(biāo),“pline” 繪制四邊形p0 p1 p2 p3 ,“l(fā)ine”繪制直線p4 p5、p6 p7、p8 p9、p10 p11長度分別為2、2、7、11,單位為cm。程序代碼如下所示:defun c:piston() (setq cp(getpoint確定基點) (setq x0(car cp);取拾取點x坐標(biāo) (setq y0(cadr cp);取拾取點y坐標(biāo) (setq x1(+ x0 1) (setq

36、x2(+ x0 3) (setq x3(+ x0 9) (setq x4(+ x0 10) (setq x5(+ x0 14) (setq y1(+ y0 3.5) (setq y2(+ y0 7) (setq y3(- y0 2) (setq p0(list x0 y0) (setq p1(list x0 y2) (setq p2(list x4 y2) (setq p3(list x4 y0) (setq p4(list x1 y0) (setq p5(list x1 y3) (setq p6(list x3 y0) (setq p7(list x3 y3) (setq p8(list x

37、2 y0) (setq p9(list x2 y2) (setq p10(list x2 y1) (setq p11(list x5 y1) (commandplinep0 p1 p2 p3 p0) (commandlinep4 p5) (commandlinep6 p7) (commandlinep8 p9) (commandlinep10 p11) (princ) )3. 定量泵 定量泵是將機(jī)械能轉(zhuǎn)換為液壓能的能量轉(zhuǎn)換裝置。它為液壓系統(tǒng)提供具有一定壓力和流量的液壓液,是液壓系統(tǒng)的一個重要組成部分。圖形符號如圖4-3-1所示:圖4-3-1 定量泵圖形符號建立坐標(biāo)、尺寸(可以自行比例確定)及基

38、點,標(biāo)定線如圖4-3-2所示:基點:x0,y0y1=y0-7y2=y0+5.5y3=y0+7y4=y0+17y5=y0-17圖4-3-2 定量泵圖形坐標(biāo)圖用到的命令有圓弧“circle”、多邊形“polygon”和直線“l(fā)ine”或“pline”。p0為圖形的插入點,用“circle”命令繪制圓心為p0的圓,直徑為14cm,“polygon”命令繪制中心點為p5的等邊三角形,中心點距圓心為5cm,“l(fā)ine”命令繪制直線p1 p2、p3 p4長度均為10cm。程序代碼如下所示:(defun c:pomp01() (setq cp(getpoint確定基點) (setq x0(car cp);取

39、拾取點x坐標(biāo) (setq y0(cadr cp);取拾取點y坐標(biāo) (setq y1(- y0 7) (setq y2(+ y0 5) (setq y3(+ y0 7) (setq y4(+ y0 17) (setq y5(- y0 17) (setq p0(list x0 y0) (setq p1(list x0 y3) (setq p2(list x0 y4) (setq p3(list x0 y1) (setq p4(list x0 y5) (setq p5(list x0 y2) (commandlinep1 p2) (commandlinep3 p4) (commandcirclep0

40、 7) (commandpolygon 3 p52) (princ) )4. 二位二通換向閥 二位二通換向閥是換向閥的一種,是液壓系統(tǒng)的控制元件,用來控制液壓系統(tǒng)中流體的流動方向,其圖形符號如圖4-4-1所示:圖4-4-1 二位二通換向閥圖形符號建立坐標(biāo)、尺寸(可以自行比例確定)及基點,標(biāo)定線如圖4-4-2所示:基點:x0,y0x1=x0+2.75 y1=y0+2x2=x0+3.5 y2=y0+5x3=x0+4.25 y3=y0+7x4=x0+7 y4=y0+9x5=x0+10.5 y5=y0-2x6=x0+14圖4-4-2 二位二通換向閥圖形坐標(biāo)圖用到的命令只有直線“l(fā)ine”或“pline

41、”。p0是圖形的插入點,用“pline”繪制四邊形p0p1p2p3和帶箭頭直線p14p16,“l(fā)ine”命令繪制直線p4 p5、p6 p7、p8 p11、p9 p10、p13 p12,長度分別為4、1.5、4、1.5、7,單位為cm。程序代碼如下所示:(defun c:valve02() (setq cp(getpoint確定基點) (setq x0(car cp);取拾取點x坐標(biāo) (setq y0(cadr cp);取拾取點y坐標(biāo) (setq x1(+ x0 2.75) (setq x2(+ x0 3.5) (setq x3(+ x0 4.25) (setq x4(+ x0 7) (setq

42、 x5(+ x0 10.5) (setq x6(+ x0 14) (setq y1(+ y0 2) (setq y2(+ y0 5) (setq y3(+ y0 7) (setq y4(+ y0 9) (setq y5(- y0 2) (setq p0(list x0 y0) (setq p1(list x0 y3) (setq p2(list x6 y3) (setq p3(list x6 y0) (setq p4(list x2 y4) (setq p5(list x2 y2) (setq p6(list x1 y2) (setq p7(list x3 y2) (setq p8(list

43、x2 y1) (setq p9(list x1 y1) (setq p10(list x3 y1) (setq p11(list x2 y5) (setq p12(list x4 y0) (setq p13(list x4 y3) (setq p14(list x5 y0) (setq p15(list x5 y2) (setq p16(list x5 y3) (commandplinep0 p1 p2 p3 p0) (commandlinep4 p5) (commandlinep8 p11) (commandlinep6 p7) (commandlinep9 p10) (commandlin

44、ep13 p12) (commandplinep14w 0 0 p15w 0.5 0 p16w 0 0) (princ) 5. 定差減壓閥定差減壓閥是減壓閥的一種,和其它閥組成組合閥,用來保證節(jié)流閥進(jìn)出口間的壓差維持恒定。圖形符號如圖4-5-1所示:圖4-5-1 定差減壓閥圖形符號建立坐標(biāo)、尺寸(可以自行比例確定)及基點,標(biāo)定線如圖4-5-2所示:基點:x0,y0x1=x0+2.7y1=y0+2x2=x0+3.5y2=y0+3.5x3=x0+7y3=y0+7x4=x0-1.6y4=y0+9 x5=x0+4.3y5=y0-1.4x6=x0+8.6y6=y0-2y7=y0+8.4 圖4-5-2 定

45、差減壓閥圖形坐標(biāo)圖用到的命令只有直線“l(fā)inetype”和“pline”。p0是圖形的插入點,用linetype s hidden命令來繪制虛線,“pline”繪制帶有箭頭的線段p4p8,長度為11cm和四邊形p0p1p2p3,。程序代碼如下所示: (defun c:valve01() (setq cp(getpoint確定基點) (setq x0(car cp);取拾取點x坐標(biāo) (setq y0(cadr cp);取拾取點y坐標(biāo) (setq x1(+ x0 2.7) (setq x2(+ x0 3.5) (setq x3(+ x0 7) (setq x4(- x0 1.6) (setq x5

46、(+ x0 4.3) (setq x6(+ x0 8.6) (setq y1(+ y0 2) (setq y2(+ y0 3.5) (setq y3(+ y0 7) (setq y4(+ y0 9) (setq y5(- y0 1.4) (setq y6(- y0 2) (setq y7(+ y0 8.4) (setq p0(list x0 y0) (setq p1(list x0 y3) (setq p2(list x3 y3) (setq p3(list x3 y0) (setq p4(list x2 y4) (setq p5(list x2 y3) (setq p6(list x2 y1

47、) (setq p7(list x2 y0) (setq p8(list x2 y6) (setq p9(list x1 y7) (setq p10(list x4 y7) (setq p11(list x4 y2) (setq p12(list x0 y2) (setq p13(list x5 y5) (setq p14(list x6 y5) (setq p15(list x6 y2) (setq p16(list x3 y2) (commandplinep0 p1 p2 p3 p0) (commandplinep4 w 0 0 p6w 0.5 0 p7w 0 0 p8 w0 0) (co

48、mmandlinetype s hidden ) (commandpline p5 p9 p10 p11 p12) (commandpline p7 p13 p14 p15 p16 ) (princ) )6單作用人力控制器圖形符號如圖4-6所示:圖4-6 單作用人力控制器程序代碼如下:(defun c:single() (setq p0(getpoint確定基點:) (setq p1(polar p0 0 8) (setq p2(polar p0 (* 0.5 pi) 4) (setq p3(polar p0 (* 0.5 pi) 8) (setq p4(polar p3 0 8) (setq

49、 p5(polar p2 pi 10) (setq p6(polar p0 pi 10) (setq p7(polar p2 pi 7) (setq p8(polar p0 pi 3) (commandlinep7 p8) (commandlinep0 p2) (commandplinep4 p3 p2 p5 p6 p1) (princ) )7. 固定節(jié)流閥圖形符號如圖4-7所示:圖4-7 固定節(jié)流閥程序代碼如下:(defun c:fix() (setq p0(getpoint確定基點:) (setq p1(polar p0 0 14) (setq p2(polar p0 0 4) (setq

50、 p3(polar p0 0 7) (setq p4(polar p0 0 10) (setq p5(polar p2 (-(* 0.5 pi) 4) (setq p6(polar p3 (-(* 0.5 pi) 2) (setq p7(polar p4 (-(* 0.5 pi) 4) (setq p8(polar p2 (* 0.5 pi) 4) (setq p9(polar p3 (* 0.5 pi) 2) (setq p10(polar p4 (* 0.5 pi) 4) (commandlinep0 p1) (commandarcp10 p9 p8) (commandarcp5 p6 p

51、7) (princ) )8. 可調(diào)節(jié)流閥圖形符號如圖4-8所示:圖4-8 可調(diào)節(jié)流閥程序代碼如下:(defun c:flexible() (setq p0(getpoint確定基點:) (setq p1(polar p0 0 14) (setq p2(polar p0 0 4) (setq p3(polar p0 0 7) (setq p4(polar p0 0 10) (setq p5(polar p2 (-(* 0.5 pi) 4) (setq p6(polar p3 (-(* 0.5 pi) 2) (setq p7(polar p4 (-(* 0.5 pi) 4) (setq p8(po

52、lar p2 (* 0.5 pi) 4) (setq p9(polar p3 (* 0.5 pi) 2) (setq p10(polar p4 (* 0.5 pi) 4) (setq p11(polar p0 0 5) (setq p12(polar p11 (-(* 0.5 pi) 6) (setq p13(polar p12(* 0.389 pi) 13) (setq p14(polar p12(* 0.389 pi) 15) (commandlinep0 p1) (commandarcp10 p9 p8) (commandarcp5 p6 p7) (command pline p12 w 0 0 p13 w 0.5 0 p14 w 0 0 ) (princ) )9. 流量計圖形符號如圖4-9所示:圖4-9 流量計程序代碼如下:(defun c:flow() (setq p0(getpoint確定基點:) (setq p1(polar p0 0 8) (setq p2(polar p0 0 20) (setq p3(polar p0 0 28) (setq p4(polar p0 0 10) (setq p5(polar p0 0 14) (setq p6(polar p0 0 18) (setq p7(pola

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論