基于STM32的步进电机运动状态闭环检测系统设计_第1页
基于STM32的步进电机运动状态闭环检测系统设计_第2页
基于STM32的步进电机运动状态闭环检测系统设计_第3页
基于STM32的步进电机运动状态闭环检测系统设计_第4页
基于STM32的步进电机运动状态闭环检测系统设计_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、    基于stm32的步进电机运动状态闭环检测系统设计    胡向东摘 要为了实时检测步进电机在运动过程中是否发生了失步或者堵转情况,设计一种基于stm32的闭环检测系统。系统中使用stm32f429微处理器向步进电机驱动器发送控制信号,并通过增量编码器将步进电机的运动状态反馈到stm32f429中,以此来构成一个闭环的控制系统。使用该系统可以实时确定步进电机的运动状态,从而判断出步进电机是否在运动的过程中发生了失步或者堵转的情况。关键词步进电机;控制信号;闭环控制;增量编码器;stm32f4290 引言步进电机是将电脉冲信号转变为角位移或线位移的开环

2、控制元件1。步进电机驱动器每接收到一个控制信号,就驱动步进电机按设定的方向转动一个固定的步距角。由于步进电机的转动角度仅与其驱动信号的脉冲个数有关,其控制过程非常简单。步进电机每转动一圈所需要的脉冲个数是固定的,因此其只有单步转动过程中产生的单步误差而没有连续转动产生的累积误差。步进电机的这种特点使其在工业中的精确位置控制领域得到了广泛的应用。步进电机实现精确位置控制的前提条件是,其在转动过程中不发生失步或者堵转的情况。在实际应用中,步进电机会由于其驱动频率太高或者变化速度太快以及其驱动负载的改变而导致失步,从而使步进电机的位置控制精度下降,严重时会产生堵转,使步进电机无法正常工作。因此,对步

3、进电机运动状态的检测便显得十分重要。本文使用stm32f429微处理器作为主控制器构成一个闭环的步进电机控制系统来对步进电机的运动状态进行检测,通过该系统可以实时检测步进电机是否发生了失步或者堵转的情况。1 系统方案设计用于检测步进电机失步或者堵转情况的步进电机闭环控制系统结构如图1所示。在该闭环控制系统中,stm32f429微处理器发送控制信号到步进电机驱动器;驱动器接收到该控制信号后,根据设定的驱动参数来驱动步进电机;步进电机通过联轴器带动增量编码器进行转动;增量编码器在转动过程中向stm32f429微处理器发送反馈信号;stm32f429对反馈信号进行处理后得出步进电机当前的运动状态,并

4、将该结果输出到tftlcd顯示屏上进行显示。2 步进电机驱动与信号反馈步进电机选用雷赛公司生产的42hs03两相混合式步进电机,该型号步进电机的基本步距角为1.8°,单步运动误差为±5%。42hs03上有黑、绿、黄、橙、红、蓝、白、棕8根引出导线,对其进行驱动时,将黑、绿、黄、橙四根导线串联构成步进电机的a相绕组,将剩下的四根导线串联构成b相绕组,相绕组的具体串联方式如图2所示。驱动器选用雷赛公司的高性能数字式两相步进驱动器,型号为dm542s。该驱动器采用32位dsp技术,利用驱动器上的拨码开关既可以对常用的8档电流进行选择,也可以对16档细分驱动进行选择,其对控制信号的

5、响应频率最高可达200khz,具有过压、短路等保护功能。该驱动器的强大功能使其能够满足大多数步进电机驱动应用的场合。驱动器dm542s接+24v电源,使用a+、a-两个功率输出端口来驱动42hs03步进电机的a相,使用b+、b-两个端口驱动b相,驱动电流峰值设置为1.0a,平均值为0.7a。驱动器的细分设置为不细分,即步进电机以基本步距角进行转动,每转动200步所转过的角度为360°。驱动器通过信号引脚pul+、pul-来接收步进电机运动控制信号,使用dir+、dir-来接收转动方向判断信号。该运动控制信号与方向判断信号由stm32f429的gpio引脚pc6与pc7发送。由于stm

6、32f429的gpio引脚只能输出3.3v的高电平,而dm542s所接收的高电平信号电压不能低于3.5v,因此在其两者之间连接一个可以输出5v电压的高速反相器74hc04。stm32f429与dm542s的连接电路如图3所示。增量编码器型号选择分辨率为2000脉冲/转的为e6b2-cwz3e,其最大转速为每分钟6000转,理论上能够识别0.18°的转角变化,其角度测量的精度很高。e6b2-cwz3e支持+5v+12v的宽范围直流供电电压,本文选择+5v直流供电。e6b2-cwz3e有a相、b相与z相三路信号输出端,其中a相与b相成正交输出关系,即a相与b相信号在相位上相差90

7、6;2-3,编码器每转过一个刻度,a相与b相就相应输出一个脉冲信号,当编码器每转过一周,则a、b相各输出2000个脉冲信号,而z相此时仅输出一个脉冲信号。将e6b2-cwz3e的a、b两相信号分别对应连接到图3中所示stm32f429的gpio引脚ph2与ph3上,通过ph2与ph3的外部中断来捕捉增量编码器的反馈信号。3 运动状态检测方法在步进电机运动状态的检测方法借鉴了m法测量转速原理。在规定时间内测量增量编码器产生的脉冲个数,经过计算后可得被测目标的转速,这种获得转速的方法被称为m法4。在检测步进电机失步或者堵转的过程中,不需要计算转速,只需在规定时间内统计出增量编码器产生的脉冲个数,然

8、后与理论值进行对比即可。如果实际脉冲个数与理论值的差值在规定的误差范围内,则判定步进电机没有发生失步或者堵转问题;如果二者的差值超出了规定的误差范围,则判定步进电机发生了失步或者堵转问题。为了提高检测的精度,避免误判,采用4倍频的方式接收增量编码器的脉冲信号5-7。对a、b两相信号的上升沿与下降沿均进行统计并将所有脉冲个数进行叠加。由于设定了步进电机转动一圈需要200步,也就是需要200个控制脉冲信号,而编码器相应的在理论上总共会产生8000个脉冲。也就是说,步进电机每转动一步,stm32f429理论上可以接收到40个反馈脉冲信号,考虑到联轴器安装与电机振动带来的测量误差,规定接收到的反馈信号在25-55之间均有效。4 结束语通过设计步进电机的闭环控制系统,可以实时检测步进电机的运动状态,从而判断步进电机是否发生失步或者堵转情况。在设计中需要注意步进电机与增量编码器之间的连接偏差要尽可能的小,以减小测量误差,最好将二者固定在同一个基座上,步进电机固定要牢固,以减小其振动。stm32f429发送控制信号使用定时器的计数溢出中断,在中断发生后需要软件清除其相应的中断标志位。参考文献1袁赛,王德辉,曹海丽,等.基于multisim10的步进电机数控电路的分析和设计j.电子设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论