首页 毕业设计109模糊控制技术

毕业设计109模糊控制技术

举报
开通vip

毕业设计109模糊控制技术毕业设计109模糊控制技术 辽宁工程技术大学毕业设计 1 绪论 1.1 简述研究意义 近年来,模糊控制技术已成为一门新生的应用科学。它是以模糊数学为基础发展起来的一种新的控制技术,它采用由模糊数学语言描述的控制律(控制规则)来操纵系统工作的控制方式。按照模糊控制律组成的控制装置称为模糊控制器。在实际工程中,许多系统和过程都十分复杂,难以建立确切的数学模型和设计出通常意义下的控制器,只能由熟练操作者凭借经验以手动方式控制,其控制规则常常以模糊的形式体现在控制人员的经验中,很难用传统的数学语言来描述。模糊集理论...

毕业设计109模糊控制技术
毕业设计109模糊控制技术 辽宁 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 技术大学毕业设计 1 绪论 1.1 简述研究意义 近年来,模糊控制技术已成为一门新生的应用科学。它是以模糊数学为基础发展起来的一种新的控制技术,它采用由模糊数学语言描述的控制律(控制规则)来操纵系统工作的控制方式。按照模糊控制律组成的控制装置称为模糊控制器。在实际工程中,许多系统和过程都十分复杂,难以建立确切的数学模型和设计出通常意义下的控制器,只能由熟练操作者凭借经验以手动方式控制,其控制规则常常以模糊的形式体现在控制人员的经验中,很难用传统的数学语言来描述。模糊集理论的创始人 L.A.扎德继 1965 年提出模糊集概念后,又在1968,1973年期间先后提出语言变量、模糊条件语句和模糊算法等概念和 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 ,使得某些以往只能用自然语言的条件语句形式描述的手动控制规则可采用模糊条件语句形式来描述,从而使这些规则成为在计算机上可以实现的算法。1974年 E.H.曼达尼和 S.阿西里安成功地把这种想法应用于小型汽轮机的控制,开拓了模糊控制的方向。此后,模 [6]糊控制方法迅速得到推广,被应用于热交换器、水泥窑、交通管理等许多领域。 模糊控制具有的突出特点: (1)模糊控制是一种基于规则的控制,它直接采用语言型控制规则,出发点是现场操作人员的控制经验或相关专家的知识,在设计中不需要建立被控对象的精确的数学模型,因而使得控制机理和策略易于接受与理解,设计简单,便于应用。 (2)由工业过程的定性认识出发,比较容易建立语言控制规则,因而模糊控制对那些 数学模型难以获取,动态特性不易掌握或变化非常显著的对象非常适用。 (3)基于模型的控制算法及系统设计方法,由于出发点和性能指标的不同,容易导致较大差异;但一个系统语言控制规则却具有相对的独立性,利用这些控制规律间的模糊连接,容易找到折中的选择,使控制效果优于常规控制器。 (4)模糊控制是基于启发性的知识及语言决策规则设计的,这有利于模拟人工控制的过程和方法,增强控制系统的适应能力,使之具有一定的智能水平。 (5)模糊控制系统的鲁棒性强,干扰和参数变化对控制效果的影响被大大减弱,尤其 [12]适合于非线性、时变及纯滞后系统的控制。 在许多工业过程控制中,被控对象往往存在着结构和参数的不确定性、纯滞后或非线性偶合等特征,以致难以建立精确的数学模型,用常规的控制也难以达到满意的控制效果。如前所述,模糊控制不依赖于对象的深层次知识,而是通过输入、输出信息进行仿人思维 1 付强:一类带有自调整因子的模糊控制器的研究 的一种智能化的控制技术。模糊控制不需建立数学模型,而是运用模糊条件语句与控制规模作模糊推理,以实现对系统的自动控制。从信息的观点看,控制技术是一种非线性控制器,它利用领域专家的先验知识进行近似推理。 但在过程实际应用中,普通模糊控制器存在种种不足,例如系统超调较大、调节时间长、稳定时间长等。产生这些缺点的主要原因是常规的模糊控制器的结构较简单,在设计过程中也有许多主观因素,而且一旦模糊规则确定就不能再改变等等。常规的模糊控制器所依赖的控制规则却缺乏在线自学习或自调整的能力,无法实时进行调整。这要求我们要不断改进模糊控制器的控制方式以适应不断变化的控制要求。 目前在模糊控制规则的自学习或自调整技术方面已开展了许多研究工作,设计有不同的模糊控制器,自调整比例因子的模糊控制,引入性能测量和比例因子调整的功能,在线改变模糊控制器的参数,较大的增强了对环境变化的适应能力,从而提高了控制能力,因此它在现代复杂工业过程控制中有着极其重要作用。带有自调整因子的模糊控制器以结构简单、应用灵活而受到广大工程人员的青睐。 1.2 基本模糊控制器的结构 基本模糊控制器的结构原理如图1所示。其中各参数的意义如下: (1)r、y分别为系统的设定值和系统的输出值(精确量); (2)e、ec、u分别为系统误差、误差变化率和模糊控制器的输出(精确量); (3)E、EC分别为系统的误差和误差变化率,U为模糊控制输出(模拟量); (4)Kec、Ke、Ku分别为误差、误差变化率的量化因子和控制量比例因子。通过调整这3个值可以改变模糊控制对对象的控制。 给定r e E 被K解决模糊控 U u y e 模控制 K对糊 规则 策 u 象 de/dKec ec EC t 图1-1 基本模糊控制器结构原理图 Fig. 1-1 Basic fuzzy controller structure principle diagram 2 辽宁工程技术大学毕业设计 1.3 设计思想 模糊控制器是以模糊集合化、模糊语言变量及模糊逻辑推理为基础的一种计算机数字控制,它是通过对控制器语言变量是指其输入变量和输出变量,他们是以自然语言形式,而不是以数值形式给出的变量,因此有“模糊”之称。由于模糊控制器的控制规则是根据操作者的手动控制经验总结而成的,而操作者一般只能观察到被控过程的输出变量及其变化率,故在模糊控制器中通常将误差及其变化作为输入语言变量。为了弥补由于模糊控制器在设计过程中的主观因素导致的系统超调较大、调节时间较长、稳定时间长等缺点。将带有自调整因子的模糊控制器与普通模糊控制器在MATLAB仿真软件下进行仿真和对比,从而确定带有自调整因子的模糊控制器在稳定时间、超调及鲁棒性等几方面性能均优与普通模糊控制器。 1.4 论文的主要工作及其意义 (一)针对普通模糊控制器的缺点不足,提出带有自调整因子的模糊控制器控制方法。 (二)建立相应的模糊控制器控制系统。 (三)应用MATLAB仿真软件,在取相同被控对象参数的情况下,对已知传函的控制系统进 行仿真,观察仿真曲线。 (四)应用MATLAB仿真软件对带有自调整因子的模糊控制器进行仿真分析,观察仿真曲 线。 (五)两种曲线相比较,分析其优越性,实现研究目的 将带有自调整因子的模糊控制器与基本模糊控制器在MATLAB仿真软件下做出的曲线进行对比,从而确定带有自调整因子的模糊控制器在稳定时间、超调及鲁棒性等几方面性能均优于基本模糊控制器。从而,达到设计的目的 3 付强:一类带有自调整因子的模糊控制器的研究 2模糊控制基本理论 随着现代科学,特别是计算机科学的发展,社会科学与自然科学之间正在相互渗透,形成许多新的边缘交叉科学。1965年,美国控制论专家L.A.Zadeh提出模糊集合理论,主要包括模糊集合论(Fuzzy Set)、模糊逻辑、模糊推理和模糊控制等方面的内容。 2.1模糊集合理论 2.1.1 模糊集合的概念 集合,一般是指具有某种属性的、确定的、彼此间可以区别的事物的全体。 组成集合的事物称为集合的元素或元。集合通常是不能精确定义的,只能给出一种描述。 被考虑对象的所有元素的全体称为论域,又称全域、全集,常用英文大写字母U,V,„,X,Y,Z等来表示。论域中的每个对象叫做元素或元,以相应的小写字母u,v,„,x,y,z等表示。给定论域X和给定某一性质P,那么X中具有性质P的元素所组成的总体叫做集合,常常以大写字母A ,B,„„来表示集合。 普通集合中,一个元素(对象)x,它对于某一个论域U的集合A,要么属于A,要么不属于A,二者必居其一且仅居其一,没有其他选择。但在现实生活中,绝大多数都没有明确的概念。例如:对于“很美丽”,某些人是否符合这一概念,很难给出完全肯定或完全否定的回答。也就是说在符合和不符合之间允许存在中间过度状态,这类概念就叫模糊概念。模糊概念不能有普通的集合来描述,只能用模糊集合来描述。很显然,元素对于模糊集合,不仅存在“属于”和“不属于”这两个概念,而且在一般情况下,元素只是在一定程度上属于模糊集合。 在模糊集合中,为了描述元素对模糊集合的从属贴近程度,引入了隶属函数的概念。模糊集合:设X是论域,X上的一个实值函数用μ表示,即 A μ(x):X?[0,1] A x?X,μ(x)称为x对A的隶属度,而μ称为隶属函数。对我们来说,模糊集合A是一AA 个抽象的东西,而函数μ则是具体的,因此我们只能通过μ来认识和掌握A。为简便起AA 见,常用A(x)来代替μ。X上的模糊集合的全体记为F(X)。这样,对于论域X的一个A 元素x和X上的一个模糊子集A,我们不再简单的问x绝对属于还是不属于A,而是问x在多大程度上属于A。隶属度A(X)正是x属于A的程度的数量指标。 若A(X)=1,则认为x完全属于A; 若A(X)=0,则认为x完全不属于A; 4 辽宁工程技术大学毕业设计 若0 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 。常常用初步确定的一个粗略的隶属度函数,然后通过在实践运用中“学习”和检验,逐步修改和 完善。 确定隶属函数可以通过“主观”途径和“客观”途径进行,当隶属度无法通过主观途径给出时,往往需要在实验基础上获得。 (一)模糊统计法 对于模糊性事物发生的可能性程度也可以用和随机统计相似的方法进行模糊统计,统计的结果即为隶属度。 对于模糊统计,在论域U中给出一个确定元素x,x?U,然后再考虑属于论域U上运动着的边界可变的普通集合A1,n次试验中元素x属于A1的次数,当n足够大时,x属于模糊集合A的隶属度趋于一个稳定值。即 n1lim μ(x)= Ax,,n 式中,n1为n次试验中x?A1数,n为试验次数。 该方法能比较直观地反映模糊集合的隶属度,只是计算量比较大。 (二)专家经验法 专家经验法是根据某领域专家的实际经验对模糊信息进行处理从而确定隶属度函数的一种方法。 例如,医生治病的过程首先需要对病人的各种症状进行询问或仪器检查,最后判断患者是否有这种疾病,假设病人论域U中一患者x,这种疾病患者全体为模糊集合A,各种是症状清晰的,用普通集合A1表示。有μ(x)=0或者1,就是说分为患者x不具备这种A 5 付强:一类带有自调整因子的模糊控制器的研究 症状A1和具备这种症状A1,最后,由医生对每一钟症状是否属于某种疾病赋予一定的权数a,则患者x属于某种疾病A的隶属度为 n,()xAiiμ(x)= A,a,1ii 此外,确定隶属度函数还有二元对比排序法、相对选择法、可变模型法等等。 2.1.3 两种常用的隶属度函数 (一) 正态型 曲线如图2-1所示,这是一种最常见的模糊分布,其表达式为: xa,2(),b b>0 ,()xe,A 其参数b值大,曲线变宽,反之,b值小,曲线变窄。a的值决定了曲线的中心点。 (二) 三角型 曲线如图2-2所示。 1 1 0.5 0.5 0 0 0 0.5 1 1.5 2 2.5 0 0.5 1 1.5 2 2.5 3 图2-1 正态型曲线 图2-2 三角型曲线 Fig.2-1 Positive type curve Fig.2-2 Triangle type curve 2.1.4 模糊关系和模糊矩阵 1.模糊关系的基本知识 给定集合X和Y,由全体(x,y)(x?X,y?Y)组成的集合,叫做X与Y的笛卡尔积(或称直积),记做X×Y, XYxyxXyY,,,,{(,)|,} 2.模糊关系的概念 模糊关系是指笛卡尔积上的模糊集合,表示多个集合的元素间所具有的某种关系的程度。 6 辽宁工程技术大学毕业设计 所谓X,Y两集合的笛卡尔积 XYxyxXyY,,,,{(,)|,} 中的一个模糊关系R,是指以X×Y为论域的一个模糊子集,序偶(x,y)的隶属度为μ(x,Ry)。μ(x,y)在实轴的闭区间[0,1]取值,它的大小反映了(x,y)具有关系R的程度。由R 于模糊关系是一种集合,所以模糊集合的相等、包含等概念对模糊关系同样具有意义。 当论域为n个集合的直积A×A×???×A,则称为R为n元模糊关系。 12n 3.模糊关系矩阵的概念 设X是m个元素构成的有限论域,Y是n个元素构成的有限论域。对于X到Y的一个模糊关系R,可以用一个m×n阶矩阵表示为 rr?,,111n,,R,???,,,,rr?Rrrxy,,[],(,),mmn1,,ijijRij 或 我们称一个矩阵是模糊矩阵,如果它的每个元素属于[0,1]。令 FRrr,,,,{[];01}mnijij, Fmn,表示m×n阶模糊矩阵的全体。 在有限论俞之间,普通集合与布尔矩阵建立了一一对应的关系,模糊关系于模糊矩阵 [14] 建立了一一对应的关系,通常都把模糊矩阵和模糊关系看作是同一回事,均以R表示。 2.2 模糊语言与语言变量 2.2.1自然语言的模糊性 语言是一种以文字为符号的符号系统,自然语言是人类思维和交流信息使用的语言,用它去代表主、客观世界的各种事物、概念、行为和情感的意义。人的自然语言的主要特征就是它的模糊性。带有模糊性的语言称之为模糊语言。自然语言的模糊性在语音、语意和语法等方面都有表现。 例如,黎明、早晨、上午、下午、黄昏、深夜、春、夏、秋、冬等,这些时间都没有明确的上、下限。先进、模范、落后等按事物的模糊性态分类而形成的名词,词义都有模糊性。性质形容词,比较形容图,最高级形容词,如优、劣、美、丑等也都是模糊词。 不同领域之间借用术语,从使用本义到使用转义,有可能使本来确切的术语变为模糊术语,使模糊性较小的术语变为模糊性较大的术语。如汉语中的“叔叔” 7 付强:一类带有自调整因子的模糊控制器的研究 、“阿姨”等词义,取消了血缘与年龄的限制,含义相当模糊。总之在自然语言中出现在 [20]句子中的词大部分是模糊集的名称,而不是非模糊集的名称。 2.2.2语言变量和语言值 语言变量指以自然或人工语言的词、词组或句子作为值的变量。例如在模糊控制中的“偏差”、“偏差变化率”等,它是一种定量地、形式地描述自然语言的一种模糊变量。 语言变量的值称为语言值,一般为自然或人工语言的词、词组或句子。例如“极大”、“很大”、“大”、“较大”、“偏大”、“中”、“偏小”、“较小”、“小”、“很小”、“极小”等作 为语言变量“偏差”、“变化率”的值。 模糊语言变量在模糊控制中是一个很重要的概念。语言变量就是一个取值为模糊数的由语言词来定义的变量,而不是以数值作为变量。它以模糊集合作为取值,另外它还有语法规则和词义规则。L.A.Zadeh在1974年给出了模糊语言变量的五维数组定义[X,T(X),U,G,M]。其中U是论域;X是语言变量名,如温度误差、年龄等;T(X)是语言变量真值的名称的集合,每一个真值都是一个模糊变量,可以用x表示,其值的范围在由基本变量y组成的论域U上;G是语法规则,用以生成X的值x的名称;M是词义规则,词义用M(x)表示,M(x)是U上的一个模糊子集,可以记为B。词义规定了U中的元素y对B 的隶数度。 例如:设某一简单温度控制系统,温度误差为模糊语言变量X,论域U=(,6?C,+6?C),温度正、负误差语言变量由G按照语法规则构成的语言值名称有:正很大(PVB)、正大(PB)、正中(PM)、正小(PS)、零(Z)、负小(NS)、负中(NM)、负大(NB)、负很大(NVB)。 T(x)=T(误差)= PVB+ PB+ PM+ PS+ Z+ NS+ NM+ NB+ NVB 词义规则M是指模糊子集的隶属函数。 2.3模糊推理 2.3.1模糊推理的基本概念 推理是根据一定的原则,从一个或几个已知判断引申出一个新的判断的思维过程。一般来说,推理都包含两个部分的判断,一部分是已知的判断,作为推理的出发点,叫做前提。由前提所推理出的新判断,叫做结论。 人类认识世界的过程包含了大量的推理过程,推理的形式也是多种多样的,如直接推 8 辽宁工程技术大学毕业设计 理与间接推理。只有一个前提的推理称直接推理,由两个或两个以上前提的推理称间接推理。 间接推理依据认识的方向,又可分为演绎推理、归纳推理和类比推理等。演绎推理是前提和否定式(或称拒取式)两类。一般形式为 肯定式: 大前提(规则): 若x是a 则y是b 小前提(已知证据): x是a 结 论: y是b 否定式: 大前提(规则): 若x是a 则y是b 小前提(已知证据): y不是b 结 论: x不是a 这就是形式逻辑为人们提供的严谨而又十分有效的“三段论”推理模式。写出数学形式,即 A B A B C A B C B B 但是“三段论”的严谨又局限了它的使用,在大前提A?B之下,若小前提不是A,而是A的偏离A*,“三段论”没有办法了。此时需要解决模糊性问题的推理,需要用模糊 推理的方法。 模糊推理又称模糊逻辑推理,是指已知模糊命题(包括大前提和小前提),推出新的模糊命题作为结论的过程。可见,模糊推理是一种近似推理,近似推理问题的提法有两种形式: 1)已知模糊蕴涵关系“若A则B”,其中A是X上的模糊集,B是Y上的模糊集,这往往是大量的实验观测和经验的概括。我们认为它提供的信息是可靠的,它是近似推理的 *出发点,相当于三段论”的大前提。又知X上的一个模糊集A,它可能与A很相近,又可 *能与A相距甚远,问从模糊蕴涵关系能推断出什么结论B, * 2)已知模糊蕴涵关系“若A则B”,A?F(X),B?F(Y),又知一个B, **B?F(Y),问从模糊蕴涵关系推断出什么结论A? 9 付强:一类带有自调整因子的模糊控制器的研究 L.A.Zadeh在1973年对于模糊命题“若A则B”,利用模糊关系的合成运算提出了一种近似推理的方法,称为“关系合成推理法(Composition Rule of Inference,CRI)。 2.3.2模糊控制中几种常见的模糊推理类型 1.第一种模糊推理——模糊蕴涵运算采用Mamdani的最小规则 这种模糊推理方法就是模糊蕴涵运算采用R,从而有 C ,,,()()zz,,'iCCii ,,,,,,,()()()[()][()]zzzzz,,,,,,'''12CCCCC1212 2.第二种模糊推理——模糊蕴涵运算采用Larsen的积运算规则 ,,,()()zz,'iCCii ,,,,,,,()()()[()][()]zzzzz,,,,,,'''12CCCCC1212 3.第三种模糊推理——语言变量的隶属度函数为单调的Tsukamoto方法 这是Tsukamoto提出的方法,它是第一种推理方法当A,B和C的隶属度函数为单调iii函数时的特例。实质上,对A,B的隶属度函数单调性的限制条件可以取消,只要求Ciii的隶属度函数为单调即可。 对于该方法,首先根据第一条规则求出α,根据α=C(z)而求得z;再根据第二条11111规则求出α,根据α=C(z)求得z,准确的输出量可表示为z和z的加权组合,即 2222212 ,,zz,1122z,0,,,12 4.第四种模糊推理——规则的结论是输入语言变量的函数 在这种推理方式中,模糊控制规则具有如下形式 R:如果(x是A,„and y是B)则z=f(x,„,y) iii 其中x,„,y表示过程状态变量和控制变量A,„,B是语言变量x,„,y的语言变量ii 值。 为简单起见,仍假定有如下两条控制规则 R:如果x是A and y是B则z=f(x,y) 1111 R:如果x是A and y是B则z=f(x,y) 2222 10 辽宁工程技术大学毕业设计 根据第一条规则,控制作用的推断值为αf(x,y),第二条规则的推断值为 1100 αf(x,y),总的控制作用是f(x,y)和f(x,y)的加权组合,即 2200100200 ,,fxyfxy(,)(,),11002200z,0,,,12 该方法是由Takagi和Sugeno提出来的,而且已用来控制一个模型小车沿着弯曲的轨道运动,并控制汽车停靠到车库中。利用该方法取得了满意的结果。 3 模糊控制器的设计 3.1模糊控制系统的工作原理 3.1.1概述 在实际生产过程中,人们发现,有经验的操作人员,虽然不懂被控对象或被控过程的数学模型,却能凭借经验采取相应的决策,很好的完成控制工作。例如,要用建立数学模型解数学方程的方法来控制倒立摆直立不倒是一件很困难的事情,但人们在用手控制竹竿直立不倒时,一边用眼观测,一边用手控制:若竹竿向前倾斜,则手向前运动;若竹竿向前倾斜一点,则手向前运动一点;若竹突然向后倒,则手快速向后退。这里,人的经验可以用一系列具有模糊性的语言来表示,这就是模糊条件语句。再用模糊逻辑推理对系统实时输入状态观测量进行处理,则可产生相应的控制抉择,这就是模糊控制。 模糊控制能避开对象的数学模型,它力图对人们关于某个控制问题的成功于失败的经验进行加工,总结出知识,从中提炼出控制规则,用一系列多维模糊条件语句构造系统的模糊语言变量模型,应用CRI等各类模糊推理方法,可以得到适合控制要求的控制量,可以说模糊控制器是一种语言变量的控制器。 图3-1是一个人工操作的控制系统示意图。控制者首先通过传感器和仪表显示设备,知道系统的输出量及其变化的模糊信息,例如温度和温度变化的情况,然后根据已有的经验进行分析判断,得出相应的控制决策。一般来说,当人进行控制时,必须根据输入的偏差及偏差的变化率综合的进行权衡和判决。当偏差(输出量与目标值之差)为负大,偏差变化率也为负时,这时的控制量应选正大;当偏差仍为负,但偏差变化率为正,这时即使不改变控制量,偏差也将会减小。所以操作者进行控制,所设计的模糊概念的论域基本上有三个:偏差E、偏差变化率CE、人的控制输出U。因为人的控制动作,在正、负两个方向上基本是对称的,所以在大多数情况下,可以设定人对正负偏差及其变化率和正负控制 11 付强:一类带有自调整因子的模糊控制器的研究 量所确定的模糊概念是一致的。而且,由于人在日常习惯中,经常将相比较的同类事物分为三个等级。例如,比较温度的高低,分为高、中、低;比较事物体的大小,可分为大、中、小;比较速度的快慢,可分为快、中、慢等。故操作者对偏差及偏差变化率也可以用大、中、小三个等级的模糊概念来区分。例如,将偏差分为偏差大、偏差中、偏差小三等,将偏差变化率分为速度大、速度中、速度小三等,将控制量分为控制量大、控制量中、控制量小三等。 操作者 目标值 声光显示 受控对象 图3-1 人-机控制示意图 Fig.3-1 The person-machine controls sketch diagram 操作者在对受控过程进行控制时,测量或观测到的偏差值和偏差的变化率是一些清晰的辆,经过模糊化得到偏差、偏差变化率大、中、小的某个模糊量的概念。经过人的模糊决策后,得到决策的控制输出模糊量。当按照已定的模糊决策去执行具体的动作时,所执行的动作又必须以清晰的量表现出来。因此,图3-1的人-机控制过程可归结为:将偏差e、 ,e偏差变化率的清晰量经模糊化得到模糊量E和CE,将模糊近似推理分析得到模糊控制量U,然后经过模糊决策判断,得到清晰值的控制输出u去执行控制动作。这个过程是人们凭借着经验本能地实现的。 由于一个模糊概念可以用一个模糊集合来表示,因此模糊概念的确定问题,就可以直接转换为模糊集隶属度函数的求取问题。因此,对于一类缺乏精确数学模型的被控对象,可以用模糊集合的理论,总结人对系统的操作和控制的经验,用模糊条件语句写出控制规则,也能设计出比较理想的控制系统。模糊控制系统的工作原理如图3-2所示。 12 辽宁工程技术大学毕业设计 给定值 e EC U u 计算变化率 模糊化 清晰化 Fuzzy算法 ,e CE — 输出值 工业过程 图3-2 模糊控制系统原理示意图 Fig.3-2 The fuzzy control system principle diagram 3.1.2模糊控制系统原理 模糊逻辑在控制领域中的应用称为模糊控制。模糊控制的最大特征是,它能将操作者或专家的控制经验和知识表示成语言变量的描述的控制规则,染户用这些规则去控制系统。因此,模糊控制特别适用于数学模型未知的、复杂的非线性系统的控制。从信息的观点来看,模糊控制是一类规则型的专家系统,从控制技术的观点来看,它是一类非线性控制器。模糊控制系统是以模糊集、模糊数学、模糊知识表示和模糊逻辑推理为基础的计算 机控制方法,属智能控制范畴,适用于非线形系统控制,有如下优点: (1) 模糊控制系统不依赖于系统的精确数学模型,它特别适用于复杂系统(或过程)与 模糊性对象等采用,因为精确数学模型很难获得或根本无法获得。 (2) 模糊控制中知识表示,模糊规则和合成推理是基于专家知识或熟练操作者的成熟经 验并可通过学习不断更新,因此具有智能性和自学习性。 (3) 模糊控制系统具有较好的鲁棒性,主要表现在:对系统参数变化适应性强,对时变 系统可以实现较稳定的控制。 (4) 模糊控制系统而模糊控制器均以计算机为主体,兼有计算机控制系统所具有的数字 控制精确性和软件编程柔软性,而且可以拥有友好的人—机界面,操作方便,容易 实现。 模糊控制系统的框图如图3-3所示。 模糊被过程执精过程控制 控输出行 确输入器 对通道 量 器 通道 象 检测装置 13 付强:一类带有自调整因子的模糊控制器的研究 图3-3 模糊控制系统组成框图 Fig.3-3 Fuzzy control system constitute frame diagram 3.2基本模糊控制器的设计 模糊控制器是模糊控制系统的核心,一个模糊控制系统的性能优劣,主要取决于模糊控制器的结构,所绘出的模糊规则和采用的合成推理算法以及模糊决策方法等因素。模糊控制器结构图如下3-4: 模糊控制器 模糊 R e EE 模模糊控制被控糊 U u y 判决 算法 对象 化 d/dt EC 图3-4 含模糊控制器的系统框图 Fig.3-4 Imply fuzzy controller system frame diagram 图中R为系统的设定值(精确量);e,ec,分别为系统偏差和偏差变化率(精确量);E,EC分别为反映系统与系统偏差和偏差变化的语言变量的模糊集合(模糊量);u为模糊控制器输出的控制作用(精确量);y为系统输出(精确量)。 应着重指出,所谓模糊控制,只是在所采用的控制方法上采用了模糊数学理论,但它所进行的却仍然是确定性的工作,它不仅能成功地实现控制,而且还能模仿人的思维方法,对一些无法构造数学模型的被控过程进行有效控制。 3.2.1 模糊控制器的结构 在模糊控制系统中,具有一个输入变量和一个输出变量的系统称为单变量模糊控制系统,一个单变量模糊控制系统所采用的模糊控制器称之为单变量模糊控制器,通常把单变量模糊控制器的输入量个数称为模糊控制器的维数。 14 辽宁工程技术大学毕业设计 由于模糊控制器是模仿熟练操作人员的控制决策对工业过程进行控制,而操作工人一般是靠观测被控对象的输出和输出变化率或输出变量和输出变量的总和来设定控制量的大小的。因此,模糊控制器的结构设计就是确定哪些变量作为模糊控制器的输入和输出。 以下是几种常见的单模糊控制器的结构及其对应的控制规则的类型如下: (1)一维模糊控制器如图3-5所示,它的输入变量是系统的偏差量,输出变量是系E U统的控制量的变化值。由于仅采用偏差控制,所以系统的动态性能不佳,一般用于一阶级被控对象。 模糊控制器 输入 输出 E U 图3-5一维模糊控制器结构 Fig.3-5 One dimensional fuzzy controller structure 这是最简单的一类模糊控制器,其控制规则也很简单,可用如下模糊条件语句描述其控制规则: U,UEABBIf is then is (或者 is ) CU,UEDDIf is then is (或者 is ) CABD其中 、、、 都是模糊子集 该结构模糊控制器的输入,输出关系可分别用下式表示: U,R(E) ,U,R'(E) R、R'其中都是由控制规则决定的非线性函数关系。 ECE(2)二维模糊控制器如图3-6所示,它的输入量是偏误差和偏差变化量,而以 U控制量作为模糊控制器的输出量,它比一维控制器有较好的控制效果,且易于计算机的实现,是目前广为采用的一类模糊控制器。 输入 E 模糊控制器 输入 EC 输出U 图3-6二维模糊控制器结构 15 付强:一类带有自调整因子的模糊控制器的研究 Fig.3-6 Tow dimensional fuzzy controller structure 这是最常用的一类模糊控制器,其控制规则也很简单,可用如下模糊条件语句描述其 控制规则: ECUC,UIf is and is then is (或者) ,C EAB C其中、、、都是模糊子集。 ABD 该结构模糊控制器的输入,输出关系可分别用下式表示: U,R(E,EC) ,U,R'(E,EC) R、R'其中都是由控制规则决定的非线性函数关系。 (3)三维模糊控制器如图3E-7所示,它的三个输入变量分别为系统偏差量、偏差变 U化EC和偏差的变化的变化率ECC,以控制量的变化值作为模糊控制器的输出。由于这类模糊控制器结构复杂,推理运算时间长,所以一般较少采用。 E EC U 模糊控制器 e d/dt d/dt ECC 图3-7 三维模糊控制器结构 Fig.3-7 Three dimensional fuzzy controller structure 这也是一类模糊控制器,可用如下模糊条件语句描述其控制规则: UC,UCEABIf is and EC is and ECC is C then is (或is ) CABD其中、、、都是模糊子集。 该结构的模糊控制器的输入,输出关系可用下式表示: U=R(E,EC,ECC) R其中是由控制规则决定的非线性函数关系。 一般情况下,一维模糊控制器用语一阶被控对象,由于这种控制器输入变量只选一个误差,它的动态控制性能不佳,而当控制器的维数越高,控制越精细。但是维数越高,模糊控制规则变得过于复杂,控制算法的实现越困难。所以,目前被广泛采用的均为二维模糊控制器。 16 辽宁工程技术大学毕业设计 关于模糊控制器的结构,还有许多其它的设计方法,需视具体系统的设计要求而定。 3.2.2基本模糊控制器的设计 步骤 新产品开发流程的步骤课题研究的五个步骤成本核算步骤微型课题研究步骤数控铣床操作步骤 对于基本模糊控制器的设计与构造,并没有固定的方法,但一般来说基本模糊逻辑控制器的工作过程可分为四个步骤: (1)构造系统结构,根据采样得到的系统输出值,计算所选择的系统的输入变量。该步骤所完成的工作就是确定模糊控制器的输入量和输出量。 (2)“模糊化”,即实现输入量或输出量精确量的模糊化,通过量化因子和比例因子将精确量变化的范围(基本论域)模糊化成在模糊集论域范围内。我们可以把精确量用“正大”、“正中”、„„、“负中”、“负小”等模糊语言来分成数个档。这些档的大小关系我们就用在模糊论域上的模糊子集来表示。而模糊子集的大小就和隶属函数有关。隶属函数通常采用:三角形隶属函数、正态分布隶属函数和梯形隶属函数等。不同的隶属函数代表着不同的系统特性。 (3)模糊控制表的运算合成,有了前两个步骤的工作,我们得到输入量和输出量的模糊数,结合操作经验或数据,我们就可以将输入量和控制量的模糊数安排到由一系列的if- then控制规则组成的集合中,利用这些规则信息,采用极大极小值合成法或其他合成算法,我们就可以合成得到控制表。 4)查询输出和输出量精确化,计算机控制程序通过查询该控制表,即可以到对应于某( 模糊数输入量的控制量模糊数。再通过输出量比例因子将模糊输出控制量转换成进行控制量的精确化输出,这实际上是在一个输出范围内,找到一个被认为最具有代表性的、可直接驱动控制装置的确切的输出控制值。 3.2.3 清晰量的模糊化 在模糊控制系统运行中中,控制器的输入值是有确定数值的清晰量,而在进行模糊控制时,模糊推理过程是通过模糊语言变量进行的。在清晰量和模糊量之间有一定的对应关系。这种把物理量的清晰值转换成模糊语言变量值的过程叫做清晰量的模糊化 (1)基本论域与语言分档 ECUE我们把模糊控制器的输入误差,误差变化率和控制量的实际范围称为变量的基本论域,显然基本论域的变量为精确量。 XX设误差的基本论域为[-,], ee XX误差变化率的基本论域为[-,], cc 17 付强:一类带有自调整因子的模糊控制器的研究 被控对象实际所要求的控制量的变化范围,模糊控制器输出变量的基本论域为[-,]。 YYuu 误差变量所取的模糊子集的论域为: E ,n,1,n,20n,2n,1[]。 -,,,,,,,,..........nn EC误差变化率所取的模糊子集的论域为: ,m,1,m,20m,2m,1[-,,,.....,,.....,,,]。 mm U控制量所取的模糊子集的论域为: 0[-,,,L,2,.....,,.....,,,]。 L,L,1L,2L,1L 模糊控制用模糊变量子集来描述论域上的变量,当用语言变量值表示一个语言变量时,必须考虑用多少个语言变量值去描述语言变量,这就是语言变量的分档问题。通常,对一个语言变量的分档可以是任意划分。一般对一个语言变量的分档一般为5,10档。如果档数过少,语言变量值会过于粗糙,对控制品质有不良影响;如果档数过多,语言变量值过细,则会带来关系矩阵的运算复杂等问题。 通常,设描述输入输出的模糊变量子集为 {负大,负中,负小,零,正小,正中,正大} 即:{NB,NM,NS,O,PS,PM,PB} 论域中的元素的确定不能太多也不能太少,既要充分考虑语言变量级数论[-N,+N]的覆盖程度,又应使论域中任一点对应的模糊集合隶属度的最大值不能太小,否则这样的点上会出现空档,从而引起失控。因此,一般来说,论域中的元素个数为语言变量档数的1.5,2倍。 (2)模糊语言变量隶属度的确定。定义一个模糊子集,实际上就是要确定模糊子集的隶属函数曲线的形状。将确定的隶属函数曲线离散化,就得到了有限个点的隶属度。 模糊隶属函数的确定基于以下原则: 第一,模糊隶属度函数的形状对控制器的性能影响较大,窄形隶属函数反映模糊集合 具有高分辨率,控制灵敏度便高;宽形隶属函数反映模糊集合具有低分辨率, 控制灵敏度低,控制特性比较平缓。常用形状曲线为正态分布曲线,三角形, 半三角形,梯形,半梯形,狄克函数等。 第二,在定义某一语言变量,要考虑它们对论域[-n,n]的覆盖程度,应使论域中的任 何一点对这些模糊集合的隶属度的最小值都不能太小,否则在这样的点上会出 18 辽宁工程技术大学毕业设计 现“空挡”,从而引起失控。为此,语言变量的全部模糊集合所包含的非零隶 属度对应的论域元素个数,应当是模糊集合总数的3,4倍。 第三,各模糊子集的隶属函数对论域覆盖面的大小对控制器的输出影响很大。不同形 状的曲线就有不同的输出变化趋势,当变化平缓时,模糊控制器的输出也变化 平缓,即隶属函数分辨率低。当变化激烈时,模糊控制器的输出也变化激烈, 即隶属函数分辨率高。因此,一般在偏差较大的范围采用低分辨率隶属函数模 型集,而在系统偏差较小或接近于0时,采用高分辨率隶属函数的模型集。 第四,各模糊集合间互相影响,可以用模糊集合当中,任意两个模糊集合交集中最大 隶属度最大值H来衡量。H值越小,反映控制灵敏度越高。H值越大,模糊控 制器对被控过程的参数变化适应性越强,即鲁棒性好。一般取H,0.4~0.7。H 值过大时,将使两个语言变量无法加以区别。(3)量化因子与比例因子的确定 在“模糊化”过程中,将精确量转化到相应的模糊论域,需要对精确量进行转化。转化因子即误差的量化因子Ke、误差变化率的量化因子Kc分别由以下公式确定: Ke=n/Xe Kc=m/Xc 控制量的比例因子Ku由下面公式确定, K,Y/luu 查表得到控制量后,我们还必须转换到被控对象所需的基本论域中,从而得到精确控制量,即: Yuj Y,l,Kujju l式中为控制量模糊论域中的任意一个元素或为控制量的模糊集所判决得到的确切控制j YK量;为控制量基本论域中的一个精确量;为比例因子。 uju 合理选择模糊控制器的输入变量的量化因子和输出变量的比例因子是非常重要的。量化因子Ke及Kc的大小对控制系统的动态性能影响很大。 1) 当Ke选择较大时,输出响应的超调也较大,过渡时间较长。从理论上讲,Ke 增大,相当于缩小了误差的基本论域,增大了误差的控制作用。因此,导致上 升时间变短,但系统的响应时间变长。 2) Kc对超调的抑制作用十分明显,当Kc选择较大时,超调量减小,Kc越大,系 19 付强:一类带有自调整因子的模糊控制器的研究 统超调量越小,但系统的响应速度变慢。 3) 输出量比例因子Ku反映了对控制器输出的幅度上的调整,Ku过大则增大控制 信号的幅度,使响应时间缩短,但是却容易导致振荡;Ku过小,则响应速度慢, 系统动态响应时间长。 3.2.4 模糊控制表合成 模糊控制中的模糊推理,实质上就是对控制过程的经验加以总结,概括出一条条相应的规则。以此为依据构造出一个模糊控制器,来完成机器代替人的控制过程。实际中多采用二维的输入模糊控制器,其控制规则可采用如下形式: IF E=E AND EC=EC THEN U=U ( i=1,2,„,n j=1,2,„,m) ijij 我们可以将模糊规则的全部推理语句合成一个模糊状态表如表2.1,该状态表也是模糊推理规则的又一种表达方式。 其中,EEC和U分别为定义在偏差论域、偏差变化率论域和控制量论域上的模糊子i、jij 集(或为模糊变量),这些模糊条件语句每一条都对应着一个模糊关系R,在本设计中采ij用Mamdani模糊推理法,则其运算规则如下: R,(E,EC),Uijijij 用隶属函数表示为: u(e,ec,u),(u(e),u(ec)),u(u)REECUijijij ,U,,E,,E,e,ecC, u 有了这样的一个模糊关系R,根据推理合成规则,任何一个偏差和偏差变化率的模糊量输入E和EC,都能合成输出模糊控制量U。U的隶属度函数为: ,,,,,,,,,,,u,,e,,ec,,uuEiECUijj 在模糊自动控制中近似推理的提法是当已知模糊控制器的控制规则为:If A then B ****和模糊控制器的输入为A时,用什么方法来决定此时控制器的输出B,此处A,A和B,B, [20] 分别为其论域上的模糊集。 要实现模糊控制,仅确定模糊控制器的控制规则还不够,我们还用模仿人的不精确推理过程确定模糊控制中的近似推理法则,只有这样计算机才能根据输入的模糊信息,借助于控制规则和近似推理法则进行决策得到所需的控制量。 我们可以用Mamdani提出的推理法来解决这个问题,即用一个由X到Y的模糊关系 **R来表示模糊条件语句:If A then B,当输入为A时,输出B可由下式求得: ,ab 20 辽宁工程技术大学毕业设计 ** B=A,R ab, ,其中表示模糊关系的合成运算。 模糊关系R根据Mamdani的定义为: ab, ,,,,,,,,,x,y,,x,,yRABA,B * 因此根据上式可得控制器的输出B的隶属度函数为: ,,,,,,,,,,,,,*y,SUP,*x,,x,,y BAAB,xX 每个模糊控制规则都是“或”的关系。对应每个模糊规则,当输入、输出语言变量在各自论域上反映各语言值的模糊子集已知时,都可以表达为论域的积集上的模糊关系,即: R,R,„,R 12n 在计算出每一条模糊条件语句决定的模糊关系R之后,考虑到每条模糊条件语句的“或”i 关系,可得描述整个系统的控制规则的总模糊关系R为: R,R?R?„?R 12n 有了模糊关系R以后,就可以根据所取的=-6,-5,„,+5,+6和=-6,-5,„,+5,+6中整量eec 化值,采用极大极小合成运算可以求出相应的输出模糊集U i , U=(EE)R ,iici i,-6,-5,„,+5,+6 这样可以得到U是一的模糊子集控制量,要构成最后的控制表。 i 3.2.5模糊量的清晰化 模糊控制器的输出是一个模糊集合,它反映控制语言的不同取值的一种组合,如果被控过程只是能够接受一个控制量,这就需要从输出的模糊子集判决出一个精确的控制量,也就是设计一个由模糊集合到普通集合的映射,这个映射称为判决。非模糊化的方法和隶属函数的定义有关,隶属函数为单点形式的非模糊化方法: 1)最大隶属度法 最大隶属度法是指选取推理结论的模糊集中的隶属度最大的元素作为控制量的方法。 *例如,模糊集C所选择的隶属度最大的元素u应满足 *,,()(),uuuU,,CC 这种方法的优点是简单易行,缺点是它囊括的信息量较少,因为这种方法完全排除了其它一切隶属度较小的元素的影响和作用。为了避免在模糊控制器中出现双峰型隶属度函数曲线,要求控制器的算法应保证其结果正规的凸模糊集。例如,设模糊推理结论为 21 付强:一类带有自调整因子的模糊控制器的研究 0.10.40.71.00.70.3U,,,,,,234567 可见最大隶属度法就是取模糊集最大隶属度所对应的基础变量作为清晰值的方法。若最大隶属所对应的基础变量值的个数多于一个时,则取其平均值作为控制输出的清晰值,称为最大平均法。 2)重心法 重心法是指取模糊隶属度函数的曲线同基础变量轴所围面积的重心对应的基础变量值作为清晰值的方法,也是一种最常用的清晰化方法。重心法的计算公式在输出量隶属函数为连续变量情况下可表示为 MAX uudu,(),*MINu,MAX ()udu,,MIN *其中,u为清晰化的输出量,u为输出变量。μ为模糊集隶属函数,MIN为清晰化值的下限,MAX为清晰化值的上限。 当输出变量的隶属函数为单点集时,重心法的计算公式为 P ()u,,ii*,1i,uP ,,i,1i 其中P为单点集数。 3)加权平均法 加权平均法是指以各条规则的前件和输入的模糊集按一定法则确定的k为权值,并对i *后件代表值u加权平均计算出的清晰值u的方法。其计算公式为 i n k,,ii*i,1u,n k,ii,1 其中,i为规则序号,n为规则总数。可根据每条控制规则对系统品质不同的影响,进行有意识的认为调节。 )取中位数法 4 为充分利用输出模糊集合所包含的信息,可将描述输出模糊集合的隶属函数曲线和横坐标 22 辽宁工程技术大学毕业设计 围成的面积的均分点对应的论域元素作为判决结果 23 付强:一类带有自调整因子的模糊控制器的研究 3.3带有自调整因子的模糊控制器的设计 3.3.1 自调整因子的建立 对于二维模糊控制系统,当偏差较大时,控制系统的任务是消除偏差,这时对偏差的加权应该大些;当偏差较小时,此时系统接近稳态,控制系统主要任务是使系统尽快稳定下来,减小系统超调,这就要求在控制规则中偏差变化起的作用大些,即对偏差的加权大些。因此在不同的偏差范围内,考虑采用不同的加权因子(自调整因子),以实现控制规则的自调整,这就是建立自调整因子的基本原则。 3.3.2 带有自调整因子的模糊控制器的设计原则 该控制齐通过调整修正因子改变控制规则,再用优化的控制规则进行控制,即通过对模糊规则的调整从根本上提高模糊控制器的性能。通常情况下Fuzzy模型结构可用下列解析式来表示: U=αE+(1-α)E 0<α<1 当误差较大时,控制系统的主要任务是消除误差。这时对误差在控制规则中的加权应该大些。相反,当误差较小时,系统已接近稳态,控制系统的主要任务是使系统尽快稳定。这样就要求误差的变化率在控制规则中起较大的作用。这些要求只靠一个固定的加权因子 [18]α难以满足。于是考虑对α进行在线调整,以实现对模糊控制规则的自调整。 3.3.3带有自调整因子的模糊控制器的结构 带有自调整因子模糊控制器的结构框图如图3-6所示,它是在简单模糊控制器的基础上增加了一个自寻优功能模块. 整定算法 被解给定r - U u y 控Ku 模Ke 模糊α 对 + e E 糊 控制象 规则 ec EC 1-α de/dt Kec 图3-8 带有自调整因子的模糊控制器 Fig.3-8 The fuzzy controller of having the adaptive factor 图3-8中各参数意义如下: 24 辽宁工程技术大学毕业设计 (1)α为调整因子; (2)r、y分别为系统的设定值和系统的输出值(精确量); (3)e、ec、u分别为系统误差、系统变化率和模糊控制器的控制输出(精确量); (4)EECU分别为系统误差、误差变化率和模糊控制器输出(模糊量); 、、 (5)Kec、Kc、Ku分别为误差、误差变化率的量化的因子和控制量的比例因子。 系统偏差E、偏差变化率EC,控制器输出U的模糊论域为 {E}={EC}={U}={-N,-N,-3,-2,-1,0,1,2,3,N,N}…, ,-1-1 (1) 控制规则解析式为 UEECK,,,,[(1)],,,,,,,,,,,[,](01)u00nn (2) ()||,,,E0n,,,,0N (3) 由式(2)可知,控制量U的变化由E. EC决定,a值决定了E. EC在U中的比例,式(3) ,,中为调整式,当E增大时,增大,U中E占的比例增加,即控制作用用来消除误差: ,当E减小时,减小,U中E占的比例减小,即控制作用用来消除误差变化率. Ke和Kc将误差和误差增量从基本论域(连续值)变换到模糊论域(离散值),它们的大小直接影响到E和EC在控制过程中的作用大小.在系统启动过程中,为消除误差E,可取Ke较大,Kc较小;在稳态过程中,为减小误差增量EC取Ke较小,Kc较大. 比例因子Ku的值在模糊控制器中直接影响到控制器的输出值,因此,Ku的调整很关键.首先根据稳态给出Ku的初值,当误差大时,Ku自动增大,当误差小时,Ku自动减小,其调整规律如式(4) K,1 KuKKuKKupEKKuiEIKudECK()(1)(1)()(1),,,,,,,,I,1 (4) 式中Kup为比例系数;Kui为积分系数;Kud为微分系数。 可以看出:Ku是按PID控制规律调整的。式中积分项可以弥补基本模糊控制器控制精度低的不足。即当误差很小时,比例及微分项作用可以忽略,Ku由积分项调整,相当于模糊积分控制其。中积分环节的作用,又由于比例项和微分项的存在,当负载结构或参数发生变化时,使Ku的调整主要由比例及微分决定,避免了积分项易引起系统振荡的弊病,从而使系统适应性增强。 25 付强:一类带有自调整因子的模糊控制器的研究 4 系统仿真 4.1MATLAB简介 MATLAB是美国的MATHWORKS公司于1982年推出的一套高性能的数值计算软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境。在这个环境下,对所要求的问题,用户只需简单的列出数学表达式,其结果便以数值或图形方式显示出来,并且在它的界面下可以编写程序、运行程序并跟踪调试程序。 MATLAB当前的功能可以说是集可靠的数值运算(特别是但不局限于矩阵运算)、图象与图形显示和处理、高水平的图形界面设计风格等于一身,此外它还提供了与其它高级程序设计语言如C、FORTRAN等的接口,功能非常强大,成为控制系统研究人员不可缺少的有力工具。很多控制理论的研究人员在它的基础上开发了控制理论与CAD专门的应用程序集(又称工具箱),使之很快在国际控制界流行起来,目前已经成为国际控制界应用最广的语言和工具了。MATLAB最大的特点是易于扩展,一个从事特定领域工作的工程师,可利用MATLAB所提供的函数及基本工具箱方便地构造出专用的函数,从而大大扩展 [23]了MATLAB的应用范围。 MATLAB语言具有很高的运算精度,符合一般科学与工程运算的要求。 作为MATLAB的重要组成部分,Simulink具有相对独立的功能和使用方法。确切的说,它是对动态系统进行建模、仿真和分析的一个软件包。它支持线形和非线形系统、连续时间系统、离散时间系统、连续和离散混合系统,而且系统可以是多进程的。 Toolbox(工具箱)是用MATLAB语言编制的一系列MATLAB运算程序(M文件),用来求解各个特定学科的问题,例如信号处理、图象处理、控制系统辩识、神经网络、模糊 26 辽宁工程技术大学毕业设计 系统设计等。 MATHWORKS公司聘请澳大利亚Queensland大学的A.Lot.教授开发了基于MATLAB [23]环境下的“模糊推理系统工具箱”(Fuzzy Inference System Toolbox For Matlab),该工具箱集成度高,内容丰富,基本包括了模糊集合理论的各个方面,其功能强大和方便易用的 [21]特点得到了用户的广泛欢迎,现已经成为模糊控制系统设计的首选工具。 使用Fuzzy Toolbox建立模糊控制器有命令行方式和图形用户界面(GUI)两种方式,本设计的控制系统是用后一种方式建立的。在Fuzzy Toolbox中有5个GUI工具用于建立、编辑和观察模糊推理系统(FIS),列举如下: (1)FIS编辑器(FIS Editor):可利用其添加、删除系统输入和输出变量、确定系统模糊逻辑算法等。 (2)隶数度函数编辑器(Membership Function Editor):用于定义对应每个变量的隶属度函数的形状。 (3)规则编辑器(Rule Editor):用于定义系统行为的一系列规则。 (4)规则观察器(Rule Viewer):用于显示模糊推理方框图及作为一个诊断工具,可以显示在一定输入下哪一条规则正在使用,或者单独的隶属度函数的形状对结果的影响。 (5)曲面观察器(Surface Viewer):为系统生成和绘制曲面映射,用于显示一个输出与一个或两个输入之间的依赖情况。 这些GUI工具之间是动态连接的,使用它们中的任一个对FIS的修改将影响任何其他已打 [24]开的GUI的显示结果。 4.2基本模糊控制器在Matlab下的实现 4.2.1建立FIS的主框架 在Matlab命令窗口运行Fuzzy函数打开FIS编辑器,建立Mamdani型模糊控制器。通过其Edit菜单可以增加控制器的输入,输出,,双击输入,输出框在第2个窗口中增加个变量的隶属函数类型和值域范围;双击中间的模糊控制规则框则可以编辑模糊规则。 通过总结现场操作员的操作经验,得出模糊控制规则如表1所示。这样便构成了常规的基木模糊控制器,然后将此fis文木命名为fuzl.Fis存盘。根据附表可建立49条控制规则。 27 付强:一类带有自调整因子的模糊控制器的研究 E Ec NB NM NS ZO PS PM PB NB PB PB PB PB PM PS ZO NM PB PB PM PM PS ZO NS NS PB PB PM PS ZO NM NM ZO PB PM PS ZO MS NM NM PS PM PM ZO NS NM NB NB PM PS ZO NS NM NM NB NB PB ZO PS NM NB NB NB NB 表4-1 输出量U模糊控制规则表 Form4-1 Output quantity U fuzzy control rule form 根据模糊控制器的原理,选择其输入(E、EC),输出(U)。取E.EC. U的论域为{-6,6},E的模糊子集为{NB,NM,NS,ZO,PS,PM,PB},EC和U的模糊子集为{NB,NM,NS,ZO,PS,PM,PB};E、EC、U的隶属函数均为为梯型(trapmf),如图4-1、图4-2、图4-3所示。 图4-1 输入E的隶属函数曲线 Fig.4-1 The function curve of input quantity E 输入E的隶属函数曲线的程序说明: 28 辽宁工程技术大学毕业设计 [Input1] Name='E' Range=[-6 6] NumMFs=7 MF1='NB':'trapmf',[-7.8 -6.2 -5.4 -2.6] MF2='NM':'trapmf',[-6.2 -4.4 -3.6 -1.6] MF3='NS':'trapmf',[-4.2 -2.4 -1.4 0] MF4='ZO':'trapmf',[-2.4 -0.4 0.4 2.4] MF5='PS':'trapmf',[0 1.6 2.4 4.4] MF6='PM':'trapmf',[1.6 3.6 4.4 6.2] MF7='PB':'trapmf',[2.6 5.4 6.2 7.8] 图4-2 输入EC的隶属函数曲线 Fig.4-2 The function curve of input quantity EC 输入EC的隶属函数曲线的程序说明: [Input2] Name='EC' 29 付强:一类带有自调整因子的模糊控制器的研究 Range=[-6 6] NumMFs=7 MF1='NB':'trapmf',[-7.8 -6.2 -5.2 -2.6] MF2='NM':'trapmf',[-6.2 -4.6 -3.4 -1.4] MF3='NS':'trapmf',[-4.2 -2.2 -1 0] MF4='ZO':'trapmf',[-2 -0.2 0.2 2] MF5='PS':'trapmf',[0 1 2.2 4.2] MF6='PM':'trapmf',[1.4 3.4 4.6 6.2] MF7='PB':'trapmf',[2.6 5.2 6.2 7.8] 图4-3 输出U的隶属函数曲线 Fig.4-3 The function curve of output quantity U 输出U的隶属函数曲线的程序说明: [Output1] Name='U' 30 辽宁工程技术大学毕业设计 Range=[-6 6] NumMFs=7 MF1='NB':'trapmf',[-7.8 -6.2 -5.2 -2.6] MF2='NM':'trapmf',[-6.2 -4.6 -3.4 -1.4] MF3='NS':'trapmf',[-4.2 -2.2 -1 0] MF4='ZO':'trapmf',[-2 -0.2 0.2 2] MF5='PS':'trapmf',[0 1 2.2 4.2] MF6='PM':'trapmf',[1.4 3.4 4.6 6.2] MF7='PB':'trapmf',[2.6 5.2 6.2 7.8] 4.2.2编辑控制规则 点击FIS编辑器的菜单工具Edit rules...进入模糊控制系统的规则编辑器,按照前面所提到的各个变量之间的模糊规则(规则共计49条)观察规则,这是两个输入和一个输出的控制规则, 如图4-4所示。 图4-4输出量U的规则编辑器 31 付强:一类带有自调整因子的模糊控制器的研究 Fig.4-4 The rule editor of output U 输出量U的模糊控制规则程序说明: [Rules] 1 1, 7 (1) : 1 1 2, 7 (1) : 1 1 3, 7 (1) : 1 1 4, 7 (1) : 1 1 5, 6 (1) : 1 1 6, 5 (1) : 1 1 7, 4 (1) : 1 2 1, 7 (1) : 1 2 2, 7 (1) : 1 2 3, 7 (1) : 1 2 4, 6 (1) : 1 2 5, 6 (1) : 1 2 6, 4 (1) : 1 2 7, 5 (1) : 1 3 1, 7 (1) : 1 3 2, 6 (1) : 1 3 3, 6 (1) : 1 3 4, 5 (1) : 1 3 5, 4 (1) : 1 3 6, 3 (1) : 1 3 7, 2 (1) : 1 4 1, 7 (1) : 1 4 2, 6 (1) : 1 4 3, 5 (1) : 1 4 4, 4 (1) : 1 4 5, 3 (1) : 1 4 6, 2 (1) : 1 32 辽宁工程技术大学毕业设计 4 7, 1 (1) : 1 5 1, 6 (1) : 1 5 2, 5 (1) : 1 5 3, 4 (1) : 1 5 4, 3 (1) : 1 5 5, 2 (1) : 1 5 6, 2 (1) : 1 5 7, 1 (1) : 1 6 1, 5 (1) : 1 6 2, 4 (1) : 1 6 3, 2 (1) : 1 6 4, 2 (1) : 1 6 5, 1 (1) : 1 6 6, 1 (1) : 1 6 7, 1 (1) : 1 7 1, 4 (1) : 1 7 2, 3 (1) : 1 7 3, 2 (1) : 1 7 4, 2 (1) : 1 7 5, 1 (1) : 1 7 6, 1 (1) : 1 7 7, 1 (1) : 1 4.2.3观察控制规则 点击FIS编辑器的菜单工具View rules...进入模糊控制系统的规则观察器,如图4-5所示。它以非常详细的方式显示了特定的输入条件下每条控制规则是如何起作用的,以及隶属度函数形状的变化对输出的影响。规则观察器可以让我们一次就可以完全了解整个模糊推理的过程。它也显示了特定隶属度函数的形式是如何影响推理过程结果的。图中,每一列代表的是一个模糊变量(输入或输出),每一行代表的是一条控制规则,输出部分的粗线表示是反模糊化的值。 4.2.4观察控制曲面 33 付强:一类带有自调整因子的模糊控制器的研究 点击FIS编辑器的菜单工具View surface...进入模糊控制系统的曲面观察器,如图4-6所示。从曲面观察器上可以清楚地观察系统输入和输出的对应关系。 普通模糊控制器仍有许多不足之处,例如系统超调较大、调节时间民、稳定时间民等。产生这此缺点的主要原因是常规的模糊控制器的结构较简单,在设计过程中也有许多主观因素,而且一旦模糊规则确定就不能再改变等等。带自调整因子的模糊控制器就是针对上述情况提出的。 图4-5基本模糊控制器的规则观测器 Fig.4-5 The rule prognosticates of fuzzy controller 34 辽宁工程技术大学毕业设计 图4-6 基本模糊控制器产生的曲面观测器 Fig.4-6 The surface of fuzzy controller producing 4.3 带有自调整因子的模糊控制器在Matlab下的实现 4.3.1由模糊推理建立自调整因子 自调整因子α又模糊推理产生,因子相当于在原基本模糊控制器基础上增加了一个用于调整加权因子α的模糊控制器,构成双模糊控制器。其设计如下:将原基本模糊控制器的输出误差E、误差变化率Ec输出作为本模糊控制器的输入,论域均取[-6,+6],输出α的论域取为{0,1},模糊子集为{VS(很小),S(小),M(中),B(大),VB(很大)},隶属函数为三角型;为简便起见,E及Ec均为NB(负大)NS(负小)ZO(零)PS(正小)PB(正大),隶属度函数为三角型。根据建立自调整因子的原则得到的控制规则如表1所示,根据附表可建立49条控制规则。 根据模糊控制器的原理,加入其输出(自调整因子α)。取 α 的论域为{-6,6},α 的模糊子集为{NB,NM,NS,ZO,PS,PM,PB}; α 的隶属函数为梯型(trapmf),如图4-7所示。 35 付强:一类带有自调整因子的模糊控制器的研究 图4-7 输出 α 的隶属函数曲线 Fig.4-7 The function curve of output quantity α 输出 α 的隶属函数曲线的程序说明: [Output1] Name='a' Range=[0 1] NumMFs=5 MF1='VS':'trapmf',[-0.05 -0.03 0.03 0.08] MF2='S':'trapmf',[0 0.08 0.16 0.3] MF3='M':'trapmf',[0.1 0.2 0.3 0.65] MF4='B':'trapmf',[0.56 0.82 0.92 0.98] MF5='VB':'trapmf',[0.9 0.95 1.05 1.1] 4.3.2控制规则编辑 点击FIS编辑器的菜单工具Edit rules...进入模糊控制系统的规则编辑器,按照前面所提到的各个变量之间的模糊规则(规则共计49条)观察规则,这是两个输入和两个输出 36 辽宁工程技术大学毕业设计 的控制规则, 如图4-8所示。 4-8 输出量U和输出量α的规则编辑器 Fig.4-8 The rule editor of output U and α 输出量U和输出量α的规则编辑器的程序说明: [Rules] 1 1, 4 (1) : 1 1 2, 4 (1) : 1 1 3, 5 (1) : 1 1 4, 5 (1) : 1 1 5, 5 (1) : 1 1 6, 4 (1) : 1 1 7, 4 (1) : 1 2 1, 3 (1) : 1 2 2, 4 (1) : 1 2 3, 4 (1) : 1 2 4, 4 (1) : 1 37 付强:一类带有自调整因子的模糊控制器的研究 2 5, 4 (1) : 1 2 6, 4 (1) : 1 2 7, 3 (1) : 1 3 1, 2 (1) : 1 3 2, 3 (1) : 1 3 3, 3 (1) : 1 3 4, 4 (1) : 1 3 5, 3 (1) : 1 3 6, 3 (1) : 1 3 7, 2 (1) : 1 4 1, 1 (1) : 1 4 2, 2 (1) : 1 4 3, 3 (1) : 1 4 4, 3 (1) : 1 4 5, 3 (1) : 1 4 6, 2 (1) : 1 4 7, 1 (1) : 1 5 1, 2 (1) : 1 5 2, 3 (1) : 1 5 3, 3 (1) : 1 5 4, 4 (1) : 1 5 5, 3 (1) : 1 5 6, 3 (1) : 1 5 7, 2 (1) : 1 6 1, 3 (1) : 1 6 2, 4 (1) : 1 6 3, 4 (1) : 1 6 4, 4 (1) : 1 6 5, 4 (1) : 1 6 6, 4 (1) : 1 38 辽宁工程技术大学毕业设计 6 7, 3 (1) : 1 7 1, 4 (1) : 1 7 2, 4 (1) : 1 7 3, 5 (1) : 1 7 4, 5 (1) : 1 7 5, 5 (1) : 1 7 6, 4 (1) : 1 7 7, 4 (1) : 1 4.3.3观察控制规则 点击FIS编辑器的菜单工具View rules...进入模糊控制系统的规则观察器,如图4-9所示。它以非常详细的方式显示了特定的输入条件下每条控制规则是如何起作用的,以及隶属度函数形状的变化对输出的影响。规则观察器可以让我们一次就可以完全了解整个模糊推理的过程。它也显示了特定隶属度函数的形式是如何影响推理过程结果的。图中,每一列代表的是一个模糊变量(输入或输出),每一行代表的是一条控制规则,输出部分的粗线表示是反模糊化的值。 39 付强:一类带有自调整因子的模糊控制器的研究 图4-9带有自调整因子的模糊控制器的规则观测器 Fig.4-9 The rule prognosticates of fuzzy controller having the adaptive factor 4.3.4观察控制曲面 点击FIS编辑器的菜单工具View surface...进入模糊控制系统的曲面观察器,如图 4-10所示。从曲面观察器上可以清楚地观察系统输入和输出的对应关系。 40 辽宁工程技术大学毕业设计 图4-10带有自调整因子的模糊控制器产生的曲面观测器 Fig.4-10 The surface of fuzzy controller having the adaptive factor 通过总结现场操作员的操作经验,得出模糊控制规则如表4-2所示。这样便构成了带 有自调整因子的模糊控制器,然后将此fis文木命名为ztzhfuzl.Fis存盘。 E Ec NB NM NS ZO PS PM PB NB B M S VS S M B NM B B M S M B B NS VB B M M M B VB ZO VB B B M B B VB PS VB B M M M B VB PM B B M S M B B PB B M S VS S M B 表4-2 加权因子α的整定规则表 Form4-2 The control rule of α 41 付强:一类带有自调整因子的模糊控制器的研究 5 仿真结果分析 5.1基本模糊控制器系统仿真结果输出 120,s,40sGse()7.5,2(1150),s 取控制对象为。在Simulink环境中,利用鼠标将相应的模块拖到窗口中,连接后便得到整个控制系统模型,如图5-1为建立的基本模糊控制系统的仿真框图。 图5-1 基本模糊控制系统 Fig.5-1 Basic fuzzy control system 基本模糊控制系统响应曲线如图5-2: 系统超调量δ=18.9637 峰值时间tp =318.7937 调节时间ts =547.9643 42 辽宁工程技术大学毕业设计 图5-2基本模糊控制系统仿真输出曲线 Fig.5-2 The output curve of basic fuzzy control system 5.2带有自调整因子的模糊控制器系统仿真结果输出 120,s,40sGse()7.5,2(1150),s 不改变被控对象,仍取被控对象为。在Simulink环境中,利用鼠标将相应的模块拖到窗口中,连接后便得到整个控制系统模型,如图5-3为由模糊推理建立的自调整因子模糊控制系统。 43 付强:一类带有自调整因子的模糊控制器的研究 图5-3 由模糊推理建立自调整因子的模糊控制系统 Fig.5-3 The fuzzy controle system of having the adaptive factor 由模糊推理建立自调整因子的模糊控制系统响应输出曲线如图5-4: 系统的超调量δ=7.2396 峰值时间tp =287.1863 调节时间ts =436.5283 44 辽宁工程技术大学毕业设计 图5-4 由模糊推理建立自调整因子的模糊控制系统响应曲线 Fig.5-4The output curve of the fuzzy controle system having the adaptive factor 5.3 结论分析 通过对图5-2与图5-4系统输出响应曲线的对比及超调量、调节时间和峰值时间数据的对比表明,基本模糊控制器和带有自调整因子的模糊控制器在响应时间相同的情况下,具有自调整因子的模糊控制器在稳定时间、超调及鲁棒性等几方面的性能均优于基本模糊控制器。它最大限度地识别和利用控制系统所提供的信息,不断地修正控制规则,使控制器本身的控制规律适应系统的需要,从而显著地改善模糊控制系统的控制精度和稳态性能。 本设计是在模糊控制领域进行的一次有益尝试,在模糊控制发展方面具有一定理论意义。 随着科学的不断发展,更新型、更实用的带有自调整因子模糊控制器也会不断问世。同时,对于在线自调整的程度要求也越来越高。 由于时间和的能力有限,文章中难免有不足之处,诚恳希望各位老师、同学批评指正。 45 付强:一类带有自调整因子的模糊控制器的研究 致 谢 本文是在导师李红老师的悉心指导下完成的。李老师专业知识扎实,对学术严谨认真,在我做论文写作期间,无论在知识上还是思想上都给予了我很大的帮助,对论文中遇到的问题耐心予以解答和指导,提出了很多指导性意见,使我受益匪浅,在此表示衷心地感谢~ 在论文写作过程中,得到电气系许多老师和同学的热情帮助,对于我的许多问题,他们都耐心地帮助解答,在论文过程中给我提供了许多有价值的意见和建议,在此深表感谢~ 46 辽宁工程技术大学毕业设计 参考文献 [1] Michael Lawrence Smith ,Sensors,Appliance Control,and Fuzzy Logic,IEEE Trans,on Industry Appliation,1994,30(2):305~435 [2] Artificial Intelligence,Vol, 47,1991,9 [3]M.A.Sartori&P.J.Antsaklis, “Implementations of learning control systems using neural networks”,IEEE Control Systems Magazine, Vol. 12,No.2,1992 [4] MATLAB Reference Guide, The Mathworks, Inc, 1995 [5] 张仲俊等,《智能控制和只能控制系统,信息与控制》,1989,18(5):30~36 [6] 李士勇等,《模糊控制神经控制和智能控制论》,哈尔滨工业大学出版社,1998 [7] 金以慧,《过程控制》,清华大学出版社,1999 [8] 侯志林,《过程控制与自动化仪表》,机械工业出版社,1998 [9] 翁维勤、周庆海,《过程控制系统及工程》,化学工业出版社,1995 [10] 薛定宇等,《基于MATLAB/Simulink的系统仿真技术与应用》,清华大学出版社,2002 [11] 王顺晃、舒迪前,《智能控制系统及其应用》,机械工业出版社,1995 [12] 易继锴、侯媛彬,《智能控制技术》,北京工业大学出版社,1999 [13] 贺仲雄,《模糊数学及其应用》,天津科学技术出版社,1983 [14] 刘增良,《模糊技术与应用选编(1)》,北京航空航天大学出版社,1997 [15] 刘增良,《模糊技术与应用选编(2)》,北京航空航天大学出版社,1998.1 [16] 孙增圻,张再兴(《智能控制理论与技术》(清华大学出版社,广西科技出版社,2003 [17] 余永权等,《单片机模糊逻辑控制》,北京航空航天大学出版社,1995 [18] 郑大钟,《多变量线形控制系统》,清华大学出版社,1990 [19] 薛定宇等,《基于MATLAB/Simulink的系统仿真技术与应用》,清华大学出版社,2002 [20] 诸静,《模糊控制原理与应用》,机械工业出版社,1999 [21] 楼顺添等,《基于MATLAB的系统分析与设计——控制系统》,西安电子工业大学出版社,1998 [22] 孙庚山等,《工程模糊控制》,机械工业出版社,1995 [23] 闻新、周露等,《MATLAB模糊逻辑工具箱的分析与应用》,科学出版社,2001 [24] 施阳等,《MATLAB语言精要及动态仿真工具》,西北工业大学出版社,1997 [25] 王学慧、田成方,《微机模糊控制理论及其应用》,电子工业出版社,1987 47 付强:一类带有自调整因子的模糊控制器的研究 附录A Mablat简介 1 Mablat产生背景 在70年代中期,Cleve Moler博士和其同事在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库.EISPACK是特征值求解的FOETRAN程序库,LINPACK是解线性方程的程序库.在当时,这两个程序库代表矩阵运算的最高水平。 到70年代后期,身为美国New Mexico大学计算机系系主任的Cleve Moler,在给学生讲授线性代数课程时,想教学生使用EISPACK和LINPACK程序库,但他发现学生用FORTRAN编写接口程序很费时间,于是他开始自己动手,利用业余时间为学生编写EISPACK和LINPACK的接口程序.Cleve Moler给这个接口程序取名为MATLAB,该名为矩阵(matrix)和实验室(labotatory)两个英文单词的前三个字母的组合.在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,并作为面向大众的免费软件广为流传. 1983年春天,Cleve Moler到Standford大学讲学,MATLAB深深地吸引了工程师John Little.John Little敏锐地觉察到MATLAB在工程领域的广阔前景.同年,他和Cleve Moler,Steve Bangert一起,用C语言开发了第二代专业版.这一代的MATLAB语言同时具备了数值计算和数据图示化的功能. 1984年,Cleve Moler和John Little成立了Math Works公司,正式把MATLAB推向市场,并继续进行MATLAB的研究和开发. 在当今30多个数学类科技应用软件中,就软件数学处理的原始内核而言,可分为两大类.一类是数值计算型软件,如MATLAB,Xmath,Gauss等,这类软件长于数值计算,对处理大批数据效率高;另一类是数学分析型软件,Mathematica,Maple等,这类软件以符号计算见长,能给出解析解和任意精确解,其缺点是处理大量数据时效率较低.MathWorks公司顺应多功能需求之潮流,在其卓越数值计算和图示能力的基础上,又率先在专业水平上开拓了其符号计算,文字处理,可视化建模和实时控制能力,开发了适合多学科,多部门要求的新一代科技应用软件MATLAB.经过多年的国际竞争,MATLAB以经占据了数值软件市场的主导地位. 在MATLAB进入市场前,国际上的许多软件包都是直接以FORTRANC语言等编程语言开发的。这种软件的缺点是使用面窄,接口简陋,程序结构不开放以及没有标准的基库,很难适应各学科的最新发展,因而很难推广。MATLAB的出现,为各国科学家开发学科软件提供了新的基础。在MATLAB问世不久的80年代中期,原先控制领域里的一些软件包 48 辽宁工程技术大学毕业设计 纷纷被淘汰或在MATLAB上重建。 MathWorks公司1993年推出了MATLAB 4.0版,1995年推出4.2C版(for win3.X)1997年推出5.0版。1999年推出5.3版。MATLAB 5.X较MATLAB 4.X无论是界面还是内容都有长足的进展,其帮助信息采用超文本格式和PDF格式,在Netscape 3.0或IE 4.0及以上版本,Acrobat Reader中可以方便地浏览。 时至今日,经过MathWorks公司的不断完善,MATLAB已经发展成为适合多学科,多种工作平台的功能强大的大型软件。在国外,MATLAB已经经受了多年考验。在欧美等高校,MATLAB已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB被广泛用于科学研究和解决各种具体问题。在国内,特别是工程界,MATLAB一定会盛行起来。可以说,无论你从事工程方面的哪个学科,都能在MATLAB里找到合适的功能。 2(MATLAB的语言特点 一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同于其他语言的特点,正如同FORTRAN和C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样。它被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB最突出的特点就是简洁。MATLAB用更直观的,符合人们思维习惯的代码,代替了C和 FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观,最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点。 1)语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,我们用MATLAB进行科技开发是站在专家的肩膀上。 具有FORTRAN和C等高级语言知识的读者可能已经注意到,如果用FORTRAN或C语言去编写程序,尤其当涉及矩阵运算和画图时,编程会很麻烦。例如,如果用户想求解一个线性代数方程,就得编写一个程序块读入数据,然后再使用一种求解线性方程的算法编写一个程序块来求解方程,最后再输出计算结果。在求解过程中,最麻烦的要算第二部分。解线性方程的麻烦在于要对矩阵的元素作循环,选择稳定的算法以及代码的调试动不容易。即 49 付强:一类带有自调整因子的模糊控制器的研究 使有部分源代码,用户也会感到麻烦,且不能保证运算的稳定性。解线性方程的程序用FORTRAN和C这样的高级语言编写,至少需要四百多行,调试这种几百行的计算程序可以说很困难。以下用MATLAB编写以上两个小程序的具体过程。 MATLAB求解下列方程,并求解矩阵A的特征值 Ax=b: A= 32 13 45 67 23 79 85 12 43 23 54 65 98 34 71 35 b= 1 2 3 4 解为x=a,设A的特征值组成的向量e,e=eig(A) 可见,MATLAB的程序极其简短。更为难能可贵的是,MATLAB甚至具有一定的智能水平,比如上面的解方程,MATLAB会根据矩阵的特性选择方程的求解方法,所以用户根本不用怀疑MATLAB的准确性。 2)运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。 3)MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。 4)程序限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。 5)程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。 6)MATLAB的图形功能强大。在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。 7)MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。 8)功能强大的工具箱是MATLAB的另一特色。MATLAB包含两个部分:核心部分和 50 辽宁工程技术大学毕业设计 各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专业性比较强的,如control,toolbox,signl proceessing toolbox,commumnication toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高,精,尖的研究。 9)源程序的开放性。开放性也许是MATLAB最受人们欢迎的特点。除内部函数以外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。 3.Mablat工具箱 由于其完整的专业体系和先进的设计开发思路,使得 MATLAB 在多种领域都有广阔的应用空间,特别是在 MATLAB 的主要应用方向 — 科学计算、建模仿真以及信息工程系统的设计开发上已经成为行业内的首选设计工具,全球现有超过五十万的企业用户和上千万的个人用户,广泛的分布在航空航天,金融财务,机械化工,电信,教育等各个行业。 在MATLAB产品家族中,MATLAB工具箱是整个体系的基座,它是一个语言编程型(M语言)开发平台,提供了体系中其他工具所需要的集成环境(比如M语言的解释器)。同时由于MATLAB对矩阵和线性代数的支持使得工具箱本身也具有强大的数学计算能力。 MATLAB产品体系的演化历程中最重要的一个体系变更是引入了Simulink,用来对动态系统建模仿真。其框图化的设计方式和良好的交互性,对工程人员本身计算机操作与编程的熟练程度的要求降到了最低,工程人员可以把更多的精力放到理论和技术的创新上去。 针对控制逻辑的开发, 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 栈的仿真等要求,MathWorks公司在Simulink平台上还提供了用于描述复杂事件驱动系统的逻辑行为的建模仿真工具— Stateflow,通过Stateflow,用户可以用图形化的方式描述事件驱动系统的逻辑行为,并无缝的结合到Simulink的动态系统仿真中。在MATLAB/Simulink基本环境之上,MathWorks公司为用户提供了丰富的扩展资源,这就是大量的Toolbox和Blockset。从1985年推出第一个版本以后的近二十年发展过程中,MATLAB已经从单纯的Fortran数学函数库演变为多学科,多领域的函数包,模块库的提供者。用户在这样的平台上进行系统设计开发就相当于已经站在了巨人的肩膀上,众多行业中的专家、精英们的智慧结晶可以信手拈来。 同时,MATLAB开放的体系结构允许用户在平台上进行自由扩展,目前在全世界范围内 51 付强:一类带有自调整因子的模糊控制器的研究 已经有大量的商业的或者免费的MATLAB二次开发产品发布(比如FEMLAB和PSS)。换句话说,用户购买一套MATLAB,获得的是世界范围的专家支持。而对于用户自己开发的算法包,MATLAB也提供了包括Compiler应用发布和Web网络发布在内的众多方式的发布途径,使得用户一方面能够充分地利用MATLAB的算法资源形成技术成果,同时又可以有效的保护自己的知识产权。 在这样一个产品体系中,我们可以看到,由于MATLAB及其丰富的Toolbox资源的支持,使得用户可以方便的进行具有开创性的建模与算法开发工作,并通过MATLAB强大的图形和可视化能力反映算法的性能和指标。所得到的算法则可以在Simulink环境中以模块化的方式实现,通过全系统建模,进行全系统的动态仿真以得到算法在系统中的动态验证。 但是这样一个开发流程总是欠缺和工程实现的有效连接,系统级的设计产物无法和硬件产品直接挂钩。工程师无法直接应用 MATLAB/Simulink 的宝贵资源。为了改善设计流程中的这一缺陷, MATLAB 产品体系中加入了连接工程实现的桥梁 — 实时代码生成工具 Real-Time Workshop ( RTW )。 RTW 使用户可以直接将 Simulink 框图模型转化为实时标准 C 代码,进而为快速原型系统、半物理仿真系统或者产品提供设计输入。RTW 的主要特点有: 1)开放的,可扩充的结构,可以完全定制代码生成过程,满足不同用户对实时目标的不同要求 2)支持连续/离散/混合系统及异步系统仿真 3)支持定点和浮点目标机,代码具有很强的工程实用性 4)支持在线监控和调参 5)高度优化的代码效率 有了 RTW 的支持,就可以应用 MATLAB 平台以全新的开发思路解决我们的问题: 1)真正自顶向下的设计流程 2)统一的开发平台 3)减小系统开发的人为错误因素 4)压缩产品研发周期,加快产品面市时间 另外随着 MATLAB 在行业内影响力的快速扩大,与 MathWorks公司形成战略联合的公司和寻求与 MATLAB 进行接口的软硬件产品的也日益增多。目前 MATLAB 所支持的第三方产品已经有三百余种,分布在科学计算、机械动力学设计、化工、信息工程,汽车、金融财务等各个学科领域,接口方式包括联合建模、数据共享、开发流程拼接等等。 52 辽宁工程技术大学毕业设计 从 MATLAB 的产品体系可以看到,应用 MATLAB 作为统一的集成开发平台结合第三方软硬件工具,可以实现从算法开发到系统仿真优化再到硬件实现的完整过程。这一平台在工业领域的典型应用有: 1)控制器及控制对象的设计开发 — 快速控制原型及硬件在回路仿真(比如结合 dSPACE硬件仿真机系统) 2)信号处理系统的设计开发 — 全系统仿真及快速原型验证(比如结合 TIDSP ) 3)通信系统设计开发 — Bit True 和 Cycle True 的算法验证(比如结合 RadioLab3G和Candence) 4)机电液一体化设计开发 — 全系统联合仿真(比如结合 Easy5和 Adams) 总之, MathWorks致力于为工程师,科研工作者提供最好的语言,最好的工具和环境,扩大工程师的视野,提高生产率,增进学习能力,进行开创性的研究工作。今天, MATLAB 已经成为广大科研人员的最值得信赖的助手和朋友! 综上所述,Matlab工具箱有如下特点: 1(编程效率高 它是一种面向科学与工程计算的高级语言,允许用数学形式的语言编写程序,且比Basic、Fortran和C等语言更加接近我们书写计算公式的思维方式,用Matlab编写程序犹如在演算纸上排列出公式与求解问题。因此,Matlab语言也可通俗地称为演算纸式科学算法语言由于它编写简单,所以编程效率高,易学易懂。 2(用户使用方便 Matlab语言是一种解释执行的语言(在没被专门的工具编译之前),它灵活、方便,其调试程序手段丰富,调试速度快,需要学习时间少。人们用任何一种语言编写程序和调试程序一般都要经过四个步骤:编辑、编译、连接以及执行和调试。各个步骤之间是顺序关系,编程的过程就是在它们之间作瀑布型的循环。Matlab语言与其它语言相比,较好地解决了上述问题,把编辑、编译、连接和执行融为一体。它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程和调试过程中它是一种比VB还要简单的语言。 具体地说,Matlab运行时,如直接在命令行输入Mailab语句(命令),包括调用M文件的语句,每输入一条语句,就立即对其进行处理,完成绩译、连接和运行的全过程。又如,将Matlab源程序编辑为M文件,由于Mat1ab磁盘文件也是M文件,所以编辑后的源文 53 付强:一类带有自调整因子的模糊控制器的研究 件就可直接运行,而不需进行编译和连接。在运行M文件时,如果有错,计算机屏幕上会给出详细的出锗信息,用户经修改后再执行,直到正确为止。所以可以说,Mat1ab语言不仅是一种语言,广义上讲是一种该语言开发系统,即语言调试系统。 3(扩充能力强 高版本的Matlab语言有丰富的库函数,在进行复杂的数学运算时可以直接调用,而且Matlab的库函数同用户文件在形成上一样,所以用户文件也可作为Matlab的库函数来调用。因而,用户可以根据自己的需要方便地建立和扩充新的库函数,以便提高Matlab使用效率和扩充它的功能。另外,为了充分利用Fortran、C等语言的资源,包括用户已编好的Fortran,C语言程序,通过建立Me调文件的形式,混合编程,方便地调用有关的Fortran,C语言的子程序。 4(语句简单,内涵丰富 Matlab语言中最基本最重要的成分是函数,其一般形式为「a,6,c……] = fun(d,e,f,……),即一个函数由函数名,输入变量d,e,f,……和输出变量a,b,c……组成,同一函数名F,不同数目的输入变量(包括无输入变量)及不同数目的输出变量,代表着不同的含义(有点像面向对象中的多态性。这不仅使Matlab的库函数功能更丰富,而大大减少了需要的磁盘空间,使得Matlab编写的M文件简单、短小而高效。 5(高效方便的矩阵和数组运算 Matlab语言象Basic、Fortran和C语言一样规定了矩阵的算术运算符、关系运算符、逻辑运算符、条件运算符及赋值运算符,而且这些运算符大部分可以毫无改变地照搬到数组间的运算,有些如算术运算符只要增加“?”就可用于数组间的运算,另外,它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比拟的。在此基础上,高版本的Matlab已逐步扩展到科学及工程计算的其它领域。因此,不久的将来,它一定能名符其实地成为“万能演算纸式的”科学算法语言。 6(方便的绘图功能 Matlab的绘图是十分方便的,它有一系列绘图函数(命令),例如线性坐标、对数坐标,半对数坐标及极坐标,均只需调用不同的绘图函数(命令),在图上标出图题、XY轴标注,格(栅)绘制也只需调用相应的命令,简单易行。另外,在调用绘图函数时调整自变量可绘出不变颜色的点、线、复线或多重线。这种为科学研究着想的设计是通用的编程语言所不及的。 总之,Matlab语言的设计思想可以说代表了当前计算机高级语言的发展 54 辽宁工程技术大学毕业设计 方向。我们相信,在不断使用中,读者会发现它的巨大潜力。 4 MATLAB5.0新功能介绍 最新版本MATLAB5.0在原有基础上增加了彩色代码编辑器和程序试器等。这 些新增功能和特性简述如下: 1.图形按钮菜单功能 在原来下拉菜单功能基础上,MATLAB 5.0增加了图形按钮菜单功能,例如New、Open、Cut、Copy、Paste、Undo、Workspace Browser、Path Browser、New Simulink Model等。 2.设置文件路径功能 利用该功能可把用户文件保存路径加入到MATLAB的指向路径列表中,从而在MATLAB环境中无须指定路径就可以调用和运行用户编写的程序和函数。 3.图形用户界面向导 利用图形用户界面生成向导,非常容易地设计程序界面,类似Visual Basic的可视化设计风格,可方便地在界面上添加下拉菜单、按钮、无线按钮、检取框、编辑文本框、坐标系等,轻松设计具有Windows风格的图形用户界面。 4.彩色代码编辑器和程序调试器 MATLAB 5.0增加了彩色代码编辑器,可方便地编辑、调试应用程序。 5.提供帮助文件 MATLAB 5.0提供了两种很流行的帮助文件格式:PDF和HTML格式,可帮助主题窗口提供关键字查找功能。 MATLAB 5.0 功 能 和 特 点 1(数值分析和工程计算 矩阵分析和处理:MATLAB提供了对矩阵进行分析和处理的全面的函数,比如矩阵翻转函数fliplrc()、正交空间函数orth()等。 数据处理和基础统计:利用MATLAB提供的基本数值分析函数,可进行数据分析工作。这些函数包括最大值、最小值、均值、标准差、中值、排序分类、总和、类积、类加和、差分函数、直方图、列表等。 FFT、相关函数和协方差:对信号处理而言,求拉氏变换、傅立叶变换及其反变换、Z变换、协方差和卷积,用MATLAB的通用函数,无须考虑其算法就可实现。 稀疏矩阵处理:MATLAB 4.0以后版本成功地引入了稀疏矩阵的表达方法,定义了大量 55 付强:一类带有自调整因子的模糊控制器的研究 的稀疏矩阵处理函数,并针对稀疏矩阵处理建立了专门的稀疏矩阵处理工具箱。 三角函数和其他基本数字函数:MATLAB提供了全套的三角函数和其他基本的数字函数,其函数的命名方法和数学表达方法完全一致。 贝塞尔、β和其他专门函数:MATLAB提供了大量的专门函数,如贝塞尔函数、β函数等。 线性和微分方程解算器:MATLAB提供了常用的Gauss消元法、LU分解法、基于奇异值分解法等的实现函数;对常微分方程提供了多个求解函数,如采用二阶/三阶的RFT方法和采用四阶/五阶的RFT方法的求解函数ode23()、ode45()。 2(图形和可视化技术 方便的2D、3D作图:利用MATLAB内部函数,可方便地作出2D、3D的分散曲面图、多边形、网格图、轮廓图和直方图,而无须考虑机器的硬件类型。 屏蔽表面图、光照模型、摄像机控制、笛卡儿坐标对象:在MATLAB里可用光照模型设定阴影方向;可用摄像机任意控制观察角度;可进行各种坐标系绘图。 动画制作和语音处理:MATLAB提供了基本的动画和语音处理函数,包括:moviein()、movie()、sound()、saxis()、auwrite()、auread()、mu2lin()、in2mu()。利用这些函数可进行动画制作和播放。 (编程和数据结构 3 MATLAB的函数和命令可实现C或FORTRAN语言的几乎全部功能,而且开发应用程序的周期大大缩短。 彩色代码编辑器和调试器:利用自带的彩色代码编辑器编写应用程序时,内部命令、函数及各种属性值用不同的颜色表示,可大大提高编程效率。程序调试器在调试程序时可设置单步执行、错误停止、错误报警、断点等。 多维数组和用户自定义结构:MATLAB使用变量前无须先定义、初始化,对多维数组变量的操作和使用普通变量一样,它既能处理本身已定义数据结构又允许用户自定义数据类型。用户自定义数据类型包括:标量、矩阵混合结构及多维数组等。 面向对象编程:MATLAB支持面向对象编程。图形窗口、坐标轴、菜单、按钮、编辑文本框等均有一个操作句柄,每个对象的属性值都可在设计时设定,也可在程序运行过程中通过句柄用set()函数进行动态设置和更改。 流程控制器(If、While、For、Switch):MATLAB提供了标准流程控制结构,如条件转移语句、循环语句等一些常用的控制语句。 字符串处理:MATLAB拥有各种的字符串处理函数,如数值转字符串函数、字符串比较函 56 辽宁工程技术大学毕业设计 数、字符串与数值转换函数和十六进制转换函数。 ASCII和二进制文件读写。 4(图形用户界面工具 交互图形用户界面(GUI)生成器(向导):MATLAB 5.0可利用鼠标点击和拖曳,在图形窗口建立坐标系、按钮、编辑文本框以及捡取框等。生成向导可自动地把设计的界面生成MATLAB可识别和运行的.M文件。 下拉式和弹出式菜单:图形用户界面生成向导,包含一 个菜单编辑器,它可生成下拉菜单和弹出式菜单。也可以用uicontrol()函数在图形窗口建立菜单。两者不同之处在于前者自动生成代码,后者手工编写代码。 鼠标事件和回调函数:MATLAB图形窗口可以捕捉鼠标事件,自动识别左右键动作,可编写函数来响应鼠标事件,增加应用程序功能。 57 付强:一类带有自调整因子的模糊控制器的研究 附录B Mablat Introduction 1 The background of Mablat Middle period in the 1970s, Dr. Cleve Moler and his colleague have developed FORTRAN subprogram storehouse which transfers EISPACK and LINPACK under the subsidy of the American National Science Foundation . EISPACK is the characteristic value to ask FOETRAN procedure storehouse solved, LINPACK is the procedure storehouse which solves the linear equation. At that time, these two procedure storehouses representative's matrix operation was the most high-level. By later stage of the seventies, as Cleve Moler of the computer dean of U.S.A. New Mexico university, while teaching linear algebra course for students, want to teach students how to use EISPACK and LINPACK procedure storehouse, but he finds students write the interface routine and spend time very much with FORTRAN, then he begins to touch it by oneself, spends free time writing the interface routines of EISPACK and LINPACK for students. Cleve Moler names this interface routine MATLAB, the associations of this matrix by name and the first three letters of two English words of laboratory . In several years, MATLAB serves as auxiliary software of teaching in many universities, and spread wide as the mass-appeal free software. In spring of 1983, Cleve Moler goes to Standford university to give lectures, MATLAB has attracted engineer John Little.John Little and is aware of MATLAB wide prospect in the field of project sharply deeply and deeply. In the same year, he and Cleve Moler, Steve Bangert, have developed the second generation of speciality edition in C language. This generation's MATLAB language possessed number value calculating and data graphic presentation function at the same time . In 1984, Cleve Moler and John Little established Math Works Company, encouraged MATLAB to compete in the market formally , continue carrying on the research and development of MATLAB. During nowadays more than 30 pieces of mathematics scientific and technological application software, as regards primitive kernel of what mathematics of the software deals with, can be divided into two big classes. One kind is number value calculating type software, such as 58 辽宁工程技术大学毕业设计 MATLAB, Xmath, Gauss ,etc., this kind of software is calculated in number value long, with high efficiency to dealing with large quantities of data; Another kind is analytic type software of mathematics, Mathematica, Maple ,etc., this kind of software is good at calculating in symbol , can provide and analyze solving and solving wantonly and accurately , efficiency is relatively low while dealing with a large number of data in its shortcoming. MathWorks Company complies with the trend of the multi-functional demand, on the basis of its remarkable number value is calculated and graphic presentation ability, having taken the lead in opening up its symbo 59
本文档为【毕业设计109模糊控制技术】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_597436
暂无简介~
格式:doc
大小:481KB
软件:Word
页数:70
分类:工学
上传时间:2017-10-13
浏览量:20