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公司所供给的EDA东西Proteus则使用该方针文件 *.hex 完结对步进电机操控体系硬件电路功用的测验。
图4 步进电机操控体系硬件电路仿真
如图4所示,单片机AT89C55司职步进电机操控器,经过运转在Keil uVision2 环境下所开发的程序来操控两个步进电机驱动芯片L298,然后完结对AXIS_X / AXIS_Y两轴步进电机的联动操控。L298驱动芯片的步进脉冲输入信号来自AT89C55 P0端口,使能信号ENABLE A与ENABLE B并联接到AT89C55的P3.0、P3.1口,由程序操控完结步进电机的使能,然后防止电机线圈处于短路状况而烧坏驱动芯片。4 x 4键盘阵列接AT89C55的P1端口,经过程序规划界说每个按键的详细功用。LCD的数据端口DB0~DB7接AT89C55的P2端口,操控端口RS, RW, E别离接单片机的P3.5, P3.6, P3.7口。相关的参数值、X/Y轴坐标值能够经过LCD以文本办法显现。本文选用软硬件协同仿真的办法经过规划à测验à批改à再测验一次次迭代开发,在制造操控体系硬件电路之前即可完结对体系整机功用的测验。待体系程序和硬件电路规划方案终究完善之后便能够实践制造如图5所示的硬件电路。明显该种办法能够明显进步体系软硬件开发的成功率,然后有用下降体系的开发周期和开发本钱。
5 使用实例
图5便是依据图4进行硬件电路仿真的终究成果所制造的步进电机操控体系电路板。该电路驱动X/Y轴步进电机经过滚珠丝杆带动二维作业台作联动,并由一只铅笔模仿加工刀具将所要加工的二维轨道描绘出来。
图5步进电机操控体系硬件电路
图6 二维模仿作业渠道运动轨道