微步控制步进电机驱动NSD8381调试指南

描述

本文将结合具体的案例,针对纳芯微全新发布的微步控制步进电机驱动NSD8381,在用于步进电机控制的实现流程,以及堵转检测的实现流程做详细的介绍,帮助工程师能够快速构建用NSD8381驱动芯片实现控制步进电机运转和实现堵转检测的实操能力。

步进电机

1

步进电机驱动芯片NSD8381介

NSD8381是纳芯微全新发布的车规级高集成式双相双极步进电机驱动器,可广泛适用于汽车头灯步进控制(ADB/AFS),HUD位置调节电机,热管理系统阀门中步进电机或BDC电机的驱动等。

该芯片支持最大1.35A满量程电流,包括电流斩波调节,内部最高1/32微步转换器和多种衰减模式选择使步进电机平稳运动。NSD8381支持母线欠压保护(VSUV),过流保护(OCP),温度报警(OTW/UTW)和过温保护(OTSD);同时还支持输出负载的开路诊断和过流保护。此外,NSD8381还集成了堵转检测功能,可以用于堵转故障输出。

2

用于步进电机控制配置及测试案例

1)NSD8381的SPI框架结构

1. SDI的输入帧由24bit构成以下的结构  

•  2bit 操作指令C1/C0,其中 00代表写操作,01代表读操作,10代表读清

•  6 bit的寄存器地址

•  16bit数据,其中包含bit 15~bit 1的数据和bit 0的奇校验位

步进电机

表1:SPI 输入帧结构

2. SDO的输出帧由24bit构成以下的结构 

• 8bit全局状态字节,显示返回的全局状态,如果有故障和告警,相应的bit会反馈故障状态

• 16bit返回数据,其中包含bit 15~bit 1的数据和bit 0 的奇校验位

步进电机

表2:SPI 输出帧结构

2)NSD8381步进电机模式工作流程图

步进电机

图1:步进电机工作流程图

3)NSD8381步进电机测试硬件组成以及软件配置

硬件设备:NSD8381 Demo Board一块,步进电机,12V直流电源,USB转TTL小工具连接到上位机,信号发生器一台

SPI寄存器配置:

CONFIG_6:0x081013----配置步进电机电流大小(HOLD:50mA; full 571mA)

CONFIG_4:0x060841----配置电流调制频率 20k,slew rate 10V/us,filter time 2us,电流slow decay

注意:这里采用默认slew rate ,10v/us,   在应用中推荐把 slew rate 调快, slew rate 调快之后, dead time 也减小。调快对芯片在比较大的电流的工作场景下的功耗是有明显的好处。比如,可以配置CONFIG_4:  0x060A40, ----配置电流调制频率 20k,slew rate 70V/us,filter time 2us, 电流slow decay。

CONFIG_1:0x030428----配置CTRLx (默认配置采用步进电机模式)

CONFIG_3:0x058000----使能输出,设置微步(1/16微步)

4)NSD8381步进电机测试波形

测试条件:1/16微步,满量程电流571mA,电流调制频率20kHz, 电流调制 filter  time 2us,STEP脉冲 1kHz

1. Slow decay模式测试波形

步进电机

图2:步进电机绕组电流波形

步进电机

a. 电流上升decay

步进电机

b. 电流下降decay

图3:步进电机绕组电流波形decay波形

2. Mix decay模式测试波形

步进电机

图4:步进电机绕组电流波形

步进电机

a. 电流上升decay

步进电机

b. 电流下降decay

图5:步进电机绕组电流波形decay波形

3. Auto decay模式测试波形

步进电机

图6:步进电机绕组电流波形

步进电机

a. 电流上升decay

步进电机

b. 电流下降decay

图7:步进电机绕组电流波形decay波形

对比三组波形,实测现象总结如下:Slow decay和Auto decay的模式下,其电流上升decay波形比较缓和,正弦波的峰值处毛刺较小,电机运行的声音比较轻微。Mix decay电流上升decay的波形分成两段,正弦波的峰值处毛刺较大,电机运行的噪音比较大一些。

在实际应用的时候,可以根据调试decay模式来获得合适电机的工作状态。

3

用于步进电机控制堵转检测使用

1)堵转检测的原理 

图8是步进电机绕组的等效模型。当电机正常转动的时候,根据公式1 可以得到电机绕组两侧的电压Vmotor。根据公式2可得到电机的反电势BEMF,其中N为线圈的绕组数量,B代表磁场强度,A是被电机磁场所包围的面积,w是电机转动的角速度。

由公式1可知,当流过电机的电流为零时,电机绕组两侧的电压是BEMF,即反电势电压。由公式2 可知,反电势电压和电机的角速度成正比,当电机堵转的时候,速度为零,此时反电势为理论上也为零。因此,可以利用检测绕组电流为零时的绕组电压来检测反电势。

步进电机

公式1

步进电机

公式2

步进电机

图8:步进电机绕组等效模型

2)堵转检测步骤

步进电机

图9:NSD8381 堵转检测流程

堵转检测过程注意点:

1. 如果涉及正转和反转的应用,需要在电机正转、反转的时候分别执行1-6步,记录高值和低值。设置CVLLA的值要满足大于正、反转的堵转值,但是远小于正、反转正常转动的反电势值。

2. CV_DELAY设置:以图10作为例子,CV_DELAY的时间必须大于图中的△X。为了确保反电势的采样点是在图中平坦的那一段,即△X后的那一段线圈电流为零的点,采集的值才准确。图10显示△X =108us,内部PWM的频率是20kHz(50us),则这个波形的CV_DELAY值需要 大于3,即大于3×50=150us。另外需要注意的是当电机转动很快的情况,可以直接设计CV_DELAY为0,此时ADC的采样点为零电流结束点。

步进电机

图10:正常转动时反电势波形

3. 读取CVA,CVB,CVC,CVD以及设计CVLLA和CVLLB的值的时候,设置的寄存器位为Bit 1到Bit10,在换算电压值的时候注意需要移一位。

3)步进电机堵转检测实例

步进电机1:2kHz step频率,20kHz调制频率,正常转动时之间的OUTA1,OUTA2的反电势为3.2V,如图11。堵转时OUTA1、OUTA2之间的反电势为0.2V,如图12。

寄存器CONFIG_5配置为寄存器0x078E00(CV_DELAY=7),根据图11计算为350us,满足CV_DELAY的延时采样点。CVLLA配置 为0x0E0014 (0.5V)。当电机堵转时,可以检测到FUNCTION_ERR置位,回读STA_1,STALL置1。

步进电机

图11:电机1正常转动时OUTA1和OUTA2之间波形

步进电机

图12:电机1堵转时OUTA1、OUTA2波形

步进电机2:1.65kHz step频率,20kHz调制频率,正常转动时OUTA1、OUTA2反电势为11.5V,如图13。堵转时OUTA1、OUTA2之间的反电势为1.9V,如图14。

寄存器CONFIG_5配置为寄存器0x078001(CV_DELAY=0)在零电流结束位置采样。CVLLA配置 为0x0E00DB(2.98V)。当电机堵转时,可以检测到FUNCTION_ERR置位,回读STA_1,STALL置1。

步进电机

图13:电机2正常转动时OUTA1和OUTA2之间波形

步进电机

图14:电机2正常堵转时OUTA1和OUTA2之间波形


 

审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分