文档库 最新最全的文档下载
当前位置:文档库 › 电机伺服控制和PID算法简介

电机伺服控制和PID算法简介

电机伺服控制和PID算法简介
电机伺服控制和PID算法简介

电机伺服控制和PID 算法简介

1 电机伺服控制技术简介

所谓伺服控制,通常也就是指闭环控制,即通过反馈环节,测量被控制对象的变化,用以修正电机输出的控制技术。

对于要求不高的应用,通常采用简单的开环控制。例如,给直流有刷电机的两根引线通电,电机就会旋转;施加的电压越高,电机转速越高,力量越大。但是在很多需要精密控制的场合,仅仅这种方式还是不够的,还需要依靠一定的反馈装置,将电机的转速或位置信息反馈给微控制器或其他的机械装置,通过一定的算法变成可以调节电机控制信号的输出,从而使电机的实际转速、位置等参数与我们所希望的一致。机器人控制是一个精度要求比较高的领域,例如,基于以下的一些考虑,机器人平台需要使用闭环控制。

a) 开环控制情况下,移动机器人在爬坡时,电机速度会下降。更糟糕的是,当双轴独立驱动的移动机器人以一定的角度接近斜坡时。每一个车轮转速的下降值将会不同,结果是机器人的实际运动轨迹是沿着一条曲线而不是直线行进。

路线。

速差。

一一定的计算方法(如PID 算法)调整相应的电压供给,如此反复,直到达到给定转速。

b) 不平坦的地面会造成移动机器人的两个车轮转速之间的差异。如果转速较低的车轮的驱动电机没有得到相应的电压补给,移动机器人将偏移既定的c) 由于安装工艺、负载不完全均衡等原因,即使是完全匹配的两个电机,并在相同的输入电压条件下,他们的速度有时仍会产生不同,即转d) 如果采用的是PWM 控制,即使在PWM 信号占空比不变的条件下,随着电池电压的逐渐下降,电机供给电压也会随之降低,从而导致电机的转速与给定值不完全致。

综合以上的一些考虑,必须选择闭环控制的方式,其工作流程如下图所示:闭环系统中加上了反馈环节(通常机器人的驱动电机使用的是增量式光学编码器)。在闭环控制系统中,速度指令值通过微控制器变换到功放驱动电路,功放驱动电路再为电机提供能量。光学编码器用于测量车轮速度的实际值并将其回馈给微控制器。基于实际转速与给定转速的差值,即“偏差”

,驱动器按照

闭环控制模型示意图

速度闭环控制示意图

这里,电机的控制算法起到了十分关键的作用。控制算法的过程是:通过接受指令速度值,通过运算向电机提供适当的驱动电压,尽快地和尽量平稳的使电机转速达到指令速度值,并维持这个速度值。换言之,一旦电机速度达到了指令速度值,即使在各种不利的因素(如斜坡、碰撞之类等市电机转速发生变化的因素)的干扰下也应该保持该速度值不变。现在已经有形形色色的控制算法被研究出来,实际上,控制理论本身就是一门独立的学科。这里仅介绍经典、流行的比例-积分-微分(PID:Proportional Integral Derivative )控制算法。 2 PID 调节器及其软件实现

单,参数容易调整,不一定需要系统的确切数学模型,因此在工业的各个领域中都有应用。绍PID 控制的基本原理、数字PID 控制算法及改进以及数字PID 控制器的参数选择。

3 模拟式PID 调节器

器调整后输出电压控制信号u(t),u(t)经过功率放大后,驱动直流电动机改变其转速。

PID 控制器是控制系统中技术比较成熟,而且是应用最广泛的一种控制器。它的结构简

PID 控制器最先出现在模拟控制系统中,传统的模拟PID 控制器是通过硬件(电子元件、气动和液压元件)来实现它的功能。随着计算机的出现,把它移植到计算机控制系统中来,将原来的硬件实现的功能用软件来代替,因此称作数字PID 控制器,所形成的一整套算法则称为数字PID 算法。数字PID 控制器与模拟PID 控制器相比,具有非常强的灵活性,可以根据实验和经验在线调试参数,因此可以得到更好的控制性能。这里将介在模拟控制系统中,控制器最常用的控制规律是PID 控制。为了说明控制器的工作原理,我们先看一个例子。图—3是一个小功率直流电机调速原理图。给定转速n0(t)与实际转速n(t)进行比较,其差值e(t)=n0(t)-n(t),经过PID

控制常规的模拟式PID 控制系统原理框图如上图所示。该系统由模拟PID 控制器和被控对象组成。图中,r(t)是给定值,y(t)是系统的实际输出值,给定值和实际输出值构成控制偏差e(t) =r(t)-y(t),其中e(t)作为PID 控制器的输入,u(t)作为PID 控制器的输出和被控对象的输入。因此模拟式PID 调节器的控制规律为

00])()(1

)([ u(t)u dt

t de T dt t e T t e Kp D t I

+++=∫ 式中 ---比例系数;

Kp ----积分常数;

I T ----微分常数;

D T 0u ----控制常量;

在模拟PID 中,比例环节的作用是对偏差瞬间作出快速反应。偏差一旦产生,控制器

立即例系数,越大,控制越强;但是过大的会导致系统震荡,破坏系统的稳定性。

产生控制作用,使控制量向减少偏差的方向变化。控制作用的强弱取决于比Kp Kp

Kp

由上式可以看出,只有当偏差存在时,第一项才有控制量输出。所以,对大部分被控制对象(如直流电机的调压调速),需要加上适当的与转速和机械负载有关的控制常量,否则,)不变的条件下趋于稳态。因此,即使不加控制常量

,也能消除系统输出的静态

误差是可以减调量,提高系统的稳定性。所以,必须根据实际控制的具体要求来确的纠正。为了实现这一作用,可在PI 控制器的基础上加入微分环节,形成感,对那些噪声较大的系统一版不用适当的选择微分常数,可以使微分环节的作用达到最优。 4 数字式PID 调节器

式的PID 控制规律进行适当的变换,就可以用软件来实现PID 位置式PID 控制算法和增量式PID 控制算法。

0u 比例环节将会产生静态误差。

积分环节的作用是把偏差的积累作为输出。在控制过程中,只要有偏差存在,积分环节的输出就会不断增大。直到偏差e(t)=0,输出的u(t)才可能维持在某一常量,使系统在给定值r(t 0u 。

积分环节的调节作用虽然会消除静态误差,但是也会降低系统的响应速度,增加系统的超调量。积分常数I T 越大,积分的积累作用越弱。增大积分常数I T 会减慢静态误差的消除过程,但少超定I T 。

实际的控制系统除了希望消除静态误差外,还要求加快调节过程。在偏差出现的瞬间,或在偏差变化的瞬间,不但要对偏差量作出立即响应(比例环节的作用),而且要根据偏差的变化趋势预先给出适当PID 控制器。

微分环节的作用是阻止偏差的变化。它是根据偏差的变化趋势(变化速度)进行控制。偏差变化的越快,微分控制器的输出就越大,并能在偏差值变大之前进行修正。微分作用的引入,将有助于减少超调量,克服震荡,使系统趋于稳定。特别对于高阶系统非常有利,它加快了系统的跟踪速度。但微分的作用对输入信号的噪声很敏用微分,或在微分起作之前先对输入信号进行滤波。

D T 由于计算机的出现,计算机进入了控制领域。人们将模拟PID 控制规律引入到计算机(或其他微处理器)中来。对上控制,即数字PID 控制。

数字PID 控制算法可以分为a) 位置式PID 控制算法

由于计算机或单片机控制是一种采样控制,它只能根据采样时刻的偏差值计算控制量,而不能像模拟控制那样连续输出控制量,进行连续控制。由于这一特点,式3中的积分项

和微分项不能直接使用,必须进行离散化处理。离散化处理的方法为:以T 作为采样周期,k 作为采样序号,则离散时间kT 对应着连续时间t,用求和的形式代替积分,用增量的形式代替微分,可作如下t ≈kT (k=0,1,2, ……)

≈=T 近似变换

∫t

dt t e 0)(T

∑=k j jT e 0)(∑=k

j j e 0)( ≈T

e e T T k e kT e k k 1])1[()(??=?? dt t de )(上式中,为了表示方便,将e(kT) 简化成e(k)等。

将上式代入式中,就可以得到离散的PID 表达式为: u(k 010)]([ )

u e e T T e T T e Kp k k D k

j j I k +?+

+=?=∑

或 k

入差值; ,会引起执行机构的大幅度变化,有可能造成一定事故,这在控制算法是指数字控制器的输出只是控制量的增量△其推导如下: 由式可得

10)(u e e k k j +??= -- u(k)Kd e Ki Kpe j k ++=∑式中 k ---------采样序号,k=0,1,2……

--------第k 次采样时刻的计算机输出值;k u --------第k 次采样时刻输入的偏差值;

k e

1--------第k-1次采样时刻输的偏?k e

Ki --------积分常数,Ki=KpT I T ; /

Kd--------微分常数,Kd=Kp d T /T ;

0u -------开始进行PID 控制时的原始初值;

如果采样周期取得足够小,则式中的近似计算可获得足够精确的结果,离散控制过程与连续控制过程十分接近。它给出了全部控制量的大小,因此被称为全量式或位置式PID 控制算法。这种算法的缺点是:由于全量输出,所以每次输出均与过去状态有关,计算时要进行累加,工作量大,;并且,因为计算机输出量对应的是执行机构的实际位置,如果计算机出现故障,输出量将会大幅度变化生产实际中是不能允许的。

因此采用增量式PID 控制算法:

k u .增量式PID 021101[ 1)-u(k e T e Kp j j I k +==?∑)](u e e T

T T

k k D k +?+??? 将上式与式相减,整理可得:

u k

k k k D k I k k k k D k I k k e Kd Kie e Kp e T T e T T e Kp e e e T T e T T e e Kp 22211)()]2([1)-u(k -u(k) u(k)

Δ++Δ=Δ++Δ=+?++?==Δ???

;1??=Δk k k e e e

式中

;21212???Δ?Δ=+?=Δk k k k k k e e e e e e ;I

T T Kp Ki = ;T

T Kp Kd D = 由上式可以看出,如果计算机控制系统采用恒定的采样周期T ,一旦确定了A,B,C,就可以利用前后三次测量值的偏差,求出控制增量。

实际中位置式增量的PI 控制算法可以通过增量式控制算法推出递推计算公式 、 死区设定:需要精度或者固有的机械特性设定一定的控制死区,可以

认为控制量在此控制区内已经达到了稳定。为此,设定死区dead_line,作如下计算: 2、控制量饱由于系统本身的限制,其控制量不能超过一定的极限;因此对控制的做了

上下限的设定,以保证系统可靠的工作,即设定MAX 和MIN ,作如下计算:

此之外,还有其他的一些改进算法,这里不再详细介绍,有兴趣的请参考自动控制原理方面的有关书籍,例如《电动机的单片机控制》(北京航空航天大学出版社,马忠梅著)。 D u u u Δ+=

k k k ?1在实际的应用中,根据具体的系统要求,需要采用一定的改进算法。

1由于系统本身的是 1?=k k u u , 如果;line _dead ||

k k k u u u Δ+=?1 , 如果;line _dead ||>=k e

和:k k u u =

, 如果&k u u ;MIN &MAX >=k u ;

MIN u k = , 如果MIN <=k u ;

相关文档