芯选解读︱玩转步进电机驱动与控制
2019-03-18 芯选解读

中控微推出的CMC520MD32芯片在软硬件配置上就步进电机的驱动和控制做了针对性优化,不仅在硬件上能够满足步进电机驱动控制的要求,在软件上,更提供了相对完整的驱动算法,使得开发的难度大大降低。


这款CMC520MD32芯片采用LQFP32封装,与STM32的同类产品兼容。各项指标对比如下:

640 (1).png

步进电机作为一种较基础的通用电机,原理简单。但是要把它驱动好并不容易,需要有较强的软硬件设计能力。


今天小编就来介绍一下步进电机的原理和基于CMC520MD32芯片的驱动,希望能够对看官有一些启发。


原理  



步进电动机是一种将电脉冲转化为角位移的执行机构,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,就是步距角。通过控制脉冲的个数来控制电机的角位移量,从而达到精确定位的目的;同时还可以通过控制脉冲频率来控制电动机转动的速度和加速度,从而达到调速的目的。


线、相、极性  



 “线”就是说明步进电机有几个接线口;

 “相”就是说明步进电机有几个线圈(也叫做绕组);

 “极性”分为 单极性 和 双极性。如果步进电机的线圈是可以双向导电的,那么步进电机就是双极性的,相反,如果只允许单向导电的,那么这个步进电机就是单极性的。


知道了上面的三个概念,那就带各位看官实践一下。


例如:

四线双极性步进电机就是有4个接线口,导电方式是允许双向的。由于有四个接线口,且导电方式是双向的,所以这个步进电机是两相的。

640 (2).png

图1︱两相步进电机



步距角  



步进电机的定子绕组每改变一次通电状态,转子转过的角度称为步距角θb:

640 (3).png

m-定子相数;Z-转子齿数;C-通电方式。


细分  



从上面的公式来看,步进电机步距角是与电机的结构特征相关的。如果,我们需要更小的步距角,难不成还得要换个电机?其实不然,在上面的公式中还有一个C参数可以调整。如何调整C参数呢?现在,我们就要开始引入细分的概念。


对于步进电机来说细分功能完全是由外部驱动电路精确控制电机的相电流产生的,和具体电机无关。


为了更加形象的说明细分控制的原理,下面通过对比图来详细说明一下。

640 (4).png

图2︱四线双极性步进电机在整步运行时的电流图


图2展示了ab相电流的加载时序:A、B、-A、-B。



640 (5).png
640 (6).png
640 (7).png

图3-5︱四线双极性步进电机在4细分时的合成电流图


如图3-5所示,90°平均分成了四份,但是合成电流的大小一直保持不变。

用一句话总结就是:通过等角度有规律的插入大小相等的电流合成向量,从而减小合成磁势的角度(步距角),从而达到细分的目的。


驱动与控制  



小编在前面说了一通理论知识之后,或许已经有很多看官想着如何实战了。看似简单的步进电机实现细分控制实际上实现起来还是比较复杂的。光一堆公式、模块的设计就要研究半天了。

640 (8).png

图6︱一个完整的步进电机驱动器框图


CMC520MD32芯片中,硬件提供了:


(1)定时器:共有10个定时器,针对电机控制而言,其中拥有一个16位的高级定时器TIM1,共有4通道(3通道互补),支持输入捕获/输出比较/PWM输出/单脉冲输出,支持正交增量编码输入,支持死区控制和紧急刹车。一个16位定时器TIM15,2个通道(带1个互补通道),支持输入捕获/输出比较/PWM输出/单脉冲输出,支持死区控制和紧急刹车。2个16位通用定时器TIM16/TIM17,1个通道(带1个互补通道),支持输入捕获/输出比较/PWM输出/单脉冲输出,支持死区控制和紧急刹车。


(2)ADC:一个拥有最高采样速率为1MSPS的12位ADC,共有18个通道(13个外部通道,5个内部通道)。其最大特色为包含两个独立的采样/保持电路,在电机控制中可以实现电流信号的双采样,从而大大增加了电流控制精度。


(3)运算放大器OPA:CMC520MD32内置了3个运放放大器OPA0放大倍数为15/20/25/30/35/40/45/50。OPA1放大倍数为1/2/3/4/5/6/8/10,输出偏置为1/2VDDA。OPA2放大倍数为1/2/3/4/5/6/8/10,输出偏置为1/2VDDA。在实际使用中,通过使用内置OPA,简化外部电流采样电路,节约了PCB的空间和BOM成本。


除了硬件,软件方面也是优势满满。

CMC520MD32目前提供了完整的四线双极性步进电机驱动库,通过导入相关的库文件并更改相应的配置,结合现有的硬件便可完成对于步进电机的驱动控制。步进电机库的主要特征有:


(1)实现四线双极性步进电机的驱动,外部控制接口为脉冲、方向;


(2)可以配置步进电机的细分数,最高支持1/256细分。在1/4细分的条件下,电机最高空载转速为3000rpm;


(3)支持快速衰减和混合衰减的模式配置;


(4)允许用户配置电机的最大电流参数,并允许用户设定和配置过电流、过电压和驱动管过温度保护。


640 (2).jpg

相信CMC520MD32在为大家带来良好体验的同时,也能帮助大家快速上手!