本社动态

您当前的位置:首页 > 建筑工程

建筑工程

基于AutoLISP语言参数化绘制变位齿轮的实践研究

摘要:基于中望CAD2012教育版的环境,运用AutoLISP语言的参数化功能,研究渐开线变位齿轮图形自动生成的方法。这种方法绘图效率快而且高,可大大提高设计人员的工作效率。

关键词:AutoLISP;参数化绘制;变位齿轮

 

Practice Research aboutParametric drawing of gears with addendum modification Based on the AutoLISP language

 

Duan Ya-bao

 

(Guannan technical secondaryschool of  Jiangsu,JiangsuLianyungang222500)

 

Abstract:the author introduced the methodof automatically drawing graphical about gears with addendum modification inthe hope CAD2012 education environment based on the AutoLISP language.thismethod is fast and high efficiency,and can greatly improve the designefficiency

Key Words: AutoLISP;automatically drawing gears with addendum modification

 

作者联系方式:

作者单位:江苏省灌南中等专业学校

联系电话:13851238284

E-MAIL:gnduan@163.com

邮编:222500

作者简介: 段亚宝(1980— ),男,江苏灌南人,本科。现为江苏省灌南中等专业学校机电技术应用专业教师,讲师。研究方向为AutoCAD教学。

齿轮机构是现代机械中应用最为广泛的一种传动机构,可以用来传递空间任意的两轴间的运动和动力,并且具有传动平稳、传动精度高、传动效率高、工作可靠、寿命长和工作安全等特点[1],传递功率可以从很小至几十万千瓦;速度最高可达300m/s;齿轮直径可以从几毫米至二十多米。但是制造齿轮需要有专门的设备,啮合传动会产生噪声。

标准齿轮有一定的局限性,如结构无法更紧凑、不能凑中心距、小齿轮容易损坏。为了改善和解决标准齿轮存在的上述缺点,就必须对其进行必要的修正,以改善其传动性能。修正的办法可以有多种,但目前工程中最常采用的是上述的变位修正法,即采用变位齿轮。变位齿轮是通过改变标准刀具对齿轮毛坯的径向位置或改变标准刀具的齿槽宽切制出的齿形为非标准渐开线齿形的齿轮。切制轮齿时,改变标准刀具对齿轮毛坯的径向位置称为径向变位。改变标准刀具的齿槽宽称为切向变位。最常用的是径向变位,切向变位一般用于圆锥齿轮的变位。与标准齿轮相比,其模数、齿数、压力角均无变化;但是正变位时,齿廓曲线段离基圆较远,齿顶圆和齿根圆也相应增大,齿根高减小,齿顶高增大,分度圆齿厚与齿根圆齿厚都增大,但齿顶容易变尖;负变位时,齿廓曲线段离基圆较近,齿顶圆和齿根圆也相应减小,齿根高增大,齿顶高减小,分度圆齿厚和齿根圆齿厚都减小,变位齿轮可使齿轮的承载能力提高20~30%

齿轮的加工离不开设计图,决定齿轮形状的参数很多,每个参数的变动都需要重新绘制图形,这对设计人员来说无疑是一项耗时的工作,而齿轮的各个参数之间都有明确的数学关系,其中最关键的四个参数就是模数、齿数、变位系数和压力角,这就给进行参数化绘制齿轮带来可能。本文以渐开线变位齿轮为例,探讨用AutoLISP的参数化功能在中望CAD2012教育版中绘制变位齿轮的方法。

1 AutoLISP语言简介

AutoLISP是由Autodesk公司开发的一种LISP程序语言。LISPListProcessor的缩写,它是一种计算机的表处理语言,是在人工智能学科领域广泛应用的一种程序设计语言。通过AutoLISP编程,可以节省工程师很多时间。AutoLISP语言作为嵌入在AutoCAD内部的具有智能特点的编程语言,是开发应用AutoCAD不可缺少的工具。AutoLISP语言是LISPAutoCAD有机结合的产物,可直接调用几乎全部的AutoCAD命令,其最典型的应用之一就是实现二维参数化绘图程序设计,并且AUTOLISP语言对于编写环境没有特殊要求,只要是一般的文书的编辑软件(如记事本、word等)都能用,不需要二次编译在其他CAD软件也能很好的执行[2-3]

2 渐开线变位齿轮参数分析

从图1中,可知其中mzax四个值是基本变量(这里为了程序具有扩展性,把压力角也看作变量),其他参数都和这四个基本变量有一定的数学关系。dd值需要事先计算获得。bh值从程序建立的键的国家标准表中查询获得。

 

1

2

 

 

 

 

 

 

 

 

 

 

 

 

                                       

 

3 程序设计

3.1 绘制变位齿轮的程序流程图

流程图以图形方式来表示算法,可用于对问题进行系统的分析。流程图是由在程序中代表特定功能的标准符号加上说明,表示算法的图。流程图有时也称作输入-输出图。该图直观地描述一个程序设计过程的具体步骤。流程图对准确了解事情是如何进行的,以及决定应如何改进过程极有帮助。这一方法可以用于整个程序,以便直观地跟踪和图解程序的运作方式。

AutoLISP语言中,圆角矩形表示“开始”与“结束”, 用平行四边形表示输入输出,菱形表示问题判断或判定(审核/审批/评审)环节,矩形表示行动方案、普通工作环节用,箭头代表工作流方向。在写程序之前,画好流程图如图2,特别是当问题中包含条件语句时更有助于人们的理解。

3.2用AutoLISP语言编写的具体程序代码

;用户输入齿轮的模数、齿数、压力角、齿轮中心点、变位系数、齿轮孔直径后自动生成带有标准直齿圆柱齿轮平面图

;

(defun c:gear(/ o m a z x b h d dddf da s y1 y2 w1 w2 w3 w4 w5)

(setvar "cmdecho" 0)

(graphscr)

(setq o (getpoint "\n 输入齿轮中心点:"))

(setq m (getreal "\n 输入齿轮模数<2>:"))

(setq a (getreal "\n 输入齿轮压力角<20>:"))

(setq z (getreal "\n 输入齿轮齿数<22>:"))

(setq dd (getdist "\n 输入齿轮轴孔直径<15>:"))

(setq x (getreal "\n 输入齿轮变位系数<0>:"))

(setq s  (getreal "\n 输入齿轮齿宽:"))

(setq d (* m z))

(setq db (* d (cos a)))

(setq df (+ (- d (* 2.5 m)) (* 2 xm)))

(setq da (+ d (* 2 m) (* x m)))

(if (and (> dd 6) (<= dd 8))(setq b 2.0 h 2.0))

(if (and (> dd 8) (<= dd10)) (setq b 3.0 h 3.0))

(if (and (> dd 10)(<= dd12))  (setq b 4.0 h 4.0))

(if (and (> dd 12)(<= dd17))  (setq b 5.0 h 5.0))

(if (and (> dd 17)(<= dd22))  (setq b 6.0 h 6.0))

(if (and (> dd 22)(<= dd30))  (setq b 8.0 h 7.0))

(if (and (> dd 30)(<= dd38))  (setq b 10.0 h 8.0))

(if (and (> dd 38)(<= dd44))  (setq b 12.0 h 8.0))

(if (and (> dd 44)(<= dd50))  (setq b 14.0 h 9.0))

(if (and (> dd 50)(<= dd58))  (setq b 16.0 h 10.0))

(if (and (> dd 58)(<= dd65))  (setq b 18.0 h 11.0))

(if (and (> dd 65)(<= dd75))  (setq b 20.0 h 12.0))

(if (and (> dd 75)(<= dd85))  (setq b 22.0 h 14.0))

(if (and (> dd 85)(<= dd95))  (setq b 25.0 h 14.0))

(if (and (> dd 95)(<= dd110))  (setq b 28.0 h 16.0))

(if (and (> dd 110)(<= dd130))  (setq b 32.0 h 18.0))

(if (and (> dd 130)(<= dd150))  (setq b 36.0 h 20.0))

(if (and (> dd 150)(<= dd170))  (setq b 40.0 h 22.0))

(if (and (> dd 170)(<= dd200))  (setq b 45.0 h 25.0))

(if (and (> dd 200)(<= dd230))  (setq b 50.0 h 28.0))

(if (and (> dd 230)(<= dd260))  (setq b 56.0 h 32.0))

(if (and (> dd 260)(<= dd290))  (setq b 63.0 h 32.0))

(if (and (> dd 290)(<= dd330))  (setq b 70.0 h 36.0))

(if (and (> dd 330)(<= dd380))  (setq b 80.0 h 40.0))

(if (and (> dd 380)(<= dd440))  (setq b 90.0 h 45.0))     

(if (and (> dd 440)(<= dd500))  (setq b 100.0 h 50.0))

(setq y1 (+(car o) (/ b 2)))

(setq y2 (+(cadr o) (sqrt(- (/(*dd dd) 4) (/(* b b) 4)))))

(setq p1 (list y1 y2))

(setq p2 (polar p1 (/ pi 2) (/ h2)))

(setq p3 (polar p2 pi b))

(setq p4 (polar p1 pi b))

(setq w1 (polar o pi (+ 10 (/ da2))))

(setq w2 (polar w1 (/ pi 2) (/ da2)))

(setq w3 (polar w2 pi s))

(setq w4 (polar w3 (* pi 1.5) da))

(setq w5 (polar w2 (* pi 1.5) da))

(setq w15 (list (car w1) (cadrp1)))

(setq w7 (polar w1 (/ pi 2) (/ df2)))

(setq w6 (polar w7 pi s))

(setq w10 (polar w6 (* pi 1.5)df))

(setq w11 (polar w7 (* pi 1.5)df))

(setq w14 (polar w15 pi s))

(setq w13 (polar w1 (* pi 1.5) (/dd 2)))

(setq w12 (polar w13 pi s))

(setq w9 (polar w15 (/ pi 2) (/ h2)))

(setq w8 (polar w9 pi s))

(command "layer""n" "zxx" "c" "1" "zxx""l" "center" "zxx" "" )

(command "layer""n" "lkx" "c" "7" "lkx""l" "continuous" "lkx" "lw""0.3" "lkx" "" )

(command "layer""n" "xx" "c" "5" "xx""l" "dashed2" "xx" "" )

(command "layer""s" "lkx" "")

(command "line" p1 p2 p3p4 "")

(command "line" w2 w3 w4w5  "c")

(command "line" w7 w6"")

(command "line" w13 w12"")

(command "line" w11 w10"")

(command "arc" p4"c" o p1 )

(command "circle" o (/da 2))

(command "layer""s" "zxx" "")

(command "circle" o (/ d2))

(command "layer""s" "xx" "")

(command "line" w9 w8"")

(command "line" w15 w14"")

(setvar "cmdecho" 1)

(princ)

)

3.3 在中望CAD2012教育版加载程序

中望CAD,是国产CAD平台软件的领导品牌。其界面、操作习惯和命令方式与AutoCAD保持一致,文件格式也可高度兼容,并具有国内领先的稳定性和速度,是CAD正版化的首选解决方案。

打开中望CAD2012教育版,单击“工具”“加载应用程序”,找到所编程序,点击加载。在命令行,输入gear,回车后,按程序要求输入齿轮中心、模数(2)、齿数(22)、压力角(20)、变位系数(0,1,-1)和齿轮孔直径(15),运行结果如图3

 

3-1 X=0图例

3-2 X=1图例

3-3 X= -1图例

4 结语

AutoLISP语言设计的实现变位齿轮图的参数化绘制程序,虽然之前的程序设计、编制和验证需要耗费一定的时间和精力,但是对于日后的批量图纸绘制来言,只需要给出几个必要的参数,任何人瞬间就可以绘制出来一个符合设计要求的齿轮平面图。既简单又快捷,这样可以大大提升设计及绘图效率。

参考文献:

[1] 初勤亭.运用AutoLISP语言实现齿轮轮廓精确绘制[J].现代电子技术,200715):128-130

[2] 昂雪野,管丽娜.应用AutoLISP实现参数化绘制渐开线齿轮[J].大连民族学院学报,20091):74-76

[3] 胡仁喜,胡星,史青录,等.AutoLISP机械设计高级应用实例[M] .北京:机械工业出版社,2005

在线投稿

编辑验证

文编:180*****

景编:946*****

阿编:293*****

詹编:226*****

佟编:257*****

陈编:294*****

王编:133*****

常编:181*****

医药卫生| 工业化工| 文化教育| 科学技术| 财经贸易| 建筑工程| 农业科学| 社会科学| 其他综合|   Copyright @ 2013 All Rights Reserved | 期刊(杂志)快速发表平台