基于模糊PID的步进电机速度控制

2019-01-02 09:01宗涛,王直,许蓉,周韦润,陆蓉
软件 2019年12期
关键词:步进电机PID控制

宗涛,王直,许蓉,周韦润,陆蓉

摘  要: 随着技术的进步与科技的发展,步进电机广泛的运用于工业生产,对步进电机的速度控制和位置控制也愈加严格。仔细分析S型曲线控制,将S 型运动曲线分为加加速段、匀加速段、减加速段、匀速段、加减速段、匀减速段、和减减速段。为了优化步进电机开环控制系统,通过对步进电机的速度控制的研究,运用PID控制和模糊PID控制两种控制方法对步进电机速度进行控制,对二者的控制效果分别讨论,选择更优的控制方法,使步进电机速度曲线实现S型曲线,提高步进电机的精确性和可靠性。

关键词: 步进电机;S型曲线控制;PID控制;模糊PID控制

中图分类号: TP273.2    文献标识码: A    DOI:10.3969/j.issn.1003-6970.2019.12.044

本文著录格式:宗涛,王直,许蓉,等. 基于模糊PID的步进电机速度控制[J]. 软件,2019,40(12):201205

Speed Control of Stepping Motor Based on Fuzzy PIDNAME

ZONG Tao1, WANG Zhi2, XU Rong2, ZHOU Wei-run3, LU Rong1

(1. Jiangsu University of Science and Technology, College of Electronic and Information Engineering, Zhenjiang, Jiangsu 212000, China;

2. Jiangsu University of Science and Technology, College of Computer Science, Zhenjiang, Jiangsu 212000, China;

3. Jiangsu Jurong Pumped Storage Energy Co., Ltd., Zhenjiang, Jiangsu 212000, China)

【Abstract】: With the progress of technology and the development of science and technology, stepper motors are widely used in industrial production, and the speed and position control of stepper motors are more and more strict. By carefully analyzing the S-curve control, the S-curve can be divided into acceleration, uniform acceleration, deceleration, acceleration, deceleration, deceleration and deceleration. In order to optimize the open-loop control system of stepper motor, through the study of the speed control of stepper motor, two control methods, PID control and fuzzy PID control, are used to control the speed of stepper motor. The control effects of the two methods are discussed separately, and a better control method is selected to make the speed curve of stepper motor realize the S-shaped curve. High accuracy and reliability of stepping motor.

【Key words】: Stepping motor; S-curve control; PID control; Fuzzy PID control

0  引言

步进电机是将电脉冲信号转变为角位移或线位移的开环控制的电机,具有成本低、易于控制和方便定位等優点,所以被广分运用于工业、军事、医疗、汽车还是娱乐业中。由于步进电机的广泛运用,对步进电机的控制研究也越来越多。步进电机的转速完全取决于控制它的脉冲信号的频率。控制器每给步进电机一个脉冲,步进电机就会转动一次,所以通过控制脉冲信号的频率和脉冲信号数就可以控

制步进电机的转动速度和角位移,便于实现对步进电机的速度控制。

在现代工业生产中,需要步进电机做到实时性、快速响应等要求。而步进电机在快速运动时,骤停、频率突变和方向变更都容易出现电机的丢步、堵转和过冲等情况。本课题通过对模糊PID控制理论的分析研究,将经典PID控制算法与模糊控制相结合,应用于步进电机的转速控制,减少步进电机失步、超步现象的产生。

1  步进电机速度控制

步进电机的工作原理是对接收到的每个电脉冲信号,按设定的方向转动一个固定的角度。所以电机的角位移完全可以通过控制给定的电脉冲信号的个数来控制,电机的速度可以通过控制每单位时间的脉冲信号个数来实现[1]。在实际应用中,步进电机的输出转矩会随着脉冲频率的增加而减小,当步进电机启动时脉冲频率越高,步进电机的输出转矩越小,其带负载能力越差,所以起动时容易出现失步现象,停止时容易出现超步现象。为了使步进电机启动后能迅速达到所要求的最大速度,且不出现失步或超步现象,关键是步进电机在刚启动时对其进行速度控制,使加速度达到力矩的要求[2],在停止时,也对其速度进行控制,使步进电机实现缓慢减速。

因此,步进电机的速度控制过程可分为:加速过程、匀速过程、减速过程,步进电机控制要求其加速、减速过程时间尽可能短,匀速过程时间尽可能长。特别是在实际运行中,从步进电机启动到停止的运行要求步进电机的运行时间最短,需要步进电机更快的加速过程、更短的减速过程和步进电机更快的达到要求恒定速度下的最高速度。

步进电机的速度曲线控制方式主要可分为三种:(1)匀加速曲线控制;(2)梯形曲线控制;(3)S型曲线控制[3]。

匀加速曲线控制由于加速度恒定,不利于步进电机速度控制,故常不采用。

梯形曲线控制由于步进电机刚启动时不利于对初速度进行控制,初速度较大,呈现匀加速曲线运行,容易出现失步现象;在步进电机即将到达目标位置时,速度呈匀减速变化,易出现超步现象。所以梯形曲线控制无法对步进电机的位置进行精确控制。

S型曲线控制是现在常使用的一种控制方法,通过设计人员编写程序实现步进电机运动的速度形状呈现S 型曲线[4]。S型曲线可根据加速度的变化细分为以下几个阶段:加加速阶段、匀加速阶段、减加速阶段、匀速阶段、加减速阶段、匀减速阶段和减减速阶段,如图1所示。S型曲线可以很好的体现电机速度的变化过程,利于设计人员加以控制。同时能够保证电机平稳高效的运行,所以S型曲线控制得到广泛的运用。

S型曲线控制的控制步骤是在t0时刻,由于步进电机启动阶段的加速度较小,为了避免在启动阶段由于步进电机的初始速度变化过快造成的振动和噪声[5-7],所以缓慢增大步进电机的初始加速度,步

图1  S型曲线控制

Fig.1  S-curve control

进电机速度也随着缓慢增大;到达t1时步进电机的加速度恒定不变,步进电机速度实现匀速增大;当到达t2时此时电机即将达到最大速度,加速度在减小,步进电机速度处于减加速阶段; 待步进电机达到t3时刻后加速度为0,步进电机运动至最大速度后做匀速运动;t4时刻时,加速度迅速变小,电机保持缓慢减速运行,有利于避免步进电机振动; 在t5时刻此时步进电机的运动速度快速降低;在 t6时刻步进电机减加速度变小,步进电机开始缓慢减速,直到速度为0,有利于在步进电机即将到达目标位置时避免由于步进电机振动过大或者速度过大引起过冲的情况。

2  PID控制

2.1  PID控制原理

PID控制器是运用最为广泛的控制方式,通过将实际值与预期值相互比较得到偏差[8],把这个偏差值作为新的输入,以历史数据和偏差的出现率作为依据来调整输入值,将比例控制、积分控制和微分控制相结合来控制被控对象[9]。PID控制系统由PID控制器与被控对象组成[10],其控制系统原理图如图2所示。

图2  PID控制系统

Fig.2  PID Control System

其中输出信号为,PID控制器输出的即为步进电机的运行速度(步进电机每秒运行步数)。输出信号即为步进电机运行步数。

2.2  PID控制设计

PID控制器的输出信号与输入信号之间的差值:

(1)

PID控制器的控制规则为:

(2)

根据传递函数的定义,可将PID的控制准则转换如下:

(3)

式中是比例系数;是积分时间常数;是微分时间常数。

(1)比例控制

比例控制主要作用于步进电机加速度的过程,在产生偏差后,控制器将控制系统的偏差值成比例变化,值越大,步进电机加速度就越大。

(2)积分控制

PID控制器的输出信号与输入偏差信号的积分成正比关系,通过对偏差的积分作用使得输出增大或减小,直到偏差为零,积分环节停止作用。

(3)微分控制

PID控制器的输出与偏差的变化率成正比关系,微分控制主要作用是在步进电机控制中加入一个修正信号,避免PID控制器出现过度超调的情况。

2.3  PID控制仿真

仿真条件为:输入信号为50000;仿真结果如图所示。

图3  PID控制系统仿真图

Fig.3  Simulation diagram of PID control system

通过观察仿真图像可知,PID控制器虽然可以实现步进电机的匀加速控制,具有较好的动态响应特性,但是其控制效果并不理想。在步进电机刚启动时,由于的值较大,所以步进电机具有较大的初速度,容易出现失步的现象。

3  模糊PID控制

3.1  模糊PID控制

模糊PID控制是将模糊控制理论与PID控制理论相结合应用于步进电机控制系统[11],充分发挥两种控制策略各自的优势,提高步进电机控制系统控制性能。其控制系统原理图如图4所示。

图4  模糊PID控制系统

Fig.4  Fuzzy-PID control system

3.2  模糊PID控制设计

模糊PID控制主要由三個部分组成[12]:(1)模糊语言变量;(2)各语言变量的隶属函数;(3)建立规则。

3.2.1  模糊语言变量

本课题基于模糊PID控制以及电机控制系统的输入量特性。将偏差e和偏差变化率ec作为输入量,步进电机的速度为输出量。、、作为模糊控制器的输出量。

为了便于设计模糊PID控制器,将模糊PID控制器的输出信号与输入信号之间的差值设计为:

(4)

3.2.2  各语言变量的隶属函数

隶属函数[13]是模糊规则设计中的重要部分,是对模糊控制系统的模糊集合的定量描述。每个人对于隶属函数的设想都不相同,所以对于同一种控制与同设计的隶属函数也会有所不同,也可以说每个人在设计隶属函数时都会有具有自己的主观性,会被各自的经验所影响,所以很难找到一种适合所有受控对象的隶属函数计算方法。

3.2.3  规则设计

(1)当误差e很大且偏差变化率ec为0时,为了使系统具有较小的启动速度,应该取较小的值,同时为了预测误差的变化趋势,避免步进电机在启动时获得较大的启动速度,应取较小的值;使步进电机的启动速度在可控的范围。

(2)随着步进电机的运行速度缓慢增加,偏差变化率ec也在缓慢增加。为了提高系统的快速性、减少调节时间,逐步增加值,并适当增加值。

(3)当误差e处于中等大小时,此时,步进电机的缓慢加速的过程已经完成,应当考虑步进电机的匀加速过程。所以,要取较大的值,同时,为了更好的缩小系统的响应时间,增加值。

(4)当误差e较小时,此时,步进电机的匀加速过程已经完成,应开始进行匀速过程。由于,步进电机在加速度骤降时,转子惯性的存在,容易出现超步的情况。不利于对步进电机的位置进行精确控制,所以要尽量避免这种情况的发生。和值应取固定值。由于误差e值随着时间在逐渐变小,步进电机的加速度也在逐渐减小。能够实现减加速的过程。在步进电机的速度变小时,令其速度保持不变,实现步进电机的匀速过程。

(5)当误差e为负值时,在模糊PID控制器中加入积分控制。在PID控制中,积分控制对误差影响取决于时间的变化,随着积分时间的增加,积分项也随着增大。这样,即便PID控制中的误差很小,随着积分控制的时间增加,积分项的值也越来越大,所以即使PID控制中的误差很小,但是因为积分项的值推动控制器的输出增大使稳态误差进一步减小[14],直到等于零。 因为要实现步进电机匀减速、减减速等过程,将模糊PID控制器的输出信号与输入信号之间的差值设计为公式4。此时,模糊PID控制器的积分项会随着时间的增加而减小,直到输出信号等于输入信号,步进电机速度降为0。

根据以上原则,采用“IF A and B THEN C and D and E”形式,通过多次反复试验对比,最终确立控制规则。部分控制规则如下:

1. If (e is PB) and (ec is Z) then (kp is PS)(ki is Z)(kd is PS) (1)

2. If (e is PB) and (ec is NS) then (kp is PS)(ki is Z)(kd is PS) (1)

3. If (e is PB) and (ec is NM) then (kp is PM)(ki is Z)(kd is PS) (1)

4. If (e is PB) and (ec is NB) then (kp is PB)(ki is Z)(kd is PS) (1)

5. If (e is PB) and (ec is NBS) then (kp is PM)(ki is Z)(kd is PS) (1)

6. If (e is PB) and (ec is NBM) then (kp is PS)(ki is Z)(kd is PS) (1)

7. If (e is PSM) and (ec is NBS) then (kp is PS)(ki is Z)(kd is PS) (1)

8. If (e is PSM) and (ec is NBM) then (kp is PS)(ki is Z)(kd is PS) (1)

3.3  模糊PID控制仿真

仿真条件为:输入信号为50000;仿真结果如图5所示。

仿真结果如图6所示。

通过观察仿真图像可知,模糊PID控制在步进电机刚启动时,步进电机速度缓慢增大,避免了起步阶段由于速度变化过快造成的系统的振动和噪声过大的情况[15];一段时间后,步进电机速度匀速增大;当速度即将到达最大速度时,步进电机速度缓慢增大;到达最大速度时,步进电机实现匀速运动;一段时间后,步进电机由匀速运动变为缓慢减速运动;再由缓慢减速变为匀减速运动;当即将等于输入信号时,步进电机速度缓慢减小,直到速度为0。步进电机到达指定位置。

图5  模糊PID控制系统仿真图

Fig.5  Simulation diagram of fuzzy-PID control system

图6  模糊PID控制系统输出信号仿真图

Fig.6  Simulation diagram of output signal of

fuzzy-PID control system

4  结论

本文提出一种基于模糊PID控制的步进电机控制方法。通过研究步进电机的运动方式,通过设计模糊PID控制规则,来控制步进电机运行方式,实现S型曲線运动,减少失步和超步现象的发生,设计出适用于步进电机控制要求的模糊PID控制器。

通过将PID控制的步进电机控制方法与模糊PID控制的步进电机控制方法对比,发现PID控制的步进电机控制方法虽然可以实现步进电机的匀加速控制,但是其控制效果并不理想。而模糊PID控制的步进电机控制方法依据偏差e和偏差变化率ec作为输入量,得到不同时段的、、值。实现步进电机运动的速度形状呈现 S 型曲线,同时兼顾了电机运行的快速性和平稳性。

参考文献

[1]崔洁, 杨凯, 肖雅静, 等. 步进电机加减速曲线的算法研究[J]. 电子工业专用设备, 2013, 43(8): 45-49.

[2]周忠辉. 步进电机驱动的实现方法[J]. 仪表技术与传感器, 2008(11): 61-62.

[3]蔡锦达, 石恩琪, 储茂兵. 基于单片机的步进电机S形曲线调速控制[J]. 包装工程, 2007, 28(7): 77-78.

[4]唐小琦, 何王勇, 李勇波. 一种预判插补时间的S形加减速插补算法[J]. 中国机械工程, 2011, 22(23): 2794-2797.

[5]王勇, 王伟, 杨文涛. 步进电机升降速曲线控制系统设计及其应用[J]. 控制工程, 2008, 15(5): 576-579.

[6]陈艳玲. 浅谈步进电机控制系统[J]. 工程技术: 全文版, 2016(2): 00251-00251.

[7]Jun Q L, Liang B. Research on S-Curve Speed Control for Step Motor Based on the MCU[J].Applied Mechanics & Materials, 2013, 51(23): 709-713.

[8]杨新华. PID 算法的科学研究分析. 电子技术与软件工程. 2015(18): 151-151.

[9]尹君驰. 基于MATLAB的PID控制系统参数调节. 电子测试. 2014(3): 61-63.

[10]Sokhom Sim, Wilson So, Hen-Geul Yeh. SSR alleviation via analog and digital PID controller. 2016 IEEE Green Energy and Systems Conference (IGSEC). 2016 .

[11]刘红兵. 模糊PID自整定技术在PLC中的实现[J]. 可编程控制器与工厂自动化, 2013(1): 99-103.

[12]牛秦洲, 张宗喜. 基于模糊推理PID参数自整定在鼓风曝气控制中的应用[J]. 制造业自动化, 2011, 33(18): 101-104.

[13]李健, 王冬青, 王丽美. 模糊PID控制器设计及MATLAB仿真[J]. 工业控制计算机, 2011, 24(5): 56-57.

[14]翟雁, 郭阳宽, 祝连庆, 等. 步进电机模糊PID闭环控制系统仿真研究[J].现代电子技术, 2015, 38(11): 146-149.

[15]YH Xiong, CL Zhang, BX Fu. Steam Pressure of Foaming Machine of Fuzzy PID Control and Simulation. Key Engineering Materials. 2013, 531-532: 726-731.

[16]韓文虹. 一种基于模糊PID的工业锅炉温度控制系统设计. 制造业自动化. 2011, 33(8): 134-136.

猜你喜欢
步进电机PID控制
内模控制在火电厂主汽温系统中的应用
常规PID控制和常规模糊控制的比较