采用STM32控制L6470步进电机驱动器

2018-12-02 13:47

龙源期刊网 http://www.qikan.com.cn

采用STM32控制L6470步进电机驱动器

作者:王凯 韩力立

来源:《电子世界》2012年第18期

【摘要】常用的步进电机控制器,根据不同的运动方式需要由单片机发出不同频率的和数目的脉冲信号到专用控制芯片,而ST公司的数字控制电机驱动芯片L6470内部数字控制系统可实现完备的运动曲线控制方案,只需要使用单片机发出命令告诉它要怎样运动即可,简化了电路和程序。

【关键词】数字控制内核;微步;STM32;SPI接口

步进电机是将电脉冲信号变为电机角位移的或机电执行元件,步进驱动器接收到一个脉冲,电机旋转一个固定的角度,非常适合单片机控制,因此可以用单片机控制脉冲的数量来控制电机的旋转角度,控制脉冲的频率来控制电机的旋转速度,而改变电机电流的方向可以改变电机的旋转方向。

ST公司的L6470省去了单片机的这些工作,单片机只要通过命令告诉L6470以什么样的速度运行到什么位置停止,电机就会在L6470数字内核的控制下按指定方式运行,这些只要发送一个函数命令即可,剩下的就交给L6470去完成。 1.系统原理框图

如图1所示,整个系统由4部分组成,电源、单片机(MCU)、L6470、电机,其中电源的24V给L6470的功率驱动电路供电,24V经过DC—DC模块转换为3.3V分别给单片机和L6470的数字控制部分供电。单片机通过SPI接口控制L6470,而L6470把各种状态位反馈回单片机。上位机可以通过串口命令控制电机。 2.驱动芯片L6470简介

L6470是ST公司生产的新一代两相步进电机驱动芯片,可以在8~45V的宽电压下工作,峰值电流7A(平均电流最大3A)。内部集成两个低导通电阻的DMOS全桥电路和数字控制内核,可以高效地驱动步进电机,精确的片上电流检测电路有完备的电流控制能力和过电流保护。独特的控制系统可以把单步细分为最多128微步,使运动效果更平滑稳定。数字控制内核通过配置制定寄存器能够按照用户定义设置加速、减速、匀速和运动到目标位置等运动方案。具有完备的过热、欠压、过流、当机、反电动势补偿等保护方案。所有的命令和数据寄存器都由一个标准的SPI接口访问和控制。 2.1 运动控制命令

单片机通过SPI接口可以向L6470发送以下4种不同的运动控制命令。

龙源期刊网 http://www.qikan.com.cn

恒速命令:让电机以设定的加减速度旋转到恒定的速度。

绝对位置命令:设定电机以指定路径或最小路径旋转到指定位置,然后停止。 运动命令:让电机按指定的方向运动指定步进数目 停止命令:使电机停转。

以上4种命令配合加减速控制,可以实现复杂的运动控制方案,不再需要单片机来计算脉冲频率、脉冲数目,脉冲时序等参数。 2.2 内部寄存器说明

L6470内部一共有25个可用寄存器,每个寄存器对应某种控制功能或状态位,单片机通过SPI接口访问或改写这些寄存器地址里面的内容。

有的是用于控制的,主要有:绝对位置、电气位置、运行速度、最大/最小速度、加/减速度、步进单位、过电流门槛、保持/运行/加速/减速PWM功率周期、振荡器频率、PWM频率。

有的是用于状态检测的,比如过流、过压、欠压、过热、失步等警告。

这些参数的设置需要参考《L6470数据手册》和所用步进电机的参数值,比如步进电机的转速、扭矩、相位电阻、力矩—频率特性曲线等。 2.3 相位电流控制

通常情况下,步进电机驱动电路是电流式控制设计,电流控制器监测并控制绕组电流强度,因为电源电压变化、停转等会导致电流有很大变化,而且,随着转速提高或减小,电机的反电动势(BEMF)的变化也会导致绕组电流的变化。L6470可以通过在电机绕组上施加电压来控制相电流。虽然不能直接控制相电流的幅度,但是,相电流与相电压的大小、负载、转矩、电机电学特性和转速密切相关。有效输出电压与电机电源电压和补偿系数Kval的积成正比。

KVAL=((KVAL_X+BEMF_COMP)×VSCOMP ×K_THERM)×microstep

其中KVAL_X是当前Kval值,BEMF_COMP是反电动势补偿因子,VSCOMP是输入电压,K_THERM是线圈电阻补偿因子,microstep是当前设置的微步数。


采用STM32控制L6470步进电机驱动器.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:生态系统知识点的总结

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: