步进电机一体化控制系统的设计.docx
文本预览下载声明
【Word版本下载可任意编辑】
PAGE
1 - / NUMPAGES 1
步进电机一体化控制系统的设计
作为一种数字伺服执行元件,步进电机具有构造简单、运行可靠、控制方便、控制性能好等优点,广泛应用在数控机床、机器人、自动化仪表等领域。为了实现步进电机的简易运动控制,一般以单片机作为控制系统的微处理器,通过步进电机专用驱动芯片实现步进电机的速度和位置定位控制。 2 圆弧插补改良算法 逐点比较插补算法因其算法简单、易实现且误差不超过一个脉冲当量,在步进电机的位置控制中应用的相当广泛[1。圆弧插补中,为了确定一条圆弧的轨迹,可采用:给出圆心坐标、起点坐标和终点坐标;给出半径、起点和终点坐标;给出圆弧的三点坐标等。在算法实现时这些参数若要存放在单片机内部资源有限的数据存储器(RAM)中,如果要经过复杂的运算才能确定一段圆弧,不但给微处理器带来负担,而且要经过多步运算,往往会影响到算法的度。因此选取一种简单且度高的插补算法是非常必要的。本文提出了一种改良算法:在圆弧插补中,无论圆弧在任何位置,是顺圆或是逆圆,都以此圆弧的圆心作为原点来确定其他坐标。因此只须给出圆弧的起点坐标和圆弧角度就可以确定该圆弧。如果一个轴坐标用4个字节存储(如12.36),而角度用2个字节存储(如45°),则只需要10个字节即可确定一段二维的圆弧。较之起其他方法,多可节省14个存储单元。现以第I象限逆圆弧为例,计算其终点坐标。如图1所示,(X0,Y0)为圆弧的起点坐标,(Xe,Ye)为圆弧的终点坐标,θ为圆弧的角度。 图1 圆弧轨迹示意图 圆弧半径: , 终点坐标: 终点坐标相对X轴的角度: 本系统要求输入的角度到1度,输入坐标的分辨率是0.01,单片机C语言的浮点运算能到0.000001,按照上面的公式算出的终点坐标,虽存在误差,但这个误差小于1%,能够满足所要求的度。 3 步进电机的变频调速 虽然步进电机具有快速启停能力强、精度高、转速容易控制的特点,但是在实际运行过程中由于启动和停止控制不当,步进电机仍会出现启动时抖动和停止时过冲的现象,从面影响系统的控制精度。尤其是步进电机工作在频繁启动和停止时,这种现象就更为明显[2。为此本文提出了一种基于单片机控制的步进电机加减速离散控制方法。加减速曲线如图2 所示,纵坐标是频率 f,单位为脉冲/秒或步/秒。横坐标时间 t,单位为秒。步进电机以 f0 启动后加速至 t1 时刻到达运行频率 f,然后匀速运行,至 t2 时刻开始减速,在 t5 时刻电机停转,总的步数为 N。其中电机从静止加速至运行频率和从运行频率至停止至是步进电机控制的关键,通常采用匀加速和匀减速方式。 图2 时间与频率的函数图 图3 离散化的时间变频图 采用单片机对步进电机开展加减速控制,实际上就是改变输出脉冲的时间间隔,可采用软件和硬件两种方法。软件方法依靠延时程序来改变脉冲输出的频率,其中延时的长短是动态的,该方法因为要不停地产生控制脉冲,占用了大量的CPU时间;硬件方法是依靠单片机内部的定时器来实现的,在每次进入定时中断后,改变定时常数(定时器装载值),从而升速时使脉冲频率逐渐增大,减速时使脉冲频率逐渐减小。这种方法占用CPU时间较少,是一种效率比较高的步进电机调速方法。考虑到单片机资源(字长)和编程的方便,不需要每步都计算定时器装载值。如图3所示,采用离散方法将加减速曲线离散化。离散化后速度是分台阶上升的,而且每上升一个台阶都要在该台阶保持一段时间,以克服由于步进电机转子转动惯量所引起的速度滞后。只有当实际运行速度到达预设值后才能急速加速,实际上也是局部速度误差的自动纠正。 4 系统软硬件协同设计 对于51系列单片机的软件开发,传统的方法是在PC机上采用Keil等开发工具开展程序设计、编译、调试,待程序调试通过之后生成目标文件至单片机硬件电路再开展硬件调试[3。这种方法只有硬件电路完成之后才能开展系统功能测试,若此时发现硬件电路存在设计问题且必须开展修改时就会显著影响系统开发的成本和周期。为此,本文采用了系统软硬件协同仿真的开发方法,使得硬件电路实现前的功能测试成为可能。同时硬件电路的软件化仿真为硬件电路的设计与实现提供了有力的保障。其中在Keil uVision2集成开发环境下,实现步进电机控制系统的程序设计、编译、调试,并终生成目标文件 *.hex,而由英国Proteus Labcenter electronics公司所提供的
显示全部