999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于AutoCAD VBA的參數化輔助軸設計系統

2014-02-07 01:21:54
機電工程技術 2014年6期
關鍵詞:數據庫系統設計

王 鵬

(廣州廣日電梯工業有限公司,廣東廣州 511447)

0 前言

AutoCAD是目前使用廣泛的通用交互式計算機輔助繪圖與設計軟件包,其特點是通用性強,具有多種工業標準和開放的體系結構,具有強大的二次開發功能。這些特點使得它在船舶、建筑、機械、電子、服裝等多個領域得到了極為廣泛的應用[1]。

在機械產品設計中要頻繁使用通用零件軸,如果用傳統的方法對軸進行設計,由于參數太多,計算復雜,繪圖繁瑣,不僅設計效率低,而且容易出錯。目前各類CAD軟件在機械設計中的應用日益廣泛,利用參數化輔助設計的方法來研究機械零件的設計問題,已經成為現在機械設計中十分流行的研究方法[2]。因此,應用AutoCAD軟件平臺開發軸的參數化輔助設計系統不僅具有很高的實用價值,而且對機械設計現代方法的研究是一項有益的探索。

系統應用內嵌于AutoCAD軟件平臺的VBA技術進行二次開發,開發出了軸設計CAD系統,主要采用參數化設計方法,基于特征的實體造型理論,應用數據庫的支持和尺寸驅動原理,使軸的尺寸變化自動轉化成幾何形狀的變化,并直接輸出圖形,從而大大提高了設計的質量和繪圖的效率。

1 AutoCAD ActiveX及VBA技術

ActiveX技術來源于OLE(Object Linking and Embedding)技術。AutoCAD ActiveX使用戶能夠從AutoCAD的內部或外部以編程方式來操作Auto-CAD,使許多不同的編程語言和環境及其他應用程序可以訪問被顯示的對象。對象是所有ActiveX應用程序的主要構造塊,每一個顯示的對象均精確代表一個AutoCAD組件。AutoCAD ActiveX接口中有許多不同類型的對象[3]。在AutoCAD中實現ActiveX接口有兩大優點:更多的編程環境可以編程訪問AutoCAD圖形;與其他Windows應用程序共享數據變得更加容易。利用該項技術來進行AutoCAD二次開發,控制AutoCAD的環境,或同外部程序進行“對話”,或編寫基于AutoCAD的數據庫程序,有著顯著的優越性。ActiveX Automation技術為AutoCAD的二次開發提供了一個嶄新的天地[4]。

VBA(Visual Basic for Application)是AutoCAD內嵌的一種程序語言。它基于Visual Basic版本,是完全面向對象體系結構的一種編程語言,有著與VB幾乎相同的開發環境和語法。允許VBA環境與AutoCAD同時運行,并通過ActiveX接口提供對AutoCAD的編程控制[5]。

2 系統的參數化理論設計方法

自20世紀80年代以來,基于特征的設計方法已被廣泛接受,也提出了不少特征的定義。更為嚴格的定義:特征就是一個包含工程含義或意義的幾何原型外形[6]。特征在此已經不是普通的體素,而是一個封裝了各種屬性(attribute)和功能(function)的功能要素。由此,可以利用較高層次的語義豐富的特征來代替簡單的原始的幾何元素作為基本元素,通過一定的組合法則來建模,這就是特征造型,特征的表示和建立就成為其中的關鍵。

軸類零件的結構特點是:不同的軸有不同的結構,但它們有共同的結構特征,如都由幾節大小不同的圓柱段、倒角、鍵槽等組成。這些結構都很簡單,但又有很大的相似性。可以利用參數化的理論設計方法,基于特征實體的造型方法去研究軸的參數化設計,并根據用戶輸入的相關軸段尺寸來驅動系統運行,使軸的設計可以通過修改參數來確定,從而實現了軸類零件的計算機輔助設計。

3 系統的總體構成

考慮到計算機輔助軸的設計過程具有如下特點及難點:設計前已知數據少;使用大量的設計及校核資料;結構復雜,結構信息難于合理存儲傳遞。將軸的輔助設計系統分為以下幾個模塊。

(1)結構設計模塊。提供逐段進行結構設計的方便友好的交互界面,隨人機交互的進行,系統進行參數化繪圖并合理存儲軸的局部信息。

(2)數據處理與查詢模塊。由于軸的設計及校核涉及到大量的表格數據,為便于存儲、計算和檢索,系統利用Access數據庫存儲與設計及校核相關的數據。

(3)力學計算模塊。將加載于轉動件上的力轉換為加載于軸上的力,并計算該力作用下產生的支反力、彎矩和轉矩等。

(4)強度校核模塊。按照彎扭合成強度條件,利用數據處理與查詢模塊所獲取的參數和力學計算模塊得出的數據,計算軸上受載荷處的彎矩、扭矩、當量彎矩和計算應力。并按照強度校核理論,計算軸上危險點處的安全系數,進行強度校核,并判斷設計是否合格。

(5)參數化繪圖模塊。根據數據處理與查詢模塊提供的參數進行參數化繪圖,并輸出圖形文件。提供用戶布置載荷的接口。

4 計算機輔助軸設計系統的實現

4.1 設計流程

系統在應用界面設計上,采用了按設計順序步驟逐步依次運行。主要采用窗體的形式來完成系統的運行。系統執行的流程圖如圖1所示。

圖1 系統流程圖

4.2 系統的界面設計

系統的操作界面主要包括:引導界面、輔助設計界面、結構設計界面、支承布置界面和載荷計算及強度校核界面,在此列出結構設計界面(如圖2所示)和載荷計算及強度校核界面(如圖3所示)。

圖2 結構設計界面圖

4.3 關鍵問題的解決方案

4.3.1 數據庫的連接與查詢

軸的輔助設計系統中,由于涉及到大量的數據處理與查詢,因此建立了Access數據庫以方便系統管理相關數據。

圖3 載荷計算及強度校核界面圖

常用的數據庫訪問技術有:數據訪問對象DAO(Data Access Objects)技術,遠程數據對象RDO(Remote Data Objects)技術和Active數據對象ADO(ActiveX Data Objects)技術。ADO的對象模型是所有數據訪問接口對象模型中最簡單的一種,它的優勢在于它可用于各種程序設計語言,所以ADO技術成為數據庫訪問功能的新突破,開發的系統使用的是ADO訪問技術。

在使用ADO對象之前,需要在VBA集成開發環境中,引用ADO的對象模型。連接數據庫、打開記錄集的實現程序代碼如下:

'工程文件路徑

Dim strPath As String

Dim adoCon As Connection '連接對象

Dim adoRs As Recordset '記錄集對象

'首先獲得當前的工程路徑

strPath=ThisDrawing.Application.VBE.

ActiveVBProject.FileName

'連接數據庫

Set adoCon=New Connection

adoCon.CursorLocation=adUseClient

adoCon.Open"Provider=Microsoft.Jet.

OLEDB.4.0;DataSource=" & Left(strPath,Len(strPath)-8)&"data.mdb;"

'打開記錄集,查詢表jianhb

Set adoRs=New Recordset

adoRs.Open"SELECT*FROM jianhb",ado-Con,adOpenForwardOnly,adLockReadOnly,

adCmdText

adoRs.MoveFirst

在使用記錄集時,在各個記錄集之間切換還可以使用記錄集的Move、Move-First、 MoveNext、 MovePrevious、MoveLast方法。

在連接數據庫獲取數據完成之后,必須使用Close方法來關閉記錄集和數據庫連接對象,其程序代碼如下:

adoRs.Close '關閉記錄集對象

adoCon.Close '關閉連接對象

鏈接好數據庫之后,需要從數據庫中獲取符合條件的參數,采用For…Next循環語句實現了對所需查詢的表的遍歷,同時使用If…End if語句來選取符合查詢條件的參數,方便參數化設計。

4.3.2 參數化繪圖

參數化繪圖部分主要包括:圖層的建立、繪制圖形和尺寸標注三個方面。

(1)圖層的建立。其關鍵代碼如下:

‘創建“中心線”圖層,設置其線型,線寬,顏色

Public NewLayerName As String

Public LayerObject As AcadLayer

NewLayerName="中心線"

Set LayerObject=

ThisDrawing.Layers.Add(NewLayerName)

On Error GoTo ERRORHANDLER

linetypeName="CENTER"

ThisDrawing.Linetypes.Load linetypeName,"acadiso.lin"

ERRORHANDLER:

LayerObject.color=acWhite

LayerObject.Linetype="CENTER"

LayerObject.Lineweight=acLnWt015

ThisDrawing.ActiveLayer=LayerObject

(2)圖形繪制。其中直線和圓弧繪制的關鍵代碼如下:

‘直線

Dim Line As AcadLine:

Set Line = ThisDrawing.ModelSpace.AddLine(end1,end2)

‘圓弧

Dim arcObj As AcadArc

SetarcObj1 = ThisDrawing.ModelSpace.AddArc(center1,r,sangle,endang)

其中end1,end2,為線段端點;center1,center2為圓弧圓心;r為圓弧半徑;sangle為圓弧起始角度;endang為圓弧終止角度。

(3)尺寸標注。在系統中,標注主要采用對齊標注的方法,這種方法方便快捷,比較容易使用,對齊標注的定義程序代碼如下:

Dim dimObj As AcadDimAligned

Set dimObj=ThisDrawing.ModelSpace.AddDimAligned(end1,end2,location)

其中end1,end2為標注端點,location為標注文字的對齊點。其他標注相關:

‘設置小數分隔符

dimObj.DecimalSeparator= “.“

‘顯示直徑符號Φ

dimObj.TextOverride=“%%C<>“

dimObj.Update

4.3.3 參數化載荷計算及強度校核

在用戶輸入參數和數據庫連接完成之后,系統將進行參數化的載荷計算及強度校核。

(1)最小直徑的估算是進行結構設計,載荷計算及強度校核之前必不可少的,在估算最小直徑時需要獲得功率P、轉速n以及根據材料選取的系數A0。

計算過程由程序自動完成,其主要代碼為:

dmin=A0*((P/n)^(1/3))

Textdmin.Text=dmin

同時,用戶在進行結構設計時要保證軸段的直徑大于所估算的最小直徑,否則系統將提示錯誤。

(2)在進行載荷計算之前,必須先由用戶布置軸的支承點和受載荷點,否則無法進行載荷計算。軸的支承點需要布置2個,受載荷點只需要布置1個,其程序實現的方法主要為鼠標獲取點的坐標,調用GetPoint函數。其關鍵代碼如下:

'獲取點的位置

ptPick=ThisDrawing.Utility.GetPoint(,“指定點:”)

在布置支承點和受載荷點時系統會彈出對話框,提示用戶在指定的位置來布置,以方便系統獲取計算載荷時所需的力臂長度。

(3)在常規的軸設計當中,進行載荷計算時都需要構建力學模型,以方便軸的計算。在開發的系統當中,進行載荷計算時同樣要構建力學模型,但是這里的力學模型需要進行轉化,轉化成程序代碼的形式反映出來。所需計算的參數有切向支反力,切向彎矩,徑向支反力,徑向彎矩,扭矩,總彎矩等。

(4)在軸上載荷都計算完成之后,為了校核軸的強度,需要根據公式計算軸的計算彎矩,得出計算彎曲應力之后,即可針對危險截面(即計算彎矩大而直徑可能不足的截面)作強度校核計算。系統是按彎扭合成應力校核軸的強度,得出計算彎曲應力之后,系統跟據用戶所選擇的材料熱處理方法查詢許用彎曲應力[σ-1],并與計算彎曲應力進行比較,判斷軸的結構設計是否合理。

4.4 運行結果

(1)打開AutoCAD軟件,選擇【工具/宏/加載工程】。

(2)在彈出的對話框里找到存放系統的目錄,選中“計算機輔助軸設計系統.dvb”工程文件,并單擊“打開”按鈕。

(3)系統彈出Microsoft Visual Basic編輯器,選中User窗體,單擊運行按鈕或者按下F5鍵系統便開始運行。

(4)系統運行,由用戶根據系統提示進行軸的計算機輔助設計。運行結果如圖4、圖5所示。

圖4 載荷計算結果

圖5 強度校核結果

5 結論

(1)基于AutoCAD VBA的二次開發,可以為計算機輔助設計帶來了很大的靈活性,進一步增強程序的功能和代碼重用性,應用上述技術開發專用CAD系統是一種行之有效、方便實用的設計方法。

(2)系統基本滿足了軸設計過程當中的基本要求,用戶只需根據輸入的參數,即可由系統自動完成輔助結構設計及強度的校核,并輸出零件圖形。為設計人員提供了方便的設計手段。

[1]李長勛.AutoCAD ActiveX二次開發技術[M].北京:國防工業出版社,2005.

[2]肖剛,李學志,李俊源.機械CAD原理與實踐:第2版[M].北京:清華大學出版社,2006.

[3]張帆.AutoCAD VBA開發精彩實例教程[M].北京:清華大學出版社,2004.

[4]張帆.AutoCAD VBA二次開發教程[M].北京:清華大學出版社,2006.

[5]李慶興,李繼升,范順成,等.基于AutoCAD VBA平臺的機械零件工作圖參數化及自動生成系統[J].機械設計,2008,25(1):68-70.

[6]王彩英.基于特征的軸類零件參數化設計的研究[J].機 電 產 品 開 發 與 創 新 ,2008,21 (5):131-133.

猜你喜歡
數據庫系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 成人久久精品一区二区三区| 国产在线第二页| 伊人久久婷婷五月综合97色| 国产免费人成视频网| 国产一区成人| 51国产偷自视频区视频手机观看| 54pao国产成人免费视频| 区国产精品搜索视频| 制服丝袜亚洲| 成·人免费午夜无码视频在线观看 | 青青草原国产| 美女一级毛片无遮挡内谢| 国产综合精品一区二区| 国模沟沟一区二区三区 | 亚洲一级无毛片无码在线免费视频 | 91高清在线视频| 狠狠亚洲婷婷综合色香| 亚洲精品天堂自在久久77| 99精品一区二区免费视频| 专干老肥熟女视频网站| 伊人无码视屏| 久久国产乱子伦视频无卡顿| 亚洲午夜综合网| 高清色本在线www| 午夜精品久久久久久久99热下载| 国产女人18水真多毛片18精品| 亚洲国产精品一区二区第一页免| 一级毛片网| 91蜜芽尤物福利在线观看| 国产成人精品高清不卡在线| 欧美一区日韩一区中文字幕页| 亚洲欧美在线精品一区二区| 成人另类稀缺在线观看| 午夜a级毛片| 67194亚洲无码| 一级毛片在线播放| 天堂在线www网亚洲| 日韩无码黄色网站| 最新国产在线| 一本色道久久88亚洲综合| 99热在线只有精品| 国产无码高清视频不卡| 97国产精品视频人人做人人爱| 国产成人午夜福利免费无码r| 日本一本正道综合久久dvd| 国产va在线观看| 91区国产福利在线观看午夜| 玖玖精品在线| 无码视频国产精品一区二区| 97se亚洲综合| 在线色国产| 日本一区二区不卡视频| 久久无码av三级| 国产欧美日韩综合在线第一| 22sihu国产精品视频影视资讯| 天堂亚洲网| 亚洲成AV人手机在线观看网站| 欧美日本视频在线观看| 日本三区视频| 色九九视频| 99视频在线免费| 中文无码伦av中文字幕| 亚洲男女在线| 亚洲综合激情另类专区| 亚洲va在线观看| 国产浮力第一页永久地址| 日本亚洲成高清一区二区三区| 99激情网| 一级片一区| 中文纯内无码H| 亚洲黄色高清| 日本AⅤ精品一区二区三区日| 五月婷婷欧美| 无码精油按摩潮喷在线播放| 国产精品性| 国产精品制服| 97se亚洲综合在线| 欧美精品综合视频一区二区| 国产日韩AV高潮在线| 国产成在线观看免费视频| 萌白酱国产一区二区| 国产精品成人啪精品视频|