基于DSP的步进电机S曲线加减速控制
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于DSP的步进电机S曲线加减速控制
郭庆;郭银峰;徐翠峰
【摘要】为了解决传统的麻花钻头修磨设备修磨效率低下、成本较高等问题,研制了一种高效的麻花钻头全自动修磨设备.以TMS320F2812处理器为核心,采用S曲线算法实现步进电机加减速控制.对S曲线算法进行分析推导,对实际运动中可能出现的情况进行分析,采用光电编码器进行脉冲测试.实验结果表明,与其他算法相比,S 曲线算法能够减少柔性冲击,提高系统的稳定性和可靠性.
【期刊名称】《桂林电子科技大学学报》
【年(卷),期】2018(038)001
【总页数】4页(P41-44)
【关键词】麻花钻头;步进电机;TMS320F2812;S曲线加减速
【作者】郭庆;郭银峰;徐翠峰
【作者单位】桂林电子科技大学电子工程与自动化学院,广西桂林 541004;桂林电子科技大学电子工程与自动化学院,广西桂林 541004;桂林电子科技大学电子工程与自动化学院,广西桂林 541004
【正文语种】中文
【中图分类】TP273
作为一种执行器件,步进电机在机电一体化中发挥着非常重要的作用,在各种控制场合得到了广泛的应用[1]。
步进电机区别于其他电机最主要的特点是采用脉冲驱动
方式,因此可以与现代的数字控制技术相结合。
步进电机作为一种可以开环使用的
执行器件,具有快速起动、停止,转速与输入时钟频率成正比,能直接接受数字量等特点。
但是步进电机的最大启动频率与最大运行频率相比要低很多,若按最大运行频
率启动,电机将产生丢步或不运行的情况[2]。
由于系统的惯性、负载的作用,若立即停止发送脉冲,步进电机不会立即停止,有可能发生超过终点的现象。
因此在控制过
程中,步进电机需要进行加速、匀速、减速这3个过程,使电机最终平稳地停在指定位置。
鉴于此,提出了基于TMS320F2812的步进电机S曲线加减速控制算法[3]。
1 TMS320F2812脉冲产生原理
TMS320F2812是TI公司生产的一款用于控制的32位定点DSP芯片,CPU主频
高达150 MHz,时钟周期为6.67 ns。
采用哈佛总线结构可以通过独立的总线对多
个存储器并行访问,同时完成获取指令和数据读取操作。
与常用的单片机相比,DSP
可用于复杂的数字信号算法处理,在实时性、灵活性、数据处理能力上有明显优势。
鉴于TMS320F2812的优点,系统采用该芯片作为核心处理器[2]。
TMS320F2812具有EVA和EVB两个事件管理器模块。
事件管理器模块具有2个16位的通用定时器(GP)、3个比较单元、3个捕获单元以及一个正交编码脉冲电
路(QEP)。
每个通用定时器都有一个比较寄存器和一个脉冲输出引脚TxPWM。
以事件管理器中的定时器为例,通过定时器、计数器、寄存器的值不断与比较寄存器
的值进行比较。
若二者的值相等,且定时器比较功能被使能以及定时器比较输出被
使能,则定时器对应的引脚T 1 PWM_T 1 CMP就会输出PWM波形[2]。
当定时器、计数器、寄存器处于连续增/减计数模式时,定时器产生一对对称的PWM波形,如
图1所示。
图1 对称的PWM波形Fig.1 Symmetrical PWM waveform
PWM的周期为:
频率为:
当GPTCONA的位T 1PIN为高电平有效时,PWM的占空比为:
当GPTCONA的位T 1PIN为低电平有效时,PWM的占空比为:
其中:T 1PR为定时器的周期寄存器,用于存放定时器设置的周期值;T CLK为定时器T 1的时钟。
因此,通过在程序中改变定时器、计数器、寄存器和比较寄存器的值,就能够控制脉冲输出引脚产生PWM脉冲信号。
2 S曲线加减速控制模型及离散实现方法
急动度是描述加速度变化的物理量,通过对加速度在时间上进行积分即可得到急动度[3]。
S加减速曲线的特点是加速度缓慢变化,且速度变换的过程中未受到柔性冲击,S曲线加减速曲线如图2所示。
图2 S曲线加减速Fig.2 S-curve acceleration and deceleration
在0-t 1时间段内,由初始速度v 0加速至中间速度v 1,此时急动度j为c,加速度a 从0开始增加;t 1-t 2时间段内,速度由中间速度v 1加速至最大速度v max,此时急动度j为负值,加速度a逐渐减小至0;t 2-t 3为匀速段,保持速度v 1不变;t 3-t 4,t 4-t 5为减速阶段,与加速段相似,加速度为负值。
对加速阶段的曲线方程作如下分析:
1)0-t 1时间段内,急动度j为常数c(c>0),故加速度为:
对上次进行积分,得到S曲线方程为:
此时位移s的方程为:
2)t 1-t 2时间段内,急动度j为-c,对急动度积分,可得
其中时刻t 1可由速度v 1确定,由式(2)可知,
将t 1代入a并积分,得出曲线方程为:
式(6)、(10)分别为0-t 1、t 1-t 2时间段的 S曲线方程[3],式中c值为常数,决定加减速过程的快慢,减速阶段曲线算法与加速阶段一致,可看做其逆过程[1]。
然而上述公式都是连续变化的,但是DSP处理的是数字信号,因此需要对连续信号进行量化取样,把连续信号转化为离散信号,将连续曲线转化为脉冲信号的方法是把曲线离散化为各个频段,在内存中生成相对应的频率表,然后查表,依次加载各个频段,使控制系统实际产生的脉冲曲线与理论曲线相拟合。
系统运行时各阶段曲线离散化如图3所示。
图3 曲线离散化Fig.3 Curve quantization
实现离散化的方法是将整个运行过程需要的时间等分成若干个固定长度为t x的时间段,通过对曲线方程取样决定每个时间段的频率值,然后时间t以t x为跨度递增,同时读取取样值组成频段表。
3 实际运行过程分析
在实际运动过程中,由于速度和距离因素的影响,实际曲线与标准的7段S曲线会有偏差。
设备需要一个加速、减速的过程,因此电机的起始频率和停止频率均要小于电机正常的运行频率,因此,S加减速曲线可能出现如图4、5所示2种情况。
图4 包含匀加速的情况Fig.4 Exclude uniform acceleration
图5 不包含匀加速的情况Fig.5 Uninclude uniform acceleration
图4 的运动过程符合S曲线,由于受速度和距离的影响,电机在运行过程中能够加
速到给定的正常运行频率,然后在这一频率匀速运动一段时间,最后按给定的曲线减
速至电机的停止频率[4]。
图5的运动过程未出现匀速阶段,电机按照曲线达到最高频率后直接开始减速。
因此,根据电机运动所要求的最高运行频率、最大运行速度、加速阶段位移、减速
阶段位移、运动过程的总位移等因素综合考虑电机的运行曲线。
4 用TMS320F2812实现电机加减速
主程序流程图如图6所示。
首先对DSP进行系统初始化,对各个模块进行初始化,
然后加载事先计算好的加速阶段频率表(脉冲频率由低到高),系统开始以初始速度运行,每发一次脉冲,就从事先加载的频率表中取出下一个值赋给计数器寄存器,同时给比较寄存器赋其1/2的值(其目的是确定占空比为50%),同时对定时器发出的脉冲
进行计数,当频率表中的数据被全部调用后,电机到达了设备所需的最大速度,此时脉冲计数完成,加速阶段结束。
减速阶段电机以最大速度开始运行,同时开始调用事先
加载的减速阶段频段表,并对脉冲个数进行计数,当脉冲计数完成时,设备停止运动[7]。
图6 主程序流程图Fig.6 Flow chart of main program
5 效果分析
为了验证电机运行是否符合S曲线,需要对电机的位置进行实时检测。
光电编码器
通过连轴器与步进电机转轴相连接,光电编码器提供2组具有90°相位差的脉冲序列。
电机的速度和位移由脉冲的频率和数量决定,旋转方向由脉冲相位决定。
编码
器将信号输入到TMS320F2812的正交编码脉冲(QEP)电路[5]。
选择事件管理器
A的通用定时器T 2对输入的正交脉冲进行解码和计数,通用定时器T 2为QEP电路提供时基。
步进电机旋转时,增量式光电编码器会产生正交编码脉冲,即步进电机
的反馈信号,将这两路脉冲经过电平转换后分别输入到引脚CAPl_QEPl和
CAP2_QEP2[9]。
QEP电路对两路正交编码信号进行沿计数(上升沿和下降沿均计数),并且在每个沿产生一个时钟脉冲,为定时器T 2提供时钟。
值得一提的是,要使QEP电路正常工作,必须使T 2工作在定向增/减模式,在此模式下,QEP电路不仅为定时器T 2提供计数,而且还决定了它的方向[6]。
增量式光电编码器HEDS-5540 H14的特点是步进电机每转一圈编码器就能产生1600个脉冲信号。
使用定时器T 1的周期中断,使得T 1每隔时间t读取一次周期寄存器的值,2次周期寄存器值的变化量为M,则经过时间t步进电机旋转的角度为[10]:
电机的转速为:
根据式(11)、(12),可得电机位置与T 2CNT值之间的关系,如表1、2所示。
表1 计数器寄存器与电机顺时旋转Tab.1 The counter register rotates clockwise with the motorT 2CNT 电机位置T 2CNT 电机位置-45°799 135°1990°999 180°39945°1199 225°0 59990°1399 270°
表2 计数器寄存器与电机逆时旋转Tab.2 The counter register is rotated counterclockwise with the motorT 2CNT 电机位置T 2CNT 电机位置199 270°999 90°399225°1199 45°599180°1399 0°799135°
1599 -45°
由表1和表2可知,电机能够按照S曲线运行。
6 结束语
加减速控制是步进电机运动控制中的重要环节,直接影响系统的效率和稳定性[10]。
系统采用TMS320F2812实现S曲线算法,并通过脉冲测试进行了验证。
结果表
明,S曲线算法能够使步进电机快速平滑地完成加减速运动,满足了麻花钻头自动修磨设备要求。
参考文献:
[1] 黄杨晖,戴曙光.DSP在电机控制系统中的应用与研究[J].仪器仪表学
报,2003,24(4):590-592.
[2] 李晓菲,胡鸿.步进电机加减速控制规律[J].机电产品开发与创
新,2006,19(1):122-123.
[3] 简毅,刘宝.基于AT91SAM9261的步进电机S曲线加减速控制研究与实现[J].轻工机械,2012(3):62-66.
[4] 田心军.基于DSP的步进电机控制系统[D].长沙:湖南大学,2014:12-20.
[5] 顾卫刚.手把手教你学DSP[M].北京:北京航空航天大学出版社,2011:5-80.
[6] 孙丽明.TMS320F2812原理及其C语言程序开发[M].北京:清华大学出版
社,2008:9-60.
[7] 许贤泽,喻佳,张立英.步进电机多轴联动DSP控制系统研究[J].机电产品开发与创新,2005,18(5):115-117.
[8] 张严林,李海生,钟震宇.步进电机三轴联动的快速加减速算法研究[J].微计算机信息,2009,25(8):111-113.
[9] 王晓明,王玲.电动机的DSP控制TI公司DSP应用[M].北京:北京航空航天大学出版社,2004:229-235.
[10] 杨超,张冬泉.基于S曲线的步进电机加减速的控制[J].机电工
程,2011,28(7):813-817.。