background image

步进电机一体化控制系统的设计 

摘要:本文应用单片机、步进电机驱动芯片、字符型 LCD 和键盘阵列,构建了集步进

电机控制器和驱动器为一体的步进电机控制系统。二维工作台作为被控对象通过步进电机
驱动滚珠丝杆在 X/Y 轴方向联动。文中讨论了一种以最少参数确定一条圆弧轨迹的插补方
法和步进电机变频调速的方法。步进电机控制系统的开发采用了软硬件协同仿真的方法,

 

可以有效地减少系统开发的周期和成本。最后给出了步进电机控制系统的应用实例。

    1 

 

引言

    作为一种数字伺服执行元件,步进电机具有结构简单、运行可靠、控制方便、控制性能好
等优点,广泛应用在数控机床、机器人、自动化仪表等领域。为了实现步进电机的简易运动
控制,一般以单片机作为控制系统的微处理器,通过步进电机专用驱动芯片实现步进电

 

机的速度和位置定位控制。

    2 

 

圆弧插补改进算法

    逐点比较插补算法因其算法简单、易实现且最大误差不超过一个脉冲当量,在步进电机
的位置控制中应用的相当广泛[1>。圆弧插补中,为了确定一条圆弧的轨迹,可采用:给
出圆心坐标、起点坐标和终点坐标;给出半径、起点和终点坐标;给出圆弧的三点坐标等。在
算法实现时这些参数若要存放在单片机内部资源有限的数据存储器(RAM)中,如果要
经过复杂的运算才能确定一段圆弧,不但给微处理器带来负担,而且要经过多步运算,
往往会影响到算法的精确度。因此选取一种简单且精确度高的插补算法是非常必要的。本
文提出了一种改进算法:在圆弧插补中,无论圆弧在任何位置,是顺圆或是逆圆,都以
此圆弧的圆心作为原点来确定其他坐标。因此只须给出圆弧的起点坐标和圆弧角度就可以
确定该圆弧。如果一个轴坐标用 4 个字节存储(如 12.36),而角度用 2 个字节存储(如
45°),则只需要 10 个字节即可确定一段二维的圆弧。较之起其他方法,最多可节省 14 个
存储单元。现以第 I 象限逆圆弧为例,计算其终点坐标。

本系统要求输入的角度精确到 1 度,输入坐标的分辨率是 0.01,单片机 C 语言的浮

点运算能精确到 0.000001,按照上面的公式算出的终点坐标,虽存在误差,但这个误差
小于 1%

 

,能够满足所要求的精确度。

    本系统要求输入的角度精确到 1 度,输入坐标的分辨率是 0.01,单片机 C 语言的浮点
运算能精确到 0.000001,按照上面的公式算出的终点坐标,虽存在误差,但这个误差小
于 1%

 

,能够满足所要求的精确度。

    3 

 

步进电机的变频调速

    虽然步进电机具有快速启停能力强、精度高、转速容易控制的特点,但是在实际运行过
程中由于启动和停止控制不当,步进电机仍会出现启动时抖动和停止时过冲的现象,从
面影响系统的控制精度。尤其是步进电机工作在频繁启动和停止时,这种现象就更为明显
[2]。为此本文提出了一种基于单片机控制的步进电机加减速离散控制方法。加减速曲线纵

 

坐标是频率 f,单位为脉冲/秒或步/

 

秒。横坐标时间 t

 

,单位为秒。步进电机以 f0 启动后加