步进电机驱动模块设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
步进电机驱动模块设计
内容:
1步进电机及其控制原理
2 步进电机驱动电路设计(经Proteus测试)
3 步进电机驱动程序设计
附录步进电机驱动程序
1 步进电机及其控制原理
步进电机是一种将电脉冲转化为角位移的数字控制执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度逐步运行的【19】。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的,同时可以通过控制脉冲频率来控制电机转动速度和加速度,从而达到调速的目的。步进电机由于没有误差累积的特点而广泛应用于各种开环控制。
目前比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、混合式步进电机(HB)等【20】。反应式步进电机一般为三相,可实现大转矩输出,步进角一般为1.5°,但噪声和振动都很大。永磁式步进电机一般为两相,转矩和体积较小,步进角一般为7.5°或15°。混合式步进电机是混合了永磁式和反应式的优点。它又分为两相和五相,两相步进角一般为1.8°而五相步进角一般为0.72°。这种步进电机的应用最为广泛。
步进电机必须使用步进电机驱动器才能工作。驱动器针对每一个步进脉冲,按一定的规律向电机各相绕组通电(励磁),以产生必要的转矩,驱动转子运动。步进电机系统的性能除与电机自身的性能有关外,还与驱动器的性能有很大关系【21】。步进电机、驱动器和控制器构成了步进电机控制系统不可分割的三大部分,典型的步进电机控制系统如图4-1所示。
图4-1 步进电机控制系统
微控制器产生控制信号和脉冲信号,脉冲分配器将微控制器产生的信号脉冲转换成有一定逻辑关系的环形脉冲,功率放大器将脉冲分配器输出的环形脉冲放大,用于控制步进电机的转动。
步进电机的控制方案常用的有以下三种【22】: (1)分立控制方案
所谓分立控制就是用电阻、电容、电感等一些元件的组合实现一定的控制功能。传统的控制方法采用电阻、电容等这些分立元件与单片机的直接相连接,而这样就有如下弊端:
a .整个开关系统的可靠性得不到保证,不利于长期反复使用。
b .由分立元件设计的开关触点容易发生氧化,缩短了开关的使用寿命。
c .过多使用分立元件,浪费大量的单片机I /O 资源,降低了CPU 的利用率。
d .大量的使用分立元件,将影响整个系统的读取速度,不利于实时控制。 (2)单个集成芯片控制方案
随着制作工艺的发展,驱动电路部分已经做了很大的改进,开始由集成芯片代替分立元件的控制方案,较分立元件控制方案而言单个集成芯片的可靠性、读取速度、CPU 的利用率都有了很大的提高,但是对于程序编写并没有太大方便性可言。
(3)联合集成芯片控制方案
使用联合集成电路芯片不仅可以避免分立元件控制方案的弊端,又可以大大减化程序。
经过以上的比较,本轮椅床的步进电机控制方案选择联合集成芯片控制。
2 步进电机驱动电路设计
由1节步进电机驱动选择联合集成芯片控制方案,其抗干扰性强,非常适合
作为小功率步进电机的专用驱动芯片。在本设计中,选用了L297和L298集成电路作为步进电机的驱动芯片。
L297和L298可以方便的组成步进电机驱动控制器,其中L297是步进电机
微控制器
功率放
大器
脉冲分
配器
步进电机
控制器(包括环形分配器)【23】。L297适用于双极性两相步进电机或单极性四相步进电机的控制。此器件的特性是只需要时钟、方向和模式输入信号,相位是由内部产生的,因此可以减轻微处理器和程序设计的负担。L298是一种专用的步进电机驱动芯片,内部为双H桥结构,L298的H桥驱动器包含四个各自独立的推挽式驱动器(即四个半桥),可单独使用。用L297输出的信号可控制L298双H桥驱动集成电路,用来驱动电压为56V,每相电流为4A以下的步进电机。L297和L298组成的步进电机控制电路具有可靠性高、体积小、成本低和节约微处理器资源等优点。本设计的步进电机驱动原理图如图4-2所示。
图4-2 步进电机驱动电路图
L297是具有20个引脚的双列直插式塑胶封装的器件,采用固定斩波频率的PWM恒流斩波方式工作。L297主要由译码器、两个固定斩波频率的PWM恒流斩波器及输出逻辑控制组成。L297的核心是脉冲分配器,它可产生三种相序,对应三种不同的工作方式,即半步方式(HALF STEP);基本步距(FULL STEP,整步)一相激励方式;基本步距两相激励方式。译码器受L297的方向输入引脚信号CW/CCW和半步方式/整部方式输入引脚信号HALF/FULL所控制。译码器内部是一个3bit的计数器,加上一些组合逻辑,可产生每周期8步的格雷码时序信号,三种方式的驱动相序都可以根据译码器输出的格雷码的顺序产生。格雷码的顺序直接与四相八拍(半步方式)相符,只要在19脚输入一个高电平即可得到半步方式相序。通过交替跳过八步顺序中的状态就可得到全步工作方式,此时在19脚输入一个低电平,即可根据译码器的状态得到单四拍或双四拍工作方式。
图4-3 半步方式相序图
步进电机驱动器与ARM微处理器的接口如图4-2所示,采用ARM处理器的I/O口控制电机驱动器。GPG5端口接CW/CCW引脚,控制电机的旋转方向。GPG6端口接CLOCK引脚,控制步进时钟脉冲。GPG7端口接HALF/FULL引脚,当GPG7为高电平时,HALF有效,四相八拍;为低电平时,FULL有效,四相四拍。GPG8端口接RESET引脚,当GPG8端口输出为低电平时,译码器恢复初始状态。在本设计中,轮椅床采用步进电机的型号为35BYJ46,为四相步进电机,并采用四相八拍的工作方式。
利用Proteus对步进电机驱动电路进行测试,由于Proteus只支持ARM7系列的少数芯片(如LPC2124等),在这里利用时钟激励源代替S3C2410的I/O口输出时钟控制信号CLOCK,其他控制信号的输入由按键完成,旨在测试该驱动电路设计的正确性。步进电机驱动电路仿真原理图4-4如所示,在半步工作模态下电机每周期完成8个动作如图4-5所示。