数控原理课程设计_第1页
数控原理课程设计_第2页
数控原理课程设计_第3页
数控原理课程设计_第4页
数控原理课程设计_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1插补算法1.1 插补方法脉冲增量插补算法 脉冲增量查补(又称行程标量插补)算法是通过向各个运动轴分配脉冲,控制机床坐标轴相互协调运动,从而加工出一定轮廓形状的算法。这类插补算法的特点是每次插补的结果仅产生一个单位的行程增量,以单位脉冲的形式输出给步进电机。因此,这类插补被称为脉冲增量插补。该插补运算比较简单,仅仅通过几次的加法和移位操作就可以完成插补运算。处理速度比较快。该插补一般常见的具体算法有:数字脉冲乘法器法、逐点比较法、最小偏差法、数字积分法、比较积分法、目标点比较法、但不追踪法等。本次的课程设计我主要分析这其中的一种算法逐点比较法,用以概括和了解算法的基本运算和对其的了解。而在进一

2、步的重点分析中,本次的算法分析我则是分析其第一象限的直线插补运算。 数据采样插补算法 数据采样插补(又称时间标量插补)算法是根据数控加工程序编写的进给速度,先将零件轮廓曲线按插补周期分割为一系列首尾相连的微小直线段,然后输入这些微小直线段对应的位置增量数据,用以控制伺服系统实现坐标轴进给。与上一插补算法相比,其结果不再是单个脉冲,而是位置增量的数字量。这类插补算法适用于以直流或交流伺服电动机作为执行软件的闭环或半闭环数控系统。1.2 插补算法逐点比较法 1.2.1 原理 逐点比较法的基本原理是,在刀具按要求轨迹运动加工零件轮廓的过程中,不断比较刀具与被加工零件之间的相对位置,并根据比较结果决定

3、下一步的进给方向,是刀具沿着坐标轴向减小偏差的方向进给,且仅有一个方向的进给。逐点比较法既可实现直线插补,也可实现圆弧插补。逐点比较法插补过程中每进给一步都要经过以下四个节拍:偏差判别;坐标进给;偏差计算;终点判别。其过程如图1所示。(1) 偏差判别 根据偏差值确定刀具位置是在直线的上方(或线上),还是在直线的下方。(2) 坐标进给 根据判别的结果,决定控制哪个坐标(x或y) 图1移动一步。(3) 偏差运算 计算出刀具移动后的新偏差,提供给下一步作判别依据。根据上二式来计算新加工点的偏差,使运算大大简化。但是每一新加工点的偏差是由前一点偏差fi推算出来的,并且一直递推下去,这样就要知道开始加工

4、时那一点的偏差是多少。当开始加工时,我们是以人工方式将刀具移到加工起点,即所谓“对刀”,这一点当然没有偏差,所以开始加工点的 f0=0。(4) 终点判别 在计算偏差的同时,还要进行一次终点比较,以确定是否到达了终点。若已经到达,就不再进行运算,并发出停机或转换新程序段的信号。 1.2.2 第一象限逐点比较法直线插补 图 2 设在第一象限上有一直线,起点在原点o( 0, 0 )上,终点为e(xe,ye),另有一动点n( xi ,yi ),如图2所示,且各个的坐标点都是整数单位。 当动点n刚好在直线上时,则: 即 xyxy 当动点n在直线下方on时,则:直线的大于直线的斜率,从而有: 即 xyxy

5、当动点n在直线的上方n处时,直线的大于直线的斜率,从而有: 即 xyxy由上述关系可以看出,表达式(xeyixiye)的符号就能反映出动点n相对直线的偏离情况。为此,取偏差函数f为: f=xeyixiye根据上述过程,可以概括出如下关系:当f=0时,动点n(xi,yi)正好处在直线上;当f0时,动点n(xi,yi)落在直线上方区域;当f0时,动点n(xi,yi)落在直线下方区域。 2 程序开始 2.1 程序流程初始化xe,ye,f0=0,=|xe|+|ye| f0? yn +x轴进给+y轴进给 f=f+xexf=fye -1=0?ny结束 图 42.2 程序代码(基于c语言的编程)#inclu

6、de conio.h #include graphics.h #include process.h #define ni_circle 0 #define shun_circle 1 void init_graph(); void draw_base_circle(); void draw_cabu_circle(); void close_graph(); void acrroods(); static float x0,y0; void line_cabu(), draw_line(),draw_line_cabu(); void line_cabu() int i; init_graph

7、(); sleep(1); for(i=0;i2;i+) line(0,120,300,120); outtextxy(310,120,z); line(100,10,100,300); outtextxy(110,300,x); lineto(xm,ym); gotoxy(55,8); printf(x%3.0f y0 z%3.0f,xm-100,ym-120); delay(1100); 3 分析总结通过此次课程设计,使我更加扎实的掌握了有关数控插补和c语言编程方面的知识,在c语言编程过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。回顾起此课程设计,至今我仍感慨颇多,从理论到实践,从中学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,但可喜的是最终都得到

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论