基于单片机模糊PID控制算法实验设计_第1页
基于单片机模糊PID控制算法实验设计_第2页
基于单片机模糊PID控制算法实验设计_第3页
基于单片机模糊PID控制算法实验设计_第4页
基于单片机模糊PID控制算法实验设计_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要自动控制理论实验主要任务是通过实验,使学生掌握自动控制的基本原理和方法,在熟练掌握各种校正方法设计原则的基础上,加强对控制理论的理解和认识,将理论与实践有机地结合起来,提高分析问题及解决问题的能力。本设计是在原有实验箱的基础上,根据常规的PID控制,开发新型的模糊控制实验内容。实验中的控制器为C8051F330单片机,通过上位机C语言开发环境,将代码写入单片机进行控制。其算法采用将常规PID控制与模糊控制相结合的控制策略,运用模糊推理思想,根据不同的误差e及误差变化率ec对PID三个参数Kp,Ki及Kd进行实时优化,达到最优控制。最终实现模糊PID控制算法。由于原有单片机内存的限制,在经

2、过多次实验后,选取了两个模糊控制规则表对搭建的三阶被控对象进行算法验证,实验表明模糊控制和原有常规PID控制比较,明显提高了系统的控制性能。关键词:单片机,PID控制,模糊控制AbstractThe main task of automatic control theorys experiments is to help students master basic principles and methods of automatic control theory by experiment. Based on mastering various correction methods, it

3、helps to enhance understanding and awareness towards control theory, to integrate theory with practice , and to enhance the analysis of problems and problem-solving abilities.The design is based on the original test case, according to the conventional PID control , to develop new fuzzy control exper

4、iments. They are cored by the MCU C8051F330, by using C language development environment and writing codes into the MCU. The algorithm combines conventional PID control and fuzzy control together, and uses fuzzy reasoning to optimize three PID parameters Kp, Ki and Kd for real-time according to diff

5、erent error e and error change rate of ec, only to achieve optimal control. Eventually fuzzy PID control algorithm is realized. Since the original MCUs memory is limited , after a number of experiments ,two fuzzy control rule bases have been selected to do algorithm validation towards third-order pl

6、ant. Experiments show that fuzzy control has increased system control performance obviously compared with conventional PID control. Keywords: MCU; PID control; fuzzy control目录第一章 绪论11.1研究背景和研究意义11.2本文结构11.3本章小结1第二章 单片机原理32.1 单片机系统设计的基础32.1.1 理论储备32.1.2 单片机系统设计的内容32.2单片机控制系统总体方案的设计32.2.1设计方法总述32.2.2直

7、接数字控制42.2.3数字化PID控制42.3 单片机系统硬件设计42.3.1 存储器拓展52.3.2 模拟量输入通道的拓展52.3.3 模拟量输出通道的拓展52.3.4 开关量的I/O接口设计52.3.5 操作面板62.3.6 系统速度匹配62.3.7 系统负载匹配62.4单片机系统的软件设计62.4.1 保证可靠性62.4.2 软硬件折中问题72.4.3 应用软件的特点72.4.4 软件开发步骤72.5单片机控制系统的调试72.5.1 硬件调试72.5.2 软件调试82.5.3 硬件、软件仿真调试9第三章PID控制器103.1.1闭环控制算法113.1.2 PID是比例(P)、积分(I)、

8、微分(D)控制算法113.1.3比例(P)、积分(I)、微分(D)控制算法各有作用113.1.4控制器的P,I,D项选择113.1.5 公式133.1.6 PID算法流程图14第四章 基于单片机模糊PID控制算法实现154.1 模糊控制例子154.2基本原理184.3模糊控制器算法研究194.3.1输入值的模糊化194.3.2模糊控制规则表的建立194.4模糊控制算法的实现204.4.1 实验模糊表204.4.2 输入输出的隶属度函数224.4.3 去模糊化254.4.4 单片机上实现控制算法274.4.5 模糊规则表的选择27第五章 总结30致谢32参考文献33附录34第一章 绪论1.1 研

9、究背景和研究意义自动控制理论实验提供的实验箱中,我们可以搭接不同的被控对象,通过给被控对象输入阶跃信号,在上位机界面上观察其阶跃响应曲线,根据曲线波形,我们可以判定被控对象是否稳定以及各种控制器对被控对象的控制性能如何等。控制器就是单片机。原有的实验箱单片机中,生产厂家只提供数字PID控制,而我们一般都希望单片机能够实现多种控制算法,例如模糊控制算法。本次设计所使用的单片机是C8051F330芯片,有10位A/D、D/A转换,8KB闪存,17个I/O端口,其中A/D的转换速率为200ksps。在自动控制技术的发展过程中,PID控制是历史最久,生命力最强的控制方式。至今,PID控制作为工业控制系

10、统的经典控制技术, 在过程控制、伺服系统、生产机械自动化控制等各领域各行业中仍然是应用最广泛的基本控制技术。由于常规PID 控制器不能在线整定参数;并且,常规PID 控制器对于非线性、时变的系统和模型不清楚的系统就不能很好的控制,其PID参数不是整定困难就是根本无法整定,因此不能得到预期的控制效果。用模糊算法来优化PID参数,使控制器能够根据实际情况调整比例系数Kp、积分系数Ki和微分系数Kd,以达到调节作用的实时最优。1.2 本文结构本文在绪论部分介绍基于单片机的PID控制的研究背景和意义,对用模糊算法优化PID参数作了一个概要描述,并介绍了本文的研究内容。第二章介绍了单片机控制系统的构成、

11、硬件设计、软件设计和系统调试。第三章研究常规PID控制的原理。在这一章节中,我们深入分析了PID控制在原理和构造方面的问题,以及进行了实验论证。第四章在介绍模糊控制的原理和特点之后,我们提出了用模糊算法优化PID参数控制策略,并在单片机上实现了模糊控制算法。第五章为本文总结。1.3 本章小结本章介绍了基于单片机的PID控制以及模糊算法研究背景和研究意义,并且提出了本论文的研究内容,并对论文的结构安排进行了简要说明。第二章 单片机原理2.1 单片机系统设计的基础2.1.1 理论储备单片机控制系统是以单片机(CPU)为核心部件,扩展一些外部接口和设备,组成单片机工业控制机,主要用于工业过程控制。要

12、进行单片机系统设计首先必须具有一定的硬件基础知识;其次,需要具有一定的软件设计能力,能够根据系统的要求,灵活地设计出所需要的程序;第三,具有综合运用知识的能力。最后,还必须掌握生产过程的工艺性能及被测参数的测量方法,以及被控对象的动、静态特性,有时甚至要求给出被控对象的数学模型。2.1.2 单片机系统设计的内容单片机系统设计主要包括以下几个方面的内容:控制系统总体方案设计,包括系统的要求、控制方案的选择,以及工艺参数的测量范围等;选择各参数检测元件及变送器;建立数学模型及确定控制算法;选择单片机,并决定是自行设计还是购买成套设备;系统硬件设计,包括接口电路,逻辑电路及操作面板;系统软件设计,包

13、括管理、监控程序以及应用程序的设计,应用系统设计包含有硬件设计与软件设计两部分;系统的调试与试验。2.2单片机控制系统总体方案的设计2.2.1设计方法总述确定单片机控制系统总体方案,是进行系统设计最重要、最关键的一步。总体方案的好坏,直接影响整个控制系统的性能及实施细则。总体方案的设计主要是根据被控对象的任务及工艺要求而确定的。设计方法大致如下:根据系统的要求,首先确定出系统是采用开环系统还是闭环系统,或者是数据处理系统。选择检测元件,在确定总体方案时,必须首先选择好被测参数的测量元件,它是影响控制系统精度的重要因素之一。选择执行机构,执行机构是微型机控制系统的重要组成部件之一。执行机构的选择

14、一方面要与控制算法匹配,另一方面要根据被控对象的实际情况确定。选择输入/输出通道及外围设备。选择时应考虑以下几个问题:被控对象参数的数量;各输入/输出通道是串行操作还是并行操作;各通道数据的传递速率;各通道数据的字长及选择位数;对显示、打印有何要求;画出整个系统原理图。2.2.2直接数字控制当被控对象的数学模型能够确定时,可采用直接数字控制。所谓数学模型就是系统动态特性的数学表达式,它表示系统输入输出及其内部状态之间的关系。一般多用实验的方法测出系统的特性曲线,然后再由此曲线确定出其数学模型。现在经常采用的方法是计算机仿真及计算机辅助设计,由计算机确定出系统的数学模型,因而加快了系统模型的建立

15、。当系统模型建立后,即可选定上述某一种算法,设计数字控制器,并求出差分方程。计算机的主要任务就是按此差分方程计算并输出控制量,进而实现控制。2.2.3数字化PID控制由于被控对象是复杂的,因此并非所有的系统均可求出数学模型,有些即使可以求出来,但由于被控对象环境的影响,许多参数经常变化,因此很难进行直接数字控制。此时最好选用数字化PID(比例积分微分)控制。在PID控制算法中,以位置型和增量型2种PID为基础,根据系统的要求,可对PID控制进行必要的改进。通过各种组合,可以得到更圆满的控制系统,以满足各种不同控制系统的要求。例如串级PID就是人们经常采用的控制方法之一。 所谓串级控制就是第一级

16、数字PID的输出不直接用来控制执行机构,而是作为下一级数字PID的输入值,并与第二级的给定值进行比较,其偏差作为第二级数字PID的控制量。当然,也可以用多级PID嵌套。2.3 单片机系统硬件设计尽管单片机集成度高,内部含有I/O控制线,ROM,RAM和定时/计数器。但在组成单片机系统时,扩展若干接口仍是设计者必不可少的任务。扩展接口有两种方案,一种是购置现成的接口板,另一种是根据系统实际需要,选用适合的芯片进行设计控制系统。基本系统的构成:一个独立的单片机核心系统,一般由时钟电路、地址锁存器电路、地址译码器、存储器扩展、模拟量输入通道的扩展、模拟量输出通道的扩展、开关量的I/O接口设计、键盘输

17、入和显示电路等组成。2.3.1 存储器拓展由于单片机有四种不同的存储器,且程序存储器和数据存储器是分别编址的,所以单片机的存储器容量与同样位数的微型机相比扩大了一倍多。扩展时,首先要注意单片机的种类;另一方面要把程序存储器和数据存储器分开。2.3.2 模拟量输入通道的拓展主要有以下2个问题:一个是数据采集通道的结构形式,一般单片机控制系统都是多通道系统。因此选用何种结构形式采集数据,是进行模拟量输入通道设计首先要考虑的问题。多数系统都采用共享A/D和S/H形式。但是当被测参数为几个相关量时,则需选用多路S/H,共享A/D形式。对于那些参数比较多的分布式控制系统,可把模拟量先就地进行A/D转换,

18、然后再送到主机中处理。对于那些被测参数相同(或相似)的多路数据采集系统,为减少投资,可采用模拟量多路转换,共享仪用放大器、S/H和A/D的所谓地电平多路切换形式。另外一个问题是A/D转发器的选择,设计时一定要根据被控对象的实际要求选择A/D转换器,在满足系统要求的前提下,尽量选用位数比较低的A/D转换器。2.3.3 模拟量输出通道的拓展模拟量输出通道是单片机控制系统与执行机构(或控制设备)连接的纽带和桥梁。设计时要根据被控对象的通道数及执行机构的类型进行选择。对于那些可直接接受数字量的执行机构,可由单片机直接输出数字量,如步进电机或开关、继电器系统等。对于那些需要接收模拟量的执行机构,则需要用

19、D/A转化,即把数字量变成模拟量后,再带动执行机构。2.3.4 开关量的I/O接口设计由于开关量只有2种状态“1”或“0”,所以,每个开关量只需一位二进制数表示即可。因为MCS51系列单片机设有一个专用的布尔处理机,因而对于开关量的处理尤为方便。为了提高系统的抗干扰能力,通常采用光电隔离器把单片机与外部设备隔开。2.3.5 操作面板操作面板是人机对话的纽带,它根据具体情况,可大可小。为了便于现场操作人员操作,单片机控制系统设计一个操作面板的要求:操作方便、安全可靠、并具有自保功能,即使是误操作也不会给生产带来恶果。2.3.6 系统速度匹配在不影响系统总功率的前提下,时钟频率选得低一些较好,这样

20、可降低系统对其他元器件工作速度的要求,从而降低成本和提高系统的可靠性。但系统频率选的比较高时,要设法使其他元器件与主机匹配。2.3.7 系统负载匹配系统中各个器件之间的负载匹配问题,主要表现在以下几个方面。逻辑电路间的接口及负载:在进行系统设计时,有时需要采用TTL和CMOS混合电路,由于二者要求的电平不一样,因此一定要注意电流及负载的匹配问题。MCS51系列单片及负载:8031的外部扩展功能是很强的,但是8031的P0口和P2口以及控制信号ALE的负载能力都是有限的,P0口能驱动8个LSTTL电路,P2口能驱动4个LSTTL电路。硬件设计时应仔细核对8031的负载,使其不超过总的负载能力的7

21、0%。2.4单片机系统的软件设计单片机控制系统的软件设计一般分2类,系统软件和应用软件设计。系统软件的主要任务是:管理整个控制系统的全过程,比如,POWERUP自诊断功能,KEY INPIT 的管理功能,PRINTER OUTPUT报表功能,DISPLAY功能等等。是控制系统的核心程序,也称之为MONITER监控管理程序其作用类似PC机的DOS 系统。2.4.1 保证可靠性可靠性设计为保证系统软件的可靠性,通常设计一个自诊断程序,定时对系统进行诊断。在可靠性要求较高的场合,可以设计看门狗电路,也可以设计软件陷阱,防止程序跑飞。2.4.2 软硬件折中问题软件设计与硬件设计的统一性在单片机系统设计

22、中,通常一个同样的功能,通过硬件和软件都可以实现,确定哪些由硬件完成,哪些由软件完成,这就是软件、硬件的折中问题。一般来说,在系统可能的情况下,尽量采用软件,因为这样可以节省经费。若系统要求实时性比较强,则可采用硬件。2.4.3 应用软件的特点实时性:由于工业过程控制系统是实时控制系统,所以对应用软件的执行速度都有一定的要求,即能够在被控对象允许的时间间隔内对系统进行控制、计算和处理。换言之,要求整个应用软件必须在一个采样周期内处理完毕。所以一般都采用汇编语言编写应用软件。但是,对于那些计算工作量比较大的系统,也可以采用高级语言和汇编语言混合使用的办法,即数据采集、判断、及控制输出程序用汇编语

23、言,而对于那些较为复杂的计算可采用高级语言。为了提高系统的实时性,对于那些需要随机间断处理的任务,通常采用中断系统来完成。 通用性:在应用程序设计中,为了节省内存和具有较强的适应能力,通常要求程序有一定的灵活性和通用性。为此,可以采用模块结构,尽量将共用的程序编写成子程序,如算术和逻辑运算程序、A/D、D/A转换程序、延时程序、PID运算程序、数字滤波程序、标度变换程序、报警程序等。2.4.4 软件开发步骤软件开发大体包括:划分功能模块及安排程序结构;画出各程序模块详细流程图;选择合适的语言编写程序;将各个模块连接成一个完整的程序。2.5单片机控制系统的调试2.5.1 硬件调试根据设计的原理电

24、路做好实验样机,便进入硬件调试阶段。调试工作的主要任务是排除样机故障,其中包括设计错误和工艺性故障。 脱机检查:用万能表或逻辑测试笔逐步按照逻辑图检查机中各器件的电源及各引脚的连接是否正确,检查数据总线、地址总线和控制总线是否有短路等故障。有时为保护芯片,先对各管座的电位(或电源)进行检查,确定其无误后再插入芯片检查。 仿真调试:暂时排除目标板的CPU和EPROM,将样机接上仿真机的40芯仿真插头进行调试,调试各部分接口电路是否满足设计要求。这部分工作是一种经验性很强的工作,一般来说,设计制作的样机不可能一次性完好,总是需要调试的。通常的方法是,先编调试软件,逐一检查调试硬件电路系统设计的准确

25、性。其次是调试MONITOR程序,只有MONITOER程序正常工作才可以进行下面的应用软件调试。 硬件电路调试的一般顺序是: 检查CPU的时钟电路。通过测试ALE信号,如没有ALE信号,则判断是晶体或CPU故障,这称之为“心脏”检查。 检查ABUS/DBUS的分时复用功能的地址锁存是否正常。 检查I/O地址分配器。一般是由部分译码或全译码电路构成,如是部分译码设计,则排除地址重叠故障。 对扩展的RAM、ROM进行检查调试。一般先后写入55H、AAH,再读出比较,以此判断是否正常。因为这样RAM、ROM的各位均写入过0、1代码。 用户级I/O设备调试。如面板、显示、打印、报警等等。2.5.2 软

26、件调试软件调试根据开发的设备情况可以有以下方法: 交叉汇编:用IBM PC/XT机对MCS51系列单片机程序进行交叉汇编时,可借助IBM PC/XT机的行编辑和屏幕编辑功能,将源程序按规定的格式输入到PC机,生成MCS51 HEX目标代码和LIST文件。 用汇编语言:现在有些单片STD工业控制机或者开发系统,可直接使用汇编语言,借助CRT进行汇编语言调试。 手工汇编:这种方法是最原始,但又是一种最简捷的调试方法,且不必增加调试设备。这种方法的实质就是对照MCS51指令编码表,将源程序指令逐条地译成机器码,然后输入到RAM重新进行调试。在进行手工汇编时,要特别注意转移指令、调用指令、查表指令。必

27、须准确无误地计算出操作码、转移地址和相对偏移量,以免出错。 以上3种方法调试完成以后,即可通过EPROM写入器,将目标代码写入EPROM中,并将其插至机器的相应插座上,系统便可投入运行。本次设计是在Keil Vision3环境下编程编译,通过U-EC5烧写器,可以把程序写到单片机里。2.5.3 硬件、软件仿真调试经过硬件、软件单独调试后,即可进入硬件、软件联合仿真调试阶段,找出硬件、软件之间不相匹配的地方,反复修改和调试。实验室调试工作完成以后,即可组装成机器,移至现场进行运行和进一步调试,并根据运行及调试中的问题反复进行修改。第三章PID控制器PID原理在工程实际中,应用最为广泛的调节器控制

28、规律为比例、积分、微分控制,简称PID控制,又称PID调节。PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。PID控制,实际中也有PI和PD控制。PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的。(1)比例(P)控制比例控制是一种

29、最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差(Steady-stateerror)。(2)积分(I)控制在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系(SystemwithSteady-stateError)。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例 积分(P

30、I)控制器,可以使系统在进入稳态后无稳态误差。(3)微分(D)控制在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。其原因是由于存在有较大惯性组件(环节)或有滞后(delay)组件,具有抑制误差的作用,其变化总是落后于误差的变化。解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入“比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例 微分的控制器,就能够提前使抑制误差的控制作用等

31、于零,甚至为负值,从而避免了被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例 微分(PD)控制器能改善系统在调节过程中的动态特性。3.1 PID控制3.1.1闭环控制算法要实现PID算法,必须在硬件上具有闭环控制,就是得有反馈。比如控制一个电机的转速,就得有一个测量转速的传感器,并将结果反馈到控制路线上,下面也将以转速控制为例。3.1.2 PID是比例(P)、积分(I)、微分(D)控制算法并不是必须同时具备这三种算法,也可以是PD,PI,甚至只有P算法控制。我以前对于闭环控制的一个最朴素的想法就只有P控制,将当前结果反馈回来,再与目标相减,为正的话,就减速,为负的话就加速。现在知道这只

32、是最简单的闭环控制算法。3.1.3比例(P)、积分(I)、微分(D)控制算法各有作用比例,反应系统的基本(当前)偏差e(t),系数大,可以加快调节,减小误差,但过大的比例使系统稳定性下降,甚至造成系统不稳定;积分,反应系统的累计偏差,使系统消除稳态误差,提高无差度,因为有误差,积分调节就进行,直至无误差;微分,反映系统偏差信号的变化率e(t)-e(t-1),具有预见性,能预见偏差变化的趋势,产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除,因此可以改善系统的动态性能。但是微分对噪声干扰有放大作用,加强微分对系统抗干扰不利。积分和微分都不能单独起作用,必须与比例控制配合。3.1.4

33、控制器的P,I,D项选择1、比例控制规律P:采用P控制规律能较快地克服扰动的影响,它的作用于输出值较快,但不能很好稳定在一个理想的数值,不良的结果是虽较能有效的克服扰动的影响,但有余差出现。它适用于控制通道滞后较小、负荷变化不大、控制要求不高、被控参数允许在一定范围内有余差的场合。如:金彪公用工程部下设的水泵房冷、热水池水位控制;油泵房中间油罐油位控制等。 2、比例积分控制规律(PI):在工程中比例积分控制规律是应用最广泛的一种控制规律。积分能在比例的基础上消除余差,它适用于控制通道滞后较小、负荷变化不大、被控参数不允许有余差的场合。如:在主线窑头重油换向室中F1401到F1419号枪的重油流

34、量控制系统;油泵房供油管流量控制系统;退火窑各区温度调节系统等。 3、比例微分控制规律(PD):微分具有超前作用,对于具有容量滞后的控制通道,引入微分参与控制,在微分项设置得当的情况下,对于提高系统的动态性能指标,有着显著效果。因此,对于控制通道的时间常数或容量滞后较大的场合,为了提高系统的稳定性,减小动态偏差等可选用比例微分控制规律。如:加热型温度控制、成分控制。需要说明一点,对于那些纯滞后较大的区域里,微分项是无能为力,而在测量信号有噪声或周期性振动的系统,则也不宜采用微分控制。如:大窑玻璃液位的控制。 4、例积分微分控制规律(PID):PID控制规律是一种较理想的控制规律,它在比例的基础

35、上引入积分,可以消除余差,再加入微分作用,又能提高系统的稳定性。它适用于控制通道时间常数或容量滞后较大、控制要求较高的场合。如温度控制、成分控制等。鉴于D规律的作用,我们还必须了解时间滞后的概念,时间滞后包括容量滞后与纯滞后。其中容量滞后通常又包括:测量滞后和传送滞后。测量滞后是检测元件在检测时需要建立一种平衡,如热电偶、热电阻、压力等响应较慢产生的一种滞后。而传送滞后则是在传感器、变送器、执行机构等设备产生的一种控制滞后。纯滞后是相对与测量滞后的,在工业上,大多的纯滞后是由于物料传输所致,如:大窑玻璃液位,在投料机动作到核子液位仪检测需要很长的一段时间。总之,控制规律的选用要根据过程特性和工

36、艺要求来选取,决不是说PID控制规律在任何情况下都具有较好的控制性能,不分场合都采用是不明智的。如果这样做,只会给其它工作增加复杂性,并给参数整定带来困难。当采用PID控制器还达不到工艺要求,则需要考虑其它的控制方案。如串级控制、前馈控制、大滞后控制等。3.1.5 公式比例(P)控制器 u(t)=Kpe(t ) 式(3-2)比例+积分(PI)控制器 u(t)=Kpet+1Ti0te()d 式(3-3)比例+积分+微分(PID)控制器 u(t)=Kpet+1Ti0ted+Tdd(e(t)dt 式(3-4)式中 Kp比例放大系数;Ti积分时间;Td微分时间标准的直接计算公式: Poutt=Kp*e

37、t+Ki*e(t)+Kd*et-e(t-1) 式(3-5)上一次的计算值:Poutt-1=Kp*et-1+Ki*e(t-1)+Kd*et-1-e(t-2) 式(3-6)两式相减得到增量法公式:Pdlt=Kp*et-et-1+Ki*et+Kd*et-2*et-1+e(t-2) 式(3-7)3.1.6 PID算法流程图图3-1 PID控制算法流程图第四章 基于单片机模糊PID控制算法实现4.1 模糊控制例子我们都知道,到目前为此,常规PID控制器因其控制结构简单,容易设计且成本低而广泛应用于工业生产中。根据一项在1989年对日本电器测量仪器制造协会进行过程控制系统状态的调查发现,90%以上的控制环

38、是PID控制类型1。PID控制公式简单,容易被相关的不同被控对象所采用,但是如果控制系统是高阶的或非线性的,它将不能产生良好的控制效果。而对于复杂或难以精确描述的系统,模糊控制能够产生简单比较好的控制效果。如果采用模糊算法来优化PID参数,使控制器能够根据实际情况调整比例系数Kp、积分系数Ki和微分系数Kd,以达到调节作用的实时最优,将会得到良好的控制效果。考虑以下三阶闭环系统,其模拟电路如图所示。它由一个积分环节和两个惯性环节构成。其积分时间常数为Ti=R1C1=1s,惯性时间常数分别为T1=R3C2=0.1s,K1=R3/R2=1和T2=R4C3=0.5,开环增益K=12。 图4-1 系统

39、模拟电路图4-1 模拟电路图该电路的开环传递函数为:GS=12S0.1S+10.5S+1=120.05S3+0.6S2+S闭环传递函数为:S=12S0.1S+10.5S+1=120.05S3+0.6S2+S+12可得闭环系统的特征方程为: 1+G(S)=0, 0.05S3+0.6S2+S+12=0其根可解得:1=-12 2,3=4.4721i由于系统具有虚轴上的共轭极点,可知系统为临界稳定。给系统阶跃信号,可得其响应曲线为:图4-2 系统阶跃响应曲线由劳斯阵列分析可知,当系统的开环增益K=12时,系统临界稳定;当K12时,系统不稳定;当K12时,系统稳定。因此,若能适当减小系统的开环增益K,就

40、可以使系统稳定,通过比例(P)校正,使得K值变小即可达到改变系统性能目的。硬件实现:系统加入校正环节的电路图如图4-3 所示。校正环节 图4-3 校正后的模拟电路图实测系统校正后的阶跃响应曲线为:图4-4 系统校正后的阶跃响应曲线校正环节电路实现如下图所示。 R2 R1 图4-5 校正环节电路图软件实现:根据硬件校正电路K=0.2,于是在提供的SAct实验机软件界面中输入Kp=0.2,Ti=0,Td=0,T=0.05。得到系统阶跃响应曲线为:图4-6 数字PID控制曲线我们由此发现,根据理论值K=0.2,软件实现比硬件实现差,软件实现中,被控对象的控制量是误差量经过控制器(单片机)的处理计算得

41、出的,算法为PID控制算法。如果加入模糊控制算法,对PID的三个参数进行实时优化,将会得到良好的控制效果。以下为加入模糊控制后得到的系统阶跃响应曲线:图4-7 模糊PID控制的阶跃响应由此可见模糊控制算法优化PID三个参数,得到良好的控制效果。4.2基本原理1965年美国加利福尼亚大学教授LAZadeh发表的两篇论文“Fuzzy Sets” 和“Fuzzy Set and Fuzzy Systems”开创了模糊数学的历史,此后模糊数学这一新兴学科逐渐受到人们的重视并发展了起来。模糊数学用于控制始于1973 年,LAZadeh将这一思想引入控制科学中,给出了用模糊语言进行系统描述的方法。模糊控制

42、的思想就是利用计算机来实现人的控制经验。利用模糊数学的方法,对一些用模糊语言描述的模糊规则,建立过程变量和控制方法之间的模糊关系,同时根据当时的实际情况,基于模糊规则,利用模糊推理的方法获得当时的控制量。模糊控制的核心是模糊控制器。它主要有以下四部分组成:(1)模糊化:这部分的作用是将输入的精确量转换成模糊化量。(2)知识库:知识库中包含了具体应用领域中的知识和要求的控制目标,即存放控制规则。(3) 模糊推理:它具有模拟人的基于模糊概念的推理能力。(4)清晰化(去模糊化):主要是将模糊推理得到的控制量(模糊量)变换为实际用于控制的精确量4.3模糊控制器算法研究采用模糊PID自整定控制的目的是使

43、控制器能够根据实际情况调整比例系数Kp、积分系数Ki和微分系数Kd,以达到调节作用的实时最优。为了简化运算和满足实时性要求,即该调节系统的基本控制仍为PID控制,但使PID调节参数由模糊自整定控制器根据偏差e和偏差变化率ec进行自动调整,同时把模糊自整定控制器的模糊部分按Kp、Ki和Kd分成3部分,分别由相应的子推理器来实现。 4.3.1输入值的模糊化模糊自整定PID控制器是在fuzzy集的论域中进行讨论和计算的,因而首先要将输入变量变换到相应的论域,并将输人数据转换成合适的语言值,也就是要对输入量进行模糊化。根据该规则可把实际误差e、误差变化率ec(dedt)对应的语言变量E、EC表示成模糊

44、量。4.3.2模糊控制规则表的建立(1) Kp控制规则设计在PID控制器中,Kp值的选取决定于系统的响应速度。增大Kp能提高响应速度,减小稳态误差;但是,Kp值过大会产生较大的超调,甚至使系统不稳定减小Kp可以减小超调,提高稳定性,但Kp过小会减慢响应速度,延长调节时间。因此,调节初期应适当取较大的Kp值以提高响应速度,而在调节中期,Kp则取较小值,以使系统具有较小的超调并保证一定的响应速度;而在调节过程后期再将Kp值调到较大值来减小静差,提高控制精度。(2) Ki控制规则设计 在系统控制中,积分控制主要是用来消除系统的稳态误差。由于某些原因(如饱和非线性等),积分过程有可能在调节过程的初期产

45、生积分饱和,从而引起调节过程的较大超调。因此,在调节过程的初期,为防止积分饱和,其积分作用应当弱一些,甚至可以取零;而在调节中期,为了避免影响稳定性,其积分作用应该比较适中;最后在过程的后期,则应增强积分作用,以减小调节静差。(3) Kd控制规则设计 微分环节的调整主要是针对大惯性过程引入的,微分环节系数的作用在于改变系统的动态特性。系统的微分环节系数能反映信号变化的趋势,并能在偏差信号变化太大之前,在系统中引入一个有效的早期修正信号,从而加快响应速度,减少调整时间,消除振荡最终改变系统的动态性能。因此,Kd值的选取对调节动态特性影响很大。Kd值过大,调节过程制动就会超前,致使调节时间过长;K

46、d值过小,调节过程制动就会落后,从而导致超调增加。根据实际过程经验,在调节初期,应加大微分作用,这样可得到较小甚至避免超调;而在中期,由于调节特性对Kd值的变化比较敏感,因此,Kd值应适当小一些并应保持固定不变;然后在调节后期,Kd值应减小,以减小被控过程的制动作用,进而补偿在调节过程初期由于Kd值较大所造成的调节过程的时间延长。.4模糊控制算法的实现4.4.1 实验模糊表本设计中,模糊PID为2输入3输出的模糊控制器。该模糊PID控制器是以|e|和|ec|为输入语言变量,Kp、Ki、Kd为输出语言变量,其各语言变量的论域如下。系统误差绝对值:e=0,3,6,10。误差变化率绝对值:ec=0,

47、2,4,6。输出Kp:Up=0,0.5,1.0,1.5。输出Ki:Ui=0,0.002,0.004,0.006。输出Kd: Ud=0,3,6,9。输入语言变量|e|和|ec|的论域取值“大”(B)、“中”(M)、“小”(S)和“零”(Z)4种。输出语言变量Kp、Ki、Kd的论域取值为“很大”(VB)、“大”(B)、“中”(M)和“小”(S)4种。根据PID参数整定原则及其运行经验,可列出输出变量Kp、Ki、Kd的控制规则如表5-1表5-3所示。表4-1 参数Kp的整定规则ec e 10 6 3 0 6 1.00.51.01.0 41.51.0 1.51.5 21.51.01.51.0 01.5

48、1.01.00表4-2 参数Ki的整定规则ec e 10 6 3 0 6 00.0020.0040.006 40 0.0020.0060.006 2000.0060.006 0000.0060.006表4-3 参数Kd的整定规则ec e 10 6 3 0 6 0000 43333 23333 099994.4.2 输入输出的隶属度函数本设计中,输入和输出的隶属度函数均为三角形,因为三角形隶属度函数简单,易于实现算法的编程。以下为各输入输出的隶属度函数:图4-8 误差e的隶属度函数图4-9 误差变化率ec的隶属度函图4-10 Kp的隶属度函数图4-11 Ki的隶属度函数图4-12 Kd的隶属度函

49、数4.4.3 去模糊化系统的整个控制过程由单片机来实现,而单片机作为控制器,其处理计算的是数字量,也就是清晰量。所以在实现算法时,需要将模糊量转化为清晰量。本次设计,模糊算法是基于一种数学概率分布统筹分配原则来实现的。下面根据一个例子我们阐述这种思想。对于表4-1的右下角四格数据,当e=0,且ec=0时,Kp=0,在这种情况下,Kp=0就是最好的选择;而当e=0,且ec=2时,Kp=1.0就是最好的选择。但是实际的e和ec 是经常变化的,对于e=0,当0ec2时,Kp怎么选择? 1 0 ec 2图4-13 ec在区间(0,2)的隶属度函数 由上图知,ec趋向于0的概率是P(ec0),满足 P(

50、ec0)/1=(2-ec)/2, 由此可得P(ec0)=1-ec/2;同理ec趋向于2的概率是P(ec2)=ec/2;于是Kp的选择就是:Kp=0P(ec0)+1.0P(ec2)=ec/2=Kp1 式(4-1)同理对于e=3,当0ec2时,Kp的选择为:Kp=1.0P(ec0)+1.5P(ec2)=1-ec/4=Kp2 式(4-2)然而,如果0e3时,Kp又如何选择呢?我们按照分析ec在区间(0,2)时的方法来解决。ec在区间(0,2),当e=0时,Kp1是最好的选择,当e=3时,Kp2是最好的选则。 1 0 e 3 图4-14 e在区间(0,3)的隶属度函数e趋向于0的概率P(e0)=1-e

51、/3;趋向于3的概率P(e3)=e/3。于是我们对Kp的选择就是: Kp=Kp1P(e0)+Kp2P(e3) 式(4-3)将式(4-1)和式(4-2)带入式(4-3),得到Kp关于e和ec的表达式: Kp=(1-e/3)ec/2+(1-ec/4)e/3 式(4-4)以上分析显示,当0e3,0ec2时,式(4-4)的Kp是系统“最佳选择”,所谓“最佳选择”,是因为Kp由4个参数(表4-1右下角四格数据)参与计算,共同抉择,真正体现出了模糊理论的广泛包容性。同样的方法,在e和ec不同的区间,我们可以计算出Kp,Ki和Kd的“最优值”,真正达到了优化PID参数的目的。图4-7给出了模糊PID控制的阶

52、跃响应曲线,证明了该控制器具有良好的控制性能。4.4.4 单片机上实现控制算法 +控制器 被控对象图4-15 单片机控制被控对象在自动控制实验箱上搭接模拟被控对象,被控对象的输出信号反馈回来,与输入信号相减,得到误差信号e。实验箱系统控制为单片机C8051F330,该芯片自带D/A及A/D转换,e经实验箱板上B3虚拟示波的CH3通道输入,经A/D转换,采样处理计算,得到数字量的控制量U,再经过D/A转换,得到模拟量的控制量u,经B2的DAOUT输出,控制被控对象。实际的输入量只有误差信号e一个,而单片机要处理的数据还有来自上位机(计算机)的Kp、Ti、Td和T四个参数,单片机作为控制器处理的都是数字量,采样周期为T,采样值赋给变量E,上一次采样到的值赋给E0,所以,e的变化率ec可以用EC=(E-E0)/T来近似求出。知道了E和EC,根据模糊规则表,我们就可以依据4.3.3的数学概率分布统筹分配原则计算出Kp、Ki和Kd的“最优值”。4.4.5 模糊规则表的选择实际上,在给出了模糊规则表后,PID三个参数就能通过模糊算法自整定,系统能够得到良好的控制效果。对于数字PID控制,实验箱提供了上位机界面,在上位机的数字PID控制界面上,输入比例系数Kp,积分时间常数Ti,微分时间常数Td和采样周期T,在界面的左侧可以看到被控对象

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论