青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 1403|回复: 0

AutoCAD中常用结构的参数化设计

[复制链接]
发表于 2011-2-22 14:28 | 显示全部楼层 |阅读模式
AutoCAD作为应用最广泛的绘图软件,它的功能非常强大,基于AutoCAD环境下的二次开发也很方便。但是,在AutoCAD绘图软件的各种版本中,均无现成的常用结构图形库。本文采用AutoCADVBA(Visual Basic for Applications),针对各类零件特点的常用结构,如轴类零件的键槽、带轮槽、密封圈槽、移出剖面图和局部放大图等,实现了对常用结构的参数化绘图[1]。绘图人员只要输入要求的参数,就可以自动生成对应图形,简单方便实用。由于常用结构的编程过程非常相似,下面就以键槽为例,讲述标准结构参数化设计及绘图过程。
/ e. R9 m3 n" P' g8 g+ v" A; J2 b# `5 D4 z5 M! s
1 参数选择   r9 h0 I  j  z# ?$ a: e
/ N! G( v2 @4 C7 d# |4 o
键槽是轴类零件上常见的结构,通过对图1和图2 的比较可见,只要 5 个参数给定,就可将键槽的主视图和剖面图确定下来[2]。而且,根据标准机械设计手册,参数中的b、t 是由轴径d决定的,那么,绘图过程需要的参数只有三个:d、l、a。而另外两个参数b、t 可作为数据库内容通过d 来查询,这部分任务通过程序来完成。因此,经过分析可知,绘图人员只要输入参数d、l、a 的数值就能快速简洁地完成了。 ) y  y& t! L5 y0 F  e/ j# P
4 w' }$ ?' d, g3 p7 f( u! W" z

- j$ r% t$ M  U& f3 [! D* a8 J
7 {9 V2 X3 v5 n2 编程思路 1 L6 }4 l$ B+ \% w: n% K; F
& _8 K- [+ D* f' H( h
2. 1 建立Access 数据库
: Q9 N  m9 O& ?+ i" C& d& a) ~& i; E! ?% m& K
普通平键及键槽尺寸如图3 所示。 ' ?2 a& E' }' j$ Z4 A' A6 V! Q$ y7 ^

1 c! H! V6 L- h0 e3 FAccess 是开发小型数据库应用系统的理想工具,功能灵活,易于学习和操作[3]。本软件便采用Access 来建立数据库。表的结构非常简单,只是对机械手册相关表格中部分字段的选取。对于键槽来说,则采用如表1 的表格形式(表1 只选取完整表格的一部分)。 . d1 V4 T" X- ^5 x. x# K
; I$ U. y" P7 `; g8 j
2. 2 数据库操作部分 : p, `2 I8 P4 b; e

+ u! M1 }) J9 G1 f; Q! r, e0 h2 Z本软件对数据库的操作使用ADO(ActiveXData Objects)方式[3]。 1 E6 G' }5 H; b: \7 ]. Z
7 H! I; _2 S: d3 Z& w7 o
其中,打开数据库的语句如下:
- X7 G+ C2 M# M$ T, i3 c
- D% s& x' d2 e4 {# LPublic Const DATABASE As String = " 常用
: X# A% ~% M% g# _3 j结构. mdb" 8 _0 d+ _+ l; S
Private cnn As ADODB. Connection 5 M, [6 A4 o6 [/ W% [
Set cnn = New ADODB. Connection
- Z7 N( A1 x9 e. K5 N& U. p6 w( }0 N9 V0 k
cnn. ConnectionString = " Provider = Microsoft.
, R3 i; e4 V6 U+ q, T1 JJet. OLEDB. 4. 0;Data Source = " - App. path ' V5 Z  g5 z4 D
" " DATABASE " ;" ( s, N: D+ [, b
cnn. Open
# o0 U+ j6 q* Y- g8 }4 P
/ N+ P4 ]' ^! F; L对数据库中的数据,本软件最常用的是查询功能。例如:根据所给轴的直径d 查询键槽的相关尺寸b、t 的查询语句如下:
8 v- D7 O- T6 B
' L. G/ c* i* M- u5 A9 y) BSELECT b,t FROM 普通平键及键槽尺寸表 $ C- S8 u6 O+ f
WHERE d > dmin and d < = dmax. ; w+ F* [! p9 q! ^) ~  ~7 h

/ T$ n" `. v. ~) {& B6 q其他对数据库的操作与查询类似,不再赘述。
! X* X# Q& _# J$ k6 g( f2 @
  z8 Z- l; v5 P: k2. 3 绘图部分
4 e$ ~* G' X0 P& }# p, r8 F
! X/ z6 Y: ~/ I; V" K2 f  _对于键槽结构来说,图形分为两部分:主视图和剖面图。线条比较简单,主要采用画直线和圆弧的命令,尺寸标注也主要采用线性型尺寸标准方式,它的基本命令为: 7 K$ l) N# A2 H* k; Y, K6 W

3 S2 E4 G; o: _/ }8 cThisDrawing. ModelSpace. AddDimAligned( startPoint,
! i" u4 u+ ~" p$ O7 Q' AendPoint,location)。
5 C, e) G7 t9 m9 X# Q# L7 n9 v# m5 q0 P4 p9 b
下面以绘直线为例,表明作图过程[4]:
& b" y4 U  ~* M, L0 \/ x) H
& n2 G( D; `( f) wstartPoin(t 0) = ArcCenPointX (d/ 2# - t)
/ Y" K/ D4 \! O# Y6 `startPoin(t 1) = ArcCenPointY b / 2 5 p7 d7 S3 B# o: L/ R! G
startPoin(t 2) = 0#
# ~6 L1 c4 x+ \7 ~* `; }" ~" }endPoin(t 0) = ArcCenPointX (d / 2# - t)
8 q) w3 J8 h7 E& e  uendPoin(t 1) = ArcCenPointY - b / 2
' h8 l: F- R* eendPoin(t 2) = 0#
' q' r8 ?* ^# E# n7 e  f7 k: mSet lineObj =
+ e8 Y7 l& N0 _! o! ~ThisDrawing. ModelSpace. AddLine( startPoint,
) q" ~  ~# Y7 e' |endPoint)
; V8 ?+ `6 ]9 I: A9 H& x1 r( A4 Y$ v2 x3 N
当然,绘图部分实现最终的图形显示,在程序中难免有相当多的数据的传输调用。本文采用的是全局变量的形式。例如轴径:Public d As Double。 6 u& E$ g0 {# V  J# J1 c* U
, c6 P! ^4 M3 Q6 P# T- Z
与AutoCAD的接口可以使用菜单方式,也可以采用命令方式,都非常方便简单。 * a1 Y, M, b' A. V* B- \" t

1 R- q, z( y0 d1 i  a3 结束语 / @$ u" u- Z1 V. z: x8 S6 }

1 P8 m% i$ D# p+ l1 H& D6 ]本文所实现的对常用结构的参数化设计,是在AutoCAD环境下,利用VBA 这种编程语言完成的。界面简洁,简单易用,减少了绘图人员的查阅标准时间,减轻了绘图工作量,提高了出图速度,并且可以避免在绘图和查表的交错进行中产生的失误,具有一定的实用价值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2025-2-11 21:22 , Processed in 0.076483 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表