PSoC3 双轴步进电机细分控制
2011-04-23
本文给出了一种使用PSoC3CY8C3866AXI-040芯片和L298双全桥功率芯片对两轴步进电机控制的方法,该方案电路简单,控制方便,实验结果表明,控制系统运行正常,可靠性较高。
1,概述步进电机是一种把电脉冲信号变成直线位移或角位移的控制电机。它的位移速度与脉冲频率成正比,位移量与脉冲数成正比。每来一个脉冲电压, 转子就旋转一个步距角。根据电压脉冲的分配方式,步进电机各相绕组的电流轮流切换,从而使电机旋转。步进电机具有步进数可控、运行平稳、价格便宜的优点,在加速器控制系统中的应用很广。本文介绍了一种两轴步进电机细分控制系统,使用Cypress的PSoC3芯片CY8C3866AXI-040和步进电机功率芯片L298来实现,该系统结构简单、驱动功率大、运行稳定,两轴控制相互独立,在步进电机控制领域中有着广阔的应用前景。
2, 硬件电路组成Cypress的PSoC3芯片(CY8C3866AXI-040)具有丰富的片上资源,模拟资源包括片内4个Opamp,4个DAC,4个Comparator,高精度ADC;数字资源包括24个UDB模块能配置成带死区功能的PWM,逻辑真值表,状态寄等。这些为实现两轴步进电机电流细分控制提供方面。 电流细分精度最高可以达到128细分。除电机功率电路外其他所有模拟和逻辑电路都能在PSoC3上实现,故硬件电路的构成相当简单,如图1所示。
图1,PSoC3步进电机硬件电路
从图1可以看出,除了驱动电路和功率电路,整个系统的实现并不需要借助其他的外部芯片. PSoC Creator是PSoC3芯片的开发环境。PSoC Creator向用户提供了便捷可视的原理图界面以方面配置片上硬件资源。图2为步进电机控制的片内原理图(单轴):
图2, PSoC Creator中的硬件原理图
其中,OP_AMP, VDAC8,COMP,PWM 构成了硬件的电流调节器。 8位的DAC 给出类似正弦的参考波形。绕组电流采样电阻采样后再由片内放大器OPAMP放大,之后与DAC给定的参考波形相比较。当实际电流超过参考电流时,就通过PWM的Kill输入端关断PWM,从而达到电流控制的目的。LUT是一个片上的硬件逻辑真值表,其根据控制寄存器 Ctrl_Register给出的节拍而切换PWM在各个管脚的分配,从而起到硬件控制电流换向的功能。
L298N芯片可以驱动两个二相电机(如图3),也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。
图3,L298 功率电路
3, 软件实现
由于PSoC3的强大可编程硬件资源,软件工作就变得相当简单,因此主程序的软件工作只需要启动片上各个模块的即可。所以在软件实现中只要做好步进电机的细分控制即可。在本方案中,细分控制采用的是预先建立好正弦波形数组,再通过CPU将该数组分时写进PSoC3的DAC中以输出正弦波形。基数设置为16,则产生的阶梯波形如图5所示,我们称之为8微步实现。
static unsigned char SinTable[] = {
255,255,255,255,255,254,254,254,253,253,
253,252,252,251,251,250,249,249,248,247,
247,246,245,244,243,242,241,240,239,238,
237,236,234,233,232,231,229,228,226,225,
223,222,220,219,217,215,214,212,210,208,
207,205,203,201,199,197,195,193,191,189,
187,185,183,180,178,176,174,171,169,167,
164,162,159,157,154,152,149,147,144,142,
139,136,134,131,128,126,123,120,117,115,
112,109,106,103,100,98,95,92,89,86,
83,80,77,74,71,68,65,62,59,56,
53,50,47,44,41,37,34,31,28,25,
22,19,16,13,9,6,3,0
};
4,实验结果以PSoC3 CY8C3866AXI-040及L298等器件实现的两轴步进电机细分驱动控制系统,取得了理想的实验结果。实验中,电机均采用二相混合式步进电动机,其额定电压24 V,额定电流为2A,步距角1.8o。电机运行平稳,调速方便。图6是是示波器截取的其中一轴电机电流电压波形图。
图6,步进电机电压电流波形图
其中,粉红色波形是DAC产生的正弦波,绿色波形是经过放大器后的电压波形,蓝色波形是电机的电流波形。
5, 结束语本文提到的两轴步进电机驱动细分控制系统可以驱动额定电压为15~50V、额定电流为3A以下的双轴二相混合式步进电动机,硬件结构紧凑,软件代码简单。经联机调试证明,此系统运行正常、稳定性高,两轴相互独立。驱动电路接收控制信号指令后,使电机进行上电、停机、执行正转/反转、四/八拍操作,并按照系统给定的脉冲输入频率控制电机以一定的转速运行。另外,该驱动控制系统还具有过流保护、相电流调节及闭环反馈斩波恒流的功能,实用性强,应用前景广阔。