分级变速主传动系统共13页

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、实验目的

1通过对分级变速主传动系统的设计来巩固课堂学习的相关知识;

2了解和掌握CAD的方法,初步学会应用VB来进行AutoCAD二次开发。

二、实验内容和步骤

实验题目:(参照教材138页)

设计一中型机床传动系统,电动机转速1440rpm,要求输出12级转速、最低转速31.5rpm、最高转速1400rpm。

根据题目要求,工作流程如下:

第一步:输入设计原始数据。主要包括电动机转速、要求输出的转速级数、输出最低转速、输出最高转速等。

第二步:参照教材45页的标准数列表,用写字板等编辑软件,编写标准数列表文件a.dat,并将其存放在程序指定的位置。

第三步:生成符合要求的输出转速序列,相应数据以文件outdata.dat 形式输出,并将其存放在程序指定的位置。

以上第一到第三步通过编写QBASIC程序来完成。

第四步:确定传动系统的结构式。

第五步:编程绘制转速图,通过VB编程完成。

第六步:完成配齿。

以上第四步、第六步由同学们参考教材在课后自己完成。

第七步:绘制传动系统图。由同学们独立完成,可以手绘,也可以在计算机上完成。

由以上介绍可以看出,实验课上完成的内容是除第四步和第六步外的全部内容,我们将这些内容分为三大部分。第一部分,包括第一到第三步的全部内容:即利用QBASIC编程,通过运算生成符合题目要求的转速数列

等数据,以outdata.dat文件形式输出。QBASIC源程序见下:DIM n(171), Nz(31)

OPEN "e:\a.dat" FOR INPUT AS #1

i = 1

DO WHILE NOT EOF(1)

INPUT #1, n(i)

i = i + 1

LOOP

CLOSE #1

INPUT "nmotor"; nmotor

INPUT "nmin"; Nmin

INPUT "nmax"; nmax

INPUT "z"; z

Nz = nmax / Nmin

ng = LOG(Nz)

nh = ng / (z - 1)

fai = EXP(nh)

x = INT(LOG(fai) / LOG(1.06) + .5)

FOR i = 1 TO 161

IF n(i) = Nmin THEN j = i ELSE

NEXT i

OPEN "e:\outdata.dat" FOR OUTPUT AS #2

WRITE #2, nmotor

WRITE #2, z

FOR k = 1 TO z

Nz(k) = n(j)

j = j + x

WRITE #2, Nz(k)

NEXT k

CLOSE #2

END

请注意程序中的一句,OPEN "e:\a.dat" FOR INPUT AS #1,这里说明:a.dat 文件是标准数列文件,所谓标准数列见教材45页表2.12。这个文件在程序运行前,要编辑好,并放在相应的地方,程序原句要求将a.dat文件放在E盘的根目录下。

程序正确运行后自动生成的outdata.dat文件内容见下。

1440

12

31.5

45

63

90

125

180

250

355

500

710

1000

1400

以上部分即第一部分用2学时完成。

第二部分编写VB程序,绘制转速图,就是第五步工作内容。

首先进入VB6.0中文系统,分别制作两个窗体,见图1和图2。

图 1 主控窗体

图 2 绘图参数输入窗体

在图 1 的窗体中,“输入转速图绘制所需参数”命令按钮的代码如下:Private Sub Cmd输入参数_Click()

Form1.Show

End Sub

“绘制转速图”命令按钮的代码如下:

'进入AutoCAD

Private Sub Cmd绘图_Click()

On Error Resume Next

Set acadapp = GetObject(, "autocad.application")

If Err Then

Err.Clear

Set acadapp = CreateObject("autocad.application")

If Err Then

MsgBox ("不能运行AutoCAD200#,请检查是否安装了AutoCAD")

Exit Sub

End If

End If

acadapp.Visible = True

acadapp.ActiveDocument.ActiveViewport.GridOn = True

'画表格

Dim lineobj As AcadLine

Dim startpoint1(0 To 2) As Double

Dim endpoint1(0 To 2) As Double

Dim z As Integer

z = 12

startpoint1(0) = 1#: startpoint1(1) = 1#: startpoint1(2) = 0# endpoint1(0) = 57#: endpoint1(1) = 1#: endpoint1(2) = 0#:

set line1obj= acadapp.ActiveDocument.ModelSpace.AddLine(startpoint1, endpoint1)

retval1 = line1obj.ArrayRectangular(z, 1, 1, 6, 0, 0)

Dim sp(0 To 2) As Double

Dim ep(0 To 2) As Double

sp(0) = 1#: sp(1) = 1#: sp(2) = 0#

ep(0) = 1#: ep(1) = 67#: ep(2) = 0#:

Set line2obj = acadapp.ActiveDocument.ModelSpace.AddLine(sp, ep) retval2 = line2obj.ArrayRectangular(1, 5, 1, 1, 14, 0)

'写图表标题

acadapp.ActiveDocument.ActiveTextStyle.fontFile=

"c:\winnt\fonts\simfang.ttf"

Dim textobj As AcadText

Dim textstring As String

Dim ip(0 To 2) As Double

Dim iip(0 To 2) As Double

Dim h, tx As Double

textstring = "分级变速主传动系统转速图"

h = 2

相关文档
最新文档