没有合适的资源?快使用搜索试试~ 我知道了~
用Visual Basic语言来实现非圆曲线的逼近.doc.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 185 浏览量
2022-07-03
04:09:29
上传
评论 1
收藏 540KB DOC 举报
温馨提示
试读
29页
用Visual Basic语言来实现非圆曲线的逼近
资源推荐
资源详情
资源评论
目 录
一.概述………………………………………………………………………3
1.1.数控机床课程设计的目的……………………………………………3
1.2.课程设计的任务与要求………………………………………………3
1.3.课程设计的步骤………………………………………………………3
1.4 非圆弧曲线逼近应用及国内外发展现状……………………………4
二 非圆弧逼近设计思路……………………………………………………4
2.1.概述……………………………………………………………………4
2.2.用直线段逼近非圆曲线…………………………………………… 4
2.2.1 等间距法直线段逼近的节点计算…………………………………5
2.2.2 等弦长法直线段逼近的节点计算…………………………………6
2.2.3 等误差法直线段逼近的节点计算…………………………………8
2.3.流程图…………………………………………………………………9
三.软件的介绍………………………………………………………………10
3.1 开发工具与语言………………………………………………………10
3.2 人机界面的确定………………………………………………………11
3.3 软件设计原则及进度规划……………………………………………11
3.4.主界面的介绍…………………………………………………………11
3.5.输出结果………………………………………………………………12
四.课程总结…………………………………………………………………14
五.参考文献…………………………………………………………………15
六.主要程序附录……………………………………………………………16
摘要
非圆曲线是数控加工中经常遇到的问题,在编制加工程序过程中,经常要转换成用直
线或圆弧逼近的曲线后方能加工。转换的一般类型有直线逼近和圆弧逼近两种。直线逼近
又有等间距法、等弦长法、等误差法等。本文介绍了一个以Visual Basic6.0为开发工具,
进行数控编程中非圆曲线的节点坐标运算的软件。以抛物线、椭圆、双曲线为例讨论了等
间距法直线逼近的原理、程序流程以及将计算所得的节点坐标数据在Visual Basic6.0中
绘制成非圆曲线的方法。
关键字:非圆曲线 节点 逼近
1.课程设计的任务:
用计算机高级编程语言(如VB,VC++等)来实现非圆曲线的逼近,可任选(1)直线
逼近(如等间距法、等弦长法、等误差法等)、或(2)圆弧逼近。要求在满足允许误差
的前提下,使得逼近的直线段或圆弧段的数量最少(即最优解)。具体的要求如下:
(1)列出一般的直线或圆弧逼近的算法(流程图)。
(2)列出改进的直线或圆弧逼近的算法(流程图)——即优化算法。比较改进前与改进
后的两种算法结果。
(3)针对任意给定的某一由非圆曲线所构成的平面轮廓,根据指定的走刀方向、起刀点,
自动生成CNC代码的生成。
(4)在屏幕上显示该非圆曲线所构成的平面轮廓。
第一章 概述
1.1、数控机床课程设计的目的
数控机床课程设计是机电专业教学活动的一个重要的实践性环节,是对学生所学《数控
机床》课程和其它有关课程知识和技能的一次综合性练习,旨在使之巩固、充实、系统
化,并得到进一步扩展。课程设计是培养学生理论联系实际、解决生产实际问题的机会。
通过对数控铣床典型部件的结构设计和零件编程的具体问题的解决,使学生对数控机床
的结构原理、设计方法以及用编程方法处理实际问题的一般步骤和具体技巧得到训练,
提高运用所学专业知识分析问题和解决问题的能力。
1.2、课程设计的内容和要求
每个学生应该在规定的时间内,独立完成所选的题目,对于做机械结构设计的学生,
要求用计算机绘图方式绘制有关的总装图(A0 或 A1 图纸一张)和不少与三张的零件图。
设计说明书 5000 字以上,要求装备图充分表明整机或部件的工作原理及结构,装备关
系明确,画面整洁,布局合理。线条粗细均匀,圆弧连接光滑,尺寸标注规范,文字注
释必须使用工整字体书写,符合国家标准。
选择仿真的学生,用 VB 编程语言,编写计算机软件在 WINDOWS 实现数控装置的计
算机仿真。要求清楚地分析问题,提出算法,确定人机界面,列出流程图,最后用程序
验证,并且提交程序说明书。
对选择典型零件编程题目的学生,要求用编写计算机软件的方法解决数控过程的一个问
1
题。可以任用本人熟悉的一种变成语言,要求清楚的分析问题,提出算法,列出流程图,
最后用程序验证,并且提交程序说明书
1.3、课程设计的步骤
课程设计的步骤大致包括:调查研究,收集资料,查阅文献;论证及确定设计方案,
进行机械结构设计和软件设计,编写程序和编制设计说明书,最后参加课程设计的答辩。
1.4 非圆弧曲线逼近应用及国内外发展现状
目前在国内外金属加工业中广泛使用的数控机床中,半闭环位置伺服系统是
一种比较普遍采用的技术方案。半闭环位置伺服系统将机床本身的机械传动链排
除在位置闭环之外,伺服系统的电气控制部分和执行机械相对独立,由于闭环中
非线性因素少,因此系统容易整定,可以方便地实现间隙补偿等,以提高位置控
制精度。
对于加工形状简单的零件,计算比较简单,程序不多,采用手工编程较容易
完成,因此在点定位加工及由直线与圆弧组成的轮廓加工中,手工编程仍广泛应
用。但对于形状复杂的零件,特别是具有非圆曲线、列表曲线及曲面的零件,用
一般的手工编程就有一定的困难,且出错机率大,有的甚至无法编出程序。而采
用“R”参数编程则可很好地解决这一问题。
非圆曲线轮廓零件的种类很多,但不管是哪一种类型的非圆曲线零件,编程
时所做的数学处理是相同的。一是选择插补方式,即首先应决定是采用直线段逼
近非圆曲线,还是采用圆弧段逼近非圆曲线;二是插补节点坐标计算。采用直线
段逼近零件轮廓曲线,一般数学处理较简单,但计算的坐标数据较多。
数控机床是按照零件加工程序对工件进行加工的。一个好的加工程序不仅能
保证加工出符合要求的工件,还应能充分发挥数控机床的功能,使其安全、可靠、
高效地运行。 零件加工程序是数控系统的一个重要组成部分,据国外统计,数控
机床停机的原因中,有 20%~30%是由于编不出加工程序。为了提高数控机床的
利用率,编程员应努力提高编程能力,迅速编制出优良的零件加工程序。
因此,非圆曲线的逼近对于数控机床的编程极其重要。非圆曲线的逼近在国
内外不断得发展。
机械制造业中,具有抛物线形外形的零件是二维轮廓工件,比较常见也是
比较难以加工的。目前抛物线形零件的加工方法主要有:在普通机床上进行近似
加工;根据抛物线的形成定理,设计专用加工装置进行加工。由于一般数控机床
的编程代码只具有直线插补和圆弧插补功能,因此对于抛物线这类非圆形曲线的
数控加工大多采用小段直线或小段圆弧去逼近轮廓曲线,完成数控编程。由于必
须按照允许的精度要求计算各小段直线或圆弧的起点和终点,当工件轮廓较长而
精度要求很高时,逼近段直线或圆弧必须分得很细,因而计算量大,给手工编程
带来很多的不便,同时这种按逼近曲线或近似画法进行编程的方法从原理上讲就
已经带来了误差,因而无法加工出高精度的抛物线形零件。
二章 非圆弧逼近设计思路
2.1 概述
数控加工中把除直线与圆之外可以用数学方程式表达的片面廓形曲线,称为非圆曲线,
其数学表达式的形式可以是以 y=f(x)的直角坐标的形式给出,也可以是以 ρ=
ρ(θ)的极坐标形式给出。通过坐标变换,后面两种形式的数学表达式,可以转换为直
角坐标表达式。这类零件的加工,以平面凸轮类零件为主,其他如样板曲线,圆柱凸轮
2
以及数控车床上加工的各种以非圆曲线为母线的回转体零件等等。其数值计算过程,一
般可按一下步骤进行。
(1) 选择插补方式 即应首先决定是采用直线段逼近非圆曲线,还是采用圆弧段或抛
物线等二次曲线逼近非圆曲线。
采用直线段逼近非圆曲线,一般数学处理较简单,但计算的数据较多,且各直线段间连
接处存在尖角,由于尖角处,刀具不能连续地对零件进行切削,零件表面会出现硬点或
切痕,使加工表面质量变差。采用圆弧段逼近地方式,可以大大减小程序段的数目,其
数值计算又分为两种情况,一种为相邻两圆弧段间彼此相交;另外一种则采用彼此相切
的圆弧段来逼近非圆曲线,后一种方法由于相邻圆弧彼此相切,一阶导数连续,工件表
面整体光滑,从而有利于加工表面质量的提高。采用圆弧段逼近,其数学处理过程比直
线段逼近要复杂一些。
(2) 确定编程允许误差 即应使 δ。
(3) 选择数学模型,确定计算方法 非圆 曲线节点计算过程一般比较复杂。目
前生产中采用的算法也较多。在决定采用什么算法时,主要应考虑的因素有两条,
其一时尽可能按等误差的条件,确定节点坐标位置,以便最大程度地减少程序段
的数目;其二是尽可能寻找一种简单的计算方法,以便计算机处理流程图。
(4) 根据算法,画出计算机处理流程图。
(5) 用高级语言编写程序,上机调试程序,并获得节点坐标数据。
2.2.用直线段逼近非圆曲线
用直线段逼近非圆曲线,目前常用的计算方法有等间距法,等弦长法和等
误差法即钟。
2.2.1 等间距法直线段逼近的节点计算
1) 基本原理
等间距法就是将某一坐标 轴划分
成相等的间距。如图 1 所示,沿
X 轴方向取△X 为等间距长,根据已知曲线的方程,可由 Xi 求得 Yi,=+ △X,
=。如此求得一系列点就是节点。由于要求曲线与相邻两节点连线间的法向距离
小于允许的程序编制误差,△X 值不能任意设定。一般先取△X=0.1 进行试算。
实际处理时,并非任意相邻两点间的误差都要验算,对于曲线曲率半径变化较少
处,只需验算两节点间距离最长处的误差,而对曲线曲率半径变化较大处,应验
算曲率半径较少处的误差,通常由轮廓图形直接观察确定校验的位置
2) 误差校验的方法
下面以抛物线为例说明计算误差的方法:
其曲线方程为:,根据给定的
△x和x、y的初始值x0、y0,求出相应线段的终点x1 和y1,这样就可以求出直
线mn的方程:
a1x+b1y+c=0
a1=y1-y0 b1=x0-x1 c1=y1x0-y0x1
它的斜率k为:
而过曲线上与逼近直线mn的误差
最大的点的切线m'n',其斜率即为曲线方程的导数,所以有: y'=2ax+b=k
3
解方程得:x2=(k-b)/(2a)
这样就可以求得切点
N(x2,y2),从而求得直线逼近
曲线的误差:
然后让其与允许的误差δ作比较,如果△δ≤δ,则输出直线,如果△δ>δ,则把△x减
半再从新计算,这样就可以在误差允许的范围内用直线逼近非圆曲线了.
双 曲 线 和 椭 圆 的 算 法 跟 这 个 基 本 一 样 , 只 是 椭 圆 的 方 程 是 参 数 式 方 程
x=acos(i),y=bsin(i),所以等间距的时候,不是 x 等间距,而是 i 等间距,这样算起
来就方便多了,还有双曲线和椭圆都要分象限计算,双曲线是以 y 轴分开两侧的,x
不能等于零,在一个椭圆上,可找到与其一条直线平行的两条切线,所以要分开象
限来计算。
2.2.2 等弦长法直线段逼近的节点计算
1)基本原理
等程序段法就是使每个程序段的段
长度相等。如图 2 所示,由 于零件 轮廓曲线的曲率各处不等,因此首先
求出该曲线的最少曲率半径,由及确定允许的步长,然后从曲线起点 a 开始,按等
4
图(1)等间距逼近
剩余28页未读,继续阅读
资源评论
omyligaga
- 粉丝: 55
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功