现代步进电机驱动系统通常使用集成电路功率芯片驱动电机运转,有时可能还会集成一些简单的控制功能,像电流控制。有些较先进的控制芯片还集成一个状态机,对步进电机的步进顺序进行相应的控制。一般而言,步进时序和运动曲线是由一个外部微控制器或专用的ASIC逻辑电路控制的。如果需要控制多台电机,解决办法无非是给每台电机安装专用逻辑电路或者在微控制器上安装每台电机的控制软件。通过在一颗芯片上集成一个数字控制内核和驱动电路,意法半导体的新产品 L6470可简化多电机控制系统的设计。这款新IC采用电压控制模式,能够以1/128微步进管理用户设置的运动曲线,而且这些操作对主微控制器的负荷影响微乎其微。在采用该控制器的系统中,因为微控制器只需向控制器发出高级运动命令,所以只用一个微控制器即可轻松管理多台电机。
前言
意法半导体新推出的步进电机控制芯片L6470在一颗芯片上集成了功率级和一个数字控制内核。这款步进电机控制芯片能够通过SPI接口接收微控制器的运动曲线命令,按照预制的加速度和速度曲线自动执行运动,还能自动加快电机的运转速度,并使之保持预设的转速。
该控制器的结构如图1所示。控制逻辑电路是一个可以设置的状态机,能够接收并保存各种参数,例如:加速度、减速度、启动转速、转速、相电流控制 (PWM)和步进模式。从全步进到1/128微步进,该控制器共支持8种步进模式。内部绝对位置计数器负责计算所选步进模式的步进或微步进的数量,以相当于该步进模式的分辨率跟踪电机转子位置。每步旋转1.8 度,1/128微步电机转子旋转一整圈后,位置计数器将自动增加25600(128×200步)。
所有的运动参数和命令都是通过SPI接口送到控制器。控制逻辑电路负责解释前进步数等运动命令,控制电机从静止开始做加速运转再返回到停止状态所需的步进时间和步数输出,同时执行命令中的步进总数。该芯片还能给这些运动命令排队和发送,进行复杂的运动控制,从而能够大幅减少微控制器的开销。
图1:结构框图。
运动和位置命令
数字内核可执行五种运动命令和4种停止命令:
图2所示是Move命令的一个典型运动曲线。当接收到一条 Move命令时,控制器将计算电机从静止开始做加速运转再返回到起始位置所需的步数N的运动曲线,整个过程都是由数字内核硬件独立完成的。
GoTo命令指示驱动器根据内部22位绝对位置计数器的数值驱动电机旋转到一个特定位置。 GoTo命令分为两种:一种沿特定方向旋转;另一种是沿最直接路径旋转,即确定以最少步数达到所需位置的运动方向。对于每步旋转1.8度的1/128微步电动机,22位计数器的解析率相当于电机旋转大约164周。即便齿轮减速比很大,有效解析率仍然在位置计数器的范围内。GoTo命令的运动曲线看起来与Move命令曲线相同,但是有一点不同,在GoTo命令中,达到命令指定的绝对位置所需步数是自动计算结果。
Run和GoUntil命令用于使电动机保持恒速旋转,直到接到一条制动命令 (适用于Run命令)或者有外部事件发生(适用于GoUntil)为止。当接收到一条制动命令时,控制器执行下面两种操作之一:紧急制动或减速制动。该器件还能执行紧急制动或减速停止,然后提供三态输出。
图2:典型运动曲线。