第6章機械CADCAM應用軟件開發(fā)_第1頁
第6章機械CADCAM應用軟件開發(fā)_第2頁
第6章機械CADCAM應用軟件開發(fā)_第3頁
第6章機械CADCAM應用軟件開發(fā)_第4頁
第6章機械CADCAM應用軟件開發(fā)_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第六章機械CAD/CAM應用軟件開發(fā)

6.1軟件工程基礎

6.2機械CAD/CAM應用軟件開發(fā)原則和步驟

6.3機械CAD應用軟件二次開發(fā)技術(shù)6.1軟件工程基礎提出背景:是為解決20世紀60年代所出現(xiàn)的軟件開發(fā)過程不容易控制、開發(fā)工作量估算困難、軟件質(zhì)量低、項目失敗率高等“軟件危機”問題而提出的一種軟件產(chǎn)品開發(fā)的工程方法。軟件工程定義:是指開發(fā)、運行、維護和修改軟件的系統(tǒng)方法,即制定和采用合理的工程原則,以最低的成本、最短的時間、最好的質(zhì)量開發(fā)出滿足用戶需求的軟件。核心思想:把軟件看作是一個工程來處理,把需求計劃、可行性研究、工程審核、質(zhì)量監(jiān)督等工程化的概念引入到軟件產(chǎn)品的開發(fā)設計過程,以期達到工程項目的三個基本要素-精度、經(jīng)費和質(zhì)量-綜合優(yōu)化。軟件生存周期:可行性研究與計劃階段需求分析階段設計階段軟件編制測試階段運行與維護階段測試10%設計15%需求分析5%

維護

67%運行3%軟件開發(fā)各階段成本

計劃需求分析設計編碼測試運行維護軟件開發(fā)模型1.瀑布模型各項軟件工程活動如同瀑布流水,逐級下落,自上而下、相互銜接的固定次序。瀑布式軟件開發(fā)模型缺陷:無法解決軟件需求不明確的問題;嚴格按照軟件開發(fā)階段順序進行,缺乏靈活性;用戶必須等到軟件開發(fā)后期才能看到軟件的全貌;每個開發(fā)階段需要嚴格審查和確認,后一階段工作只有等到前一階段審察結(jié)束后才能進行,致使開發(fā)工作常常被不必要地耽擱。2.原型模型根據(jù)已知需求,快速開發(fā)所需軟件的原型,然后對軟件原型進行評估和測試,進行修改和細化,直至完善為止。需求收集構(gòu)造原型用戶測試運行原型意見反饋原型修改補充完善原型式軟件開發(fā)模型特點:可以處理模糊需求,開發(fā)者與用戶充分交流;原型模型系統(tǒng)可作為培訓環(huán)境,有利于用戶培訓和開發(fā)同步;易于維護,對用戶更為友好;總的開發(fā)費用低,開發(fā)時間縮短。缺陷:易將次要部分當作主要框架,做出不切斷的原型;容易忽略用戶環(huán)境與原型環(huán)境的差異;容易放松對軟件的開發(fā)管理;常常用盡快實現(xiàn)的需要而忽略一些基本點等。3.螺旋模型是瀑布模型與原型模型的有機結(jié)合,其開發(fā)過程經(jīng)一次次迭代完成,每迭代一次,軟件開發(fā)前進一個層次,直到得到用戶滿意。風險分析工程實施測試分析布用戶評估用戶交流計劃制定螺旋模型螺旋模型一般被分為3-6個任務區(qū)域:用戶交流:建立開發(fā)者與用戶交流,不斷了解用戶確切需要;計劃制定:確定軟件目標,選定實施方案,分析開發(fā)限制條件,定義資源和開發(fā)進度;風險分析:分析所選方案,考慮如何識別風險和消除風險;工程實施:進行軟件設計,編制軟件程序;測試與分析:測試原型系統(tǒng),分析系統(tǒng)性能指標;用戶評估:評價開發(fā)工作,提出修正建議。CAD/CAM應用軟件開發(fā)原則:高素質(zhì)的軟件開發(fā)人才,既掌握計算機應用技術(shù),又懂得產(chǎn)品設計,熟悉了解用戶的具體需求;所開發(fā)的軟件應方便用戶使用,無需對用戶做過多的培訓;應盡量使用戶少記各種操作規(guī)則、專門術(shù)語和符號;采用靈活的信息提示;可以容忍的響應時間;良好的出錯處理。應按照軟件工程方法組織CAD/CAM應用軟件的開發(fā)。6.2機械CAD/CAM應用軟件開發(fā)原則和步驟CAD/CAM應用軟件開發(fā)要求明確對硬件性能指標要求,包括主機速度、存儲容量、輸入/輸出設備等;明確所需的系統(tǒng)軟件和軟件工具,包括操作系統(tǒng)、編程語言、圖形標準等;嚴格按軟件工程的規(guī)范執(zhí)行;制定軟件質(zhì)量保證計劃,以確保所開發(fā)軟件可靠、正確和實用;軟件文檔的編制應符合文檔資料的完整、正確、規(guī)范的要求,并力求通俗易懂,避免含糊混淆術(shù)語的使用。CAD/CAM應用軟件開發(fā)步驟可行性研究①可行性論證報告;②初步項目開發(fā)計劃;③合同書;④軟件質(zhì)量保證計劃。需求分析①軟件需求說明書;②數(shù)據(jù)要求說明書;③修改后項目開發(fā)計劃;④測試計劃;⑤初步用戶手冊;⑥軟件配置管理計劃??傮w設計①總體設計說明書;②數(shù)據(jù)庫/數(shù)據(jù)結(jié)構(gòu)設計說明書。詳細設計①細化總體設計說明書;②對各個程序模塊進行過程描述;③確定各個模塊間的接口信息;④編寫模塊開發(fā)卷宗;⑤評審。軟件編制①模塊開發(fā)卷宗;②初步操作手冊。軟件測試①可運行系統(tǒng)源程序清單;②測試分析報告;③用戶手冊和操作手冊;④項目開發(fā)總結(jié)報告。運行和維護①運行日志;②軟件問題報告;③軟件修改報告。CAD/CAM應用軟件的總體設計主要任務:進行系統(tǒng)功能分析,建立系統(tǒng)功能模型,提出系統(tǒng)主要技術(shù)方案。通過功能分析和功能模塊的劃分,把一個抽象的、復雜的問題分解為若干具體的、功能相對于單一、結(jié)構(gòu)簡單的功能子模塊,從而降低了系統(tǒng)的復雜程度,便于系統(tǒng)的開發(fā)。例如P156圖6-5減速器CAD系統(tǒng)的功能模型。為了使軟件系統(tǒng)各模塊之間具有高的內(nèi)聚度和低的耦合度,在進行功能模塊劃分時應遵循如下原則:保持各模塊相對獨立原則;“模塊內(nèi)聯(lián)系大、模塊間聯(lián)系小”原則;層次性模塊化結(jié)構(gòu)CAD/CAM應用軟件的詳細設計其目的為:對總體設計階段的模塊功能要求提出具體、明確的解決實現(xiàn)方法。主要包括如下各方面:建立數(shù)學模型和具體算法;工程設計數(shù)據(jù)、資料的處理;數(shù)據(jù)結(jié)構(gòu)設計;數(shù)據(jù)輸入/輸出過程中的人機交互方式設計。6.3CAD應用軟件二次開發(fā)技術(shù)CAD應用軟件二次開發(fā)環(huán)境與工具利用計算機高級語言開發(fā),如VC、VB等;以商用CAD/CAM系統(tǒng)作為基礎平臺,利用其開發(fā)工具進行CAD應用軟件的二次開發(fā)。構(gòu)造面向CAD開發(fā)的CASE(ComputerAidedSoftwareEngineering,計算機輔助軟件工程)環(huán)境。AutoCAD二次開發(fā)工具:AutoCAD具有開放的體系結(jié)構(gòu)和先進的ACIS圖形造型內(nèi)核,是應用最廣泛的交互式輔助設計系統(tǒng),提供了豐富的開發(fā)環(huán)境。1、

AutoLISP/VisualLISPAutoLISP:具有直觀、方便、程序文件小、通用性強、易掌握特點,但運行速度慢、保密性差等不足。VisualLISP:可視化開發(fā)工具,克服了AutoLISP不足。裝載運行步驟:

激活VisualLISP文本編輯器窗口,進行程序編輯;點擊Run工具條按鈕,提示“程序已經(jīng)被裝載”信息;在控制臺提示處輸入帶有括號的AutoLISP程序名,便開始運行該程序。通過菜單File→Exit或窗口關(guān)閉按鈕退出。編輯器跟蹤窗控制臺狀態(tài)行菜單區(qū)工具欄

VisualLISP工作界面ADS(AdvancedDevelopmentSystem)

是自AutoCADR11版所提供的一種C語言開發(fā)工具,提供了一套應用程序接口API,可使用豐富的C語言函數(shù)庫,能夠完成一些AutoLISP無法完成的任務,運行速度明顯提高。

ADS實質(zhì)是AutoLISP一種C語言版本,需要通過AutoLISP與AutoCAD通訊來運行自身應用程序,不能脫離AutoLISP環(huán)境獨立運行。

ObjectARX(AutoCADRuntimeeXtension)

是自AutoCADR13版所提供的面向?qū)ο骎C++語言開發(fā)工具,是第三代用戶開發(fā)工具。

ARX采用面向?qū)ο蠹夹g(shù),直接訪問AutoCAD數(shù)據(jù)庫,獨立進行應用軟件開發(fā),是對AutoCAD的實時擴展。

ARX應用程序?qū)嵸|(zhì)為Windows動態(tài)連接庫(DLL),可共享AutoCAD進程和內(nèi)存空間,可以與AutoCAD直接通信,允許直接訪問AutoCAD圖形庫。

ARX所需環(huán)境包括:支持ARX和AutoCAD平臺的操作系統(tǒng)、VC++語言編譯系統(tǒng)、ObjectARX所提供的開發(fā)軟件包SDK等。

VBA(VisualBasicforApplicationprogrammingenvironment)提供VB語言開發(fā)ADS應用程序的接口VBA,豐富了AutoCAD二次開發(fā)手段。這些接口文件成為AutoCAD的一個標準安裝組建。AutoLISP編程技術(shù)AutoLISP是一種由一對對圓括號構(gòu)造的表處理結(jié)構(gòu),可多層嵌套,采用“前綴表示法”。通用格式為:

(函數(shù)名參數(shù))例如:數(shù)學表達式:X=(A+B)*CAutoLISP賦值函數(shù):(setqX(*(+AB)C))表元素可為整數(shù)、實數(shù)、字符串、表、圖元名、符號和變量等多種數(shù)據(jù)類型。常用AutoLISP函數(shù)有:計算函數(shù)、關(guān)系運算與邏輯運算函數(shù)、字符處理函數(shù)、命令函數(shù)、表處理函數(shù)、條件循環(huán)函數(shù)、文件處理函數(shù)、輸入/輸出函數(shù)、自定義函數(shù)等。

類型函數(shù)功能計算函數(shù)(+<數(shù)1><數(shù)2>…)返回所有數(shù)的和(-<數(shù)1><數(shù)2>…)返回<數(shù)1>與后面所有數(shù)的差(*<數(shù)1><數(shù)2>…)返回所有數(shù)的乘積(/<數(shù)1><數(shù)2>)返回<數(shù)1>除以<數(shù)2>的商(minusp<數(shù)>)檢查<數(shù)>是否為負數(shù),若為負數(shù),返回T,否則返回nil(zerop<數(shù)>)檢查<數(shù)>是否為零,若為零,返回T,否則返回nil(1+<數(shù)>)返回<數(shù)>加1后的值,注意1與+之間不能有空格(1-<數(shù)>)返回<數(shù)>減1后的值,注意1與-之間不能有空格(abs<數(shù)>)返回<數(shù)>的絕對值(sin<角度>)返回<角度>的正弦值,<角度>單位為弧度(cos<角度>)返回<角度>的余弦值,<角度>單位為弧度(atan<數(shù)1><數(shù)2>)若無<數(shù)2>,返回<數(shù)1>的反正切,單位為弧度;若有<數(shù)2>,返回<數(shù)1>/<數(shù)2>的反正切;若<數(shù)2>為零,返回例:已知一板長L,寬為B,若在其上截取直徑為B的圓形板料,畫出排料圖。(defunc:div()(setqp0(getpoint“BasePoint\n”))(setqL(getreal“L=”))(setqB(getreal“B=”))(setqR(*B0.5))(setqp1(polar(polarp00L)1.5708B))(command“rectangle”p0p1)(setqnum(fix(/LB))a0)(setqp2(polar(polarp01.5708R)0R));(while(<anum)(setqp2(polarp

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論