步进电机是将电脉冲信号转换为角位移或者线位移的一种特殊开环线性执行元件[1]. 其主要优势在于成本低、驱动控制简单,且没有累积误差,因此被广泛应用于工业控制领域,如数控系统、医疗器械等[2]. 在步进电机的高速频繁启停、快速切换方向的应用场合下,电机启动过程中频率不能过高,否则会导致电机失步甚至堵转,同时在电机高速旋转时迅速停止或者切换方向将导致电机出现过冲现象. 为了有效解决上述问题,需要合理地设计步进电机加减速过程,使电机循序渐进地实现状态切换. 常见的步进电机加减速曲线有3类:梯形曲线、指数型曲线、S型曲线[3]. 其中梯形曲线具有计算简单的优点,但是该曲线没有考虑电机力矩变化的特点,加减速过程不符合步进电机的机械特性,同时在加减速完成时,加速度存在突变,将会产生机械冲击诱发振动. 指数型曲线较好地符合了步进电机力矩随速度升高而减小的特点,充分利用了电机的有效转矩,同时能够减弱机械冲击,但这种加速过程需要比较长的时间而且计算较复杂[4-5].S型曲线克服了梯形曲线的缺点,同时与指数型曲线相似符合步进电机的机械特性,而且计算简单,因此本文将对S型曲线加以研究.
1 步进电机S型曲线理论依据 1.1 步进电机的脉冲频率–转矩特性步进电机的基本特性包括电机静态特性、动态特性、电机启动特性和电机制动特性[6]. 在研究步进电机S型加速曲线中最关注的是步进电机的动态特性中的脉冲频率–转矩特性和脉冲频率–惯量特性,步进电机的动态转矩包括失步转矩和牵入转矩. 牵入转矩大小从0 pps到最大自起动脉冲频率范围内逐渐减小到0. 失步转矩大小从0 pps到最大效应频率范围内逐渐减小到0. 由牵入转矩曲线和失步转矩曲线围成的区域称为运行区域,电机在此区域内可带相应负载同步连续运行,超出范围的负载转矩将不能连续运行,出现失步现象[6-7]. 失步转矩与牵入转矩在0 pps时相等. 随着控制脉冲频率的增加,带负载能力会下降. 在运行开始,控制脉冲频率应缓慢增加,以便利用低速下的大转矩,提供电机在低速运行时需要的加速转矩,减小加速时间[8].
1.2 步进电机的脉冲频率–惯量特性电机最大自启动脉冲频率P与负载惯量Jc的关系为:
步进电机的动力学方程为:
根据电机加速完成后的转速要求,用符号v表示,单位r/min,该值应小于步进电机空载启动时候的最高转速,并且随着负载的增大,电机的空载启动转速下降. 然后根据步进电机的步距角θ、电机驱动器的细分数x,来确定输出脉冲的最高频率fmax,推导过程如下:(1) 由步距角θ和细分数x,可以得到步进电机旋转1周所需要的脉冲数
步进电机加速过程的时间受到了电机力矩T、摩擦力矩Tf、负载大小L、转动惯量J等因素的影响[12].其中加速度力矩Ta=T-Tf,进一步得到加速过程的加速度a=Tf /J,注意这里的转动惯量是已将负载考虑进去的转动惯量J,最后得到加速时间
步进电机的最佳起动频率随着步距角θ、转动惯量J和摩擦转矩Tf 的增大而降低,而随着电机转矩T的增大而升高. 并且步距角θ和转动惯量J对最佳起动频率的影响较大,而摩擦转矩对最佳起动频率的影响较小. 对于负载较小、带有细分驱动器的步进电机,这里一般取fmin=0.1fm~0.3fm,其中fm为电机最大空载启动脉冲频率.
2.4 步进电机S型曲线模型的建立本工具软件选用logistic函数作为步进电机加速曲线的模型,其函数表达式为
|
图 1 a取值分别为0.5、1、2时的logistic函数图像 Figure 1 The logistic function of the image of a value 0.5, 1, 2 |
在确定a的取值和x的取值后,利用式(1)
| $f(u) = {f_{\min }} + ({f_{\max }} - {f_{\min }})\frac{1}{{1 + {{\rm{e}}^{ - au}}}},$ | (1) |
得到加速曲线各点的频率,其中u为加速过程中t时刻曲线横坐标取值,u的取值为
基于上面提到的步骤,利用QT平台开发出加速曲线生成工具软件[13-18],该工具软件能够根据用户设定的步进电机参数和加速过程要求参数,生成对应的曲线数据,并且可以将数据导出成.C和.H文件直接添加到单片机工程下进行调试. 生成工具界面如图2所示,界面右侧有曲线参数设定和电机参数设定,参数的设定值将决定生成的曲线数据,左侧为根据生成的曲线数据描绘出来的曲线图,点击导出曲线数据按钮将在用户指定的路径下生成.C和.H文件,该文件中包含了曲线的所有数据点,以C语言数组的形式提供给用户,可以将这两个文件添加到单片机的工程中,单片机程序将方便地使用生成的曲线数据.
|
图 2 加速曲线生成工具软件界面图 Figure 2 Software interface of acceleration curve generation tool |
本系统由STM32F103主控MCU模块、TB6560AHQ步进电机驱动芯片模块、相对式旋转编码器速度检测模块、串口输出模块、PC端显示模块组成,系统框图如图3所示。
|
图 3 单片机控制平台系统框图 Figure 3 System block diagram of microcontroller control platform |
本实验中步进电机参数设定为:电机稳定运行后的频率fmax=40 kHz,电机启动频率为fmin=4 kHz,电机加速时间fmin=1 500 ms,加速曲线阶梯数s=200. 为了保证电机的平稳性,设定驱动器的细分数为8,选用电机的固定步距角为1.8°. S型曲线的横坐标范围为(–5, 5),a的取值为0.8,根据式(1)得到速度曲线数据如表1所示,由于设定的曲线阶梯数为200,数据较多,这里只显示部分数据.
| 表 1 加速曲线数据表 Table 1 Tables of acceleration curve data |
本实验通过单片机的2个定时器,其中一个定时器控制50%占空比的驱动脉冲PWM输出来驱动步进电机的运转,电机加速过程中,另一个定时器在每Δt时间间隔内改变驱动脉冲PWM的输出频率f(t)直到加速完成,加速完成后保持输出频率为fmax,在整个过程中将单位时间内(0.2 s)旋转编码器的变化值通过串口上传至PC机,PC机通过软件将数据绘制成曲线形式,得到步进电机加速过程的速度曲线变化如图4所示.
|
图 4 步进电机加速过程速度曲线 Figure 4 Stepper motor speed curve of acceleration process |
图中横坐标t表示步进电机加速过程的时间,单位ms,纵坐标f(t)是每0.2 s时间间隔内,相对式旋转编码器的变化值,该值与步进电机的转速成正比,因此纵坐标可以看做是步进电机的转速,通过加速过程速度曲线可以看出,步进电机能够从预设的启动速度平稳地加速到预期要求速度,说明生成的加速曲线数据符合步进电机加速规律,并且设定的参数与实验所用电机相匹配. 注意在实际应用中可以通过调整电机参数和曲线参数来生成得到较理想的加速曲线.
4 结语本文引出了几种常见的步进电机加速曲线模型,并通过步进电机的脉冲频率–转矩特性、脉冲频率-惯量特性以及步进电机动力学方程得到了S型加速曲线的理论依据,然后利用QT平台设计出了一款以logistic函数为模型的S型加速曲线生成工具软件,该工具软件提供良好的用户界面,用户可设定步进电机参数和加速需求参数来生成针对特定步进电机的加速曲线,最后通过单片机控制平台来验证加速曲线数据点的正确性,通过实验得到的步进电机加速过程速度曲线,可以得出结论该工具软件能够根据需求参数得到加速曲线数据,并且生成的曲线数据可以满足步进电机加速过程的速度控制要求.
| [1] |
麦志忠, 高军礼. 步进电机软控制器的设计[J].
广东工业大学学报, 2008, 25(1): 73-76.
MAI Z Z, GAO J L. Design of step motor soft controller[J]. Journal of Guangdong University of Technology, 2008, 25(1): 73-76. |
| [2] |
廖永富, 罗忠, 冉全. 一种新型S 形曲线步进电机加减速控制方法[J].
湖北第二师范学院学报, 2015, 32(8): 32-34.
LIAO Y F, LUO Z, RUAN Q. A new S-curve acceleration and deceleration method for controllingstepping motor[J]. Journal of Hubei University of Education, 2015, 32(8): 32-34. |
| [3] |
曾康玲, 杨向宇, 赵世伟, 等. 步进电机指数加速曲线优化与实现[J].
微机, 2014, 47(6): 37-40.
ZENG K L, YANG X Y, ZHAO S W, et al. Optimization of exponential acceleration curve of stepper motor and realization on PIC[J]. Micromotors, 2014, 47(6): 37-40. |
| [4] |
曹东杰, 韩峰, 任云燕. 单片机控制步进电机按S形曲线升降频设计[J].
弹箭与制导学报, 2015, 26(2): 157-159.
CAO D J, HAN F, REN Y Y. A method to accelerate or decelerate the speed of step motor controlled by singlechip following S curve[J]. Journal of Projectiles, Rockets, Missiles and Guidance, 2015, 26(2): 157-159. |
| [5] |
李东君. 步进电动机加减速控制的查表算法研究[J].
微特电机, 2015, 43(11): 77-79.
LI D J. Study on the lookup table algorithm of acceleration and deceleration control of stepper motor[J]. Small Special Electrical Machines, 2015, 43(11): 77-79. DOI: 10.3969/j.issn.1004-7018.2015.11.019. |
| [6] |
刘筱, 吴文江, 郑默, 等. 柔性S 型加减速控制算法研究[J].
组合机床与自动化加工技术, 2014(3): 66-68.
LIU X, WU W J, ZHENG M, et al. Research on S-shaped acceleration and deceleration algorithm with high flexibility[J]. Modular Machine Tool & Automatic Manufacturing Technique, 2014(3): 66-68. |
| [7] | ZHOU L, MISAMA E A. Vibration suppression control profile generation with both acceleration and velocity constraints[J]. Proceedings of the American Control Conference, 2005, 6(2): 4736-4741. |
| [8] | MECKL P H, ARESTIDES P B, WOODS M C. Optimized curve of motion profiles for minimum residual vibration[J]. Proceedings of the American Control Conference, 1998, 23(5): 2627-2631. |
| [9] |
郭新贵, 李丛心. S 曲线加减速算法研究[J].
机床与液压, 2002, 22(5): 60-62.
GUO X G, LI C X. Studying S-shape acceleration/deceleration algorithm[J]. Machine Toll & Hydraulics, 2002, 22(5): 60-62. |
| [10] |
王勇, 王伟, 杨文涛. 步进电机升降速曲线控制系统设计及其应用[J].
控制工程, 2008, 15(5): 556-559.
WANG Y, WANG W, YANG W T. Control system design of acceleration and deceleration curves of stepping motor and its application[J]. Control Engineering of China, 2008, 15(5): 556-559. |
| [11] |
蔡锦达, 郭振云, 许智. 基于Cortex-M3 的S 型加减速控制[J].
控制工程, 2016, 23(2): 206-210.
CAI J D, GUO Z Y, XU Z. S-shape acceleration and deceleration control based on Cortex-M3[J]. Control Engineering of China, 2016, 23(2): 206-210. |
| [12] |
林宇, 刘建群, 李锻能, 等. 电机直线驱动动力学参数测试教学实验台研制[J].
广东工业大学学报, 2010, 27(1): 67-70.
LIN Y, LIU J Q, LI D N, et al. The design of the laboratory equipment for motor driven linear parameters test[J]. Journal of Guangdong University of Technology, 2010, 27(1): 67-70. |
| [13] |
李鹏军, 兰殿星, 宁文斌, 等. 基于Windows下Qt与脉冲发生器的串口通讯实现[J].
计算机测量与控制, 2016, 24(4): 206-209.
LI P J, LAN D X, YU W B, et al. Implementation of serial communication to pulse generator based on Qt in Windows enviroment[J]. Computer Measurement & Control, 2016, 24(4): 206-209. |
| [14] |
严贤, 韩秀玲. 基于Qt的串口通信应用研究与实现[J].
微计算机信息, 2012, 12(8): 114-116.
YAN X, HAN X L. The research and realization of communication of serial port based on Qt[J]. Microcomputer Information, 2012, 12(8): 114-116. |
| [15] |
余立, 李志强. 基于Qt的多串口多协议数据接收解析软件的设计与实现[J].
电子质量, 2011, 11(3): 34-36.
YU L, LI Z Q. Design and realization of multi-port, multi-protocol data receiving analytical software based Qt[J]. Electronics Quality, 2011, 11(3): 34-36. |
| [16] |
陈旭红, 高文学. Qt/Embedded串口类的设计及应用[J].
湖北汽车工业学院学报, 2010, 04(12): 51-53.
CHEN X H, GAO W X. Qt/Embedded serial port class design and application[J]. Journal of Hubei University of Automotive Technology, 2010, 04(12): 51-53. |
| [17] |
胡军锋, 宋文杰, 尤泽萌. Qt中基于线程串口采集方式的实现[J].
科技视界, 2014, 28(1): 5-6.
HU J F, SONG W J, YOU Z M. Realization of sample method based on thread serial port in Qt[J]. Science & Technology Vision, 2014, 28(1): 5-6. |
| [18] |
罗立元, 何鸿肃, 王鸿贵, 等. 电动汽车驱动装置测试与仿真系统软件的研究[J].
广东工业大学学报, 2001, 18(4): 14-19.
LUO L Y, HE H S, WANG H G, et al. Development of software system for test and simulation of motor electrical vehical[J]. Journal of Guangdong University of Technology, 2001, 18(4): 14-19. |
2017, Vol. 34

