逐点比较法直线插补原理的实现_第1页
逐点比较法直线插补原理的实现_第2页
逐点比较法直线插补原理的实现_第3页
逐点比较法直线插补原理的实现_第4页
逐点比较法直线插补原理的实现_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

武汉理工大学华夏学院课程设计报告书题目:系名:专业班级:姓名:学号:指导教师:2011年6月摘要本文主要讨论利用逐点比较法实现第一象限的直线插补。所谓逐点比较插补,就是刀具或绘图笔每走一步都要和给点轨迹上的坐标值进行比较,看这点在给点轨迹的上方还是下方,从而决定下一步的进给方向。对于本设计所要求的直线轨迹,如果该点在直线的上方,那么控制步进电机向+X方向进给一步,如果该点在直线的下方,那么控制步进电机向+Y轴方向进给一步。如此,走一步、看一看,比较一次,决定下一步的走向,以便逼近给定轨迹,即形成逐点比较插补。插补计算时,每走一步,都要进行以下四个步骤的计算过程,即偏差判别、坐标进给、偏差计算、终点判断。设计具体算法时,首先根据直线轨迹参数,计算出偏差计算公式及递推公式。由程序判断出偏差的正负号,从而决定坐标的进给方向,再根据递推公式计算出坐标进给后的偏差,假设未到达终点,那么返回偏差判别,如此循环。可以根据起点和终点的坐标位置,计算出总的进给步数Nxy,X或Y的坐标每进给一步,这个值就减一,假设Nxy=0,就到达了终点,这就是终点判别的方法。设计任务及要求设计一个计算机控制步进电机系统,该系统利用PC机的并口输出控制信号,其信号驱动后控制X、Y两个方向的三相步进电机转动,利用逐点比较法插补绘制出各种曲线。1〕设计硬件系统,画出电路原理框图;2〕定义步进电机转动的控制字;3〕推导出用逐点比较法插补绘制出下面曲线的算法;4〕编写算法控制程序线;5〕撰写设计说明书。每人选一个曲线,曲线均为第一象限,屏幕左下角为坐标原点,箭头表示曲线绘制的方向,直线参数为:起点、终点坐标。圆弧参数为:起点、终点坐标和半径。直线一:直线二:直线三直线四圆弧一圆弧二目录1设计任务和要求 12设计步骤 12.1硬件设计 12.1.1接口示意图 12.1.2方案论证 22.1.3单片机与8255的接口 32.1.4硬件接线原理图 32.1.5元件清单 42.2软件设计 52.2.1软件设计原理 52.2.28255的初始化编程 62.2.3步进电机走步控制程序 72.2.4主程序 82.3运行调试 92.3.1系统安装调试 92.3.2结果验证 93课程设计体会 10参考文献 10附录一芯片资料 11附录二源程序 12逐点比较插补原理的实现1设计任务和要求设计一个微型计算机控制步进电机系统,该系统利用微型机的并口输出控制信号,其信号驱动后控制X、Y两个方向的三相步进电机转动,利用逐点比较法插补原理绘制出如以下图所示的目标曲线。图1目标曲线2设计步骤本设计大致可分为三个步骤:硬件设计、软件设计和系统的运行调试。2.1硬件设计接口示意图两台三相步进电机控制接口如图2所示。图2系统接口示意图方案论证单片机的接口电路可以是锁存器,也可以是专门的接口芯片,本设计采用可编程接口芯片8255。由于步进电机需要的驱动电流比较大,所以单片机和步进电机的连接还要有驱动电路,如何设计驱动电路成了问题的关键。设计方案一如图3所示,当某相上驱动信号变为高电平时,达林顿管导通,从而使得该相通电。图3驱动电路方案一设计方案二如图4所示,在单片机与驱动器之间增加一级光电隔离,当驱动信号为高电平时,发光二极管发光,光敏三极管导通,从而使达林顿管截止,该相不通电;当驱动信号为低电平时,那么步进电机的该相通电。图4驱动电路方案二综合比较两种设计方案可知,方案二有抗干扰能力,且可防止一旦驱动电路发生故障,造成高电平信号进入单片机而烧毁器件。所以,本设计选择方案二。单片机与8255的接口MCS-51单片机可以和8255直接连接而不需要任何外加逻辑器件,接口示意图如图5所示。因为8255的B口和C口具有驱动达林顿管的能力,所以将采用B口和C口输出驱动信号。图5单片机与8255的接口硬件接线原理图图6系统硬件接线原理图单片机控制步进电机的硬件接线如图6所示。因为8255的片选信号接单片机的地址线P2.7,A1、A0通过地址锁存器接到了8051单片机的地址线P0.1和P0.0,由硬件接线图可以清楚地知道,8255的各口地址为:A口地址:7FFCHB口地址:7FFDHC口地址:7FFEH控制口地址:7FFFH同时,B口和C口都作为输出口,8255工作在方式0。下面以8255的B口输出端PB0为例说明控制的工作原理。假设PB0输出0,经反相器74LS04后变为高电平,发光二极管正向导通发光。在光线的驱动下,光敏三极管导通,+5V的电压经三极管引入地线而不驱动达林顿管。因而,达林顿管截止,X轴上步进电机的C相不通电。假设PB0输出1,反相后变为低电平,发光二极管不导通。从而光敏三极管截止,+5V电压直接驱动达林顿管导通,X轴上步进电机的C相有从电源流向地线的电流回路,即C相得电。元件清单表1元件清单表名称位号型号数量单片机——80511地址锁存器——74LS3731并行接口芯片——8255A1反相器——74LS046电阻R1—R241K24光电三极管U1—U34N253达林顿管Q1—Q6NPNDAR6二极管D1—D6IN400162.2软件设计软件设计原理.1直线插补原理逐点比较法的根本原理是,在刀具按要求轨迹运动加工零件轮廓的过程中,不断比较刀具与被加工零件轮廓之间的相对位置,并根据比较结果断定下一步的进给方向,使刀具向减小偏差的方向进给。图7第一象限直线如图7所示,设直线的起点为坐标原点,终点坐标为A〔,〕,点m(,)为加工点〔动点〕。定义偏差公式为。假设=0,说明点m在OA直线段上;假设>0,说明点m在OA直线段上方,即点m’处;假设<0,说明点m在OA直线段下方,即点m’’处。由此可得第一象限直线逐点比较法插补的原理是:从直线的起点出发,当0时,沿+x轴方向走一步;当<0时,沿+y轴方向走一步;当两方向所走的步数与终点坐标〔,〕相等时,发出终点到信号,停止插补。可以将上面所定义的偏差公式进一步简化,推导出偏差的递推公式。当0时,沿+x轴方向进给一步,〔1〕②当<0时,沿+y轴方向进给一步,〔2〕式〔1〕和式〔2〕是简化后偏差的计算公式,在公式中只有一次加法或减法运算,新加工点的偏差都可由前一点偏差和终点坐标相加或相减得到。.2步进电机工作原理步进电机有三相、四相、五相、六相等多种,本设计采用三相步进电机的三相六拍工作方式,其通电顺序为……各相通电的电压波形如图8所示。图8三相六拍工作的电压波形当步进电机的相数和控制方式确定之后,PB0—PB2和PC0—PC2输出数据变化的规律就确定了,这种输出数据变化规律可用输出字来描述。为了便于寻找,输出字以表的形式存放在计算机指定的存储区域。表2给出了三相六拍控制方式的输出字表。表2三相六拍控制方式输出字表步序控制位工作状态控制字表C相B相A相1001A01H2011AB03H3010B02H4110BC06H5100C04H6101CA05H2.2.28255的初始化编程由前面的分析知道,8255工作在方式0,控制口地址为7FFFH,控制字为90H。所以,8255的初始化编程如下。MOVDPTR,#7FFFH;控制口地址送DPTRMOVA,#90H;控制字送存放器AMOVX@DPTR,A;将控制字写入控制口步进电机走步控制程序.1程序流程图图9步进电机走步控制程序流程图.2汇编程序代码以下为X轴上电机的步进控制算法,Y轴上步进电机算法类似。XCOTROL:MOVDPTR,#ADX;将控制字表地址赋给DPTHMOVA,R2;表首偏移量送AMOVCA,@A+DPTR;读取当前步进电机的控制字MOVDPTR,#7FFDH;PB口地址送DPTRMOVX@DPTR,A;将步进电机的控制字传送到PB口CJNEA,#05H,LOOP3;假设到表尾,转LOOP3INCR2;未到表尾,表首偏移量加1SJMPDELAY1LOOP3:MOVR2,#00H;表首偏移量清零SJMPDELAY1DELAY1:MOVR0,#FFH;延时DJNZDELAY1RET;返回主程序.1主程序流程图图10主程序流程图.2源程序代码首先分配各变量的地址为,NXY:4FH,50H;XE:4DH,4EH;YE:4BH,4CH;FM:49H,4AH,高位存高地址,地位存进低地址。源程序代码见附录二。2.3运行调试系统安装调试按照硬件接线图将系统安装好后,装入程序,执行后查看步进电机的走步轨迹。结果验证假设终点坐标〔,〕为〔4,3〕,插补计算过程如表3所示。表3直线插补计算过程步数偏差判别坐标进给偏差计算终点判别起点=0=71+X=0-3=-3=62+Y=-3+4=1=53+X=1-3=-2=44+Y=-2+4=2=35+X=2-3=-1=26+Y=-1+4=3=17+X=3-3=0=0根据上表,可作出步进电机的走步轨迹如图11所示。假设输入的参数为XE=4,YE=3,系统走步轨迹与以下图比较,可判断出设计的正确性。图11步进电机走步轨迹3课程设计体会通过一个多星期的课程设计,我对这门课有了进一步的了解。学习过程中在老师的耐心指导下,有意识的培养和建立了我的思维能力,使我真正建立数据及信息流的概念,以便在控制应用中,能够使软件和硬件有机地结合。通过单片机对步进电机的控制系统设计,让我真正的掌握了微型计算机软件和硬件相结合的设计方法。工业控制是计算机的一个重要应用领域,计算机控制正是为了适应这一领域的需要而开展起来的一门专门技术,它主要研究如何将计算机技术和自动控制理论应用于工业生产过程,并设计出所需要的计算机控制系统。而当代,随着微型计算机的高度开展。它的应用在人们的工作和日常生活中越来越普遍了。工业过程控制是计算机的一个重要应用领域。现在可以好不夸张的说,没有微型计算机的仪器不能乘为先进的仪器,没有微型计算机的控制系统不能称其为现代控制系统的时代已经到来。微型计算控制技术正为了适应这一领域的需要而开展起来的一门技术。绝大多数自动控制都是使用计算机来实现的;微型计算机控制技术的开展,使得以微型计算机为控制器核心的微机测控装置与系统,渗透到了国民经济的各行各业,已经无时无处不在影响每个现代人的生活。只有态度认真的对待这门学科才能真正掌握其中的精髓,在将来的工作中或许起着至关重要的作用。参考文献[1]贺亚茹.汇编语言程序设计.北京:科学出版社,2005[2]卜艳萍、周伟.汇编语言程序设计教程.北京:清华大学出版社,2004[3]温玉杰.Intel汇编语言程序设计〔第四版〕.北京:电子工业出版社,2004[4]郑学坚、周斌.微型计算机原理与应用.北京:清华大学出版社,2000[5]于海生.微型计算机控制技术.北京:清华大学出版社,1998[6]沈美明、温冬婵.IBM-PC汇编语言程序设计.北京:清华大学出版社,2002[7]何立民.单片机应用系统设计.北京:北京航空航天大学出版社,2003附录一芯片资料图118051单片机引脚图图12可编程芯片8255A引脚图附录二源程序ORG0100HMOVDPTR,#7FFFH;控制口地址送DPTRMOVA,#90H;控制字送存放器AMOVX@DPTR,A;将控制字写入控制口,初始化8255MOV4EH,?;XE的低8位存入4EHMOV4DH,?;XE的高8位存入4DHMOV4CH,?;YE的低8位存入4CHMOV4BH,?;YE的高8位存入4BHMOVA,4EHADDA,4CH;XE与YE低8位相加MOV50H,A;低位之和存入NXY低8位MOVA,4DHADDCA,4BH;XE与YE的高8位带进位相加MOV4FH,A;和存入NXY高8位MOV4AH,#00H;将FM置零MOV49H,#00HCLRR2;表ADX偏移量清零CLRR3;表ADY偏移量清零LOOP1:MOVA,49H;取偏差的高8位JBACC.7,YCONTROL;假设FM<0,转到YCONTROLACALLXCONTROL;否那么,调XCONTROLCLRC;进位存放器清零MOVA,4AHSUBBA,4CH;FM与YE的低8位相减MOV4AH,A;结果存入FM低8位MOVA,49HSUBBA,4BH;FM与YE的高8位相减MOV49H,A;结果存入FM高8位LOOP2:CLRCMOVA,50HSUBBA,#01H;NXY低位值减1MOV50H,A;结果存入NXY的低位MOVA,4FHSUBBA,#00H;考虑低位字节借位MOV4FH,A;减去借位后存入NXY的高位ORLA,50H;判断NXY是否为零JNZLOOP1;不为零那么转到LOOP1LJMP8000HXCOTROL:MOVDPTR,#ADX;将控制字表地址赋给DPTHMOVA,R2;表首偏移量送AMOVCA,@A+DPTR;读取当前步进电机的控制字MOVDPTR,#7FFDH;PB口地址送DPTRMOVX@DPTR,A;将步进电机的控制字传送到PB口CJNEA,#05H,LOOP3;假设到表尾,转LOOP3INCR2;未到表尾,表首偏移量加1SJMPDELAY1LOOP3:MOVR2,#00H;表首偏移量清零SJMPDELAY1DELAY1:MOVR0,#FFH;延时DJNZDELAY1RET;返回YCOTROL:MOVDPTR,#ADY;将控制字表地址赋给DPTHMOVA,R3;ADY表首偏移量送AMOVCA,@A+DPTR;读取当前步进电机的控制字MOVDPTR,#7FFEH;PC口地址送DPTRMOVX@DPTR,A;将步进电机的控制字传送到PC口CJNEA,#05H,LOOP4;假设到表尾,转LOOP4INCR3;未到表尾,表首偏移量加1SJMPDELAY2LOOP4:MOVR3,#00H

温馨提示

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

评论

0/150

提交评论