版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学业论文题目:双坐标十字滑台数控编程插补控制的实现作 者 张 晖 届 别 2015届 院 别 机械工程学院 专 业 机械电子工程 指导教师 余晓峰 职 称 副教授 完成时间 2015年5月12日 湖南理工学院毕业设计(论文)I摘要本文主要研究双坐标十字滑台数控机床的直线插补与圆弧插补算法及外围电路的设计,完整的构建一个数控系统(包括软件与硬件的设计) 。该系统以 51 单片机位核心,硬件部分:由单片机最小系统、按键模块、LCD1602 显示模块、步进电机驱动模块、位置检测模块、报警模块所构成。该系统具有功耗低、可靠性高、体积小、人机界面友好等特点。软件部分:根据各自数
2、据手册采用 C51 对各个模块编程,其中直线插补算法、圆弧插补算法采用绝对坐标与相对坐标坐标系结合分象限讨论的方法对逐点比较法分析,构造偏差函数、分析偏差、减小偏差进给、终点判断、偏差计算的循环来进行插补运算,绘制程序流程图然后用 C51 编程将计算出来的结果输出到步进电机驱动模块控制电机转动。用户界面:用户通过键盘输入数控指令,单片机自动判断输入参数是否正确如错误则重输入正确则执行相应指令驱动电机插补。关键词:十字滑台; 直线插补; 圆弧插补; 步进电机; 数控编程湖南理工学院毕业设计(论文)IIABSTRACTThis paper studies the design of two-coo
3、rdinate cross-slide CNC machine tools linear interpolation and circular interpolation algorithm and peripheral circuits. We build complete a numerical control system (including software and hardware design). The system of the core is 51-bit microcontroller. The hardware parts consist of the smallest
4、 single-chip system, the key module, the LCD1602 display module, the stepper motor drive module, the detecting position module, and alarm module. The system has low power consumption, high reliability, small size, friendly interface and other features. In terms of the software components, according
5、to the respective data sheets for each module we use the C51 to code. the linear interpolation algorithm and circular interpolation algorithm use the absolute coordinate and relative coordinate to combine. We distinguish different quadrant to discuss point by point comparison method of analysis. The
6、 way of structural deviation function, analytical bias, reducing the bias feed, determining the end point and the deviation calculation cycle is to interpolation operation. We draw program of flow chat and then use the C51to programming .In the last, the calculated results output to the stepper moto
7、r drive module for controlling the motor to rotate. In respect of the user interface, the user by keyboard input CNC command and the microcontroller automatically determine whether the input parameters are correct. If parameters are wrong, the microcontroller will re-enter it .Otherwise correspondin
8、g instruction will be executed to drive motor interpolation.KeywordsKeywords: Cross slide; linear interpolation; Interpolation; Stepping motor; NC programming湖南理工学院毕业设计(论文)III目录摘要 .IABSTRACTABSTRACT .II第一章 绪论 .1第二章 总体设计方案的选择及确定 .2第三章 硬件控制电路设计 .33.1 单片机的选择.33.2 最小系统设计.43.3 键盘/显示器接口设计.53.4 地址分配.73.5 步
9、进电机驱动部分设计.73.6 告警电路设计.9第四章 软件设计 .104.1 快速定位.114.1.1 差别判断.134.1.2 进给减小误差.144.1.3 计算偏差.154.1.4 终点判断.164.2 直线插补.174.2.1 差别判断.184.2.2 进给减小误差.194.2.3 计算偏差.194.2.4 延时控制速度.204.2.5 终点判断.204.3 圆弧插补.214.3.1 差别判断.234.3.2 进给减小误差.234.3.3 计算偏差.244.3.4 终点判断.24第五章 注释、参考文献 .26湖南理工学院毕业设计(论文)IV第六章 致谢 .27第七章 附录 .28湖南理工
10、学院毕业设计(论文)1第一章 绪论随着电子技术的发展微处理器的出现、机电一体化概念的提出及数控技术发展,作为一个机械电子工程专业的学生,实现机电一体化是每个学生必备技能。双坐标十字滑台数控编程插补控制的实现通过对单片的选型、外围电路设计、软件的编写、proteus 下的仿真软件联调功能测试来实现设计。该设计是对我们大学四年以来所学的知识的一个综合。通过自顶向下的设计方法,构建整体设计框图,分模块软硬件各自设计,然后在proteus 下各个模块软硬件联调修改完成设计任务。对单片机的选型,选择合适的单片机、显示器、键盘、步进电机、驱动电路等进行外围电路设计,构成一个完整的硬件系统。通过对插补算法的
11、分析,采用逐点比较发对各种类型的直线圆弧进行分析计算偏差、判断偏差、减小偏差进给、终点判断,不断循环执行直到到达终点为止。在分析插补过程中采用传统的判别方法构造的偏差函数计算复杂不便于快速运算,采用迭代与递推公式对偏差函数进行离散处理大大减少了乘除法的运算从而插补运算的时间。根据各部分硬件进行软件设计,进行人机界面按键显示器驱动电路进行设计,通过按键让用户输入数控指令并通过 LCD1602 实时显示当前刀具的位置。采取脉冲增量插补算法对直线插补、圆弧插补分别进行算法分析来进行软件设计,并将计算结果输出再通过驱动电路驱动电机转动达到设计的目的。在 keil 下进行程序编辑调试,在 proteus
12、 下搭建硬件电路,并将 keil 编译得到的 hex 文件加载到 proteus 中进行软件硬件联调完成设计。用户通过按键跟根据 LCD1602 的显示提示输入插补指令与插补参数,单片开始计算然后输出信号驱动电机电机转动并实时显示刀具位置以及指令。直到差不完成插补。完成插补后用户可以继续输入插补函数指令跟参数继续插补。湖南理工学院毕业设计(论文)2第二章 总体设计方案的选择及确定单片机告警显示X 驱动Y 驱动X 步进电机Y 步进电机限位开关键盘图 2.1 系统基本结构总体设计阶段的任务是权衡利弊仔细划分硬件和软件功能。单片机实用系统的硬件配置与软件设计是紧密相关的,硬件和软件功能上具有一定的互
13、换性。如步进电动机驱动所必须的环形分配器,既可以由数字逻辑硬件完成功能,可以增加工作速度,降低软件工作量,但是提高了硬件成本。如果多使用软件完成功能,不但可以降低硬件开发,还可以简化硬件结构,但增加了软件的复杂性。因此总体设计阶段,硬件和软件的功能划分十分必要。本系统以 51 单片机为核心,主要任务是控制刀具进行直线插补圆弧插补,单片机对各个模块进行控制,通过按键输入指令信息,通过 LCD1602 显示指令信息及刀具的位置指信息并实时刷新。通过限位开关实时检测是否碰刀并给出报警。电机驱动部分采用专用的步进电机驱动芯片 L297、L298 减少单片机的工作量,不用产生时序脉冲,仅需给定信号(包括
14、正反转与脉冲)即可完成对电机的控制,对 L298 输出电流不够驱动电机,所以在后面再接了一个达林顿管驱动电路来驱动不急点击转动。由于逐点比较法算法简单最大误差为一个脉冲当量,软件设计采用逐点比较法对直线插补圆弧插补进行分析,通过起点为原点终点在第一象限的直线插补/圆弧插补分析类推到第二三四象限,通过坐标平移把起点坐标为原点到任一点进行分析,完成软湖南理工学院毕业设计(论文)3件的设计。第三章 硬件控制电路设计双向十字滑台的运动由向和向步进电动机来控制。电机驱动滑台的各个运动部件。从而准确的控制它们的速度和位置。一般情况下,数控伺服系统分为开环和闭环两大类。其中闭环伺服系统还可以根据检测位置的不
15、同进一步细分为半闭环伺服系统和闭环伺服系统两类。由于开环伺服系统具有结构简单,调试维修方便和成本低的特点。因此虽然这种伺服的误差没有补偿和校正,精度较低。但广泛应用于中小型经济型数控机床。鉴于开环伺服系统的特点,本次设计的总体设计方案拟采用开环伺服系统。并为运动方向加上极限位置检测及原点定位检测以实现基本运动位置控制。3.1 单片机的选择图 3.1 AT89S52 单片机AT89S52 是一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash存储器。使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和湖南理工学院毕业设计(论文)4引脚完全
16、兼容。片上 Flash 允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52 具有以下标准功能: 8k 字节Flash,256 字节 RAM, 32 位 I/O 口线,看门狗定时器,2 个数据指针,三个 16 位 定时器/计数器,一个 6 向量 2 级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻 辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串
17、口、中断继续工 作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。本设计选用 AT89S51 单片机。51 单片机的哈弗结构。数据存储器与程序存储器分开,大大减少了成本,特有的带有位处理功能的八位微处理器。内部有 8KBROM 存储器,内部 ROM 足够不用外扩程序存储器,而且 RAM 有 256B(特殊功能寄存器除外)可用不用外扩数据存储器,4 组带所存的端口共 32 个 I/O 口,三个定时器中断,可用于定时显示刷新等。两个外部中断可用于限位开关报警,还有串行口中断,拥有丰富的指令系统,而且价格便宜,十分经济。3.2 最小系统设计图 3
18、.2 最小系统单片机最小系统是单片机正常工作的基础,单片机的最小系统包括晶振电路与复位电路,晶振电路是整个系统的心脏,晶振产生的时钟频率供单片机正常工作,晶振电路外接一个 12MHz 的晶振,复位电路则是对单片机进行复位,在不改变内存值的情况下进行程序指针的复位,复位电路采取两上电复位与手动复位。上电复位:当给单湖南理工学院毕业设计(论文)5片上电时自动复位,完成单片机初始化工作,是单片机正常运行的必备准备工作,手都复位:可以在任何时候按下对单片机复位,单片机内存值不会改变3.3 键盘/显示器接口设计图 3.3 4*4 矩阵键盘在键盘中按键数量较多时,为了减少 I/O 口的占用,通常将按键排列
19、成矩阵形式。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如 P1 口)就可以构成 4*4=16 个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成 20 键的键盘,而直接用端口线则只能多出一键(9 键) 。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。按键是常用的输入设备之一,是实现人机界面的必不可少的一部分,用户通过按键输入指令达到控制的目的,本次设计采用 4*4 按键组成的开关矩阵接 P1 端口。它是最简单单片机输入设备。矩阵键盘相对于单个按键能节省I/O 口。通过行列扫描法(扫
20、描坐标行号与列号来判断哪个按键按下)对他的按键键值扫描,然后组成输入模块供用户输入命令。同时对输入的参数进行判断,计算是否撞刀。键盘与显示器构成人机界面。湖南理工学院毕业设计(论文)6图 3.4 LCD1602 显示电路LCD1602 显示质量高:由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。LCD1602 数字式接口:液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。LCD1602 体积小、重量轻:液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,
21、在重量上比相同显示面积的传统显示器要轻得多。LCD1602 功耗低:相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动 IC上,因而耗电量比其它显示器要少得多。显示器是常用的输出设备之一,是实现人机界面的必不可少的一部分,本次设计采用 LCD1602 作为显示器,P0 作为数据端口用来传送数据,P2.0、P2.1、P2.2 分别接LCD 的 RS、RW、E 作为信号控制接口,LCD1602 一个屏幕能两行 16 个字符公 32 个,支持字母与数字显示自带字库,占用 I/O 口少,能显示的数据也多,显示稳定不需要像湖南理工学院毕业设计(论文)7数码管一样实时刷新才能显示,占用资源少,功耗低,
22、且价格低。实时显示当前位置供用户查看以及指令信息参考用户输入指令中的各个参数,与输入指令与键盘构成人机界面。3.4 地址分配图 3.5 程序存储器选择电路51 单片机采用的结构是哈弗结构,数据存储器与程序存储器分开,数据存储器是通过指令的区别来选择的所以不需要在硬件结构中做任何处理,由于程序存储器选择内部存储器,所以引脚必须接高电平。来选择内部的数据存储器存储程序EA3.5 步进电机驱动部分设计湖南理工学院毕业设计(论文)8图 3.6 X 轴电机驱动电路L297 是步进电机专用控制器,它能产生 4 相控制信号, 可用于计算机控制的两相双极和四相单相步进电机,能够用单四拍、双四拍、四相八拍方式
23、控制步进电机。芯片内的 PWM 斩波器电路可开关模式下调节步进电机绕组中的电机绕组中 的电流。该集成电路采用了 SGS 公司的模拟/数字兼容的 I2L 技术,使用 5V 的电源电压, 全部信号的连接都与 TFL/CMOS 或集电极开路的晶体管兼容。L298 是 ST 公司生产的一种高电压、大电流电机驱动芯片。该芯片的主要特点是:工作电压高,最高工作电压可达 46V;输出电流大,瞬间峰值电流可达 3A,持续工作电流为 2A;内含两个 H 桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器、线圈等感性负载;采用标准 TTL 逻辑电平信号控制;具有两个使能控制端,在不受输入信号
24、影响的情况下允许或禁止器件工作;有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。达林顿管就是两个三极管接在一起,极性只认前面的三极管。具体接法如下,以两个相同极性的三极管为例,前面三极管集电极跟后面三极管集电极相接,前面三极管发射极跟后面三极管基极相接,前面三极管功率一般比后面三极管小,前面三极管基极为达林顿管基极,后面三极管发射极为达林顿管发射极,用法跟三极管一样,放大倍数是两个三极管放大倍数的乘积。本驱动电路采用步进电机专用驱动芯片 L297、L298 结合达林顿管来驱动步进电机以达到所需要的功率要求。单片机给 L297 转动信息包括正反转
25、与脉冲信息,L297 就产生相应的相序脉冲输出驱动步进电机,L297 根据 17、18 引脚的输入负责产生正反转的相序,L298 对 L297 的产生的相序进行信号放大来驱动达林顿管来驱动大功率的步进电机。图 3.7 Y 轴电机驱动电路湖南理工学院毕业设计(论文)9L297 是步进电机专用控制器,它能产生 4 相控制信号, 可用于计算机控制的两相双极和四相单相步进电机,能够用单四拍、双四拍、四相八拍方式 控制步进电机。芯片内的 PWM 斩波器电路可开关模式下调节步进电机绕组中的电机绕组中 的电流。该集成电路采用了 SGS 公司的模拟/数字兼容的 I2L 技术,使用 5V 的电源电压, 全部信号
26、的连接都与 TFL/CMOS 或集电极开路的晶体管兼容。L298 是 ST 公司生产的一种高电压、大电流电机驱动芯片。该芯片的主要特点是:工作电压高,最高工作电压可达 46V;输出电流大,瞬间峰值电流可达 3A,持续工作电流为 2A;内含两个 H 桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器、线圈等感性负载;采用标准 TTL 逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作;有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。达林顿管就是两个三极管接在一起,极性只认前面的三极管。具体接法
27、如下,以两个相同极性的三极管为例,前面三极管集电极跟后面三极管集电极相接,前面三极管发射极跟后面三极管基极相接,前面三极管功率一般比后面三极管小,前面三极管基极为达林顿管基极,后面三极管发射极为达林顿管发射极,用法跟三极管一样,放大倍数是两个三极管放大倍数的乘积。3.6 告警电路设计图 3.8 告警电路湖南理工学院毕业设计(论文)10本电路采用硬件直接接触到限位开关的信号直接通过喇叭发出声音报警,减少了单片机的负担同时也加快了报警响应的速度。当限位开关检测到刀具碰刀边界时,该信号直接驱动喇叭工作,达到报警的目的。第四章 软件设计开始LCD1602、定时初始化按键扫描读取命令执行命令结束图 4.
28、1 主程序流程图首先对 LCD1602 进行初始化,然后对定时器初始化,接下来在主程序中不断扫描按键,让用户输入指令,接下按照用户指令进行插补,输出驱动信号,计算刀具位置输出到 LCD1602 显示。插补结束后接着扫描按键等待用户输入程序一直循环下去。湖南理工学院毕业设计(论文)11刷新时间到开始结束刷新显示是否4.2 中断程序流程图当设定的的刷新时间到了就输出当前的刀具坐标值到 LCD1602 从而实现刷新显示的目的,选取适当的刷新频率进行刷新。4.1 快速定位4.3 快速定位指令格式快速定位指令组成:快速定位指令由三部分组成,指令码、指令码 X 坐标、指令码 Y 坐标。湖南理工学院毕业设计
29、(论文)12指令码(C):表示该条指令代表快速定位。指令码 X 坐标(320):代表快速定位到的终点 X 坐标为 320。指令码 Y 坐标(120):代表快速定位到的终点 Y 坐标为 120.快速定位原理:以 XY 轴的最小进给为单位分别进给,每次插补只给 X 或一个进给脉冲,每次都是往减小偏差的方向进给,如果在直线上则 X 方向进给。其示意图如下。O(0,0)A(a,b)图 4. 插补示意图插补原理:首先进行偏差判别,判断是上偏差还是下偏差;然后往偏差减小的方向进给,如偏差为 0 则 X 方向进给;构造偏差函数计算偏差,简化偏差函数;进行终点判断;如此循环。湖南理工学院毕业设计(论文)13Y
30、N开始偏差判别进给减小误差计算偏差是否到达终点结束图 4.5 快速定位程序流程图4.1.1 差别判断O(0,0)A(Xa,Ya)E(Xi,Yi)E(Xi,Yi)E(Xi,Yi)图 4.6 差别判断示意图如上图所示当起点 O(0,0)为原点终点 A(Xa,Ya)在第一象限时如果E(Xi,Yi)在直线上方则aaiiXYXY湖南理工学院毕业设计(论文)14同理当直线在第二象限时若 E(Xi,Yi)在直线上方则aaiiXYXY当直线在第三象限时若 E(Xi,Yi)在直线上方则aaiiXYXY当直线在第四象限时若 E(Xi,Yi)在直线上方则aaiiXYXY4.1.2 进给减小误差很显然当 A(Xa,Y
31、a)在第一象限时则 E(Xi,Yi)在直线上方,该 X+轴进给。 1aaiiXYXY则 E(Xi,Yi)在直线下方,该 Y+轴进给。 2aaiiXYXY则 E(Xi,Yi)在直线上,随便哪个轴进给。 3aaiiXYXY很显然当 A(Xa,Ya)在第二象限时则 E(Xi,Yi)在直线下方,该 Y+轴进给。 1aaiiXYXY则 E(Xi,Yi)在直线上方,该 X-轴进给。 2aaiiXYXY则 E(Xi,Yi)在直线上,随便哪个轴进给。 3aaiiXYXY很显然当 A(Xa,Ya)在第三象限时则 E(Xi,Yi)在直线下方,该 X-轴进给。 1aaiiXYXY则 E(Xi,Yi)在直线上方, 2
32、aaiiXYXY该 Y-轴进给。湖南理工学院毕业设计(论文)15则 E(Xi,Yi)在直线上,随便哪个轴进给。 3aaiiXYXY很显然当 A(Xa,Ya)在第四象限时则 E(Xi,Yi)在直线上方,该 Y-轴进给。 1aaiiXYXY则 E(Xi,Yi)在直线下方,该 X+轴进给。 2aaiiXYXY则 E(Xi,Yi)在直线上,随便哪个轴进给。 3aaiiXYXY4.1.3 计算偏差由上式构造偏差函数Fi=aaiiXY-XY对于 A(Xa,Ya)在第一象限时对偏差函数乘以一个正数 XiYi得Fi=XaYi-XiYa该式有一个缺点:需要做乘法运算。对于硬件插补器或者使用汇编语言的软件插补器,
33、这将产生一定的困难,对于 C 语言也增加了单片机的计算量。为简化偏差值 Fi的计算,通常采用迭代公式,即根据当前点的偏差值推算出下一点的偏差值。由 Fi=XaYi-XiYa得Fi+1=Fi+Xa 上一步 Y 方向进给aiiaYX-) 1Y(XFi+1=Fi-Xa 上一步 X 方向进给aiiaY) 1X(-YXF0=0对于起点不是坐标原点的我们可以重新建立一个坐标系,把当前点作为坐标原点这样我们就可以通过上面的四种分析解决所有的直线插补了。终点坐标与当前坐标的差值就当前就是他的新坐标位置。湖南理工学院毕业设计(论文)164.1.4 终点判断判断 X 轴 Y 轴的步数是否都达到定刀具是否已经抵达直
34、线终点。如果到了终点,则停止插补计算;否则继续循环处理插补计算。常用的终点判别方法有以下三种。总步长法在插补处理开始之前,先设置一个总步长计数器,其初值为:=|Xa|+|Ya|其中|Xa|:在 X 轴方向上刀具应该走的总步数;|Ya|:在 Y 轴方向上刀具应该走的总步数;:整个插补过程中刀具应该走的总步数。在插补过程中,每进行一次插补计算,无论哪根坐标轴进给一步,计数器都做一次减 1 操作。当计数器内容减到零时,表示刀具已经走了规定的步数,应该已经抵达直线轮廓的终点,系统停止插补计算。投影法在插补处理开始之前,先确定直线轮廓终点坐标绝对值中较大的那根轴,并求出该轴运动的总步数,然后存放在总步长
35、计数器中。=max(|Xa|,|Ya|)在插补过程中,每进行一次插补计算,如果终点坐标绝对值较大的那根坐标轴进给一步,则计数器做减 1 操作。当计数器内容减到零时,表示刀具在终点坐标绝对值较大的那根坐标轴方向上已经走了规定的步数,应该已经抵达直线轮廓的终点,系统停止插补计算。终点坐标法在插补处理开始之前,先设置两个步长计数器1 和2,分别用来存放刀具在两个坐标轴方向上应该走的总步数:1=|Xa|,2=|Ya|在插补过程中,每进行一次插补计算,如果 X 方向进给一步,则计数器1 做减 1操作;如果 Y 方向进给一步,则计数器2 做减 1 操作。当两个步长计数器都为零时,表示刀具已经抵达直线轮廓的
36、终点,系统停止插补计算。4.2 直线插补湖南理工学院毕业设计(论文)174.7直线插补指令格式直线插补指令组成:指令码、终点 X 坐标、终点 Y 坐标、插补速度。指令码(A):表示这条指令是直线插补。终点 X 坐标(320):插补终点 X 坐标为 320。终点 Y 坐标(120):插补终点 Y 坐标为 120。插补速度(320):表示进给速度为 320。O(0,0)A(a,b)图 4.8 插补示意图湖南理工学院毕业设计(论文)18插补原理:以 XY 轴的最小进给为单位分别进给,每次插补只给 X 或一个进给脉冲,每次都是往减小偏差的方向进给,如果在直线上则 X 方向进给。控制延时时间来控制速度,
37、如此循环下去直到到达终点为止,其示意图如下。是否到达终点是否开始偏差判别进给减小误差计算偏差结束延时控制速度图 4.9 快速定位程序流程图插补过程:首先进行偏差判别,判断是上偏差还是下偏差;然后往偏差减小的方向进给,如偏差为 0 则 X 方向进给;构造偏差函数计算偏差,简化偏差函数;延时控制速度,进行终点判断;如此循环。4.2.1 差别判断湖南理工学院毕业设计(论文)19O(0,0)A(Xa,Ya)E(Xi,Yi)E(Xi,Yi)E(Xi,Yi)图 4.10 差别判断示意图如上图所示当起点 O(0,0)为原点终点 A(Xa,Ya)在第一象限时如果E(Xi,Yi)在直线上方则aaiiXYXY4.
38、2.2 进给减小误差很显然则 E(Xi,Yi)在直线上方,该 X 轴进给。 1aaiiXYXY则 E(Xi,Yi)在直线下方,该 Y 轴进给。 2aaiiXYXY则 E(Xi,Yi)在直线上,随便哪个轴进给。 3aaiiXYXY4.2.3 计算偏差由上式构造偏差函数Fi=aaiiXY-XY对偏差函数乘以一个正数 XiYi得Fi=XaYi-XiYa湖南理工学院毕业设计(论文)20该式有一个缺点:需要做乘法运算。对于硬件插补器或者使用汇编语言的软件插补器,这将产生一定的困难,对于 C 语言也增加了单片机的计算量。为简化偏差值 Fi的计算,通常采用迭代公式,即根据当前点的偏差值推算出下一点的偏差值。
39、由 Fi=XaYi-XiYa得Fi+1=Fi+Xa上一步 Y 方向进给aiiaYX-) 1Y(XFi+1=Fi-Xa上一步 X 方向进给aiiaY) 1X(-YXF0=0对于起点不是坐标原点的我们可以重新建立一个坐标系,把当前点作为坐标原点这样我们就可以通过上面的四种分析解决所有的直线插补了。终点坐标与当前坐标的差值就当前就是他的新坐标位置。4.2.4 延时控制速度由于程序快速定位的整个执行主要耗时在延时其他的计算时间可以忽略不计所以通过修改延时就能达到很好的调速效果。4.2.5 终点判断判断 X 轴 Y 轴的步数是否都达到定刀具是否已经抵达直线终点。如果到了终点,则停止插补计算;否则继续循环
40、处理插补计算。常用的终点判别方法有以下三种。总步长法在插补处理开始之前,先设置一个总步长计数器,其初值为:=|Xa|+|Ya|其中|Xa|:在 X 轴方向上刀具应该走的总步数;|Ya|:在 Y 轴方向上刀具应该走的总步数;:整个插补过程中刀具应该走的总步数。在插补过程中,每进行一次插补计算,无论哪根坐标轴进给一步,计数器都做一次减 1 操作。当计数器内容减到零时,表示刀具已经走了规定的步数,应该已经抵达直线轮廓的终点,系统停止插补计算。湖南理工学院毕业设计(论文)21投影法在插补处理开始之前,先确定直线轮廓终点坐标绝对值中较大的那根轴,并求出该轴运动的总步数,然后存放在总步长计数器中。=max
41、(|Xa|,|Ya|)在插补过程中,每进行一次插补计算,如果终点坐标绝对值较大的那根坐标轴进给一步,则计数器做减 1 操作。当计数器内容减到零时,表示刀具在终点坐标绝对值较大的那根坐标轴方向上已经走了规定的步数,应该已经抵达直线轮廓的终点,系统停止插补计算。终点坐标法在插补处理开始之前,先设置两个步长计数器1 和2,分别用来存放刀具在两个坐标轴方向上应该走的总步数:1=|Xa|,2=|Ya|在插补过程中,每进行一次插补计算,如果 X 方向进给一步,则计数器1 做减 1操作;如果 Y 方向进给一步,则计数器2 做减 1 操作。当两个步长计数器都为零时,表示刀具已经抵达直线轮廓的终点,系统停止插补
42、计算。4.3 圆弧插补图 4.11 数控指令 G02 格式圆弧插补指令组成:圆弧插补指令由四部分组成,指令码、指令码 X 坐标、指令码 Y 坐标、圆弧半径。湖南理工学院毕业设计(论文)22指令码(B):表示该条指令代表圆弧插补。指令码 X 坐标(060):代表圆弧插补圆心的 X 坐标为 60。指令码 Y 坐标(060):代表圆弧插补圆心的 Y 坐标为 60.指令码圆弧半径(050):代表插补圆弧的半径为 50。圆弧插补原理:以 XY 轴的最小进给为单位分别进给,每次插补只给 X 或一个进给脉冲,通过构造偏差函数,计算偏差,偏差判别。减小偏差进给。终点判断的循环,每次都是往减小偏差的方向进给,如
43、果在圆弧上则按变化大的方向进给。其示意图如下。A(Xb,Yb)O(0,0)A(Xa,Ya)图 4.12 圆弧插补示意图圆弧插补过程:圆弧插补包含一下四个过程差别判断、进给减小误差、计算偏差。终点判断湖南理工学院毕业设计(论文)23YN开始偏差判别进给减小误差计算偏差是否到达终点结束图 4.13 快速定位程序流程图4.3.1 差别判断O(0,0)A(Xb,Yb)E(Xi,Yi)A(Xa,Ya)E(Xi,Yi)E(Xi,Yi)图 4.14 差别判断示意图如上图所示当圆心为 O(0,0)半径为 R 在第一象限的一段圆弧逆时针插补当 X +Y R2点 E 在在圆外2i2i当 X +Y R2则 E(Xi
44、,Yi)在圆外,该 X 轴进给。 12i2i当 X +Y R2则 E(Xi,Yi)在圆内,该 Y 轴进给。 22i2i当 X +Y =R2则 E(Xi,Yi)在圆上,随便哪个轴进给。 32i2i4.3.3 计算偏差由上式构造偏差函数Fi=X +Y -R22i2i该式有一个缺点:需要做乘法运算。对于硬件插补器或者使用汇编语言的软件插补器,这将产生一定的困难,对于 C 语言也增加了单片机的计算量。为简化偏差值 Fi的计算,通常采用迭代公式,即根据当前点的偏差值推算出下一点的偏差值。由 Fi=Fi=X +Y -R2得2i2iFi+1=X +(Y +1)2-R2=Fi+2Y +1 上一步 Y 方向进给
45、2iiiFi+1=(X -1)2-Y -R2=Fi-2Xa+1 上一步 X 方向进给i2iF0=0对于圆心不是坐标原点的我们可以重新建立一个坐标系,把圆心作为坐标原点这样我们就可以通过上面的四种分析解决所有的直线插补了。起点坐标与圆心坐标的差值就当前就是他的新坐标位置,终点坐标与圆心坐标的差值就当前就是他的新坐标位置。4.3.4 终点判断判断 X 轴 Y 轴的步数是否都达到定刀具是否已经抵达直线终点。如果到了终点,则停止插补计算;否则继续循环处理插补计算。常用的终点判别方法有以下三种。总步长法在插补处理开始之前,先设置一个总步长计数器,其初值为:=|Xa,-Xb|+|Ya,-Yb|在插补过程中
46、,每进行一次插补计算,无论哪根坐标轴进给一步,计数器都做一次减 1 操作。当计数器内容减到零时,表示刀具已经走了规定的步数,应该已经抵达直线轮廓的终点,系统停止插补计算。湖南理工学院毕业设计(论文)25投影法在插补处理开始之前,先确定直线轮廓终点坐标绝对值中较大的那根轴,并求出该轴运动的总步数,然后存放在总步长计数器中。=max(|Xa,-Xb|,|Ya,-Yb|)在插补过程中,每进行一次插补计算,如果终点坐标绝对值较大的那根坐标轴进给一步,则计数器做减 1 操作。当计数器内容减到零时,表示刀具在终点坐标绝对值较大的那根坐标轴方向上已经走了规定的步数,应该已经抵达直线轮廓的终点,系统停止插补计
47、算。终点坐标法在插补处理开始之前,先设置两个步长计数器1 和2,分别用来存放刀具在两个坐标轴方向上应该走的总步数:1=|Xa,-Xb|,2=|Ya,-Yb|在插补过程中,每进行一次插补计算,如果 X 方向进给一步,则计数器1 做减 1操作;如果 Y 方向进给一步,则计数器2 做减 1 操作。当两个步长计数器都为零时,表示刀具已经抵达直线轮廓的终点,系统停止插补计算。湖南理工学院毕业设计(论文)26第五章 注释、参考文献1朱宇光.单片机应用新技术教程M电子工业出版社,2000-04.2赵全利等.单片机原理及婴童教程 机械工业出版社,2003.3朱晓春.数控技术.机械工业出版社,2006.44马忠
48、梅.单片机 C 语言应用程序设计M.北京航空航天大学出版社,1997.5何立民.单片机应用技术选编 北京航空航天,1999.6何循来.高性能八位单片机 AT89C51J.学术期刊,1997-01-06. 27 冯秀清等.机电传动控制.华中科技大学出版社,2013.28 杨路明.C 语言程序设计教程.北京邮电大学出版社,2011.69 赵全利.单片机原理及应用教程.机械工业出版社,2013.710 杨威等. 逐点比较直线插补算法的优化 J.武汉科技大学学报, 201211 方石银. CNC 系统逐点比较圆弧插补的新算法 J.武夷学院学报, 201112 王为达等. 逐点比较法直线插补算法的研究
49、J.机电一体化, 2013, (09)13 高海涛. 基于单片机的新型逐点比较直线插补法设计 J.现代电子技术, 2009, (02)14李艳玲.C 语言实现开环数控系统逐点法直线插补算法介绍J.潍坊高等职业教育, 2010, (04)15 陶孝海. 51 单片机 C 语言编程技巧J.计算机时代, 2009, (06)17 井绪江.浅谈 C51 单片机开发语言及实现过程J.科技致富向导, 2013, (09)18 刘鲲. 单片机 C 语言入门B.人民邮电出版社 201019 秦志强等. C51 单片机应用与 C 语言程序设计B.电子工业出版社 200720 田刚等. 一种简捷的快速直线插补新算法J.组合机床与自动化加工技术, 2005, (07),湖南理工学院毕业设计(论文)27第六章 致谢四月维夏,山有嘉卉。初春的绿城早已艳阳朝天,花满枝头,欣欣向荣。在这个美好的季节里,我在电脑上敲出了最后一个字,心中涌现的不是想象已久的欢欣,却是难以言喻的失落。是的,随着论文的终结,意味着我生命中最纯美的学生时代即将结束,尽管百般不舍,这一天终究会在熙熙攘攘的喧嚣中决绝的来临。四年寒窗,所收获的不仅仅是愈加丰厚的知识,更重要的是在阅读、实践中所培养的思维方式、表达能力和广阔视野。很庆幸这些年来我遇到了许多恩师益友,无论在学习上、生活上还是工作上都给予了我无私的帮助和热心的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 意识的课件教学课件
- 2024年建筑工程施工合同详细描述
- 2024年度战略合作合同(含合作领域)
- 春艾青课件教学课件
- 2024年度水果品牌授权合同:授权生产和销售的具体条款
- 2024年度金融服务合同:银行为客户提供2024年度综合金融服务
- 2024年专利实施许可合同:生物医药产品专利应用
- 2024年度航空器材买卖合同
- 幼儿清明课件教学课件
- 毛笔楷体课件教学课件
- 《创意改善生活》课件 2024-2025学年湘美版(2024)初中美术七年级上册
- 黄瓜育种分析
- 砂石生产各工种安全操作规程
- 2019版外研社高中英语选择性必修一~四单词总表
- 从分数到分式的教学设计
- 狭窄隧道汽车双向行PLC控制设计
- 移相整流变压器设计及试验
- 05S502阀门井图集
- 舒方特方格练习(共6页)
- 90、808系列铝合金门窗自动计算下料表
- 管道定额价目表
评论
0/150
提交评论