实例介绍
入门级别的模糊_PID_自整定算法理解方法,让你很快理解PID自整定控制策略,便于编程,飞思卡尔智能车时使用,很好用
BA WANG MAC整理 模糊控制器的主程序包括初始化、键盘管理及控制模块和显示模块的调用等。温度信号的采集、标度 变换、控翎算法以及速度显示等功能的实现可由各子稈序完成。软件的主要流稈是:利用AT89C51单片机 调A/D转换、标度转换模块以得到速度的反馈信号,然后根据偏差和偏差的变化率计算输入量,再由模 糊PID自整定控制算法得出输出控制量。启动、停止可通过健盘并利用外部屮断产生,有按键输入则调用 屮断服务程序。该程序的流程图如图2所示。 开始 初始化 停止 启动,停上命令吗? 启动 采样实际速度 标度变换 计算偏差、偏差变化 嫫糊PID控制算法模块 数据显示模块 启动、停止命令吗 启动 停止 停机状态 图2模糊控制器程序控制流程 2、模糊控制器算法研究 采用模糊PID自整定控制的目的是使控制器能够根据实际情况调整比例系数Kp、积分系数Ki和微 分系数Kd,以达到调节作用的实时最优。该电液伺服系统的Fuzy自整定PID控制系统结构如图3所示。 单片杋模糊PID自整定控制算法的实现及仿真 3 PDF文件使用" pdfFactory Pro"试用版本创建ww, fineprint,cn BA WANG MAC整理 E 模糊 模糊刊E.控制 逆楼糊 规则 化处理 给定量r KtK PID调节器 被控对豪出量 deat 图3模糊控制器系统结构图 为了简化运算和满足实时性要求,即该调节系统的基木控制仍为PD控制,但使PID调节参数由模糊 自整定控制器根据侃差ε和偏差变化率ε进行自动调整,冋时把模糊自整定控器旳模糊部分按Kp、Ki 和Kd分成3部分,分别由相应的子推理器来实现。 2.1、输入值的模糊化 模糊自整定PD控制器是在fuzy集的论域中进行讨论和计算的,因而首先要将输入变量变换到相应 的论域,并将输人数据转换成合适的语言值,也就是要对输入量进行模糊化。结合本液压伺服系统的特性, 这里选择模变量的模糊集隶属函数为正态分布,具伓分布如图4所示ε根据该规则可把实际误差e、误 差变化率e(de/d)对应的语言变量E、EC表示成模糊量。E、EC的基本论域为-6,+6,将其离散成13 个等级即-6,-5,-4,-3,-2,-1,0,+1,+2,+3,+4,+5,+6。考虑到控制的精度婓求,本设计将[-6 +6]分为负大B]、负中NM]、负小NS]、零[zO]、正小[PS]、正中[PM]、正大[PB]等7个语言变量,然 后由e、eε隶属函数根据最人值法得岀相应的模糊变量。 NB。MNZ PS PM 05 0÷l 2 图4e、e隶属函数 单片杋模糊PID自整定控制算法的实现及仿真 PDF文件使用" pdfFactory Pro"试用版本创建ww, fineprint,cn BA WANG MAC整理 2.2、模糊控制规则表的建立 (1)、Kp控制规则设计 在PID控制器中,Kp值的选取决定于系统的响应速度。增大Kp能提高响应速度,减小稳态误差;但 是,Kp值过大会产生较大的超调,甚至使系统不稳定减小Kp可以减小超调,提高稳定性,但Kp过小会 诚慢响应速度,延长调节时间。因此,调节初期应适当取较大的Kp值以提髙响应速度,而在调节中期, Kp则取较小值,以使系统具有较小的超调并保证一定的响应速度;而在调节过程后期再将Kp值调到较大 值来减小静差,提髙控制精度。Kp的控制规则如衣1所列 表K的模糊规则表 NB NM NS ZO PS PM PB NB PBPB PM PM PS 20 Z0 NM PBPB PM PSPS Z0 NS NS PB PMPM PS ZO NS NS Z0 PM PM PS 70 NS NMNM PS PSPS ZO NSNS NM NB PM PS Z0 NS NMNMNM NB PB Z0 70 NMNMNM NB NB nB NM NS 70 DM PB NB负大PB正大PB正大PM正中PM正中Ps正小Z0零 NM负中PB正大PB正大PM正中PS正小PS正小20零Ns NS负小PB正大PM正中PM正中Ps正小 Z0零NS负小Ns负 ZO零 PM正中|PM正中 PS正小 zO零 NS负小|NM负中|NM负中 PS正小Ps正小P正小 ZO零NS负小NS负小NM负中NB负大 PM正中PS正小20零NS负小NM负中NM负中NM负中NB负大 PB正大 ZO 零 ZO零NM负中NM负中NM负中NB负大NB负大 单片杋模糊PID自整定控制算法的实现及仿真 5 PDF文件使用" pdfFactory Pro"试用版本创建ww, fineprint,cn BA WANG MAC整理 例如 PB Z0零 负 NS负小 NB负 NB负大 NB C NB Z PS PM PB 0.5 3:8 0 2 图4 隶属西数 隶属度是什么,下面我举个例子说明一吓,例如我说50岁以下的不是老年人,70岁以上的是老年人, 那么60岁我应该怎样说些,应该说可能是老年人,也可能不是老年人,因为它对于50岁的隶属度是50%, 计算工式是(X-50)=0.05,对于70的隶属度是50%,计算工式是(70-x)=0.05。 (2)、Ki控制规则设计 在系统控制中,积分控制主要是用来消除系统的稳态误差。由于某些原因(如饱和非线性等),积分过 稈有可能在调芍过稈的初期产生积分饱和,从而引起调节过稈的较人超调。因此,在调节过稈的初期,为 防止积分饱和,其积分作用应当弱一些,甚至可以取零;而在调节中期,为了避免影响稳定忙,其积分作 用应该比较适中;最后在过程的后期,则应增强积分作用,以减小调节静差。依据以上分析,制定的Ki 控制规则表如表2所列 单片杋模糊PID自整定控制算法的实现及仿真 PDF文件使用" pdfFactory Pro"试用版本创建ww, fineprint,cn BA WANG MAC整理 表2K的模糊规则表 K NB NM NS ZO PS PM PB NB NBNB NMNM NS Z0 ZO NM NB NB NM NSNS Z0 ZO NS NB NM NS NS ZO PS PS ZO NMNM NS. ZO PS PM PM PS NSNS Z0 PSPS PM PB PM ZO Z0 PSPS PM PBPB PB Z0Z0 PS PMPM PBPB NB NM NS ZO PS PM PB NB负大NB负大NB负大NM负中NM负中NS负小Z0零 zO零 NM负中NB负大NB负大NM负中NS负小NS负小 Zo 零 ZO零 NS负小NB负大NM负中NS负小Ns负小zO零Ps正小Ps正小 Z0零NM负中NM负中NS负小Z0零PS正小PM正中|PM正中 PS正小Ns负小Ns负小 ZO零 PS正小 PS正小 PM正中PB正大 PM正中Z0零 ZO PS正小P正小PM正中PB正大PB正大 PB正大20零z0零PS正小PM正中PM正中PB正大PB正大 Ki的模糊规则表 (3)、Kd控制规则设计 微分环节的调整主要是针对大惯性过程引入的,徼分环节系数的作用在于改变系统的动杰特性。系统 的微分环节系数能反映信号变化的趋势,并能在偏差信号变化太人之前,在系统中引入一个有效的早期修 正信号,从而加快响应速度,诫少调整时间,消除振荡.最终改变系统的动态性能。因此,Kd值的选取 对调节动态特性影响很大。Kd值过大,调节过程制动就会超前,致使调节时间过长;Kd值过小,调节过 程制动就会落后,从而导致超调增加ε根据实际过程经验,在调节初期,应加大微分作用,这样可得到较 小甚至避免超调;而在屮期,由于调节特性对Kd值的变化比较敏感,因此,Kd值应适当小一些并应保持 单片杋模糊PID自整定控制算法的实现及仿真 PDF文件使用" pdfFactory Pro"试用版本创建ww, fineprint,cn BA WANG MAC整理 圉定不变:然后在调节后期,Kd佰应减小,以减小被控过程的制动作用,进而补偿在调节过程初期由于 Kd值较人所造成的调节过稈的时间延长。依据以上分析,制定的Kd掉制规则表如表3所列。 表3K的模糊规则表 K NB NM NS Z0 PS PM PB NB PS NS NBNBNB NM PS NM PS NS NB NMNM NS 70 NS ZO NS NMNM NSNS ZO ZOZO NSNSNSNSNS ZO PS Z0 Z0Z0 Z0Z0 Z0 ZO PM PB NS PSPSPSPS PB PB PB PM PMPM PSPS PB NB NM NS ZO PS PM PB NB负大PS正小|Ns负小NB负大NB负大NB负大NM负中Ps正小 NM负中PS正小|NS负小NB负大NM负中NM负中NS负小 zO零 NS负小z0零|NS负小|NM负中NM负中NS负小NS负小zO零 Z0零20零NS负小NS负小NS负小NS负小NS负小20零 PS正小Z0零 7O零 7O零 7O零 7O零 70零 PM正中PB正大|N负小PS正小PS正小PS正小Ps正小PB正大 PB正人PB正人PM正中PM正中PM正中PS正小PS正小PB正人 Kd的模糊规则表 单片杋模糊PID自整定控制算法的实现及仿真 PDF文件使用" pdfFactory Pro"试用版本创建ww, fineprint,cn BA WANG MAC整理 23、逆模糊化处理及输出量的计算 对经过模糊控制规则表求得的Kp、Ki、Kd采用重心法进行逆模糊化处理(重心法在此就不做详细介绍 的公式如下: u(k)=K,(k)+K7∑e0)+K△e(k)T 式中,u(k)为k采样周期时的输出,e(k)为k采样周期时的偏差,T为采样周期,通过输出uk)乘以相 应的比例因子Ku就可得出精确的输出量u。其公式如下: =(k)K 3、实验结果分析 常规PID控制时通过调节PⅠD三个参数,就可以得到系统比较理想的响应图,控制效果的优良与参数 的调壟有很大的关系,也能提高快速性。但三个参数的词整非常繁琐。而且,如果系统环境不断变化,则 参数乂必须进行重新调氅,往往达伓釗最优。而釆用模糊PI控制后,通过模糊控器对PID进行非线性 的参数整定,可使系统无论是快速性方面还是稳定性方面都达到比较好的效果。 笔者将上述PⅠD控制及模糊PD搾制分别进行了仿真试验,实验分别在单独模糊PID搾訇情况下和模 糊PID控制两种情况下进行。并在在线运行过稈中通过逻辑规则的结果处理、查表和运算完成了对PID参 数的在线自矫正系统的偏差绝对值以及偏差的变化绝对值的取值范围可根据实际经验分别确定为[-0.1cm s,0.lcm/s】和[-0.06cm/s2,o06cm/s2],以而确定相对控制效果较好时Kp、Ki、Kd的取值范围 为Kp[-0.3,0.3]、K-006,006]、Kd-3,3]。 传统P和模糊PID实验所得的曲线分别如图5及图6所示。从图中可以发现,采用模糊控制策眳整 定PD参数相对于普通PⅠD控制策略,其系统的稳态性得到了较大的改善,响应时间大大减少,超调量也 得到了一定的改善 4、结束语 实验证明:该单片杋模糊PID自整定控制器对于电液伺服搾制系统具有较好的效果。实战中可以根据 单片杋模糊PID自整定控制算法的实现及仿真 PDF文件使用" pdfFactory Pro"试用版本创建ww, fineprint,cn BA WANG MAC整理 工程控制的具体情况及对超调量、稳定性、响应速度的不同要求,来调整模糊PID控制器三个参数的取值 范闱,从而得到不同的控制精度和控制效果。 总之,本文研究的模糊PID控制器具有以下一些特点: (1)算法简单实用,本质上不依赖于系统的数字模型 (2)可充分利用单片机的软件资源,可靠性高,开发速度快 (3)克服了传统PID控制器操作的困难,提高了系统的智能化程度; (4)模糊PD控制器棒性好,具有专家控制器的特点,并可推广应用于其它⊥作领域。 单片机模糊PID自整定控制算法的实现及仿真 PDF文件使用" pdfFactory Pro"试用版本创建ww, fineprint,cn 【实例截图】
【核心代码】
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论