PID 调节控制做电机速度控制
V1.1 – Jan 23, 2006
中文版
19, Innovation First Road • Science Park • Hsin-Chu • Taiwan 300 • R.O.C.
Tel: 886-3-578-6005 Fax: 886-3-578-4418 E-mail: mcu@sunplus.com.cn
http://www.sunplusmcu.com http://mcu.sunplus.com
PID 调节控制做电机速度控制
版权声明
凌阳科技股份有限公司保留对此文件修改之权利且不另行通知。凌阳科技股份有限公司所提供之信息相信为正确且
可靠之信息,但并不保证本文件中绝无错误。请于向凌阳科技股份有限公司提出订单前,自行确定所使用之相关技
术文件及规格为最新之版本。若因贵公司使用本公司之文件或产品,而涉及第三人之专利或著作权等智能财产权之
应用及配合时,则应由贵公司负责取得同意及授权,本公司仅单纯贩售产品,上述关于同意及授权,非属本公司应
为保证之责任。又未经凌阳科技股份有限公司之正式书面许可,本公司之所有产品不得使用于医疗器材,维持生命
系统及飞航等相关设备。
© Sunplus Technology Co., Ltd.
PAGE 1
V1.1 – Jan 23, 2006
目录
PID 调节控制做电机速度控制
页
1
2
模拟PID控制......................................................................................................................................1
1.1 模拟PID控制原理 ......................................................................................................................1
数字PID控制......................................................................................................................................3
2.1 位置式PID算法 ..........................................................................................................................3
2.2 增量式PID算法 ..........................................................................................................................4
2.3 控制器参数整定.........................................................................................................................4
2.3.1 凑试法...........................................................................................................................5
2.3.2 临界比例法...................................................................................................................5
2.3.3 经验法...........................................................................................................................5
2.3.4 采样周期的选择...........................................................................................................6
2.4 参数调整规则的探索.................................................................................................................6
2.5 自校正PID控制器 ......................................................................................................................7
3
软件说明.............................................................................................................................................8
3.1 软件说明.....................................................................................................................................8
3.2 档案构成.....................................................................................................................................8
3.3 DMC界面....................................................................................................................................8
3.4 子程序说明.................................................................................................................................9
4
程序范例...........................................................................................................................................16
4.1 DEMO程序 ...............................................................................................................................16
4.2 程序流程与说明.......................................................................................................................19
4.3 中断子流程与说明...................................................................................................................20
MCU使用资源 .................................................................................................................................21
5.1 MCU硬件使用资源说明..........................................................................................................21
实验测试...........................................................................................................................................22
6.1 响应曲线...................................................................................................................................22
参考文献...........................................................................................................................................26
5
6
7
© Sunplus Technology Co., Ltd.
PAGE 2
V1.1 – Jan 23, 2006
PID 调节控制做电机速度控制
修订记录
日期
2004/11/26
2006/1/23
版本 编写及修订者
1.0
1.1
初版
错误校正
编写及修订说明
© Sunplus Technology Co., Ltd.
PAGE 3
V1.1 – Jan 23, 2006
1 模拟 PID 控制
PID 调节控制做电机速度控制
将偏差的比例(Proportion)、积分(Integral)和微分(Differential)通过线性组合构成控制量,
用这一控制量对被控对象进行控制,这样的控制器称 PID 控制器。
1.1 模拟 PID 控制原理
)(tn
在模拟控制系统中,控制器最常用的控制规律是 PID 控制。为了说明控制器的工作原理,先看
与实际转速进行比
)(tu
)(0 tn
,经过 PID 控制器调整后输出电压控制信号
一个例子。如图 1-1 所示是一个小功率直流电机的调速原理图。给定速度
较
率放大后,驱动直流电动机改变其转速。
)(te
,其差值
tn
)(
0
经过功
tn
)(
)(tu
te
)(
)(tu
)(0 tn
+
=
−
,
PID控制器
直流电机
-
)(tn
图 1-1 小功率直流电机调速系统
常规的模拟 PID 控制系统原理框图如图 1-2 所示。该系统由模拟 PID 控制器和被控对象组成。
图中,
)(r t
是给定值,
te
t
)(y)(r
)(
=
是系统的实际输出值,给定值与实际输出值构成控制偏差
)(y t
(式 1-1)
)(te 作为 PID 控制的输入, 作为 PID 控制器的输出和被控对象的输入。所以模拟 PID 控制器的
控制规律为
)(tu
)(te
−
t
t
)(u
=
teKp
)([
+
1
Ti
t
∫
0
te
)(
dt
+
Td
tde
])(
dt
(式 1-2)
其中:
Kp
Ti
Td
―― 控制器的比例系数
-- 控制器的积分时间,也称积分系数
―― 控制器的微分时间,也称微分系数
)(r t +
)(te
-
比例
积分
微分
+
+
+
)(tu
被控对象
)(y t
1、 比例部分
图 1-2 模拟 PID 控制系统原理图
© Sunplus Technology Co., Ltd.
PAGE 1
V1.1 – Jan 23, 2006
PID 调节控制做电机速度控制
Kp
Kp
比例部分的数学式表示是:
在模拟 PID 控制器中,比例环节的作用是对偏差瞬间作出反应。偏差一旦产生控制器立即产生
控制作用,使控制量向减少偏差的方向变化。控制作用的强弱取决于比例系数 ,比例系数 越
)(* teKp
大,控制作用越强,则过渡过程越快,控制过程的静态偏差也就越小;但是 越大,也越容易产生
Kp
振荡,破坏系统的稳定性。故而,比例系数 选择必须恰当,才能过渡时间少,静差小而又稳定的
效果。
Kp
2、 积分部分
积分部分的数学式表示是:
Kp
Ti
∫t
te
)(
0
dt
从积分部分的数学表达式可以知道,只要存在偏差,则它的控制作用就不断的增加;只有在偏
0)( =te
时,它的积分才能是一个常数,控制作用才是一个不会增加的常数。可见,积分部分可以
差
消除系统的偏差。
积分环节的调节作用虽然会消除静态误差,但也会降低系统的响应速度,增加系统的超调量。
积分常数 越大,积分的积累作用越弱,这时系统在过渡时不会产生振荡;但是增大积分常数 会
Ti
Ti
减慢静态误差的消除过程,消除偏差所需的时间也较长,但可以减少超调量,提高系统的稳定性。
当Ti 较小时,则积分的作用较强,这时系统过渡时间中有可能产生振荡,不过消除偏差所需的时间
较短。所以必须根据实际控制的具体要求来确定Ti 。
3、 微分部分
微分部分的数学式表示是:
Kp
*
Td
tde
)(
dt
实际的控制系统除了希望消除静态误差外,还要求加快调节过程。在偏差出现的瞬间,或在偏
差变化的瞬间,不但要对偏差量做出立即响应(比例环节的作用),而且要根据偏差的变化趋势预先
给出适当的纠正。为了实现这一作用,可在 PI 控制器的基础上加入微分环节,形成 PID 控制器。
微分环节的作用使阻止偏差的变化。它是根据偏差的变化趋势(变化速度)进行控制。偏差变
化的越快,微分控制器的输出就越大,并能在偏差值变大之前进行修正。微分作用的引入,将有助
于减小超调量,克服振荡,使系统趋于稳定,特别对髙阶系统非常有利,它加快了系统的跟踪速度。
但微分的作用对输入信号的噪声很敏感,对那些噪声较大的系统一般不用微分,或在微分起作用之
前先对输入信号进行滤波。
微分部分的作用由微分时间常数Td 决定。Td 越大时,则它抑制偏差
)(te
变化的作用越强;Td
越小时,则它反抗偏差
)(te
变化的作用越弱。微分部分显然对系统稳定有很大的作用。
适当地选择微分常数Td ,可以使微分作用达到最优。
由于计算机的出现,计算机进入了控制领域。人们将模拟 PID 控制规律引入到计算机中来。对
(式 1-2)的 PID 控制规律进行适当的变换,就可以用软件实现 PID 控制,即数字 PID 控制。
© Sunplus Technology Co., Ltd.
PAGE 2
V1.1 – Jan 23, 2006
2 数字 PID 控制
PID 调节控制做电机速度控制
数字式 PID 控制算法可以分为位置式 PID 和增量式 PID 控制算法。
2.1 位置式 PID 算法
由于计算机控制是一种采样控制,它只能根据采样时刻的偏差计算控制量,而不能像模拟控制
那样连续输出控制量量,进行连续控制。由于这一特点(式 1-2)中的积分项和微分项不能直接使
用,必须进行离散化处理。离散化处理的方法为:以T 作为采样周期, 作为采样序号,则离散采
样时间 对应着连续时间 ,用矩形法数值积分近似代替积分,用一阶后向差分近似代替微分,可
作如下近似变换:
kT
k
t
上式中,为了表示的方便,将类似于
(kTe
)
简化成 等。
ke
(式 2-1)
将(式 2-1)代入(式 1-2),就可以得到离散的 PID 表达式为
u
k
=
eKp
[
k
+
T
Ti
k
∑
j
=
0
eTd
k
e
j
+
e
−
T
k
1
−
]
(式 2-2)
或
u
k
=
eKp
*
k
+
Ki
k
∑
j
=
0
e
j
+
Kd
(
e
k
−
e
k
)
1
−
(式 2-3)
―― 第
―― 第
k ―― 采样序号, k =0,1,2,……;
ku
k 次采样时刻的计算机输出值;
k 次采样时刻输入的偏差值;
ke
1ke -
Ki
Kd
其中
如果采样周期足够小,则(式 2-2)或(式 2-3)的近似计算可以获得足够精确的结果,离
k -1 次采样时刻输入的偏差值;
―― 第
――积分系数,
散控制过程与连续过程十分接近。
行计算的,所以它给出了全部控制量的大小,因此被称为全量式或位置式 PID 控制算法。
(式 2-2)或(式 2-3)表示的控制算法式直接按(式 1-2)所给出的 PID 控制规律定义进
这种算法的缺点是:由于全量输出,所以每次输出均与过去状态有关,计算时要对 进行累加,
TiTKp
*=
Kp
*=
;
TTd
――微分系数,
Ki
Kd
;
ke
© Sunplus Technology Co., Ltd.
PAGE 3
V1.1 – Jan 23, 2006
ku
PID 调节控制做电机速度控制
工作量大;并且,因为计算机输出的 对应的是执行机构的实际位置,如果计算机出现故障,输出
ku
的 将大幅度变化,会引起执行机构的大幅度变化,有可能因此造成严重的生产事故,这在实生产
际中是不允许的。
增量式 PID 控制算法可以避免着重现象发生。
2.2 增量式 PID 算法
所谓增量式 PID 是指数字控制器的输出只是控制量的增量 ku∆ 。当执行机构需要的控制量是增
量,而不是位置量的绝对数值时,可以使用增量式 PID 控制算法进行控制。
个采样时刻的输出值为:
增量式 PID 控制算法可以通过(式 2-2)推导出。由(式 2-2)可以得到控制器的第 k-1
u
k
1
-
=
eKp
[
k
1
-
+
T
Ti
k
1
-
∑
j
=
0
eTd
k
1
-
e
j
+
e
k
−
2
]
−
T
(式 2-4)
将(式 2-2)与(式 2-4)相减并整理,就可以得到增量式 PID 控制算法公式为:
1
-
T
eKp
e
(
+
-
k
k
Ti
Td
21(
+
T
e
-
k
Kp
)
eTd
k
−
2
e
k
+
)
e
k
1
-
+
TdKp
T
e
k
T
e
k
1
-
+
e
k
−
2
)
)
2
(式 2-5)
−
∆
u
u
-=
k
k
u
k
1
-
=
=
Kp
1(
=
Ae
k
其中
A =
B =
C =
−
2
)
;
+
Td
T
Ce
+
k
Td
T
+
+
+
T
Ti
Be
k
1
-
T
Ti
Td
21(
Kp +
T
TdKp 。
1(
Kp
+
)
;
T
由(式 2-5)可以看出,如果计算机控制系统采用恒定的采样周期T ,一旦确定 A、B、C,
只要使用前后三次测量的偏差值,就可以由(式 2-5)求出控制量。
广泛的应用。
而位置式 PID 控制算法也可以通过增量式控制算法推出递推计算公式:
增量式 PID 控制算法与位置式 PID 算法(式 2-2)相比,计算量小的多,因此在实际中得到
u
∆+= -1
k
k
u
u
k
(式 2-6)
(式 2-6)就是目前在计算机控制中广泛应用的数字递推 PID 控制算法。
2.3 控制器参数整定
控制器参数整定:指决定调节器的比例系数 、积分时间Ti 、微分时间Td 和采样周期Ts 的
Kp
© Sunplus Technology Co., Ltd.
PAGE 4
V1.1 – Jan 23, 2006