直流电机PID控制实验
一、 实验目的
1、 学习数字控制器的模拟化设计方法;
2、 学习数字PID控制器的设计方法;
3、 学习PWM控制理论;
4、 学习数字PID控制器在DSP上的实现方法。
二、 实验设备
计算机,实验箱、DSP仿真器、导线。
三、 基础理论
PID控制器(按闭环系统误差的比例、积分和微分进行控制的调节器)自30年代末期出现以来,在工业控制领域得到了很大的发展和广泛的应用。它的结构简单,参数易于调整,在长期应用中已积累了丰富的经验。特别是在工业过程控制中,由于被控制对象的精确的数学模型难以建立,系统的参数经常发生变化,运用控制理论分析综合不仅要耗费很大代价,而且难以得到预期的控制效果。在应用计算机实现控制的系统中,PID很容易通过编制计算机语言实现。由于软件系统的灵活性,PID算法可以得到修正和完善,从而使数字PID具有很大的灵活性和适用性。实现PID控制的计算机控制系统如图1所示,其中数字PID控制器是由软件编程在计算机内部实现的。
图1 模拟PID控制
1、PID控制规律的离散化
PID控制器是一种线性调节器,这种调节器是将系统的给定值r与实际输出值y构成的控制偏差的比例(P)、积分(I)、微分(D),通过线性组合构成控制量,所以简称PID控制器。 连续控制系统中的模拟PID控制规律为:
(式1)
式中是控制器的输出,是系统给定量与输出量的偏差,是比例系数,是积分时间常数,是微分时间常数。其相应传递函数为:
(式2)
比例调节器、积分调节器和微分调节器的作用:
(1)比例调节器:比例调节器对偏差是即时反应的,偏差一旦出现,调节器立即产生控制作用,使输出量朝着减小偏差的方向变化,控制作用的强弱取决于比例系数。比例调节器虽然简单快速,但对于系统响应为有限值的控制对象存在静差。加大比例系数可以减小静差,但是,过大时,会使系统的动态质量变坏,引起输出量振荡,甚至导致闭环系统不稳定。
(2)比例积分调节器:为了消除在比例调节中的残余静差,可在比例调节的基础上加入积分调节。积分调节具有累积成分,只要偏差不为零,它将通过累积作用影响控制量,从而减小偏差,直到偏差为零。如果积分时间常数大,积分作用弱,反之为强。增大将减慢消除静差的过程,但可减小超调,提高稳定性。引入积分调节的代价是降低系统的快速性。
(3)比例积分微分调节器:为了加快控制过程,有必要在偏差出现或变化的瞬间,按偏差变化的趋向进行控制,使偏差消灭在萌芽状态,这就是微分调节的原理。微分作用的加入将有助于减小超调,克服振荡,使系统趋于稳定。
由于计算机系统是一种采样控制系统,只能根据采样时刻的偏差值计算控制量,因此,利用外接矩形法进行数值积分,一阶后向差分进行数值微分,当采样周期为T时,
(式3)
如果采样周期足够小,这种离散逼近相当准确。上式中为全量输出,它对应于被控对象的执行机构第i次采样时刻应达到的位置,因此,上式称为PID位置型控制算式。
可以看出,按上式计算时,输出值与过去所有状态有关。当执行机构需要的不是控制量的绝对数值,而是其增量时,可导出下面的公式:
(式4)或
(式5)
式4称为增量型PID控制算式;式5称为递推型PID控制算式;
增量型控制算式具有以下优点:
(1)计算机只输出控制增量,即执行机构位置的变化部分,因而误动作影响小;
(2)在i时刻的输出,只需用到此时刻的偏差,以及前一时刻,前两时刻的偏差、,和前一次的输出值,这大大节约了内存和计算时间;
(3)在进行手动—自动切换时,控制量冲击小,能够较平滑地过渡;
控制过程的计算机要求有很强的实时性,用微型计算机作为数字控制器时,由于字长和运算速度的限制,必须采用必要的方法来加快计算速度。下面介绍简化算式的方法。
按照式5表示的递推型PID算式,计算机每输出一次,要作四次加法,两次减法,四次乘法和两次除法。若将该式稍加合并整理写成如下形式:
(式6)
式中系数、、可以离散算出,从而加快了算法程序的运算速度。
按式6编制的数字控制器的程序框图如下图所示。
2、数字PID控制器的参数整定
在实际控制系统中,控制算式一旦确定,比例、积分和微分参数的整定就成为重要的工作。控制效果的好坏在很大程度上取决于这些参数选择得是否得当。关于PID控制参数整定方法有很多。通常首先要对工业对象的动态特性作某种简单假设。因此,由这些整定方法得到的参数值在使用时不一定是最佳的,往往只作为参考值。在实时控制中,还要在这些值附近探索,找出实用中有效的最佳值。下面介绍几种PID参数的工程整定法。
(1)PID参数整定的理论方法
参数整定的目的就是通过调整PID的三个参数、、,将系统的闭环特征根分布在s域的左半平面的某一特定域内,以保证系统具有足够的稳定裕度并满足给定的性能指标。
这种对PID参数进行设计的方法是一种理论设计方法,只有被控对象的数学模型足够精确时,才能把特征根精确地配置在期望的位置上。但是,对象的精确模型往往不易得到。同时,大多数实际系统的参数又随环境变化而变化,实质上是一个时变系统。因此,理论设计的极点配置往往与实际系统不能精确匹配。然而,这种理论设计方法对指导工程实践有很大的理论意义。随着计算机控制技术的不断发展上述理论设计方法可以通过系统辨识实现。
(2)凑试法确定PID调节参数
凑试法是通过模拟或实际的闭环运行情况、观察系统的响应曲线,然后根据各调节参数对系统响应的大致影响,反复凑试参数,以达到满意的响应,从而确定PID控制器中的三个调节参数。其中在实践中总结出如下的规律:
(a)增大比例系数一般将加快系统的响应,在有静差的情况下有利于减小静差。但过大的比例系数会使系统有较大的超调,并产生振荡,使系统的稳定性变坏;
(b)增大积分时间有利于减小超调,减小振荡,使系统更加稳定,但系统静差的消除将随之减慢;
(c)增大微分时间亦有利于加快系统的响应,减小振荡,使系统稳定性增加,但系统对干扰的抑制能力减弱,对扰动有较敏感的响应;另外,过大的微分系数也将使系统的稳定性变坏。
在凑试时,可以参考以上的一般规律,对参数的调整步骤为先比例,后积分,再微分的整定步骤,即:
(A)先整定比例部分:将比例系数由小调大,并观察相应的系统响应趋势,直到得到反应快、超调小的响应曲线。如果系统没有静差或静差已小到允许范围之内,同时响应曲线已较令人满意,那么只须用比例调节器即可,最优比例系数也由此确定。
(B)如果在比例调节的基础上系统的静差不能满足设计要求,则须加入积分环节。整定时一般先置—个较大的积分时间系数,同时将第一步整定得到的比例系数缩小一些(比如取原来的80%),然后减小积分时间系数使在保持系统较好的动态性能指标的基础上,系统的静差得到消除。在此过程中,可以根据响应曲线的变化趋势反复地改变比例系数和积分时间系数从而实现满意的控制过程和整定参数。
(C)如果使用比例积分控制器消除了偏差,但动态过程仍不尽满意,则可以加入微分环节,构成PID控制器。在整定时,可先置微分时间系数为零,在第二步整定的基础上,增大微分时间系数,同时相应地改变比例系数和积分时间系数,逐步凑试,以获得满意的调节效果和控制参数。
值得一提的是,PID三个参数可以互相补偿,即某一个参数的减小可由其他参数增大或减小来补偿。因此用不同的整定参数完全可以得到相同的控制效果,这也决定了PID控制器参数选取的非唯一性。另外,对无自平衡能力的对象,则不应包含积分环节,即只可用比例或比例微分控制器。在实时控制过程中,只要被控对象的主要性能指标达到了设计要求,就可以选定相应的控制器参数为最终参数。
目前,工程上仍广泛使用实验方法和经验方法来整定PID的调整参数,称为PID参数的工程整定方法。这种方法的最大优点在于整定参数不必依赖被控对象的数学模型。简易工程整定法是由经典的频率法简化而来的,虽然粗糙一点,但是简单易行,适于现场的实时控制应用。如扩充临界比例度法、扩充响应曲线法。
3、PID控制算法应注意的几个问题
任何一种执行机构都存在一个线性工作区。在此线性区内,它可以线性地跟踪控制信号,而当控制信号过大,超过这个线性区,就进入饱和区或截止区,其特性将变成非线性特性。同时,执行机构还存在着一定的阻尼和惯性,对控制信号的响应速度受到了限制。因此,执行机构的动态特性也存在一个线性工作区。控制信号的变化率过大也会使执行机构进入非线性区。前述标准PID位置式算法中积分项控制作用过大将出现积分饱和,增量式算法中微分项和比例项控制作用过大将出现微分饱和,都会使执行机构进入非线性区,从而使系统出现过大的超调和持续振荡,动态品质变坏。为了克服以上两种饱和现象,避免系统的过大超调,使系统具有较好的动态指标,必须使PID控制器输出的控制信号受到约束,即对标准的PID控制算法进行改进,并主要是对积分项和微分项的改进。
(1)饱和作用的抑制
无论采用何种计算方法,其控制输出从数学上讲可在范围内取值,但物理执行元件的机械和物理性能是有约束的,即输入的取值是在有限范围内,表示为,同时其变化率也受限制,表示为。
控制系统在开工、停工或者大幅度提降给定位等情况下,系统输出会出现较大的偏差,这种较大偏差,不可能在短时间内消除,经过积分项累积后,可能会使控制量很大,甚至超过执行机构的极限。另外,当负误差的绝对值较大时,也会出现的另一种极端情况。显然,当控制量超过执行机构极限时,控制作用必然不如应有的计算值理想,从而影响控制效果。这类现象在给定值突变时容易发生,而且在起动时特别明显,故称“起动效应”。
为了克服积分饱和作用,已有许多有效的修正算法,较常用的有“积分分离法”。
(2)干扰的抑制
PID控制算法的输入量是误差。在进入正常调节后,由于输出已接近输入,的值不会太大。所以相对而言,干扰值的引入对调节有较大的影响。对于干扰,除了采用抗干扰措施,进行硬件和软件滤波之外,还可以通过对PID控制算法进行改进,进一步克服干扰的影 响。如“四点中心差分法”、“不完全微分PID算法”等等。
四、实验步骤
1、学习数字PID的基本原理和设计方法;
2、阅读实验提供的程序;
3、运行样例程序,观察直流电机转速的控制过程;
4、填写实验报告。
5、样例程序实验操作说明
实验前连接:
1、用导线将CPLD单元的扩展二号孔“XF”与三合一控制对象开发板上的直流电机单元的二号孔“DVR”连接,将SW2开关的4位拨到OFF,使能pdpinb中断,用导线将实验箱CPLD单元的扩展二号孔“int3”(pdpintb)与三合一控制对象开发板上的直流电机单元的二号孔“SIGNAL”连接;
2、连接好DSP开发系统,实验箱上电,运行CCS软件;
启动CCS 2.0,打开“exp3_02_dcmotor”目录下的“Example_281x_dcmotor.pjt”工程文件;并加载“Example_281x_dcmotor.out”;
在“Example_281x_dcmotor.c”中,变量“r”为直流电机的控制目标转速为40转/秒,变量“rc”为直流电机的基于PWM的PID算法的控制目标转速为4转/0.1秒,即PID控制系统每0.1秒输出一次控制量。运行程序,约20秒后,直流电机被控制进入稳定状态。
说明:电机在起动的时候,需要加个外力使其转动,在程序执行之后,如果电机不转动,可以用手轻轻的转动一下电机或适当调节直流电机单元电位器的值。因各电机的特性的不同,观察到的实验现象有差异,使用本样例程序进行控制时,应做适当修改。
点击“run”运行程序,可以看到电机开始加速然后高速旋转一会后,速度变小,再运行一段时间进入稳定状态。
用View /Graph /Time/Fruquency打开一个图形观察窗口,具体设置如下:
全速运行程序,在变量窗口观察到的图形如下图所示:并进入稳定状态的控制过程;
关闭所有相关程序,该实验结束。
五、实验说明
该实验样例程序采用增量型PID控制算法,其控制算式为:
(式7)
式7是式6的增量型表达式,式中系数、、可以参见式6。
控制偏差为当前电机转速与目标转速之差,控制量输出为输出脉冲的占空比,即以PWM方式控制电机转速。
六、样例程序流程图
主程序