我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網(wǎng)站首頁 > CAD新聞

一種用于復(fù)雜刀具多參數(shù)設(shè)計的CAD方法

時間:2012-03-19 10:48:17 來源:未知

 1.引言

  在刀具設(shè)計,尤其是復(fù)雜刀具的設(shè)計中,為了減少設(shè)計工作量,縮短設(shè)計周期,提高設(shè)計精度,采用CAD技術(shù)已是當(dāng)務(wù)之急。本文在普通刀具CAD技術(shù)的基礎(chǔ)上,提出一種適用于復(fù)雜刀具多參數(shù)設(shè)計的CAD方法,并開發(fā)了相應(yīng)的CAD軟件。對于同一類型不同結(jié)構(gòu)尺寸的復(fù)雜刀具,只要輸入已知參數(shù),不必重新編程計算,即可自動按用戶要求進(jìn)行刀具結(jié)構(gòu)尺寸運算,并繪制出刀具設(shè)計結(jié)構(gòu)圖。該軟件的最大優(yōu)點是具有一定通用性,與交互式繪圖軟件相比,可大大縮短設(shè)計周期,提高設(shè)計精度,減小同類產(chǎn)品之間的設(shè)計誤差。現(xiàn)以蝸輪滾刀參數(shù)設(shè)計為例,對軟件的總體結(jié)構(gòu)、功能設(shè)計和數(shù)據(jù)通訊作一介紹。

  2.蝸輪滾刀參數(shù)設(shè)計軟件的總體結(jié)構(gòu)

  本軟件采用結(jié)構(gòu)化設(shè)計方法,首先利用Foxbase+數(shù)據(jù)庫進(jìn)行窗口設(shè)計和數(shù)據(jù)查詢、檢索;然后采用VC++語言進(jìn)行參數(shù)運算;最后調(diào)用智能型參數(shù)繪圖語言Autolisp編制的繪圖程序進(jìn)行滾刀工作圖繪制。軟件執(zhí)行框圖見下圖。

  

 

  軟件執(zhí)行框圖

  3.窗口設(shè)計和數(shù)據(jù)檢索

  本軟件的菜單設(shè)計和數(shù)表查詢均采用Foxbase+語言,F(xiàn)oxbase+可實現(xiàn)建立數(shù)據(jù)庫和數(shù)據(jù)查詢等操作,并可通過程序?qū)崿F(xiàn)數(shù)據(jù)文件中的數(shù)據(jù)操作。因此,設(shè)計蝸輪滾刀時的許多查表工作均由Foxbase+完成。此外,F(xiàn)oxbase+還具有簡明的菜單設(shè)計功能。本軟件采用@X,Y SAY“……”語句進(jìn)行菜單設(shè)計,其優(yōu)點在于:用@……SAY定位顯示語句可以在屏幕任意位置設(shè)置任意大小的菜單,不必在沒有顯示信息的地方頻繁添補空格符,因此具有一定靈活性。而且這種語句可充分利用硬件環(huán)境提供的彩色功能,使菜單美觀醒目。程序語句舉例如下

  @5,12 say“……蝸輪滾刀菜單選擇……”

  @7,12 prompt“1.阿基米德蝸輪滾刀”

  @9,12 prompt“2.齒槽法向直廓蝸輪滾刀”

  @11,12 prompt“3.ZC1圓弧圓柱蝸輪滾刀”

  @12,13 prompt“4.退出”

  4.Foxbase+與VC++間的數(shù)據(jù)通訊

  本軟件中有關(guān)滾刀結(jié)構(gòu)參數(shù)的計算采用VC++語言,而Foxbase+與高級語言之間的數(shù)據(jù)通訊是借助數(shù)據(jù)文件來實現(xiàn)的。

  Foxbase+的COPY TO命令可將數(shù)據(jù)庫文件轉(zhuǎn)換為高級語言程序能夠接受的數(shù)據(jù)文件(以*.TXT為擴展名的文本文件),而APPEND FROM命令則可將高級語言數(shù)據(jù)文件的數(shù)據(jù)轉(zhuǎn)移到數(shù)據(jù)庫文件中,從而完成Foxbase+與高級語言之間的數(shù)據(jù)通訊。

  5.Foxbase+與Autolisp間的數(shù)據(jù)通訊

  在計算機輔助設(shè)計中,數(shù)據(jù)信息與圖形信息緊密相關(guān),在利用Foxbase+菜單設(shè)計數(shù)表查詢、調(diào)用VC++程序計算出滾刀設(shè)計結(jié)構(gòu)參數(shù)以后,則需要將這些數(shù)據(jù)信息傳輸給Autolisp程序進(jìn)行參數(shù)繪圖。

  Autolisp語言是一種嵌入AutoCAD內(nèi)容的智能設(shè)計語言,是對AutoCAD進(jìn)行二次開發(fā)的有力工具,該語言在AutoCAD環(huán)境下運行,可直接調(diào)用AutoCAD繪圖命令。

  在本軟件設(shè)計中,采用Autolisp的輸入輸出(I/O)功能來實現(xiàn)與Foxbase+的數(shù)據(jù)通訊。在Autolisp的I/O函數(shù)中,Read-line能夠從ASCII碼文本文件中讀取數(shù)據(jù),每次讀取一行,每一行作為一個處理單元。利用Foxbase+語言將滾刀設(shè)計結(jié)構(gòu)參數(shù)的最終計算結(jié)果存入一個文本文件(*.TXT)中,然后再由Autolisp接口程序調(diào)用,讀取文本文件(*.TXT)中的數(shù)據(jù),進(jìn)行參數(shù)繪圖。

  例如:讀取直線兩端點坐標(biāo)Pt1,Pt2繪制直線Pt1Pt2,其程序如下:

  (setq f(open “name1.txt” “r”))

  (setq kk(read line f))

  (setq b“(”c“)”)

  (setq mm(strcat b kk c))

  (setq nn(read mm))

  (setq pp(car nn))

  (if(=pp 1)(setq ptl(list (nth 1nn)(nth 2nn))))

  (setq pt2(list(nth 3 nn)(nth 4 nn)))

  (command“line”pt1 pt2)

  (command nil)

  6.結(jié)語

  本軟件利用Foxbase+生成屏幕菜單,直觀簡潔。Foxbase+的數(shù)據(jù)庫管理功能便于刀具設(shè)計所需表項的存儲,并可定位查找。為克服Foxbase+計算能力差的弱點,利用VC++進(jìn)行刀具結(jié)構(gòu)參數(shù)的計算,并利用接口程序?qū)崿F(xiàn)兩種語言之間的數(shù)據(jù)通訊。

  刀具結(jié)構(gòu)參數(shù)確定以后,通過調(diào)用預(yù)先編制的Autolisp參數(shù)繪圖程序,可方便、迅速地繪出蝸輪滾刀工作圖,省去了交互式繪圖的繁瑣程序。

  本軟件的編程方法同樣適合于其它類型刀具的CAD。