基于限幅增量式PID的直流电动机转速控制系统
2017-06-19胡传志沈建华彭晓晶
胡传志, 沈建华, 彭晓晶
(1.南通大学 计算机科学与技术学院,江苏 南通 226019;2.华东师范大学 计算机科学与软件工程学院,上海 200062;3.恩智浦半导体上海有限公司,上海 201203)
基于限幅增量式PID的直流电动机转速控制系统
胡传志1, 沈建华2, 彭晓晶3
(1.南通大学 计算机科学与技术学院,江苏 南通 226019;2.华东师范大学 计算机科学与软件工程学院,上海 200062;3.恩智浦半导体上海有限公司,上海 201203)
针对直流电动机转速控制系统中并不要求多快的响应速度,而追求平稳阶跃响应的情况,通常采用步进式PID算法,把较大的阶跃信号划分成若干较小的步长,从而逐步逼近设定值。但是该算法难以应付测量误差带来的影响,为此,设计一种基于限幅增量式PID算法的直流电动机转速控制系统,限幅增量式PID算法通过对增量式PID算法的控制量增量的幅度加以步长限制,使控制量平稳变化,从而实现电动机平稳变速。理论分析和实验结果表明,因为限幅增量式PID算法的控制量是均匀变化,所以该系统不仅具有平稳的阶跃响应,还具有天然的抗干扰能力。
直流电动机; 转速控制; 限幅增量式PID; 阶跃响应; 抗干扰能力
0 引 言
直流电动机的转速控制问题在自动控制领域中颇为常见,但在设计一种旋转滴界面张力仪的嵌入式控制系统时碰到了这个问题,该仪器通过一个直流电动机驱动试管旋转,增加离心力场的作用以测量试管内液滴的界面张力[1]。转速控制的精确与否直接决定了界面张力测量结果的准确性。鉴于PID控制器积分分量的微调功能,其完全能够胜任系统的精确度要求,同时因为PID算法简单,所以在科学研究和工程设计中得到广泛应用[2-6]。但是在较大阶跃信号下,PID控制器会产生较大输出量,使电动机瞬间达到一个很高的转速,这对电动机不利,对电动机的驱动对象也不利。所以在追求精确的转速控制之外,还要考虑使电动机平稳地达到设定转速,即要求有平稳的阶跃响应。
步进式PID不直接对阶跃信号进行响应,而是以一定步长逐步逼近所要求的阶跃信号,使阶跃响应平稳[7]。步进式PID设计一个动态设定值,该动态设定值从当前输出值开始每个周期增加或减少一个步长直至最终设定值,从而把一个大的阶跃信号分割成若干个小的阶跃信号。但是前提是每个控制周期输出值要有相应的幅度变化,而且还不能有测量误差。事实上,即使前者可控,后者也是不可避免的。
与步进式PID不同,限幅增量式PID直接对控制量的增量进行步长限制,无论设定值和输出值为多少,控制量的变化都不会超过一个步长,从而使电动机平稳变速。通过改变步长的大小可以调节响应速度、阶跃响应的平滑度。即使偶尔的测量误差,也只会使控制量朝误差方向移动一个步长,并不会影响大局,所以该算法还有天然的抗干扰能力。
1 系统结构
系统结构如图1所示,包括微控制器、电动机、用户界面和开关电压调节器。
图1 限幅增量式PID转速控制系统结构
(1) 微控制器。STM32F051微控制器作为系统的控制核心,提供软件支持和硬件接口。软件部分包括PID控制程序和I/O程序。硬件接口部分包括:12位的DAC将PID输出的控制量u(k)转换为模拟电压,电压值与u(k)成正比[8];32位的定时计数器对电动机编码器输出的脉冲信号计数,通过M法计算转速值[9-10];串行口连接串口屏,建立用户界面。
(2) 电动机。美国PITTMAN电动机转速均匀、功率密度大、噪音低、响应快,并带有光栅编码器,光栅编码器是由一系列规律性刻线组成的圆光栅盘作为测量基准并用于旋转运动测量的传感器[11]。PITTMAN电动机编码器有500个光栅,电动机每转一圈,产生500个脉冲。
(3) 开关电压调节器。LM2596用来开关电动机以及放大DAC的输出电压来驱动电动机,LM2596具有很好的线性和负载调节特性,可调输出电压范围是:1.2 V~37 V[12]。
(4) 用户界面。串口屏将控制部分和用户界面部分分离开来,微控制器只需发送相应的串口指令就可以轻松实现文本、图片和曲线显示,通过解析接收到的串口指令就可以读到用户的输入信息[13]。
2 限幅增量式PID算法
2.1 算法原理
位置式PID的输出是控制量全量:
(1)
增量式PID的输出是控制量增量:
(2)
式中,
(3)
通过对控制量增量的幅度加以步长限制,形成限幅增量式PID:
(4)
式中,Step为步长,用来限制控制量增量的幅度。
PID算法中的微分分量用于在系统中引入一个修正信号,给大幅变化的控制量提供适当的制动,从而抑制偏差的变化[14]。鉴于限幅增量式PID的控制量变化是平缓的,所以舍弃微分的修正作用,形成限幅增量式PI算法,不过仍然按照习惯称其为限幅增量式PID算法,其控制量增量为:
(5)
限幅增量式PID控制器结构如图2所示
图2 限幅增量式PID控制器结构
2.2 通过步长调节阶跃响应平滑度
限幅增量式PID的控制量变化趋势为:开始时,|Δu(k)|大于Step,控制量将以步长Step加减,在经历若干个周期后,输出值逐步靠近设定值,|Δu(k)|将小于Step,控制量以Δu(k)微调,直至输出值到达设定值。步长越大,控制量变化越快,阶跃响应越快;步长越小,控制量变化越慢;阶跃响应越平稳。
2.3 抗干扰能力
PID控制器是一种闭环控制,闭环控制区别于开环控制的本质是设有输出值的反馈回路[15],根据输出值与设定值的误差调整控制器的控制量,使输出值逐步达到设定值。输出值的测量数据以流的形式快速、无限、连续、实时地反馈到控制器的输入端[16],然而数据流中不仅有真实测量值还包含了测量误差,其中真实测量值是所需要的测量信号,具有确定性;测量误差是干扰信号,具有随机性、偶然性。如果将测量误差作为输出值输入到PID控制器,将得到错误的计算结果,势必引起执行器的误动作。为了提高系统的鲁棒性,可以用滑动窗口平均法对输出值数据流做低通滤波[17],过滤高频干扰信号,但是在系统响应阶段真实测量值的信号频率也较高,如果处理不当,这部分高频变化的真实信号会被连同干扰信号一起过滤掉。
因为限幅增量式PID的控制量变化受步长限制,所以不管多大的干扰信号最多只会使控制量变化一点点,因为干扰信号难得出现一次,譬如在使用M法测速时,定时中断偶尔被其他高级别中断给耽搁了而导致测量误差,所以不用担心这一次一点点的误动作,其后的真实测量值会立刻将控制量带回正轨。
3 实验研究
3.1 根据直流电动机静态模型确定算法参数
直流电动机的开环阶跃响应是稳态的,当控制量一定时,电动机的转速值在某一点上小幅波动。通过实验找到多组控制量u和转速n的对应关系,见表1
表1 控制量与转速值对应关系表
将表1中的每组数据作为一个点,把所有的点拟合在一起生成直流电动机的静态模型曲线[18],如图3所示,几乎是一条直线:
n=12 970-3.4u
(6)
式中:n为转速,r/min;u为控制量。
由静态模型可以大概确定以下几个参数:
(1) 控制量取值范围。根据系统要求的转速值范围,通过静态模型可以计算相应的控制量取值范围,以此限制控制量的取值,避免系统失控。比如,系统要求的转速范围是500~10 000 r/min,为适当留有余地,将控制量的取值范围定义为[600,4 000]。
图3 电动机静态模型曲线
(2) 控制量初值。对于增量式PID需要给出控制量的初值,因为开机时电动机是静止的,所以取最低转速值对应的4 000作为控制量初值。
(3) 控制量增量的步长值。从静态模型可知,转速值的变化幅度大概是控制量变化幅度的3.4倍。根据一个控制周期内所期望的转速值变化幅度除以3.4即得到大概的步长值。
(4) PID参数。因为LM2596的反相作用,使得控制量和转速值成反比,所以将kp、ki设为负数。
3.2 阶跃响应平稳性测试
图4所示为几组不同步长所对应的阶跃响应曲线。因为控制量最大值为4 000,所以当步长为4 000时,相当于没有限幅,在开始时因为Δe(k)和e(k)都为很大的值,所以控制量会有一个很大冲击,见曲线1的尖角。当步长为100时就可以抑制开始时的冲击量,但是因为大多情况下|Δu(k)|都不大于100,所以控制量以Δu(k)变化,阶跃响应曲线呈非线性,也是陡峭的,见曲线2。当步长为10和5时,大多情况下|Δu(k)|都大于步长,所以控制量的变化量为步长,即控制量线性变化。因为电动机的静态模型是线性的,所以阶跃响应曲线也呈线性,见曲线3和4,两者的区别在于响应时间或者阶跃响应的平滑度,如何选择要视具体的系统需要。
图4 阶跃响应曲线
3.3 抗干扰能力测试
将步长设为10,当电动机转速稳定在5 000 r/min时,控制量在2 260附近微弱变化。人为地给转速值加入一个3 000 r/min的测量误差,控制量曲线看不出变化,如图5所示。实际上会在当前值上减去10,因为控制量变化很小,所以电动机转速几乎不变,有效的抑制了干扰。
图5 控制量变化曲线
4 结 语
在一种旋转滴界面张力仪的嵌入式控制系统设计中含有直流电动机转速控制,该系统除了要求精确的转速控制以外,还要求电动机变速平稳。在研究了PID控制原理的基础上,对增量式PID加以改进,用步长限制增量式PID的控制量增量,形成限幅增量式PID。理论和实验表明,基于限幅增量式PID的直流电动机转速控制系统具有以下两个优点:
(1) 只要步长合适,电动机变速就是平稳的,通过步长还可以调节变速的平滑度;
(2) 因为控制量的变化受步长限制,所以即使有干扰信号,电动机转速变化也很小,也就是说该系统具有天然的抗干扰能力。
[1] 张彩霞,李世勇,张文超,等.SVT20 旋转滴界面张力仪测量原理及影响因素分析[J].石油钻探技术,2011,39(1):115-118.
[2] 张 涛,张晓宇,王辉俊.基于PWM和PID的直流电动机控制系统设计与制作[J].实验室研究与探索,2014,33(7):134-138.
[3] 沈 峰,钟胜奎,仲兆准,等.基于LabVIEW 的直流电动机PID 速度控制系统设计[J].电气与自动化,2014,43(3):189-190,207.
[4] 雷慧杰.基于STM32的直流电动机PID调速系统设计[J].现代电子技术,2016,39(8):165-167,170.
[5] 徐 坤,周子昂,吴定允,等.基于变速积分的无刷直流电动机PID控制系统[J].成都大学学报,2014,33(2):151-153,186.
[6] 刘海珊,陈宇晨.无刷直流电动机PID 控制系统仿真及实验研究[J].系统仿真学报,2009,21(16):5157-5160.
[7] 刘金琨.先进PID控制MATLAB仿真[M].3版.北京:电子工业出版社,2011:59-61.
[8] ST.RM0091 Reference Manual[OL].2014-10:269.www.st.com.
[9] 张吉月,于 静.改进的M法转速测量[J].北京石油化工学院学报,2012,20(3):13-16.
[10] 马文光,朱德森,王四清.变M法在在电动机速度高精度测量中的应用[J].机械与电子,1999(4):64-66.
[11] 林长友.光栅编码器发展现状分析与展望[J].光机电信息,2011,28(6):1-7.
[12] National Semiconductor.LM2596 Datasheet[OL].2002-05:1.www.national.com
[13] 广州大彩科技.基本型工业串口屏数据手册V3.0[OL].2014-07:1-5.www.gz-dc.com
[14] 力风满.数字PID控制算法的研究[J].辽宁大学学报,2005,32(4):367-370.
[15] 吴 麒,王诗宓.自动控制原理[M].2版.北京:清华大学出版社,2006:2-3.
[16] 李建中,张东东.滑动窗口规模的动态调整算法[J].软件学报,2004,15(12):1800-1814.
[17] 裴益轩,郭 民.滑动平均法的基本原理及应用[J].火炮发射与控制学报,2001(1):21-23.
[18] Astrom K J, Hagglund T. PID controllers:Theory,desing and turnig[M].2nd ed.North Carolina: Instrument Society of America,1995:6-13.
国运兴衰,系于教育;教育振兴,全民有责,在党和国家工作全局中,必须始终坚持把教育摆在优先发展的位置。按照面向现代化、面向世界、面向未来的要求,适应全面建设小康社会、建设创新型国家的需要,坚持以育人为根本,以改革创新为动力,以促进公平为重点,以提高质量为核心,全面实施素质教育,推动教育事业在新的历史起点上科学发展,加快从教育大国向教育强国、从人力资源大国向人力资源强国迈进,为中华民族伟大复兴和人类文明进步作出更大贡献。
——摘自《国家中长期教育改革和发展规划纲要(2010—2020年)》
DC Motor Speed Control System Based on Step-limiting Incremental PID
HUChuanzhi1,SHENJianhua2,PENGXiaojing3
(1. School of Computer Science Technology, Nantong university, Nantong 226019, Jiangsu, China; 2. School of Computer Science and Software Engineering, East China Normal University, Shanghai 200062, China; 3. NXP Semiconductors Shanghai Co., Ltd, Shanghai 201203, China)
Step PID controller is usually applied in the situation that steady step response is more important than quick response in a DC motor speed control system, but the controller does not work when there exists measurement error. This paper designed a DC motor speed control system based on step-limiting incremental PID controller. The controller limits the increment of the control value of incremental PID by a step to smooth the change of control value, so as to achieve smooth speed shifting. Analytical and experimental results show that owing to the even variation of the control values, this system not only presents steady step response, but also has anti-interference ability in nature.
DC motor; speed control; step limit incremental PID; step response; anti-interference ability
2016-09-15
国家自然科学基金项目(41301514)
胡传志(1977-),男,江苏徐州人,硕士,高级实验师,研究方向为嵌入式系统和自动控制。
Tel.:13515209092;E-mail:hubanxian@ntu.edu.cn
TP 273
A
1006-7167(2017)05-0024-04