文档库 最新最全的文档下载
当前位置:文档库 › 模糊控制算法单片机实现

模糊控制算法单片机实现

模糊控制算法单片机实现
模糊控制算法单片机实现

湖南大学

硕士学位论文

模糊控制的单片机实现研究

姓名:鲁远耀

申请学位级别:硕士

专业:电工理论与新技术指导教师:陈宗穆

20020101

关于模糊控制理论的综述

物理与电子工程学院 《人工智能》 课程设计报告 课题名称关于模糊控制理论的综述 专业自动化 班级 11级3班 学生姓名郑艳伟 学号 指导教师崔明月 成绩 2014年6月18日

关于模糊控制理论的综述 摘要:模糊控制方法是智能控制的重要组成部分,本文简要回顾了模糊控 制理论的发展,详细介绍了模糊控制理论的原理和模糊控制器的设计步骤, 分析了模糊控制理论的优缺点以及模糊控制需要完善或继续研究的内容,根 据各种模糊控制器的不同特点,对模糊控制在电力系统中的应用进行了分 类,并分析了各类模糊控制器的应用效能.最后,展望了模糊控制的发展趋 势与动态. 关键词:模糊控制;模糊控制理论;模糊控制系统;模糊控制理论的发展模糊控制是以模糊集理论、模糊语言变量和模糊控制逻辑推理为基础的一种智能控制方法,从行为上模拟人的思维方式,对难建模的对象实施模糊推理和决策的一种控制方法.模糊控制作为智能领域中最具有实际意义的一种控制方法,已经在工业控制领域、电力系统、家用电器自动化等领域中解决了很多的问题,引起了越来越多的工程技术人员的兴趣. 模糊控制系统简介 模糊控制系统是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的一种计算机数字控制技术.1965年美国的扎德[1]创立了模糊集合论, 1973 年, 他给出了模糊逻辑控制的定义和相关的定理.1974 年英国的Mamdani 首先用模糊控制语句组成模糊控制器,并把它用于锅炉和蒸汽机的控制, 在实验室获得成功, 这一开拓性的工作标志着模糊控制论的诞生. 模糊控制系统主要是模拟人的思维、推理和判断的一种控制方法, 它将人的经验、常识等用自然语言的形式表达出来, 建立一种适用于计算机处理的输入输出过程模型, 是智能控制的一个重要研究领域.从信息技术的观点来看, 模糊控制是一种基于规则的专家系统.从控制系统技术的观点来看, 模糊控制是一种普遍的非线性特征域控制器. 相对传统控制, 包括经典控制理论与现代控制理论.模糊控制能避开对象的数学模型(如状态方程或传递函数等) , 它力图对人们关于某个控制问题的成功与失败和经验进行加工, 总结出知识, 从中提炼出控制规则, 用一系列多维模糊条件语句构造系统的模糊语言变量模型, 应用CRI 等各类模糊推理方法,

基于单片机的模糊温度控制器的设计

基于单片机的模糊温度控制器的设计 1 引言 本文研究的被控对象为某生产过程中用到的恒温箱,按工艺要求需保持箱温100℃恒定不变。我们知道温度控制对象大多具有非线性、时变性、大滞后等特性, 采用常规的PID 控制很难做到参数间的优化组合, 以至使控制响应不能得到良好的动态效果。而模糊控制通过把专家的经验或手动操作人员长期积累的经验总结成的若干条规则,采用简便、快捷、灵活的手段来完成那些用经典和现代控制理论难以完成的自动化和智能化的目标, 但它也有一些需要进一步改进和提高的地方。模糊控制器本身消除系统稳态误差的性能比较差, 难以达到较高的控制精度, 尤其是在离散有限论域设计时更为明显, 并且对于那些时变的、非线性的复杂系统采用模糊控制时, 为了获得良好的控制效果, 必须要求模糊控制器具有较完善的控制规则。这些控制规则是人们对受控过程认识的模糊信息的归纳和操作经验的总结。然而, 由于被控过程的非线性、高阶次、时变性以及随机干扰等因素的影响, 造成模糊控制规则或者粗糙或者不够完善, 都会不同程度的影响控制效果。为了弥补其不足, 本文提出用自适应模糊控制技术,达到模糊控制规则在控制过程中自动调整和完善, 从而使系统的性能不断完善, 以达到预期的效果。 2 自调整模糊控制器的结构及仿真 (1) 控制对象 一般温度可近似用一阶惯性纯滞后环节来表示, 其传递函数为: 式中: K———对象的静态增益; Tc———对象的时间常数; τ———对象的纯滞后时间常数。 本文针对某干燥箱的温度控制, 用Cohn-Coon 公式计算各参数得: K=0.181; Tc=60; τ=20。 ( 2) 自调整模糊控制器的结构 自调整模糊控制器的结构如图1 所示。

模糊控制的优缺点

模糊控制的优缺点

————————————————————————————————作者:————————————————————————————————日期:

1.模糊控制中模糊的含义 模糊控制中的模糊其实就是不确定性。从属于该概念和不属于该概念之间没有明显的分界线。模糊的概念导致了模糊现象。 2.模糊控制的定义 模糊控制就是利用模糊数学知识模仿人脑的思维对模糊的现象进行识别和判断,给出精确的控制量,利用计算机予以实现的自动控制。 3.模糊控制的基本思想 模糊控制的基本思想:根据操作人员的操作经验,总结出一套完整的控制规则,根据系统当前的运行状态,经过模糊推理,模糊判断等运算求出控制量,实现对被控制对象的控制。 4.模糊的控制的特点 不完全依赖于纯粹的数学模型,依赖的是模糊规则。模糊规则是操作者经过大量的操作实践总结出来的一套完整的控制规则。 模糊控制的对象称为黑匣(由于不知道被控对象的内部结构、机理,无法用语言去描述其运动规律,无法去建立精确的数学模型)。但是模糊规则又是模糊数学模型。 5 模糊控制的优缺点及需要解决的问题分析 5.1模糊控制的优点 (1)使用语言方便,可不需要过程的精确数学模型;(不需要精确的数学模型) (2)鲁棒性强,适于解决过程控制中的非线性、强耦合时变、

滞后等问题;鲁棒性即系统的健壮性。 (3)有较强的容错能力。具有适应受控对象动力学特征变化、环境特征变化和动行条件变化的能力; (4)操作人员易于通过人的自然语言进行人机界面联系,这些模糊条件语句容易加到过程的控制环节上。 5.2模糊控制的缺点 (1)信息简单的模糊处理将导致系统的控制精度降低和动态品质变差; (2)模糊控制的设计尚缺乏系统性,无法定义控制目标。 6.模糊数学 模糊数学就是利用数学知识研究和解决模糊现象。在数学和模糊现象之间架起了一座桥梁。 6.1模糊集合的概念 每一个概念都有内涵和外延。 内涵就是指概念的本质属性的集合。外延就是符合某种本质属性的全体对象的集合。 模糊数学的基础就是模糊理论集。 在模糊集合设计到的论域U 上,给定了一个映射A,A :U →[0,1] ,)(x x A μ ,则称A 为论域U 上的模糊集合或者模糊子集; )(x A μ表示U 中各个元素x 属于集合A 的程度,称为元素x 属于模糊集合A 的隶属函数。当x 是一个确定的0x 时,称)(0x A μ为元素0x 对于模糊集合A 的隶属 度。 F 集合引出的几个概念

模糊控制规则表生成程序

模糊控制规则表生成程序 %偏差E的赋值表 E=[1.0 0.8 0.7 0.4 0.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.2 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.3 0.7 1.0 0.7 0.2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.6 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.6 0.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.2 0.7 1.0 0.7 0.3 0.1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.2 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.4 0.7 0.8 1.0]; %偏差变换率EC的赋值表 Ec=[1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0]; %输出U的赋值表 u=[1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3 0.7 1.0 0.7 0.3 0.0 0.0

基于模糊控制的速度跟踪控制问题(C语言以及MATLAB仿真实现)

基于模糊控制的速度控制 ——地面智能移动车辆速度控制系统问题描述 利用模糊控制的方法解决速度跟踪问题,即已知期望速度(desire speed),控制油门(throttle output)和刹车(brake output)来跟踪该速度。已知输入:车速和发动机转速(值可观测)。欲控制刹车和油门电压(同一时刻只有一个量起作用)。 算法思想 模糊控制器是一语言控制器,使得操作人员易于使用自然语言进行人机对话。模糊控制器是一种容易控制、掌握的较理想的非线性控制器,具有较佳的适应性及强健性(Robustness)、较佳的容错性(Fault Tolerance)。利用控制法则来描述系统变量间的关系。不用数值而用语言式的模糊变量来描述系统,模糊控制器不必对被控制对象建立完整的数学模式。 Figure 1模糊控制器的结构图 模糊控制的优点: (1)模糊控制是一种基于规则的控制,它直接采用语言型控制规则,出发点是现场操作人员的控制经验或相关专家的知识,在设计中不需要建立被控对象的精确的数学模型,因而使得控制机理和策略易于接受与理解,设计简单,便于应用。 (2)由工业过程的定性认识出发,比较容易建立语言控制规则,因而模糊控制对那些数学模型难以获取,动态特性不易掌握或变化非常显著的对象非常适用。 (3)基于模型的控制算法及系统设计方法,由于出发点和性能指标的不同,容易导致较大差异;但一个系统语言控制规则却具有相对的独立性,利用这些控制规律间的模糊连接,容易找到折中的选择,使控制效果优于常规控制器。 (4)模糊控制是基于启发性的知识及语言决策规则设计的,这有利于模拟人工控制的过程和方法,增强控制系统的适应能力,使之具有一定的智能水平。 简化系统设计的复杂性,特别适用于非线性、时变、模型不完全的系统上。 模糊控制的缺点

模糊控制详细讲解实例之欧阳歌谷创作

一、速度控制算法: 欧阳歌谷(2021.02.01) 首先定义速度偏差-50 km/h≤e(k)≤50km/h,-20≤ec(i)=e(k)-e(k-1)≤20,阀值eswith=10km/h 设计思想:油门控制采用增量式PID控制算法,刹车控制采用模糊控制算法,最后通过选择规则进行选择控制量输入。 选择规则: e(k)<0 ①e(k)>-eswith and throttlr_1≠0 选择油门控制 ②否则:先将油门控制量置0,再选择刹车控制 0

E/EC和U取相同的隶属度函数即: 说明:边界选择钟形隶属度函数,中间选用三角形隶属度函数,图像略 实际EC和E输入值若超出论域范围,则取相应的端点值。 3.模糊控制规则 由隶属度函数可以得到语言值隶属度(通过图像直接可以看出)如下表: 表1:E/EC和U语言值隶属度向量表 设置模糊规则库如下表: 表2:模糊规则表 3.模糊推理 由模糊规则表3可以知道输入E与EC和输出U的模糊关系,这里我取两个例子做模糊推理如下: if (E is NB) and (EC is NM) then (U is PB) 那么他的模糊关系子矩阵为:

单片机模糊控制在电饭煲中得应用

单片机模糊控制在电饭煲中的应用 摘要:介绍用新型HT46R47型单片机和模糊控制技术实现的电饭煲。他具有电路简单、成本低廉、节省能源、安全可靠等特点。<--摘 关键词:单片机;模糊逻辑;电路设计;抗干扰;温度采样;电饭煲 目前,市场上的电饭煲大部分采用固定功率的方式加热,能源利用率低、功能单一,难以满足人们的日益增长的生活需求。开发功能齐全、成本低廉、节省能源、安全可靠的微电脑电饭煲,是非常有必要的。 1 电饭煲的工作原理及硬件组成 系统选用以低成本、功耗小、性能良好的8位A/D型HT46R47单片机为控制核心的控制电路。引脚如图1所示。 他的主要特性如下: ·工作电压:f SYS=4 MHz:2.2~5.5 V; ·13位双向输入/输出口; ·8位带溢出中断的可编程定时/计数器,具有7级预分频器; ·石英晶体或RC振荡器; ·看门狗定时器; ·2 048×14位的程序存储器PROM; ·64×8位的数据存储器RAM; ·在V DD=5 V且系统时钟为8 MHz时,指令时钟为0.5μs; ·四通道9位的A/D转换器; ·指令执行时间皆为1或2个指令周期低电压复位功能。 1.1 工作原理 电饭煲的工作原理如图2所示。通电后,系统进入待机状态,此时系统可接收用户的功能选择,用户所选功能通过显示电路显示出来,当用户按下确定键时,MCU开始对温度进行监测,对

各种功能进行相应的加热控制,直至功能结束时,发出声音报警提示。 1.2 硬件电路设计 (1)MCU MCU是电饭煲的核心部分,完成数据采集、输入、处理、输出、显示等功能。 (2)测温元件数的热敏电阻。由于热敏电阻值的变化与温度的变化是非线性关系,为了提高温度的测量分辨率和系统的抗干扰性能,设计电路如图3所示。 图3中,R t是负温度系数的热敏电阻;与R1并联后的阻值与温度的变化接近线性关系,提高分辨率;R2起分压作用;O点为测量点:当温度变化时,R t阻值发生变化,O点的电压也跟随变化,测量O点则可测量出温度的变化;C1是防止干扰引起O点的电压突变。 (3)加热执行电路 MCU通过PB1输出方波控制信号,通过电容偶合、整流后送到三极管的B极,放大后驱动继电器工作。这样有方波输出时,继电器接通发热盘电源,没有方波输出时,则断开发热盘电源。

离散化 Pid 模糊控制算法

论文标题: 设计PID ,离散化,模糊化控制器 PID 控制器设计 一 PID 控制的基本原理和常用形式及数学模型 具有比例-积分-微分控制规律的控制器,称PID 控制器。这种组合具有三种基本规律各自的特点,其运动方程为: dt t de dt t e t e t m K K K K K d p t i p p )()()()(0 ++=? 相应的传递函数为: ???? ??++=S S s K K K d i p c 1)(D S S S K K K d i p 12++? = 二 数字控制器的连续化设计步骤 假想的连续控制系统的框图

1 设计假想的连续控制器D(s) 由于人们对连续系统的设计方法比较熟悉,对由上图的假想连续控制系统进行设计,如利用连续系统的频率的特性法,根轨迹法等设计出假想的连续控制器D(S)。 2 选择采样周期T 香农采样定理给出了从采样信号到恢复连续信号的最低采样频率。在计算机控制系统中,完成信号恢复功能一般有零阶保持器H(s)来实现。零阶保持器的传递函数为 3将D(S)离散化为D(Z) 将连续控制器D(S)离散化为数字控制器D(Z)的方法很多,如双线性变换法,后向差分法,前向差分法,冲击响应不变法,零极点匹配法,零阶保持法。 双线性变换法 然后D(S)就可以转化离散的D(Z) 三Matlab仿真实验 直接试探法求PID 根据这个框图,求出该传递函数的P=0.35 I=0 D=0

根据 ???? ??++=S S s K K K d i p c 1)(D D (Z )=0.35 T=0.01 数字连续话PID 控制器设计MA TLAB 仿真框图 实验结果 没有经过调节的结果为

模糊控制程序实例学习资料

5.2.2.6 模糊控制器设计实例 1、单输入模糊控制器的设计 【例5.12】已知某汽温控制系统结构如图5.10所示,采用喷水减温进行控制。设计单输入模糊控制器,观察定值扰动和内部扰动的控制效果。 R = 图5.10 单回路模糊控制系统 按表5-2确定模糊变量E 、U 的隶属函数,按表5-3确定模糊控制规则,选择温度偏差e 、控制量u 的实际论域:[ 1.5,1.5]e u =∈-,则可得到该系统的单输入模糊控制的仿真程序如FC_SI_main.m 所示,仿真结果如图5.11所示。 设温度偏差e 、控制量u 的实际论域:[ 1.5,1.5]e u =∈-,选择e 、u 的等级量论域为 {3,2,1,0,1,2,3}E U ==---+++ 量化因子2) 5.1(5.13 2=--?= K 。 选择模糊词集为{NB,NS,ZO,PS,PB },根据人的控制经验,确定等级量E ,U 的隶属函数曲线如图5-8 所示。根据隶属函数曲线可以得到模糊变量E 、U 的赋值表如表5-3所示。 图5-8 E ,U 的隶属函数曲线 -3 -2 -1 1 2 3

依据人手动控制的一般经验,可以总结出一些控制规则,例如: 若误差E 为O ,说明温度接近希望值,喷水阀保持不动; 若误差E 为正,说明温度低于希望值,应该减少喷水; 若误差E 为负,说明温度高于希望值,应该增加喷水。 若采用数学符号描述,可总结如下模糊控制规则: 若E 负大,则U 正大; 若E 负小,则U 正小; 若E 为零,则U 为零; 若E 正小,则U 负小; 若E 正大,则U 负大。 写成模糊推理句: if E=NB then U=PB if E=NS then U=PS if E=ZO then U=ZO if E=PS then U=NS if E=PB then U=NB 由上述的控制规则可得到模糊控制规则表,如表5-4所示。 表5-4 模糊控制规则表 模糊控制规则实际上是一组多重条件语句,它可以表示从误差论域E 到控制量论域U 的模糊关系R 。 按着上述控制规则,可以得到该温度偏差与喷水阀门开度之间的模糊关系R : ()()()()() E U E U E U E U E U R E U NB PB NS PS ZO ZO PS NS PB NB - - =?=?????U U U U 计算模糊关系矩阵R 的子程序如F_Relation_1.m 所示。 %模糊关系计算子程序F_Relation_1.c function [R,mfe,mfu,ne,nu,Me]=F_Relation_1 %#############################输入模糊变量赋值表(表5-3)############################ ne=7;%等级量e 的个数 nu=7;%等级量u 的个数 Me=[0 0 0 0 0 0.5 1;0 0 0 0 1 0.5 0;0 0 0.5 1 0.5 0 0; 0 0.5 1 0 0 0 0;1 0.5 0 0 0 0 0]; Mu=Me; %##定义模糊变量及其语言值 1=PB,2=PS,3=O,4=NS,5=NB ,并输入模糊控制规则表(表5-4)## mfc=5;%模糊变量E 的语言值个数,控制规则表列数

单片机模糊控制节水灌溉系统设计

单片机模糊控制节水灌溉系统设计 王晓健 (潍坊职业学院,山东潍坊261031) 摘要 介绍了灌溉控制系统的组成及工作原理,以单片机为核心控制芯片,设计了一套节水灌溉控制系统,并对其决策过程进行了具体分析。 关键词 单片机;模糊规则;节水灌溉中图分类号 S274.2 文献标识码 A 文章编号 0517-6611(2010)01-00365-02Design of Single -chi p M i croco mputer Fuzzy Control Syste m for W ater -s avi ng Irrigati on WANG Xiao -jia n (W e if ang V oca tiona l Co llege ,W e if ang ,Shandong 261031)Abstract The co mpositi on and pri nci ple of i rriga ti on control syst em were i ntroduced .Taki ng si ng le -chi p m icrocomputer as t he co re contro l ch i p ,a contro l syst em for w ater -savi ng irri gati on was designed ,and its decisi on process was ana l yzed i n deta i .l K ey words Si ng l e -ch i p m i croco mputer ;Fuzzy contro;l W ater -savi ng irri gati on 发达国家发展高效农业的一个重要途径是实现灌溉管理的自动化,如美国、日本、以色列等发达国家已采用了先进的灌溉系统。他们采用先进的节水灌溉制度,由传统的充分灌溉向非充分灌溉发展,对灌区用水进行监测预报,实行动态管理,采用遥感技术,监测土壤墒情和作物生长,开发、制造了一系列用途广泛、功能强大的数字式灌溉控制器,并得到了广泛应用。地处干早缺水地带的以色列,是世界上微灌技术发展最具有代表性的国家,目前以色列全国农业土地基本上实现了灌溉管理自动化,并且普遍推行自动控制系统,按时、按量将水、肥直接送入作物根部,水资源利用率和单方 水的粮食产量都相当高 [1] 。我国节水灌溉自动化研究处于 起步阶段,自动化程度低,目前开发的自动灌溉控制系统还 处于研制、试用阶段,并且多数是小规模实验和理论的探讨,开发出来的产品价格较为昂贵。笔者在此介绍的单片机模糊控制节水灌溉系统属于/大规模灌溉工程中计算机监控系统0的一个子课题,即下位机部分,具有重要的现实意义。1 灌溉控制系统的组成及工作原理 该系统通过单片机对微灌工程的主要设备进行监测、控 制,并实现各种信息处理,系统结构如图1所示[2] 。 滴灌系统主要组成及工作原理有5点 [3] 。 图1 灌溉控制系统结构 F i g .1 I rri gati on contro l syste m structure diagra m 作者简介 王晓健(1982-),男,山东安丘人,助教,从事自动控制、电 子技术研究。 收稿日期 2009-08-24 (1)首部包括水泵、过滤器、肥料罐、压力表和流量计等。 其作用是从水源抽水加压(1@105~3@105 Pa);施入化肥溶液(化肥罐容积50~100L),过滤杂质;最后,将水、肥输进干管。 (2)管道系统:包括干管、支管和毛管。干、支管内径一般为37.5~100mm,毛管内径为10mm 左右,均由高压聚乙烯或聚氯乙烯制成。为预防生物堵塞,往往在塑料中添加炭黑,各级管道之间均用二通、三通、四通、旁通连接。 (3)滴头。滴头的作用在于使水流经过微小的孔隙消能,然后成水滴状灌入土壤。 (4)土壤湿度传感器。它是采集数据的主要工具,是实现自动灌溉的重要环节。土壤湿度传感器一般采集土壤的 水吸力大小信号,也叫土壤水分传感器。通过土壤湿度传感器测量土壤湿度,从而了解真正的灌溉需求和土壤的保水能力。 (5)单片机控制系统。如图2所示,它主要由AT MEGA128微处理器、AT45DB161存储芯片、DS1302时钟芯片、MAX232 串行通信芯片等部分组成。 图2 单片机控制系统 F ig .2 Si ng l e -c h i p contro l syste m bloc k d i agra m 单片机控制系统采用AT MEG A 128作为核心控制芯片, 安徽农业科学,Jou r n al ofAnhu iAgr.i Sc.i 2010,38(1):365-366,422责任编辑 金炎 责任校对 傅真治

模糊控制

1、 由于s12xs没有了模糊指令,使单片机运用模糊控制增加了不少难度,但经过研究发现,还是可以通过matlab接口来实现的,本人也在努力中,希望有更多的人来共同研究~ 对于实际模糊控制系统,由于在高级语言中模糊控制程序的实现比较复杂,因 此引入模糊控制存在一定的困难,程序代码的过于复杂也会严重影响模糊控制系 统的开发周期。而Matlab 系统及其工具箱中提供了一些能够独立完成某些Matlab 功能的C/C++库函数,这些库函数可以直接应用到C/C++平台中,脱离系统完成 Matlab 某些功能,极大的方便了实际应用。Matlab Fuzzy Logic 工具箱的独立C 代码就是一个这样的C 语言库[1]。 独立的C 代码模糊推理引擎函数库fis.c 位于Matlab 目录下的 toolbox\fuzzy\fuzzy 目录中,它包含了在C 语言环境下调用Matlab Fuzzy Logic 工具箱建立的模糊推理系统的数据文件(*.fis)进行模糊逻辑推理的一系列C 函 数,其基本原理是利用C 代码实现Matlab 中的模糊推理系统(FIS)功能。该目录 下还有一个C 代码程序fismain.c,它实际上是利用fis.c 库函数来实现模糊推理系 统的一个实例。 正确地熟悉了fis.c 库函数中的函数定义,在应用程序中正确调用,即可实 现模糊推理系统功能。例如,从Matlab 的模糊推理系统文件(*.fis)读入系统数据, 可用下面的语句:fisMatrix=returnFismatrix(fis_file,&fis_row_n,&fis_col_n);建立基于C 代码的模糊推理系统,可用下面的语句: fisBuildFisNode(fis,fisMatrix,fis_col_n,MF_POINT_N)。 但是需要说明的是,在独立C代码函数库fis.c 中只定义了Matlab Fuzzy Logic 工具箱的11 种隶属函数以及AND、OR、IMP 和AGG 四种逻辑操作函数。所以 在利用Matlab 的模糊逻辑工具箱建立用于独立C 代码引擎的模糊推理系统时, 不允许采用自定义的隶属度函数和逻辑操作函数来设计系统,除非修改fis.c 函 数库[2]。 设计基于独立的C 代码模糊推理引擎的模糊控制程序主要有以下两个步骤: (1) 利用Matlab 的模糊逻辑工具箱建立一个模糊推理系统,并将系统存 为扩展名为fis 的数据文件。注意只能使用Matlab 定义的隶属度函数 和逻辑操作函数, (2) 在C 语言应用程序中实现Matlab 中定义的模糊推理系统功能。两者之间的接 口就是独立C 代码模糊推理引擎函数库fis.c。 2、 基于S12的模糊控制调试心得 小可不才在博客发了一篇有关S12的模糊控制的日志(《MC9S12DG128模糊控制崩溃之旅》)。并跟一些志同道合的网友展开了较为深入的讨论。现应部分网友同仁的要求将我调试成功的心得体会写在如下,由于本人也只是懂得一些皮毛,而且有很多问题并未深究,难免有不妥或错误之处,还请各位包涵并指正,谢谢! 在此以飞思卡尔智能小车的方向控制为例,文中可能会提到一些变量,但不会对该变量作深入的探究,敬请原谅!

C实现模糊控制算法

由于项目需要,需要模糊控制算法,之前此类知识为0,经过半个多月的研究,终于有的小进展。开始想从强大的互联网上搜点c代码来研究下,结果搜遍所有搜索引擎都搜不到,以下本人从修改的模糊控制代码,经过自己修改后可在 vc6.0,运行!输入e表示输出误差,ec表示误差变化率,经过测试具有很好的控制效果,对于非线性系统和数学模型难以建立的系统来说有更好的控制效果!现将其公开供大家学习研究! #include #include"math.h" #define PMAX 100 #define PMIN -100 #define DMAX 100 #define DMIN -100 #define FMAX 100 /*语言值的满幅值*/ int PFF[4]={0,12,24,48}; /*输入量D语言值特征点*/ int DFF[4]={0,16,32,64}; /*输出量U语言值特征点*/ int UFF[7]={0,15,30,45,60,75,90}; /*采用了调整因子的规则表,大误差时偏重误差,小误差时偏重误差变化*/ /*a0=0.3,a1=0.55,a2=0.74,a3=0.89 */ int rule[7][7]={ //误差变化率 -3,-2,-1, 0, 1, 2, 3 // 误差 {-6,-6,-6,-5,-5,-5,-4,}, // -3 {-5,-4,-4,-3,-2,-2,-1,}, // -2 {-4,-3,-2,-1, 0, 1, 2,}, // -1 {-4,-3,-1, 0, 1, 3, 4,}, // 0 {-2,-1, 0, 1, 2, 3, 4,}, // 1 { 1, 2, 2, 3, 4, 4, 5,}, // 2 { 4, 5, 5, 5, 6, 6, 6}}; // 3 /**********************************************************/ int Fuzzy(int P,int D) /*模糊运算引擎*/ { int U; /*偏差,偏差微分以及输出值的精确量*/ unsigned int PF[2],DF[2],UF[4]; /*偏差,偏差微分以及输出值的隶属度*/ int Pn,Dn,Un[4]; long temp1,temp2; /*隶属度的确定*/ /*根据PD的指定语言值获得有效隶属度*/

模糊控制器设计的基本方法

第5章 模糊控制器设计的基本方法 5.1 模糊控制器的结构设计 结构设计:确定输入、输出变量的个数(几入几出)。 5.2 模糊控制规则设计 1. 语言变量词集 {}PB PM PS O NS NM NB ,,,,,, 2. 确立模糊集隶属函数(赋值表) 3. 建立模糊控制规则,几种基本语句形式: 若A 则B c R A B A E =?+? 若A 则B 否则C c R A B A C =?+? 若A 或B 且C 或D 则E ()()R A B E C D E =+?+????????? 4. 建立控制规则表 5.3 模糊化方法及解模糊化方法 模糊化方法 1. 将[]b a ,内精确量离散化为[]n n +-,内的模糊量 2. 将其区间精确量x 模糊化为一个单点集,即0)(,1)(==x x μμ 模糊推理及非模糊化方法 1. MIN-MAX ——重心法 11112222n 00R and R and R and and '? n n n A B C A B C A B C x y c →→→→= 三步曲: 取最小 1111'()()()()c A o B o C z x y z μμμμ=∧∧ 取最大 12''''()()()()n c c c c z z z z μμμμ=∨∨∨ 2. 最大隶属度法 例: 10.3 0.80.5 0.511234 5 C =+----- +++,选3-=*u

20.30.80.40.21101234 5 C =+ +++ + ,选 5.12 21=+=*u 5.4 论域、量化因子及比例因子选择 论域:模糊变量的取值范围 基本论域:精确量的取值范围 误差量化因子:e e x n k /= 比例因子:e y k u u /= 误差变化量化因子:c c x m k /= 5.5 模糊控制算法的流程 m j n i C u B EC A E ij j i ,,2,1;,,2,1 then then if ===== 其中 i A 、 j B 、ij C 是定义在误差、误差变化和控制量论域X 、Y 、Z 上的模糊集合,则该语句所表示的模糊关系为 j i ij j i C B A R ,??= m j n i j i C B A R z y x z y x ij j i ===== ,1 ,1)()()(),,(μμμ μ 根据模糊推理合成规则可得:R B A U )(?= Y y X x B A R U y x z y x z ∈∈=)()(),,()(μμμμ 设论域{}{}{}l m n z z z Z y y y x x x X ,,,,,,,Y ,,,,212121 ===,则X ,Y ,Z 上的模糊集合分别为一个n ,m 和l 元的模糊向量,而描述控制规则的模糊关系R 为一个m n ?行l 列矩阵。 由i x 及i y 可算出ij u ,对所有X ,Y 中元素所有组合全部计算出相应的控制量变化值,可写成矩阵()ij n m u ?,制成的表即为查询表或称为模糊控制表。 * 模糊控制器设计举例(二维模糊控制器) 1. 结构设计:二维模糊控制器,即二输入一输出。 2. 模糊控制规则:共21条语句,其中第一条规则为 t h e n o r and or if :1 PB u NM NB EC NM NB E R === 3. 对模糊变量E ,EC ,u 赋值(见教材中的表)

模糊控制算法的研究

模糊控制算法的研究 0842812128夏中宇 模糊控制概述 “模糊”是人类感知万物,获取知识,思维推理,决策实施的重要特征。“模糊”比“清晰”所拥有的信息容量更大,内涵更丰富,更符合客观世界。 在日常生活中,人们的思维中有许多模糊的概念,如大、小、冷、热等,都没有明确的内涵和外延,只能用模糊集合来描述。人们常用的经验规则都是用模糊条件语句表达,例如,当我们拧开水阀往水桶里注水时,有这样的经验:桶里没水或水较少时,应开大水阀;桶里水较多时,应将水阀关小些;当水桶里水快满时,则应把阀门关得很小;而水桶里水满时应迅速关掉水阀。其中,“较少”、“较多”、“小一些”、“很小”等,这些表示水位和控制阀门动作的概念都具有模糊性。即有经验的操作人员的控制规则具有相当的模糊性。模糊控制就是利用计算机模拟人的思维方式,按照人的操作规则进行控制,实现人的控制经验。 模糊控制理论是由美国著名的学者加利福尼亚大学教授Zadeh·L·A于1965年首先提出,它以模糊数学为基础,用语言规则表示方法和先进的计算机技术,由模糊推理进行决策的一种高级控制策略。 1974年,英国伦敦大学教授Mamdani·E·H研制成功第一个模糊控制器,充分展示了模糊技术的应用前景。 模糊控制概况 模糊逻辑控制(Fuzzy Logic Control)简称模糊控制(Fuzzy Control),是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的一种计算机数字控制技术。1965年,美国的L.A.Zadeh 创立了模糊集合论;1973年他给出了模糊逻辑控制的定义和相关的定理。1974年,英国的E.H.Mamdani首先用模糊控制语句组成模糊控制器,并把它应用于锅炉和蒸汽机的控制,在实验室获得成功。这一开拓性的工作标志着模糊控制论的诞生。 模糊控制实质上是一种非线性控制,从属于智能控制的范畴。模糊控制的一大特点是既具有系统化的理论,又有着大量实际应用背景。模糊控制的发展最初在西方遇到了较大的阻力;然而在东方尤其是在日本,却得到了迅速而广泛的推广应用。近20多年来,模糊控制不论从理论上还是技术上都有了长足的进步,成为自动控制领域中一个非常活跃而又硕果累累的分支。其典型应用的例子涉及生产和生活的许多方面,例如在家用电器设备中有模糊洗衣机、空调、微波炉、吸尘器、照相机和摄录机等;在工业控制领域中有水净化处理、发酵过程、化学反应釜、水泥窑炉等的模糊控制;在专用系统和其它方面有地铁靠站停车、汽车驾驶、电梯、自动扶梯、蒸汽引擎以及机器人的模糊控制等。 模糊控制的基本理论 所谓模糊控制,就是在控制方法上应用模糊集理论、模糊语言变量及模糊逻辑推理的知识来模拟人的模糊思维方法,用计算机实现与操作者相同的控制。该理论以模糊集合、模糊语言变量和模糊逻辑为基础,用比较简单的数学形式直接将人的判断、思维过程表达出来,从而逐渐得到了广泛应用。应用领域包括图像识别、自动机理论、语言研究、控制论以及信号处理等方面。在自动控制领域,以模糊集理论为基础发展起来的模糊控制为将人的控制经验及推理过程纳入自动控制提供了一条便捷途径。 1.知识库

模糊控制程序设计报告

模糊控制程序设计报告 自研112班 麻世博 2201100387 题目:已知被控对象为0.51()101 s G s e s ?=+。假设系统给定为阶跃值r =30,采样时间为0.5s ,系统的初始值r(0)=0。试分别设计: (1)常规的PID 控制器; (2)常规的模糊控制器; 分别对上述2种控制器进行Matlab 仿真,并比较控制效果 解答: 1 常规PID 控制器的设计与SIMULINK 仿真 如图1所示,使用SIMULINK 工具对已知系统的PID 控制系统进行仿真。 图1 PID 控制系统的SIMULIK 仿真 其中PID 控制器为离散型,采样时间T=0.5s ,参数P=14,I=3,D=0。阶跃信号幅值为30,被控对象传递函数为0.51()101 s G s e s ?=+。 该系统的阶跃响应如图2。

图2 PID控制系统的输出 该控制系统上升时间T r=1.5s,调节时间T s=8s,超调量σ%=70%,没有稳态误差。 该系统中PID控制器的输出曲线如图3。 图3 PID控制器的输出曲线 输出最大值为465,最小值为-208。 2 模糊控制器的设计 在本文中,我通过MATLAB提供的模糊逻辑工具箱(Fuzzy Logic Toolbox)编辑隶属函数、控制规则,设计了一个双输入单输出的模糊控制器,如下图所示。

图4 模糊控制器概览 2.1 隶属度函数的确立。 选择偏差E和偏差变化率EC作为控制器的输入,控制量U为输出。取E、EC和U的模糊子集为{NB, NM, NS, ZO, PS, PM, PL} ,它们的论域为{-3, -2, -1, 0, 1, 2, 3}。在 MATLAB的命令窗口输入命令Fuzzy,进入模糊逻辑编辑窗口。取输入量E、EC的隶属函数为高斯型(gaussmf),输出U的隶属函数为三角形(trimf),如下图所示。 图5 输入模糊变量E的隶属度函数

模糊控制优缺点

4模糊控制的优缺点及需要解决的问题分析 4. 1模糊控制的优点 ( 1) 使用语言方法, 可不需要过程的精确数学模型; ( 2) 鲁棒性强, 适于解决过程控制中的非线性、强耦合时变、滞后等问题; ( 3) 有较强的容错能力。具有适应受控对象动力学特征变化、环境特征变化和动行条件变化的能力; ( 4) 操作人员易于通过人的自然语言进行人机界面联系, 这些模糊条件语句容易加到过程的控制环节上。 4. 2模糊控制的缺点 ( 1) 信息简单的模糊处理将导致系统的控制精度降低和动态品质变差; ( 2) 模糊控制的设计尚缺乏系统性, 无法定义控制目标。 4. 3模糊控制理论需解决的问题 模糊控制理论经过近几十年的发展, 已经得到了广泛的应用。但模糊控制理论也还存在一些不足, 还有一些亟待解决的问题, 归纳如下: ( 1) 要揭示模糊控制器的实质和工作机理, 解决稳定性和鲁棒性理论分析的问题。 2) 很多应用和经验表明, 模糊控制的鲁棒性优于传统控制策略。但模糊控制和传统控制的鲁棒性的对比关系究竟是怎么样, 尚缺少理论分析和数学推导方面的比较。

( 3) 模糊控制规则和隶属度函数的获取与确定是模糊控制中的?瓶颈&问题。目前模糊控制规则中模糊子集的一般选取都是以下3种: e= {负大, 负小, 零, 正小, 正大} = {NB, NS, ZO, PS, PB }或e =负大, 负中, 负小, 零, 正小, 正中, 正大= { NB, NM,NS, ZO, PS, PM, PB}或e= {负大, 负中, 负小, 零负,零正, 正小, 正中, 正大} = {NB, NM, NS, NZ, PZ, PS,PM, PB}, 而隶属度函数通常选用的为三角隶属度函数, 以第3种模糊子集为例, 对应的隶属函数如图3示。而规则中模糊子集及隶属度函数的选择大多数取决于经验, 缺少相应的理论根据。 ( 4) 在多变量模糊控制中, 需要对多变量耦合和?维数灾&问题进行研究, 这些问题的解决与否将是多变量模糊控制能否广 泛应用的关键。 图3模糊化子集和模糊化等级 5模糊控制的发展趋势 模糊控制的发展大致有以下几个方向: ( 1) 复合模糊控制器。继续研究模糊控制和PID 控制器、变节

模糊控制的基本原理

模糊控制的基本原理 模糊控制是以模糊集合理论、模糊语言及模糊逻辑为基础的控制,它是 模糊数学在控制系统中的应用,是一种非线性智能控制。 模糊控制是利用人的知识对控制对象进行控制的一种方法,通常用“if条件,then结果”的形式来表现,所以又通俗地称为语言控制。一般用于无法以 严密的数学表示的控制对象模型,即可利用人(熟练专家)的经验和知识来很好 地控制。因此,利用人的智力,模糊地进行系统控制的方法就是模糊控制。模 糊控制的基本原理如图所示: 模糊控制系统原理框图 它的核心部分为模糊控制器。模糊控制器的控制规律由计算机的程序实现,实现一步模糊控制算法的过程是:微机采样获取被控制量的精确值,然后将此量与给定值比较得到误差信号E;一般选误差信号E作为模糊控制器的一个输入量,把E的精确量进行模糊量化变成模糊量,误差E的模糊量可用相应的模糊语言表示;从而得到误差E的模糊语言集合的一个子集e(e实际上是一个模糊向量); 再由e和模糊控制规则R(模糊关系)根据推理的合成规则进行模糊决策,得到模糊控制量u为: 式中u为一个模糊量;为了对被控对象施加精确的控制,还需要将模糊量u 进行非模糊化处理转换为精确量:得到精确数字量后,经数模转换变为精确的模拟量送给执行机构,对被控对象进行一步控制;然后,进行第二次采样,完成第二步控制……。这样循环下去,就实现了被控对象的模糊控制。 模糊控制(Fuzzy Control)是以模糊集合理论、模糊语言变量和模糊逻辑推理为基础的一种计算机数字控制。模糊控制同常规的控制方案相比,主要特点有: (1)模糊控制只要求掌握现场操作人员或有关专家的经验、知识或操作数据,不需要建立过程的数学模型,所以适用于不易获得精确数学模型的被控过程,或结构参数不很清楚等场合。 (2)模糊控制是一种语言变量控制器,其控制规则只用语言变量的形式定性的表达,不用传递函数与状态方程,只要对人们的经验加以总结,进而从中提炼出规则,直接给出语言变量,再应用推理方法进行观察与控制。 (3)系统的鲁棒性强,尤其适用于时变、非线性、时延系统的控制。 (4)从不同的观点出发,可以设计不同的目标函数,其语言控制规则分别是独立的,但是整个系统的设计可得到总体的协调控制。 它是处理推理系统和控制系统中不精确和不确定性问题的一种有效方法,同时也构成了智能控制的重要组成部分。 模糊控制器的组成框图主要分为三部分:精确量的模糊化,规则库模糊推理,

相关文档