欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    广东工业大学数控课程设计报告书.docx

    • 资源ID:3501609       资源大小:46.12KB        全文页数:23页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    广东工业大学数控课程设计报告书.docx

    广东工业大学数控课程设计报告书机电工程学院 广东工业大学“数控技术”课程设计任务书 题目名称 学生学院 专业班级 姓 名 学 号 针对非圆曲线的CAM软件开发 机电工程学院 机械设计制造及其自动化/微电子 一、课程设计的内容 用计算机高级编程语言来实现非圆曲线的计算机辅助制造(CAM)软件的开发,针对不同的非圆曲线,可任选直线逼近、或圆弧逼近的方法产生节点。要求在满足允许误差的前提下,使得逼近的直线段或圆弧段的数量最少, 根据加工曲线轮廓自动生成刀具中心轨迹,自动生成加工NC代码,并能模拟实际加工走刀过程。 二、课程设计的要求与数据 具体的要求如下: 列出一般的直线或圆弧逼近的算法。 列出改进的直线或圆弧逼近的算法即优化算法。比较改进前与改进后的两种算法结果。 针对给定的某一由非圆曲线所构成的平面轮廓,根据指定的走刀方向、起刀点,自动生成CNC代码。 (4)有刀具自动补偿功能,根据给定的补偿量和进给方向自动计算刀具中心轨迹,有过切报警功能。 在屏幕上显示该非圆曲线所构成的平面轮廓。根据给定的进给速度能模拟加工过程,并在屏幕上留下刀具所走中心轨迹。 目 录 一、 概述2 二、凸轮机构的发展概况3 三、课程设计任务 3 广东工业大学 机电工程学院 1 机电工程学院 四、软件设计7 1、 程序设计语言的选择7 2、 程序算法的简述7 3、设计的流程图7 4、设计过程 7 5、调试结果和界面15 五、总结16 附:参考资料17 一、概述: 首先介绍了凸轮机构的特点和在国内外目前的应用发展情况,介绍了凸轮仿真设计的系统的主要设计任务,包括在编程时所采用的曲线的类型及对函数式的分析情况。接着,介绍软件程序设计的各个过广东工业大学 机电工程学院 2 机电工程学院 程,包括算法说明、流程图介绍。还介绍了软件测试结果。最后,对这次设计过程的心得体会。 Summary of the Contents: Introduce cam organization present development at home and abroad at first , introduce cam main design task of system that emulation design, including the types of the curves adopted and situation of analysis on function type while programming. Then , introduce each course that the software designs program , including the algorithm is stated , flow chart introduction. Have also introduced the test result of the software. Finally, the gains in depth of comprehension to this design process. 二、凸轮机构的发展概况 凸轮机构是一个具有曲线轮廓或凹槽的构件.凸轮通常作等速转动,但也有做往复摆动或移动的.被凸轮直接推动的构件称为推杆.凸轮机构就是又凸轮,推杆和机架三个主要构件所组成的高副机构.凸轮的最大优点是:只要适当地设计出凸轮的轮廓曲线,就可以使推杆得到各种预期的运动规律,而且机构简单紧凑. 广东工业大学 机电工程学院 3 机电工程学院 凸轮机构是间歇运动的常用机构之一,广泛用于轻工机械、纺织机械、包装机械、印刷机械、内燃机等各种自动机械中。 凸轮机构之所以能在各种自动机械中获得广泛的应用,除了它的最大优点外,还因为它兼有传动、导引及控制机构的各种功能。当凸轮机构用于传动机构时,可以产生复杂的运动规律,包括变速范围较大的非等速运动,以及暂时停留或各种步进运动;凸轮机构也适宜于用作导引机构,使工作部件产生复杂的轨迹或平面运动;当凸轮机构用作控制机构时,可以控制执行机构的自动工作循环。 人类对凸轮机构的认识由来已久,但直到十九世纪末,对凸轮机构还未曾有过系统地研究。随着工业化的发展,对高效的自动机械的需求大大增加,需要改善内燃机配气机构的工作性能,所以直到二十世纪初,凸轮机构的研究才开始受到重视。在二十世纪四十年代以后,由于内燃机转速增加,引起故障增多,才开始对配气凸轮机构进行深入研究,并从经验设计过渡到有理论根据的运动学与动力学分析。 现代机械日益向高速发展,凸轮机构的运动速度也愈来愈高。因此,高速凸轮的设计及其动力学问题的研究已引起普通重视,提出了许多适于在高速条件下采用的推杆运动规律,以及一些新型的凸轮机构。另一方面,随着计算机的发展,凸轮机构的计算机辅助设计和制造已获得普遍地应用,从而提高了设计和加工的速度及质量,这也为凸轮机构的更广泛应用创造了条件。 三、课程设计任务 平面凸轮的数控加工程序的编制 设有凸轮如图1所示。凸轮转角t与 从动件位移s的关系即凸轮轮廓的展成平面 图如图2所示。 要求分析凸轮的曲线规律,设计一个软件 图1 能够用于平面凸轮的参数化绘图和生成数控加工的代码。 即: 广东工业大学 机电工程学院 4 机电工程学院 1.有一个凸轮设计的友好界面; 图1 2.能够按照用户要求生成凸轮的曲线 轮廓,对于非圆几何形状可采用直线或圆 弧逼近的方法生成曲线; 3.能够生成数控代码; 图2 凸轮设计中涉及的有关参数可自行设定,或参考图2中的参数。 曲线的类型及函数式的分析 所谓推杆的运动规律,是指推杆在运动时,其位移s 速度v和加速度a随时间t的变化的规律.又因为凸轮一般为等速运动,即其转角&与与时间成正比,所以推杆的运动规律更常表示为推杆的运动参数随凸轮转角&变化的规律.例如图2就是推杆位移随凸轮转角变化的运动线图. 下面分析各种设计凸轮的数学表达式: 首先,采用机械原理中的一般凸轮设计的几种运动方程式,并对此作了修改: 1、多项式运动规律 s=C0+C1d+C2d2+.+Cndn (1-1) 式中d为凸轮的转角;s为凸轮从动件位移;C0、C1、C2、为待定系数,可以利用边界条件等来确定。而常用的有以下几种多项式运动规律。 (1) 一次多项式运动规律(速度为常数) 广东工业大学 机电工程学院 5 机电工程学院 s=C0+C1d v=dsdv=wC1 a=0 dtdt设取边界条件为 在起点处 d=0,s=0. 在终点处 d=d0,s=h. 则由式(1-2)可得C0=0,C1=hd/d0,故从动件推程的运动方程为 s=hd/d0,回程时h取负值。 (2) 二次多项式运动规律(加速度为常数) 等加速运动方程:s=2hd2/d02 等减速运动方程:s=h-2h(d0-d)2/d02 由于等加速等减速的曲线图形都是由两部分组成,而为方便曲线的分类,固对其进行修改。其中原等加等减加速度函数为:“s=2hd2/d02” 和“s=h-2h(d0-d)2/d02”。两段曲线的范围分别为h/2, o/2,,以h/2, o/2,代入原式中,即可得到求出单独等加速或等减速的函数式。由于采用的h值是相对的,所以回程时,只把h取负值即可。 2、三角函数运动规律 余弦加速度运动规律(简谐运动规律) 从动件的加速度 广东工业大学 机电工程学院 6 机电工程学院 余弦规律变化,其运动方程为s=h1-cos(pd/d0)/2 正弦加速度运动规律(摆线运动规律) 从动件的加速度按正弦规律变化,其运动方程为s=h(d/d0)-sin(2pd/d0)/2p 其中,等速运动:极大的冲击;等加速、等减速:冲击较大;余弦加速度运动:冲击力较小;正弦加速度运动:没冲击。 由于凸轮的曲线函数还有很多,如五项式、高次方、谐波等,而且由于凸轮的具体运用场合不同,如对心直推,偏置直动推杆盘状凸轮机构,摆动推杆,平底推杆等。这些情况不在考虑的范围内,同时也忽略了对设计完成的凸轮的冲击广东工业大学 机电工程学院 7 机电工程学院 力。 二、 软件设计 1、 程序设计语言的选择 目前流行的开发工具有C+Builder、VC、VB和Delphi,每一种开发语言都其特点。在这次程序设计中,我选择了Visual Basic(VB)程序开发工具。因为其设计语言简单易用,在编程系统中引入了面向对象的机制,提供了一种可视界面的设计方法。用户可直接使用窗体和控件设计应用程序界面,极大地提高了应用程序开发的效率。 在程序中,我采用了多个应用窗口依次询问的方法,逐步完成凸轮的仿真设计。每个窗体按照不同的功能而划分为:登陆界面,基本参数选择界面,主窗体,NC加工窗体,还有帮助界面。 2、 程序算法的简述 数控系统一般只有直线和圆弧插补的功能,对于非圆曲线轮廓,只有用直线和圆弧去逼近它,“节点”就是逼近线段与非圆曲线的交点。一个已知曲线方程的节点数主要取决于所用逼近线段形状、曲线方程的特征以及允许的逼近误差。 在本程序中,由于时间的关系,我采用的逼近方法是直线逼近方法,简单易编程,容易检查出错误。虽然会在某些线段中会产生较大的误差,但由于每段逼近线段的长度较小,因此,产生的误差都在允许的范围之内。但是,也由于这个原因,使节点过多,这是无法避免的。 3、设计的流程图 初步构想 界面确定 确定逼近算法 模块编写 程序调制 4、设计过程 广东工业大学 机电工程学院 8 机电工程学院 程序流程图 开 始 文件标志符* 输入参数 Y N 文件无效 N>=1;R>0;H>=0 Y 生成坐标系 N 范围出错,重输 Y N=1或H=0 N 选择曲线类型,输入参数 超出范围 N 画半径为R的圆弧 范围出错,重输 h<>0 Y 画凸轮轮廓线 画半径为R+h的圆 在list框生成该圆弧的相对和绝对NC代码 在list框生成该曲线段相对和绝对NC代码,保存相应的参数值 NC加工代码浏览 N 是否满意 Y 清空曲线数据,恢复初始值 广东工业大学 机电工程学院 9 机电工程学院 结束 主要程序分析 1、初始坐标系绘制 Private Sub cmdOK_Click '坐标初始化 Dim c1 As Double, c2 As Double, c As Double, a As Integer If IsNumeric(TxtRise1.Text) And IsNumeric(Txtr.Text) And IsNumeric(TxtNum.Text) Then '判断输入的R,H,N是否是数字 m1 = TxtNum.Text: m2 = Txtr.Text: m3 = TxtRise1.Text TxtNum.Enabled = False: Txtr.Enabled = False: TxtRise1.Enabled = False Form1.Labfun.Caption = "" If m1 >= 1 And m2 > 0 And m3 >= 0 Then a = Val(TxtNum): c1 = Val(Txtr): c2 = Val(TxtRise1) c = 1.2 * (c1 + c2) Form1.Label15.Caption = "Y": Form1.Label12.Caption = "0": Form1.Lbls.Caption = c2 Form1.Label13.Caption = "s": Form1.Label14.Caption = "": Form1.Label11.Caption = "X" Form1.Label3.Caption = "90": Form1.Label4.Caption = "0": Form1.Label8.Caption = "180" Form1.Label9.Caption = "270": Form1.Label10.Caption = "360" '绘制PicView的坐标 Form1.PicView.Scale (-c, c)-(c, -c) Form1.PicView.Line (0, -1.2 * (c1 + c2)-(0, 1.2 * (c1 + c2), RGB(0, 0, 255) Form1.PicView.Line (-1.2 * (c1 + c2), 0)-(1.2 * (c1 + c2), 0), RGB(0, 0, 255) For i = 1 To 10 Form1.PicView.Line (0 + i * (c1 + c2) / 10), 0)-(0 + i * (c1 + c2) / 10), c / 50), RGB(0, 0, 255) Form1.PicView.Line (0 - i * (c1 + c2) / 10), 0)-(0 - i * (c1 + c2) / 10), c / 50), RGB(0, 0, 255) Form1.PicView.Line (0, 0 + i * (c1 + c2) / 10)-(c / 30, 0 + i * (c1 + c2) / 10), RGB(0, 0, 255) Form1.PicView.Line (0, 0 - i * (c1 + c2) / 10)-(c / 30, 0 - i * (c1 + c2) / 10), RGB(0, 0, 255) Next i '考虑升程和曲线段数的输入值的两种情况 '一,当升程为>0和曲线段数为>1时 If c2 > 0 And a > 1 Then Form1.Cmbsel.Enabled = True 广东工业大学 机电工程学院 10 机电工程学院 Form1.PicView1.ScaleHeight = -1.2 * c2 Form1.PicView1.ScaleTop = c2 '绘制PicView1的坐标 Form1.PicView1.Line (0, 0)-(360, 0), RGB(0, 0, 0) For i = 1 To 4 Form1.PicView1.Line (0, 0 + i * (c2 / 4)-(5, 0 + i * (c2 / 4), RGB(0, 0, 0) Next i Form1.PicView1.Line (0, 0)-(0, c2), RGB(0, 0, 0) For i = 1 To 8 Form1.PicView1.Line (0 + i * (360 / 8), 0)-(0 + i * (360 / 8), c2 / 24), RGB(0, 0, 0) Next i Else '二,当升程为<0或曲线段数为<1时 Form1.Cmbsel.Text = "休程" Form1.Labfun.Caption = "r=" & Val(Txtr) Form1.Cmbsel.Enabled = False: Form1.CmdOK.Enabled = True Form1.Numend.Enabled = False: Form1.Numh.Enabled = False: Form1.Numstr.Enabled = False Form1.PicView1.ScaleHeight = -12 Form1.PicView1.ScaleTop = 10 Form1.CmdOK.Enabled = False MsgBox "请检查输入的凸轮参数是否准确" For i = 1 To 36 Form1.PicView1.Line (0 + i * (360 / 36), 0)-(0 + i * (360 / 36), 0.3), RGB(0, 0, 0) Next i End If Form1.CountAll.Caption = TxtNum.Text: Form1.CountNow.Caption = 1 cn = 1: tch = 0: sch = Val(TxtRise1): wide = 0: high = 0 Form1.PicView.DrawStyle = 2 '绘制两个虚线圆 Form1.PicView.Circle (0, 0), Val(Txtr), RGB(250, 0, 255) Form1.PicView.Circle (0, 0), Val(Txtr) + Val(TxtRise1), RGB(250, 0, 255) Form1.PicView.DrawStyle = 0 CmdOK.Enabled = False Form1.Numstr.Enabled = False: Form1.Numend.Enabled = False: Form1.Numh.Enabled = False Else 广东工业大学 机电工程学院 11 机电工程学院 MsgBox ("请正确输入正确的参数") End If Else MsgBox ("请正确输入数字") End If Form1.Label1.Caption = "基圆半径R为:" & m2 Form1.Label2.Caption = "升 程 H为:" & m3 Dialog1.Hide End Sub Private Sub End_Click a = MsgBox("真的退出吗?", vbOKCancel, "退出") If a = vbOK Then End End Sub Private Sub Form_Load End Sub 2、凸轮轮廓曲线的主程序: 先判断输入值是否是数字,接着判断曲线的终止角度是否大于起始角度。当输入最后一段时,系统自动生成最终的参数,并且判断是否在360度之内,自动连接曲线成封闭轮廓曲线。 Private Sub cmdOK_Click If IsNumeric(Dialog1.Txtr.Text) IsNumeric(Dialog1.TxtNum.Text) _ And IsNumeric(Dialog1.TxtRise1) And And IsNumeric(Numstr) And IsNumeric(Numend) And IsNumeric(Numh) Then '检查Text的内容是否为数字 str = Val(Numstr): end1 = Val(Numend): h = Val(Numh) a1 = Numstr: a2 = Numend: a3 = Numh: r = Val(Dialog1.Txtr): If Val(Numend) > Val(Numstr) And Val(Numend) <= 360 And Val(Numstr) < 360 Then '检查终止角度(end1)是否大于初 If Val(Dialog1.TxtRise1) = 0 Or Val(Dialog1.TxtNum) = 1 Then '如果升程H=0或曲线段数N=1 Call forend: Call case0: CmdOK.Enabled = False 广东工业大学 机电工程学院 12 机电工程学院 Else If Val(Numh) <= Val(Dialog1.TxtRise1) And Val(Numh) >= 0 And cn = 1 And _ Val(Numend) < 360 Then Call caseall ElseIf high + h <= Val(Dialog1.TxtRise1) And high + h >= 0 And cn > 1 And _ Val(Numend) < 360 And Numend.Enabled = True Or Val(Numend) = 360 _ And Numend.Enabled = False Then Call caseall ElseIf Val(Numend) = 360 And Numend.Enabled = True Then MsgBox "范围出错!" Numend.SetFocus Else MsgBox "范围出错!" Numh.SetFocus End If End If Else MsgBox ("范围出错!") CmdOK.Enabled = True Numend.SetFocus End If Else MsgBox ("输入为空或有非法字符,请重新输入!") 广东工业大学 机电工程学院 13 机电工程学院 '如果输入的起始角度和终止角度不是数字,则出现警告 Numend.SetFocus End If End Sub 3、函数式生成曲线的程序: 以正弦曲线为例,先定义数组pcx(low),pcy(low)下标范围,每次取0.1个单位角度,每次在picview上绘制一小段直线,直至结束为止。并且判断是否为休程,假如为休程时,则生成圆弧的NC加工代码;否则,直接生成直线的NC加工代码。 每次绘制逼近线段时,其开始都是以上一次的逼近线段的终点为起点的,因此能够保证曲线顺利的过度连接。 Sub case3 low = 10 * Val(Numstr) For i = 0 To (end1 - str) Step 0.1 X = i Y = h * (i / (end1 - str) - Sin(2 * P * i / (end1 - str) / (2 * P) PicView1.PSet (X, Y), RGB(0, 0, 220) pcx(low) = (r + (high + Y) * Sin(wide + i) * P / 180) pcy(low) = (r + (high + Y) * Cos(wide + i) * P / 180) PicView.PSet (pcx(low), pcy(low), RGB(0, 0, 220) low = low + 1 Next i If Val(Numh) = 0 Then Call NCyh Else List1.AddItem a1 & " " & a2 & " h= " & a3 & " " & "正弦加速度运动" Call NCzx End If End Sub 4、直线逼近加工代码: 每一段逼近线段的角度为1度,也就是说每一次加工1度的逼近线段,并且判断前一段是否为圆弧。 Sub NCzx i = str * 10 + 1 List2.AddItem "G01" & "X" & Format$(pcx(str * 10 + 1), "#0.000") & _ "Y" & Format$(pcy(str * 10 + 1), "#0.000") '绝对坐标编程 广东工业大学 机电工程学院 14 机电工程学院 List3.AddItem "G01" & "X" & Format$(pcx(str * 10 + 1) - _ pcx(str * 10), "#0.000") & "Y" & Format$(pcy(str * 10 + 1) - pcy(str * 10), "#0.000") '相对坐标编程 j = j + 1 For i = str * 10 + 2 To end1 * 10 - 1 List2.AddItem "X" & Format$(pcx(i), "#0.000") & _ "Y" & Format$(pcy(i), "#0.000") List3.AddItem "X" & Format$(pcx(i) - pcx(i - 1), "#0.000") & _ "Y" & Format$(pcy(i) - pcy(i - 1), "#0.000") j = j + 1 Next i List2.AddItem "X" & Format$(Val(Dialog1.Txtr) + high + h) * _ Cos(90 - Val(Numend) * P / 180), "#0.000") & "Y" & Format$(Val(Dialog1.Txtr) + high + h) _ * Sin(90 - Val(Numend) * P / 180), "#0.000") List3.AddItem "X" & Format$(Val(Dialog1.Txtr) + high + h) _ * Cos(90 - Val(Numend) * P / 180) - pcx(end1 * 10 - 1), "#0.000") & "Y" _ & Format$(Val(Dialog1.Txtr) + high + h) * Sin(90 - Val(Numend) * P / 180) - _ pcy(end1 * 10 - 1), "#0.000") j = j + 1 End Sub 圆弧的代码较为简单,其程序段和直线逼近的代码相似,所以不列出。 3、 NC代码的生成的程序: 由于NC代码的开始准备部分和结束部分是不变的,所以分别另外定义为两个子过程。 开始准备部分: Sub NCStr 'NC代码的开始部分 j = 100 List.AddItem "%", 0 List.AddItem "N" & j & " G54 " & " T01", 1 j = j + 5 List.AddItem "N" & j & " " & crd & "G00G17" & DB & " D01", 2 j = j + 5 List.AddItem "N" & j & " X" & "0" & " Y" & Format$(pcy(0), "#.#") _ & " Z" & Val(Txt6) & " S" & Val(Txt4) & " M03", 3 j = j + 5 List.AddItem "N" & j & " G01 Z10" & " F" & Val(Txt2), 4 j = j + 5 List.AddItem "N" & j & " G01 Z" & Val(Txt7) & " F" & Val(Txt1), 5 j = j + 5 End Sub 其中,变量DB为刀补的选择参数,而变量crd为加工的坐标值, 结束部分: 广东工业大学 机电工程学院 15 机电工程学院 Sub NCEd 'NC代码的结束部分 If Option3.Value = True Then List.AddItem "N" & j & " G00" & " Z" & Val(Txt6) & " F" & Val(Txt3) Else List.AddItem "N" & j & " G00" & DBcan & " Z" & Val(Txt6) & " F" & Val(Txt3) End If j = j + 5 List.AddItem "N" & j & " M05" j = j + 5 List.AddItem "N" & j & " M02" List.AddItem "%" End Sub 其中,变量Dban为刀补的取消参数。 主体部分: 在程序段中,先对加工参数进行判断,再作绝对坐标和相对坐标的选择。Private Sub cmdOK_Click List.Clear If IsNumeric(Txt1) And IsNumeric(Txt2) And IsNumeric(Txt3) And _ IsNumeric(Txt4) And IsNumeric(Txt5) And IsNumeric(Txt6) And _ IsNumeric(Txt7) And IsNumeric(Txt8) And Val(Txt8) >= 1 Then If Option1.Value = True Then '绝对坐标编程 deep = Val(Txt7) Call NCStr j = 110 For M = 1 To Val(Txt8) List.AddItem "N" & j & " " & " Z-" & Format$(deep, "#0.#") j = j + 5 For i = 0 To Form1.List2.ListCount - 1 List.AddItem "N" & j & " " & Form1.List2.List(i) j = j + 5 Next i deep = deep + Val(Txt7) Next M Call NCEd ElseIf Option2.Value = True Then '相对坐标编程 Call NCStr j = 110 For M = 1 To Val(Txt8) List.AddItem "N" & j & " " & " Z-" & Format$(Val(Txt7), "#0.#") j = j + 5 For i = 0 To Form1.List3.ListCount - 1 List.AddItem "N" & j & " " & Form1.List3.List(i) j = j + 5 Next i Next M Call NCEd End If Else MsgBox "有非法字符或其它错误,请检查" End If End Sub 广东工业大学 机电工程学院 16 机电工程学院 5 调试过程 一、运行时欢迎界面: 二、主程序运行界面: 广东工业大学机电工程学院17 机电工程学院 三、 测试各个输入参数后,运行结果如下: 广东工业大学 机电工程学院 18 机电工程学院 三、 NC加工界面: 广东工业大学 机电工程学院 19 机电工程学院 其中,测试的结果还令人满意。不过,令人遗憾的是由于加工的路线,只能实现刀具半径左补偿指令,没办法实现右补偿。 其它功能详见软件,这里略过了。 广东工业大学 机电工程学院 20 机电工程学院 五、总结 在这次课程设计中,我学到了很多书本上的知识。尽管以前学过VB6.0,但是由于时间的关系及以前所学的知识是基本原理,因此,现在不得不再次重新从头开始学起,为此花费了很多时间。但这是值的,因为我学到了很多东西。不仅加深了对数控的加工的认识,还提高自己的编程水平,达到了学以致用的目的。 “凸轮轮廓曲线的计算机辅助设计”是一个新兴的项目,将设计中的“CAD”和“CAM”两者结合起来。这对于我来说,是一个极大的挑战,也是一个极大的尝试。在这次设计中,遇到的主要问题是:如何确定凸轮的轮廓曲线的各个点的坐标值以及在数控系统中采用何种方法去加工曲线,还有一个NC代码的接口程序的编制。 因为在VB中只提供了直线和圆弧的绘制方法,这一点有点象数控系统只提供直线和圆弧的加工代码。对此,我采用了数控加工中的程序编制的逼近方法,用一小段直线逐步逼近非圆曲线。这样做是无法避免误差的产生,但由于所采用的逼近线段长度够短,尽量减小误差。还有一点是做推杆远休或近休时采取逼近的做法,尽管所得的曲线非圆弧,但是由于推程为零,所得的曲线与圆弧比较误差小,可满足精度.曲线上的各个坐标值,我采用了listbox通过AddItem的方法不断将各个坐标值依次添加到listbox中,并且同时生成NC的加工代码,因此也解决了NC代码的接口程序的编制。 总的来说,这次课程设计收获还比较多,锻炼了能力,增进了自学. 六 参考资料 机械原理 主编:孙桓

    注意事项

    本文(广东工业大学数控课程设计报告书.docx)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开