1 引言
在自动化领域,步进电机以其将电脉冲信号精准转换为角位移或线位移的能力,成为数控系统、自动化生产线、仪器设备、绘图设备以及计算机外设等众多领域的优选执行器。得益于微电子技术的迅猛发展和微型计算机的广泛应用,步进电机的应用领域正不断拓展。传统的步进电机控制器通常由复杂的硬件电路构成,成本高昂。然而,通过皖南电机公司推出的L297和L298芯片,我们可以轻松构建出高效的步进电机驱动器,并与AT89C52单片机配合,以较低的成本实现高性能的步进电机驱动电路,从而降低了成本,提高了系统的灵活性、可靠性和多功能性。
2 工作原理
步进电机通过将电脉冲信号转换为直线或角位移来工作,但它们不能直接接入交直流电源,需要借助专门的步进电机控制驱动器。皖南电机提供的典型步进电机控制系统如图1所示。该控制器能够输出频率从几赫兹到几十千赫兹的连续可调脉冲信号,为环形分配器提供脉冲序列。环形分配器负责将脉冲序列按特定规律分配,经过功率放大器放大后,输入到步进电机驱动电源的各个输入端,驱动电机转动。环形分配器主要分为软环形分配器和硬环形分配器两种,而功率放大器则负责放大环形分配器的输出信号,以满足驱动步进电机的需求。
图1 典型步进电机控制框图
3 硬件组成
本研究中的步进电机为四相单极式35BY48HJ120减速步进电动机。设计的步进电机控制驱动器框图如图2所示,主要由AT89C52单片机、光电耦合器和集成芯片L297、L298组成。AT89C52是一款低电压、高性能的8位CMOS单片机,内置8K字节可重复擦写的Flash闪速存储器和256字节RAM,以及3个16位定时器和可编程串行UART通道,足以满足对步进电机简单控制的需求。
L297是步进电机控制器(包括环形分配器),L298是双H桥式驱动器。它们构成的微处理器至双桥式步进电动机的接口如图3所示。这种设计减少了所需元件,降低了装配成本,提高了可靠性,同时减少了空间占用。通过软件开发,可以减轻微型计算机的负担。L297和L298均为独立芯片,应用灵活。
图3 L297和L298构成的微处理器至双桥式步进电动机的接口
L297芯片是一种硬件环分集成芯片,可产生四相驱动信号,适用于控制两相双极或四相单极步进电机。其核心是一组译码器,能产生所需的相序,由方向控制(CW/CCW)、HALF/FULL和步进时钟CLOCK等输入模式控制。L297可产生三种相序信号,对应三种不同的工作方式:半步方式(HALFSTEP)、基本步距(FULLSTEP,整步)一相激励方式和基本步距两相激励方式。
L297内部还包含两个PWM斩波器,用于控制相绕组电流,实现恒流斩波控制,以获得良好的矩频特性。每个斩波器由一个比较器、一个RS触发器和外接采样电阻组成,并设有一个公用振荡器,向两个斩波器提供触发脉冲信号。通过改变外接16脚的RC网络,可以调节频率f。当时钟振荡器脉冲使触发器置1时,电机绕组相电流上升,采样电阻上的电压上升到基准电压Uref时,比较器翻转,触发器复位,功率晶体管关断,电流下降,等待下一个振荡脉冲的到来。这样,触发器输出恒频PWM信号,调制L297的输出信号,绕组相电流峰值由Uref确定。L297的CONTROL端输入决定斩波器对相位线A、B、C、D或抑制线INH1和INH2的控制作用,从而实现对电机转向和转矩的控制。
L298芯片是一种高压、大电流双全桥式驱动器,专为接收标准TTL逻辑电平信号和驱动电感负载设计,具有两抑制输入,以防止器件受输入信号影响。每桥的三极管射极相连,外接线端可连接外设传感电阻。可安置另一输入电源,使逻辑能在低电压下工作。L298芯片是具有15个引出脚的多瓦数直插式封装的集成芯片。
图3中,AT89C52通过串口经MAX232电平转换后与微机相连,接受上位机指令,向L297发出时钟信号、正反转信号、复位信号及使能控制等信号。电路中的电阻R13、R15用于调节斩波器电路的参考电压,与通过管脚13、14反馈的电位大小比较,确定是否进行斩波控制,以达到控制电机绕组电流峰值、保护步进电机的目的。
由于L297内部带有斩波恒流电路,绕组相电流峰值由Uref确定。当采用两片L297通过L298分别驱动步进电机的两绕组,并通过两个D/A转换器改变每相绕组的Uref时,即组成了步进电机细分驱动电路。此外,为了有效抑制电磁干扰,提高系统可靠性,在单片机与步进电动机驱动回路中利用两个16引脚光电耦合器件TLP521-4组成如图3所示的隔离电路,切断单片机与步进电动机驱动回路之间电的直接联系,实现单片机与驱动回路系统地线的分别联接,防止大电流感性负载下工作的驱动电路产生的干扰信号以及电网负载突变产生的干扰信号通过线路串入单片机,影响单片机的正常工作。
4 软件组成
在该电路中,将P1.0口设为电机启动按钮,P1.1、P1.2、P1.3为速度选择按钮。速度由低到高,P1.4为电机停止按钮。并设三档速度的*高速度依次为500pps、1000pps、2000pps。RXD、TXD已由MAX232电平转换接出串口。此外,步进电机启动、停止的频率较低,一般在100-250Hz之间,而*高运行频率要求较高,通常为1-3kHz。为确保在整个启动、运行和停止过程中不会失步,并尽快精确地达到目标位置,运行速度需要有一个加速、恒速、减速的过程。这里采用常用的离散方法来逼近理想的近似梯形升降速曲线,利用定时器中断方式不断改变定时器装载值的大小。
为计算方便,将各离散点的速度所需的装载值用公式转化为各自所需的定时时间固化在系统的ROM中。系统在运行中通过查表法查找所需的时间,从而大幅度减少占用CPU的时间,提高系统的响应速度。因此,该程序主要由控制主程序和加减速子程序组成,主程序框图如图4所示。
5 结论
本文创新性地提出使用单片机和L297、L298集成电路构建步进电机控制驱动器,具有元件少、可靠性高、占空间少、装配成本低等优点。通过软件开发,可以简化微型计算机的负担。另外,在提出的加减速程序中,定时器的装载值计算不精确,具体实现时,可直接将初值计算出来或将除号用相加来计算,以达到精确的目的。