文档库 最新最全的文档下载
当前位置:文档库 › 基于MATLAB的模糊控制器的设计及其实现

基于MATLAB的模糊控制器的设计及其实现

基于MATLAB的模糊控制器的设计及其实现
基于MATLAB的模糊控制器的设计及其实现

目录

1.毕业实践任务书--------------------------------------------------------------0

2.外文翻译-----------------------------------------------------------------------1

3.毕业实践调研报告-----------------------------------------------------------8

4.毕业设计说明-----------------------------------------------------------------10

5.毕业实践总结-----------------------------------------------------------------43

6.参考文献--------------------------------------------------------44

毕业实践任务书

课题需要完成的任务:

课题基于MATLAB进行设计,要求给出simulink仿真结果。主要设计要求如下:(1)控制对象:二阶系统;

(2)系统超调小于10%;

(3)稳态误差小于3%;

(4)设计相应simulink模块并仿真。

课题计划:

2.13-2.19 熟悉课题背景知识,查阅参考资料;

2.20-

3.4 选择设计方案;

3.5 -3.25 应用MATLAB设计相应的simulink模块;

3.26-

4.1 进行仿真并调试;

4.2 -4.8 编写毕业设计论文;准备毕业答辩。

计划答辩时间:

年月日日

机电技术学院自控系(部、分院)

年月日

原文:

A proportional–integral–derivative controller (PID controller) is a generic .control loop feedback mechanism widely used in industrial control systems. A PID controller attempts to correct the error between a measured process variable and a desired setpoint by calculating and then outputting a corrective action that can adjust the process accordingly.

The PID controller calculation (algorithm) involves three separate parameters; the Proportional, the Integral and Derivative values. The Proportional value determines the reaction to the current error, the Integral determines the reaction based on the sum of recent errors and the Derivative determines the reaction to the rate at which the error has been changing. The weightedsum of these three actions is used to adjust the process via a control element such as the position of a control valve or the power supply of a heating element.By "tuning" the three constants in the PID controller algorithm the PID can provide control action designed for specific process requirements. The response of the controller can be described in terms of the responsiveness of the controller to an error, the degree to which the controller overshoots the setpoint and the degree of system oscillation. Note that the use of the PID algorithm for control does not guarantee optimal control of the system or system stability.

Some applications may require using only one or two modes to provide the appropriate system control. This is achieved by setting the gain of undesired control outputs to zero. A PID controller will be called a PI, PD, P or I controller in the absence of the respective control actions. PI controllers are particularly common, since derivative action is very sensitive to measurement noise, and the absence of an integral value may prevent the system from reaching its target value due to the control action.

Note: Due to the diversity of the field of control theory and application, many naming conventions for the relevant variables are in common use.

1.Control loop basics

A familiar example of a control loop is the action taken to keep one's shower water at the ideal temperature, which typically involves the mixing of two process streams, cold and hot water. The person feels the water to estimate its temperature. Based on this

measurement they perform a control action: use the cold water tap to adjust the process. The person would repeat this input-output control loop, adjusting the hot water flow until the process temperature stabilized at the desired value.

Feeling the water temperature is taking a measurement of the process value or process variable (PV). The desired temperature is called the setpoint (SP). The output from the controller and input to the process (the tap position) is called the manipulated variable (MV). The difference between the measurement and the setpoint is the error (e), too hot or too cold and by how much.As a controller, one decides roughly how much to change the tap position (MV) after one determines the temperature (PV), and therefore the error. This first estimate is the equivalent of the proportional action of a PID controller. The integral action of a PID controller can be thought of as gradually adjusting the temperature when it is almost right. Derivative action can be thought of as noticing the water temperature is getting hotter or colder, and how fast, and taking that into account when deciding how to adjust the tap.Making a change that is too large when the error is small is equivalent to a high gain controller and will lead to overshoot. If the controller were to repeatedly make changes that were too large and repeatedly overshoot the target, this control loop would be termed unstable and the output would oscillate around the setpoint in either a constant, growing, or decaying sinusoid. A human would not do this because we are adaptive controllers, learning from the process history, but PID controllers do not have the ability to learn and must be set up correctly. Selecting the correct gains for effective control is known as tuning the controller.

If a controller starts from a stable state at zero error (PV = SP), then further changes by the controller will be in response to changes in other measured or unmeasured inputs to the process that impact on the process, and hence on the PV. Variables that impact on the process other than the MV are known as disturbances and generally controllers are used to reject disturbances and/or implement setpoint changes. Changes in feed water temperature constitute a disturbance to the shower process.

In theory, a controller can be used to control any process which has a measurable output (PV), a known ideal value for that output (SP) and an input to the process (MV) that will affect the relevant PV. Controllers are used in industry to regulate temperature,

pressure, flow rate, chemical composition, speed and practically every other variable for which a measurement exists. Automobile cruise control is an example of a process which utilizes automated control.

Due to their long history, simplicity, well grounded theory and simple setup and maintenance requirements, PID controllers are the controllers of choice for many of these applications.

While PID controllers are applicable to many control problems, they can perform poorly in some applications.PID controllers, when used alone, can give poor performance when the PID loop gains must be reduced so that the control system does not overshoot, oscillate or "hunt" about the control setpoint value. The control system performance can be improved by combining the feedback (or closed-loop) control of a PID controller with feed-forward (or open-loop) control. Knowledge about the system (such as the desired acceleration and inertia) can be "fed forward" and combined with the PID output to improve the overall system performance. The feed-forward value alone can often provide the major portion of the controller output. The PID controller can then be used primarily to respond to whatever difference or "error" remains between the setpoint (SP) and the actual value of the process variable (PV). Since the feed-forward output is not affected by the process feedback, it can never cause the control system to oscillate, thus improving the system response and stability.

For example, in most motion control systems, in order to accelerate a mechanical load under control, more force or torque is required from the prime mover, motor, or actuator. If a velocity loop PID controller is being used to control the speed of the load and command the force or torque being applied by the prime mover, then it is beneficial to take the instantaneous acceleration desired for the load, scale that value appropriately and add it to the output of the PID velocity loop controller. This means that whenever the load is being accelerated or decelerated, a proportional amount of force is commanded from the prime mover regardless of the feedback value. The PID loop in this situation uses the feedback information to effect any increase or decrease of the combined output in order to reduce the remaining difference between the process setpoint and the feedback value. Working together, the combined open-loop feed-forward controller and closed-loop PID

controller can provide a more responsive, stable and reliable control system.

Another problem faced with PID controllers is that they are linear. Thus, performance of PID controllers in non-linear systems (such as HVAC systems) is variable.

Along with the development of Fuzzy Mathematics, control engineers gradually pay much attention to the idea of Fuzzy Control, thus promoting the invention of fuzzy controllers. However, simple fuzzy controller has its own defect, where control effect is quite coarse and the control precision can not reach the expected level. Therefore, the Fuzzy Adaptive PID Controller is created by taking advantage of the superiority of PID Controller and Fuzzy Controller. Taken this controller in use, the corresponding error and its differential error of the control system can be feed backed to the Fuzzy Logic Controller. Moreover, the three parameters of PID Controller is determined online through fuzzification, fuzzy reasoning and defuzzification of the fuzzy system to maintain better working condition than the traditional PID controller.

Meanwhile,the design method and general steps are introduced of the Parameter self-setting Fuzzy PID Controller. Eventually, the Fuzzy Inference Systems Toolbox and SIMULINK toolbox are used to simulate Control System. The results of the simulation show that Self-organizing Fuzzy Control System can get a better effect than the Classical PID controlled evidently.

Keywords:Classic PID control; Fuzzy Control; Parameters tuning; the Fuzzy Adaptive PID Controller; MA TLAB simulation

译文:

比例积分微分控制器(PID调节器)是一个控制环,广泛地应用于工业控制系统里的反馈机制。PID控制器通过调节给定值与测量值之间的偏差,给出正确的调整,从而有规律地纠正控制过程。

PID控制器算法涉及到三个部分:比例,积分,微分。比例控制是对当前偏差的反应,积分控制是基于新近错误总数的反应,而微分控制则是基于错误变化率的反应。这三种控制的结合可用来调节过程系统,例如调节阀的位置,或者加热系统的电源调节。根据具体的工艺要求,通过PID控制器的参数整定,从而提供调节作用。控制器的响应可以被认为是对系统偏差的响应。注意一点的是,PID 算法不一定就是系统或系统稳定性的最佳控制。

一些应用可能只需要运用一到两种方法来提供适当的系统控制。这是通过把不想要的控制输出置零取得。在控制系统中存在P,PI,PD,PID调节器。PI调节器很普遍,因为微分控制对测量噪音非常敏感。积分作用的缺乏可以防止系统根据控制目标而达到它的目标值。

注释:由于控制理论和应用领域的差异,很多相关变量的命名约定是常用的。

控制环基础

一个关于控制环类似的例子就是保持水在理想温度,涉及到两个过程,冷、热水的混合。人可以凭触觉估测水的温度。基于此他们设计一个控制行为:用冷水龙头调整过程。重复这个过程,调节热水流直到温度处于期望的稳定值。

感觉水温就是对过程值或变量的测量。期望得到的温度称为给定值。控制器的输出对象和过程的输入对象称为控制参数。测量值与给定值之间的差就是偏差值,太高、太低或正常。作为一个控制器,在确定温度给定值后,就可以粗略决定改变阀门位置多少,以及怎样改变偏差值。首次估计即是PID 控制器的比例度的确定。当它几乎正确时,PID控制器的积分作用就是起着逐渐调整温度的作用。微分作用就是根据水温变得更热、更冷,以及变化速率来决定什么时候、怎样调整那些阀门。当偏差小时而做了一个大变动,相当于一个大的调整控制器,会导致超调。如果控制器反复进行大的变动并且反复越过给定值的改变,控制环将会不稳定。输出值将在期望值或一常量周围摆动,甚至破坏系统稳定性。人不会这样做,因为我们是有智慧的控制人员,可以从历史经验中学习,但PID控制

器没有学习能力,必须正确的设定。为有效的控制系统选择正确的参数被称为整定控制器。

如果控制器在零偏差从稳定开始,然后进一步的变化将导致其它一些影响过程的能测量、不能测量值的变化,并且作用于偏差值上。除主过程以外,其他的对扰动有影响的过程可以用来抑制扰动或实现对目标值的改变。供给水温的变化就构成了对过程的一个扰动。

理论上,控制器能用来控制可测量对象,以及可以影响偏差的输出、输入标准值的所有过程参数。控制器在工业中被用来调节温度,压力,流速,化学组成,速度以及其它任何存在可测量的对象。汽车游览控制就是一个自动化的过程控制的例子。

由于它们悠久的历史,简易,良好的理论基础以及简单的设置、维护要求,PID控制器被许多应用实践所采纳。

当PID控制器适用于很多控制问题时,它在一些应用过程中不好使用。当单独使用并且必须降低PID环路增益时,PID控制器会给出劣质的控制性能。因此,控制系统不超调。在给定值附近摆动。控制系统可以通过结合PID控制器与前馈控制来进行改进。关于系统的知识,可以用前馈和PID输出来改进总的系统性能。单独的前馈控制经常能提供主要控制器输出值的部分。PID控制器还能对在SP 和PV的实际值之间的偏差作出反应。因为前馈生产没被过程反馈影响,它永远不能引起控制系统摆动,且有助于改进系统的稳定性。

例如,在大多数运动控制系统中,为了在控制一机械负荷,需要更多的来自电动机、发动机或作动器的力量或者力矩。如果一速度PID控制器被用来控制负荷的速度,并驱动被原动力使用的力或者力矩,它有利于赋予负荷所需的加速度,恰当估价并且给PID速度环控制器的输出添加给定值。这表明每当负荷被加速或者被降速时,成比例的力量从那些原动力产生而不受反馈值影响任何导致输出增加或减少的因素,为了降低给定值与反馈值的差值。同时工作时,结合的开环前馈控制器和封闭环PID控制器能提供一个更敏感、可靠的控制系统。

面临PID 控制器的另一个问题是他们是在线的。因此,在非线性系统(象空调系统那样)内的PID 控制器的工作是易变的。

随着模糊数学的发展,模糊控制的思想逐渐得到控制工程师们的重视,各种

模糊控制器也应运而生。而单纯的模糊控制器有其自身的缺陷—控制效果很粗糙、控制精度无法达到预期标准。但利用传统的PID控制器和模糊控制器结合形成的模糊自适应的PID控制器可以弥补其缺陷;它将系统对应的误差和误差变化率反馈给模糊控制器进而确定相关参数,保证系统工作在最佳状态,实现优良的控制效果。

论文介绍了参数自适应模糊PID控制器的设计方法和步骤。并利用MATLAB 中的SIMULINK 和模糊逻辑推理系统工具箱进行了控制系统的仿真研究,并简要地分析了对应的仿真数据。

关键词: 经典PID控制; 模糊控制; 自适应模糊PID控制器; 参数整定; MATLAB 仿真

调研报告

模糊控制是根据对控制对象的粗略知识以及人们的生产技能等知识,导出自然语言的控制规则,利用模糊理论进行控制的一种控制方法。模糊逻辑和模糊控制的研究与应用发展是很迅速的,研究成果主要集中在日本、美国、德国等欧洲国家。

我国在模糊理论和应用方面的研究起步较晚,但发展很快1981年成立了中国模糊系统和模糊数学学会.并创办了世界卜第二种模糊专业学术杂志—《模糊数学》。随着模糊理论及其技术的发展,该刊在1987年改名为《模糊系统与数学》。目前我国已成为模糊数学研究的四大力量之一(美国、西欧、日本及中国),也是世界_L模糊控制技术研究的领先者之一:在模糊数学理论方面的研究成果已引起国际模糊界的特别关注和重视,模糊技术的应用研究也在稳步地发展。1979年、李宝缓、刘志俊等人用连续数字仿真方法研究了典型模糊控制器的性能;1988年3月由北京师范大学汪培庄教授及其博上生张洪敏等研制成功的“模糊推理机分离元件样机”成功地实现了控制倒摆实验;1984年李太航和沈祖良推出了语义推理的自学习算法;1987年,张洪敏和张志明研制成功我国第一台模糊推理机;1993年汪培庄的博士生刘增良先后参加国家自然科学基金重大项f]“模糊信息处理与机器智能”等,并提出“因素神经网络理沦( FNN)_,在此基础上开发完成的“模糊控制i卜算机系统”和“基于F'NN的学习型模糊推理控制机”等一系列成果都达到了世界先进水平。玻璃拉管线模糊控制器、电冰箱模糊控制器、可编程模糊控制器f3FFC-898系列产品、水泥厂矿石破碎机的模糊控制系统都已形成产品并投人运行,近年来,我国也推出厂电烤箱、电烤柜模糊控制器、模糊控制燃气快速热水器、模糊控制自动恒温器、灯光恒照度模糊控制器、模糊全白动洗衣机和模糊电饭锅等产品,标志着我国模糊技术的应用研究也有了长足的进步。毫无疑同,十几年来,我国在模糊逻辑控制的研究和应用开发上已达到了一定的规模,形成了高新技术领域的研究热点技术。

目前,模糊控制技术日趋成熟和完善。各种模糊产品充满西方国家的市场,如模糊洗衣机、模糊吸尘器和模糊摄像机等等,模糊技术几乎变得

2模糊控制查询表的MATLAB实现

模糊控制查询表的MATLAB 实现 叶高文(厦门海洋职业技术学院,福建厦门361012) MATLAB realization of Fuzzy Control Query Table 在运用模糊控制技术进行工业控制时,为了减少在线计算量,节省内存,提高PLC 等控制器的运行效率,通常根据隶属度函数和模糊控制规则表离线计算对应的模糊控制表,并将该表置于PLC 等控制器中,供实时控制时使用。在实时控制过程中,根据模糊量化后的偏差值e 和偏差变化率ec 直接查询控制表以获得模糊控制输出量,再转换为精确输出控制量。在实际的控制过程中由于微分作用的效果不是很明显,故很多实际情况中只采用PI 控制。本文论述的对象是常用PLC 的模糊PI 控制。不是PLC 的系统,可将积分时间转换为积分系数。 1模糊PI 控制模型说明 本文提供一个实际工业控制的模糊查询表的MATLAB 实 现过程,模糊PI 模型如图1。 图1模糊PI 控制器模型 如图1,模糊控制器的输入量采用实际被控制量与给定量的偏差e 和偏差变化率ec ,参数整定机构采用增量型调整原理,输出为比例系数增量ΔK P 和积分时间增量ΔTi ,再经式K P = K P0+ΔK P 和式T I =T I0+ΔTi 计算得到PI 控制器的比例系数KP 和积分时间值TI 。 2模型输入输出模糊控制规则表 2.1定义输入输出变量的隶属度矢量表 一般情况下,输入量偏差e 和偏差变化率△e 以及输出变量ΔKP 和ΔTi 的离散论域都设定为13个量化等级邀-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6妖。为方便MATLAB 编程,对相关的变量选择进行一些改变。原先的输入变量偏差e 和偏差变化率ec 的量化等级邀-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6妖改写为邀1,2,3,4,5,6,7,8,9,10,11,12,13妖。而输出变量ΔKP 和ΔTi 得量化等 级保持为邀-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6妖。 输入变量偏差e 和偏差变化率ec 和输出变量ΔKP 、ΔTi 的模糊语言值均为邀NB ,NM ,NS ,ZO ,PS ,PM ,PB妖。为了编程方便,将语言值用数字表示为邀1,2,3,4,5,6,7妖,与模糊语言值相对应,比如:模糊语言值NB 的模糊数字值为1,其他类似。根据以上的规定,产生用数字语言值表示输入变量x1及x2的隶属度矢量表,见表1所示。其中,变量x1表示模糊控制器的偏差输入e ,变量x2表示模糊控制器的偏差输入ec ;f1(i )、f2(j )表示第一输入x1和第二输入x2的隶属度,而i 、j 表示语言变量数字值,即为1,2,3,4…7。 表1用数字语言值表示输入变量x1及x2的隶属度矢量表 2.2模糊控制规则表 该控制系统为一实际工业控制模型,其用数字语言值表示的比例系数增量ΔKP 和积分时间ΔTI 模糊控制规则表如表2和表3所示。 表2 用数字语言值表示的ΔKP 模糊控制规则 摘 要 通过建立一个工业自动化控制中经常使用的模糊PI 控制器模型,详细论述了运用MATLAB 语言编写模糊控制查询表的方法,该控制表可以表格形式存放于计算机,从而大大提高了如PLC 等内存小的工业控制器的运行效率,也可实现在线推理控制。 关键词:模糊控制查询表,MATLAB ,PI 控制,在线推理 Abstract Through the establishmengt of Fuzzy-PI controller model which is applied in the industrial automation control,This pa-per describes in detail the way how to get a fuzzy -control-query table by the MATLAB programming.This cotrol-table may be stored in the compute with the form of a table,Which can improe greatly the operational efficiency,Such as PLC controller,etc.whose memory is very little,and on-line reasoning can also be realized. Keywords :fuzzy control query table,MATLAB,PI control,on-line reasoning 模糊控制查询表的MATLAB 实现 64

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

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

简易模糊控制器设计及MATLAB仿真

简易模糊控制器的设计及仿真 摘要:模糊控制(Fuzzy Control )是以模糊集理论、模糊语言和模糊逻辑推理为基础的一种控制方法,它从行为上模仿人的模糊推理和决策过程。本文利用MATLAB/SIMULINK 与FUZZY TOOLBOX 对给定的二阶动态系统,确定模糊控制器的结构,输入和输出语言变量、语言值及隶属函数,模糊控制规则,比较其与常规控制器的控制效果,用MATLAB 实现模糊控制的仿真。 关键词:模糊控制 参数整定 MATLAB 仿真 二阶动态系统模型: ()()1140130120 ++s s 采用simulink 图库,实现常规PID 和模糊自整定PID 。 一.确定模糊控制器结构 模糊自整定PID 为2输入3输出的模糊控制器。在MATLAB 的命令窗口中键入fuzzy 即可打开FIS 编辑器,其界面如下图所示。此时编辑器里面还没有FIS 系统,其文件名为Untitled ,且被默认为Mandani 型系统。默认的有一个输入,一个输出,还有中间的规则处理器。在FIS 编辑器界面上需要做一下几步工作。 首先,模糊自整定PID 为2输入3输出的模糊控制器,因此需要增加一个输入两个输出,进行的操作为:选择Edit 菜单下的Add Variable/Input 菜单项。

如下图。 其次,给输入输出变量命名。单击各个输入和输出框,在Current Variable 选项区域的Name文本框中修改变量名。如下图 最后,保存系统。单击File菜单,选择Export下的To Disk项。这里将创建的系统命名为PID_auot.fi。 二.定义输入、输出模糊集及隶属函数

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

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

基于matlab的模糊控制器的设计与仿真

基于MATLAB的模糊控制器的设计与仿真 摘要:本文对模糊控制器进行了主要介绍。提出了一种模糊控制器的设计与仿真的实现方法,该方法利用MA TLB模糊控制工具箱中模糊控制器的控制规则和隶属度函数,建立模型,并进行模糊控制器设计与仿真。 关键词:模糊控制,隶属度函数,仿真,MA TLAB 1 引言 模糊控制是一种特别适用于模拟专家对数学模型未知的较复杂系统的控制,是一种对模型要求不高但又有良好控制效果的控制新策略。与经典控制和现代控制相比,模糊控制器的主要优点是它不需要建立精确的数学模型。因此,对一些无法建立数学模型或难以建立精确数学模型的被控对象,采用模糊控制方法,往往能获得较满意的控制效果。 模糊控制器的设计比一般的经典控制器如PID控制器要复杂,但如果借助MATLAB则系统动态特性良好并有较高的稳态控制精度,可提高模糊控制器的设计效率。本文在MATLAB环境下针对某个控制环节对模糊控制系统进行了设计与仿真。 2 模糊控制器简介 模糊控制器是一种以模糊集合论,模糊语言变量以及模糊推理为数学基础的新型计算机控制方法。显然,模糊控制的基础是模糊数学,模糊控制的实现手段是计算机。本章着重介绍模糊控制的基本思想,模糊控制的基本原理,模糊控制器的基本设计原理和模糊控制系统的性能分析。 随着科学技术的飞速发展,在那些复杂的,多因素影响的严重非线性、不确定性、多变性的大系统中,传统的控制理论和控制方法越来越显示出局限性。长期以来,人们期望以人类思维的控制方案为基础,创造出一种能反映人类经验的控制过程知识,并可以达到控制目的,能够利用某种形式表现出来。而且这种形式既能够取代那种精密、反复、有错误倾向的模型建造过程,又能避免精密的估计模型方程中各种方程的过程。同时还很容易被实现的,简单而灵活的控制方式。于是模糊控制理论极其技术应运而生。 3 模糊控制的特点 模糊控制是以模仿人类人工控制特点而提出的,虽然带有一定的模糊性和主观性,但往往是简单易行,而且是行之有效的。模糊控制的任务正是要用计算机来模拟这种人的思维和决策方式,对这些复杂的生产过程进行控制和操作。所以,模糊控制有以下特点: 1)模糊控制的计算方法虽然是运用模糊集理论进行的模糊算法,但最后得到的控制规律是确定

模糊控制器的设计

4模糊控制器的设计 4 Design of Fuzzy Controllor 4.1概述(Introduction) 随着PLC在自动控制领域内的广泛应用及被控对象的日趋复杂化,PLC控制软件的开发单纯依靠工程人员的经验显然是行不通的,而必须要有科学、有效的软件开发方法作为指导。因此,结合PLC可编程逻辑控制器的特点,应用最新控制理论、技术和方法,是进一步提高PLC软件开发效率及质量的重要途径。 系统设计的目标之一就是要提高装车的均匀性,车厢中煤位的高度变化直接影响装车的均匀性,装车不均匀对车轴有很大的隐患。要保持高度值不变就必须不断的调整溜槽的角度,但是,在装车过程中,煤位的高度和溜槽角度之间无法建立精确的数学模型。模糊控制它最大的特点是[43-45]:不需建立控制对象精确数学模型,只需要将操作人员的经验总结描述成计算机语言即可,因此采用模糊控制思想实现均匀装车是行之有效的方法。虽然很多PLC生产厂家推出FZ模糊推理模块,但这些专用模块价格昂贵,需使用专门的编程设备,成本高通用性差,所以自主开发基于模糊控制理论的PLC控制器有很大的工程价值。 本章首先介绍了模糊控制的基本原理、模糊控制系统及模糊控制器的设计步骤;然后在对煤位高度控制系统分析的基础上,设计基于模糊理论的PLC控制,分别从查询表计算生成和PLC程序查询两个部分进行设计。 4.2模糊控制原理(Fuzzy Control Principle) 4.2.1模糊控制理论(Fuzzy Control Theory) 模糊控制理论是由美国加利福尼亚大学的自动控制理论专家L.A.Zadch教授首次提出,由英国的Mamdani首次用于工业控制的一种智能控制技术[46]。模糊控制(FUZZY)技术是一种由数学模型、计算机、人工智能、知识工程等多门科学领域相互渗透、理论性很强的科学技术。 模糊控制是以人的控制经验作为控制的知识模型,以模糊集合、模糊语言变量以及模糊逻辑推理作为控制算法的数学工具,用计算机来实现的一中计算机智能控制[47-48]。它的基本思想是:把人类专家对待特定的被控对象或过程的控制策略总结成一系列以“IF…THEN…”形式表示的控制规则,通过模糊推理得到控制作用集,作用与被控对象或过程。与传统的控制方法相比,它具有以下优点[48]:无需知道被控对象的数学模型;是一种反映人类智慧思维的智能控制;易被人们所接受;构造容易;鲁棒性好。

模糊控制系统及其MATLAB实现

模糊控制系统及其MATLAB实现 1. 模糊控制的相关理论和概念 1.1 模糊控制的发展 模糊控制理论是在美国加州伯克利大学的L.A.Zadeh教授于1965 年建立的模 糊集合论的数学基础上发展起来的。之后的几年间Zadeh又提出了模糊算法、模糊 决策、模糊排序、语言变量和模糊IF-THEN规则等理论,为模糊理论的发展奠定了 基础。 1975年,Mamdani和Assilian创立了模糊控制器的基本框架,并用于控制蒸 汽机。 1978年,Holmblad和Ostergaard为整个工业过程开发出了第一个模糊控制器——模糊水泥窑控制器。 20世纪80年代,模糊控制开始在工业中得到比较广泛的应用,日本仙台地铁 模糊控制系统的成功应用引起了模糊领域的一场巨变。到20世纪90年代初,市场 上已经出现了大量的模糊消费产品。 近30 年来, 因其不依赖于控制对象的数学模型、鲁棒性好、简单实用等优点, 模糊控制已广泛地应用到图像识别、语言处理、自动控制、故障诊断、信息并且渗透到社会科学和检索、地震研究、环境预测、楼宇自动化等学科和领域, 自然科学许多分支中去, 在理论和实际运用上都取得了引人注目的成果。 1.2 模糊控制的一些相关概念 用隶属度法来定义论域U中的集合A,引入了集合A的0-1隶属度函数, 用,()x表示,它满足: A xA,1, ,x(),,AxA,0,

用0-1之间的数来表示x属于集合A的程度,集合A等价与它的隶属度函 数,()x A 模糊系统是一种基于知识或基于规则的系统。它的核心就是由所谓的IF-THEN 规则所组成的知识库。一个模糊的IF-THEN规则就是一个用连续隶属度函数对所描述的某些句子所做的IF-THEN形式的陈述。例如: 如果一辆汽车的速度快,则施加给油门的力较小。 这里的“快”和“较小”分别用隶属度函数加以描述。模糊系统就是通过组合IF-THEN规则构成的。 构造一个模糊系统的出发点就是要得到一组来自于专家或基于该领域知识的模糊IF-THEN规则,然后将这些规则组合到单一系统中。不同的模糊系统可采用不用的组合原则。 用隶属度函数表征一个模糊描述后,实质上就将模糊描述的模糊消除了。 模糊控制系统设计的关键在于模糊控制器的设计。模糊控制器的设计主要有三个部分: (1) 输入量的模糊化 所谓模糊化(Fuzzification) 就是先将某个输入测量量的测量值作标准化处理,把该输入测量量的变化范围映射到相应论域中,再将论域中的各输入数据以相应的模糊语言值的形式表示,并构成模糊集合。这样就把输入的测量量转换为用 隶属度函数表示的某一模糊语言变量。 (2) 模糊逻辑推理 根据事先已定制好的一组模糊条件语句构成模糊规则库,运用模糊数学理论对 模糊控制规则进行推理计算,从而根据模糊控制规则对输入的一系列条件进行综合评估,以得到一个定性的用语言表示的量,即模糊输出量。完成这部分功能的过程就是模糊逻辑推理过程。

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

第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 赋值(见教材中的表)

模糊控制器的MATLAB仿真

实验一模糊控制器的MATLAB仿真 一、实验目的 本实验要求利用MATLAB/SIMULINK与FUZZYTOOLBOX对给定的二阶动态系统,确定模糊控制器的结构,输入和输出语言变量、语言值及隶属函数,模糊控制规则;比较其与常规控制器的控制效果;研究改变模糊控制器参数时,系统响应的变化情况;掌握用 MATLAB 实现模糊控制系统仿真的方法。 二、实验原理 模糊控制器它包含有模糊化接口、知识库(规则库、数据库)、模糊推理机、解模糊接口等部分。输人变量e(t)是过程实测变量y(t)与系统设定值s(t)之差值。输出变量y(t)是系统的实时控制修正变量。模糊控制的核心部分是包含语言规则的规则库和模糊推理机。而模糊推理就是一种模糊变换,它将输入变量模糊集变换为输出变量的模糊集,实现论域的转换。工程上为了便于微机实现,通常采用“或”运算处理这种较为简单的推理方法。Mamdani推理方法是一种广泛采用的方法。它包含三个过程:隶属度聚集、规则激活和输出总合。模糊控制器的组成框图如图2.1所示。 图2.1 模糊控制器的组成框图 三、模糊推理系统的建立 一个模糊推理系统的建立分为三个步骤:首先,对测量数据进行模糊化;其次,建立规则控制表;最后,输出信息的模糊判决,即对模糊量进行反模糊化,得到精确输出量。 模糊推理系统的建立,往往是设计一个模糊控制系统的基础。建立一个模糊推理系统有两类方法:一种是利用GUI建立模糊推理系统;另一种是利用MATLAB命令建立。下面根据实验内容,利用GUI建立模糊推理系统。 例:对循环流化床锅炉床温,对象模型为

()()1140130120 ++s s 采用simulink 图库,实现常规PID 和模糊自整定PID 。模糊自整定PID 为2输入3输出的模糊控制器。 1、 进入FIS 编辑器 在MATLAB 的命令窗口中键入fuzzy 即可打开FIS 编辑器,其界面如下图所示。此时编辑器里面还没有FIS 系统,其文件名为Untitled ,且被默认为Mandani 型系统。默认的有一个输入,一个输出,还有中间的规则处理器。在FIS 编辑器界面上需要做一下几步工作。 首先,模糊自整定PID 为2输入3输出的模糊控制器,因此需要增加一个输入两个输出,进行的操作为:选择Edit 菜单下的Add Variable/Input 菜单项。如下图。

基于MATLAB的模糊控制系统设计

实验一基于MATLAB的模糊控制系统设计 1.1实验内容 (1)基于MATLAB图形模糊推理系统设计,小费模糊推理系统; (2)飞机下降速度模糊推理系统设计; (3)水箱液位模糊控制系统设计及仿真运行。 1.2实验步骤 1小费模糊推理系统设计 (1)在MATLAB的命令窗口输入fuzzy命令,打开模糊逻辑工具箱的图形用户界面窗口,新建一个Madmdani模糊推理系统。 (2)增加一个输入变量,将输入变量命名为service、food,输出变量为tip,这样建立了一个两输入单输出模糊推理系统框架。 (3)设计模糊化模块:双击变量图标打开Membership Fgunction Editor 窗口,分别将两个输入变量的论域均设为[0,10],输出论域为[0,30]。 通过增加隶属度函数来进行模糊空间划分。 输入变量service划分为三个模糊集:poor、good和excellent,隶属度函数均为高斯函数,参数分别为[1.5 0]、[1,5 5]和[1.5 10]; 输入变量food划分为两个模糊集:rancid和delicious,隶属度函数均为梯形函数,参数分别为[0 0 1 3]和[7 9 10 10]; 输出变量tip划分为三个模糊集:cheap、average和generous,隶属度函数均为三角形函数,参数分别为[0 5 10]、[10 15 20]和[20 25 30]。

(4)设置模糊规则:打开Rule Editor窗口,通过选择添加三条模糊规则: ①if (service is poor) or (food is rancid) then (tip is cheap) ②if (service is good) then (tip is average) ③if (service is excellent) or (food is delicious) then (tip is generous) 三条规则的权重均为 1.

基于MATLAB的模糊控制洗衣机的设与仿真(谷风软件)

基于MATLAB的模糊控制洗衣机的设计与 仿真 卫瑶瑶,王胜红 (南京农业大学工学院,210031) 摘要:根据模糊控制的原理对传统洗衣机进行改造,设计了模糊控制系统。通过MA TLAB仿真,采用取最大隶属度法得到清晰化结果,所得结果与理论计算结果一致。 关键词:模糊控制;洗衣机;MA TLAB Design and Simulation of Fuzzy Control System of Washing Machine Based on MATLAB Wei yaoyao, Wang Shenghong (College of Engineering,Nanjing Agricultural University,210031) Abstract: This paper designed a fuzzy control system for washing machine based on the theory of fuzzy control. This paper conducted the simulation of MATLAB, and took maximum membership degree method to get the results of clarity. Finally, it’s proved that the simulation results is the same with theory calculation. Keywords: fuzzy control; washing machine; MATLAB 自动控制从最早的开环控制起步,然后是反馈控制、最优控制、随机控制,再到自适应控制、自学习控制、自组织控制,一直发展到自动控制的最新阶段——智能控制。智能控制的几个重要分支有:专家系统、模糊控制、神经网络控制等。作为人类思维外壳的自然语言,本身就带有模糊性,这是计算机所不能理解的。模糊控制是以模糊集合理论和模糊逻辑推理为基础,把专家用自然语言表述的知识和控制经验,通过模糊理论转换成数学函数,再用计算机进行处理。传统控制方法对一个系统进行控制时,首先要建立控制系统的数学模型,即描述系统内部物理量(或变量)之间关系的数学表达式,必须得知道系统模型的结构、阶次、参数等。然而在工程实践中人们发现,有些复杂的控制系统,虽然不能建立起数学模型,无法用传统控制方法进行控制,但是凭借丰富的实际操作经验,技术工人却能够通过相应操作得到满意的控制效果【1】。 模糊控制之所以被人们广泛接受,是因为其有以下优点:(1)模糊控制器的设计不依赖于被控对象的精确数学模型;(2)模糊控制易于被操作人员接受;(3)便于用计算机软件实现;(4)鲁棒性和适应性好。 1 洗衣机模糊控制系统的原理 传统洗衣机从控制角度看,实际上是一台按事先设定好的参数进行顺序控制的机器,它不能根据情况和条件的变化来改变参数。而模糊逻辑控制的智能洗衣机,它能够完成除开启电源、放取衣物之外的全部功能,智能洗衣机的核心是单片机控制板,它具有检测和控制

模糊PID控制器的设计与仿真——设计步骤

模糊PID控制器的设计与仿真 设计模糊PID控制器时,首先要将精确量转换为模糊量,并且要把转换后的模糊量映射到模糊控制论域当中,这个过程就是精确量模糊化的过程。模糊化的主要功能就是将输入量精确值转换成为一个模糊变量的值,最终形成一个模糊集合。 本次设计系统的精确量包括以下变量:变化量e,变化量的变化速率ec还有参数整定过程中的输出量△ K P,△ K D,△ K,在设计模糊PID的过程中,需要将这些精确量转换成为模糊论域上的模糊值。本系统的误差与误差变化率的模糊论域与基本论域为:E=[-6,-4,-2,0,2,4,6];Ec=[-6,-4,-2,0,2,4,6] 。 模糊PID控制器的设计选用二维模糊控制器。以给定值的偏差e和偏差 变化ec为输入;△ K P,△ K D,△ K为输出的自适应模糊PID控制器,见图1。 图1模糊PID控制器 (1) 模糊变量选取 输入变量E和EC的模糊化将一定范围(基本论域)的输入变量映射到离散区 间(论域)需要先验知识来确定输入变量的范围。就本系统而言,设置语言变量取 七个,分别为NB, NM NS ZQ PS, PM PB (2) 语言变量及隶属函数 根据控制要求,对各个输入,输出变量作如下划定: e,ec 论域:{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6} △心,△ K D,△ K 论域:{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6} 应用模糊合成推理PID参数的整定算法。第k个采样时间的整定为 K p(k)二K p。:K p(k) , Kdk)二K I。水心),K°(k)二K D。 *D(k). 式中K P0,K|0,K D0为经典PID控制器的初始参数

Matlab模糊控制器的设计以及simulink下对模糊控制器系统的仿真

Matlab模糊控制器的设计以及simulink下对模糊控制器系统的仿真

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

Matlab模糊控制器的设计以及simulink下对模糊控制器系统的仿真 首先,在Matlab的命令窗口(command window)中输入fuzzy,回车就会出来这样一个窗口: 接下来在上述窗口中进行模糊控制器的设计: 1.双输入,单输出:点击Edit----Add Variable---input

2.为E添加隶属度函数,E的论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}, E的模糊集合为{NB,NM,NS,NZ,PZ,PS,PM,PB},Edit—Membership Function edit,如下图所示:

3.为EB添加隶属度函数,EB的论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}, EB的模糊集合为{NB,NM,NS,ZE,PS,PM,PB},Edit—Membership Function edit,如下图所示: 4.为U添加隶属度函数,U的论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}, U的模糊集合为{NB,NM,NS,ZE,PS,PM,PB},Edit—Membership Function edit,如下图所示:

其中E,EB,U均为模糊量。 5.为模糊控制器设计模糊规则,由于E的语言变量有8个,EB的语言变量有7 个,所以模糊控制器的模糊规则总共有8*7=56条,接下来为模糊控制器添加规则:双击untitled,则有下面的表格:

模糊温度控制器的设计与Matlab仿真(DOC)

模糊温度控制器的设计与Matlab仿真 徐鹏 201403026 摘要:针对温度控制系统的时变、滞后等非线性特性及控制比较复杂的问题,提出了一种模糊控制方案以改善系统的控制性能.该方案采用mamdani推理型模糊控制器代替传统的PID控制器,依据模糊控制规则由SCR移相调控晶闸管控制电阻炉电热功率,实现对温度的控制. Matlab仿真结果表明,模糊控制的引入有效地克服了系统的扰动,改善了控制性能,提高了控制质量. 关键词:温度控制器;模糊控制;仿真分析 中图分类号: TP272 文献标志码:A Abstract:For the temperature controlsystem with the nonlinear characters of time-varying and lag and the comp lexity in control,a fuzzy control algorithm is p resented. Thealgorithm adop tsmamdani reasoning fuzzyPID controller to rep lace the traditional PID controller and use the SCR phase-shift thyristor to control the e-lectric resistance furnace power based on the fuzzy control rules to imp lement the temperature control. Matlabsimulation results show that the fuzzy control can effectively overcome the disturbance and imp rove the con-trol performance. Key words: temperature controller; fuzzy control; simulation analysis 0 引言 在工业生产过程中,温度控制是重要环节,控制精度直接影响系统的运行和产品质量. 在传统的温度控制方法中,一般采取双向可控硅装置,并结合简单控制算法(如PID算法) ,使温度控制实现自动调节. 但由于温度控制具有升温单向性、大惯性、大滞后等特点,很难用数学方法建立精确的模型,因此用传统的控制理论和方法很难达到好的控制效果. 鉴于此,本文拟以模糊控制为基础的温度智能控制系统,采用人工智能中的模糊控制技术,用模糊控制器代替传统的PID 控制器,以闭环控制方式实现对温度的自动控制. 1温度控制系统的硬件组成 在该温度控制装置中,由SCR移相调控晶闸管控制电阻炉来实现对温度的控制. 在温控系统中,通过CAN总线将控制站、操作站和通信处理单元连为一体. 温度控制系统的结构简图如图1所示.

matlab下模糊控制器设计步骤

下面将根据模糊控制器设计步骤,一步步利用Matlab工具箱设计模糊控制器。 Matlab模糊控制工具箱为模糊控制器的设计提供了一种非常便捷的途径,通过它我们不需要进行复杂的模糊化、模糊推理及反模糊化运算,只需要设定相应参数,就可以很快得到我们所需要的控制器,而且修改也非常方便。 首先我们在Matlab的命令窗口(command window)中输入fuzzy,回车就会出来这样一个窗口。 下面我们都是在这样一个窗口中进行模糊控制器的设计。

1.确定模糊控制器结构:即根据具体的系统确定输入、输出量。 这里我们可以选取标准的二维控制结构,即输入为误差e和误差变化ec,输出为控制量u。注意这里的变量还都是精确量。相应的模糊量为E,EC和U,我们可以选择增加输入(Add Variable)来实现双入单出控制结构。 2.输入输出变量的模糊化:即把输入输出的精确量转化为对应语言变量的模糊集合。 首先我们要确定描述输入输出变量语言值的模糊子集,如{NB,NM,NS,ZO,PS,PM,PB},并设置输入输出变量的论域,例如我们可以设置误差E(此时为模糊量)、误差变化EC、控制量U的论域均为{-3,-2,-1,0,1,2,3};然后我们为模糊语言变量选取相应的隶属度函数。

在模糊控制工具箱中,我们在Member Function Edit中即可完成这些步骤。首先我们打开Member Function Edit窗口. 然后分别对输入输出变量定义论域范围,添加隶属函数,以E为例,设置论域范围为[-3 3],添加隶属函数的个数为7.

然后根据设计要求分别对这些隶属函数进行修改,包括对应的语言变量,隶属函数类型。

基于MATLAB的温度模糊控制系统的设计

智能控制》课程论文 基于MATLAB的温度模糊控制系统的设计 成绩:任课教师:田志波班级:测控09-2 作者:胡 兵上交时间:2012.11.05 一、温度模糊控制 在工业生产过程中,温度控制是重要环节,控制精度直接影响系统的运行和产品质量。在传统的温度控制方法中,一般采取双向可控硅装置,并结合简单控制算法(如PID算法),使温度控制实现自动调节。但由于温度控制具有升温单向性、大惯性、大滞后等特点,很难用数学方法建立精确的模型,因此用传统的控制理论和方法很难达到好的控制效果。鉴于此,本文拟以模糊控制为基础的温度智能控制系统,采用人工智能中的模糊控制技术,用 模糊控制器代替传统的PID控制器,以闭环控制方式实现对温度的自动控制。 二、方案设计 利用MATLA的模糊控制箱及Simulink内含的功能元件,建立温度箱温度模糊控制器及其系统的模型。 1. 建立模糊控制器 采用温度偏差,即实际测量温度与给定温度之差e及偏差变化率ed作为模糊控制器的输 入变量,输出p为“PW波(脉冲宽度调制)”控制发热电阻的功率,来调节温度箱内温度的升降,形成典型的双输入单输出二维模糊控制器。

运用MATLA中的FIS编辑器,建立温度箱的Mamdan型模糊控制器,如图1所示。温度偏差e、温度偏差变化率ed和输出变量IZ的语言变量E, Ed, P都选择为{NB, NM NS Z, PS, PM PB},其中P和N分别表示正与负,B, M s分别表示大、中、小,z表示0。 图1模糊控制器模型 2. 建立控制决策及隶属函数 模糊控制决策及解模糊方法采用系统默认值,即极大极小合成运算与重心法解模糊。由模糊控制决策公式可求得输出变量的模糊集合为P =(E X Ed ) X R 本文都采用三角隶属函数,各变量的隶属函数如图2所示。其中,图2(a)为E和Ed,隶属 函数图,E和Ed的量化论域为[-6 , 6];图2(b)为P隶属函数图,EQ的量化论域为[-6 , 6]。不同的系统,其模糊集的隶属函数是不同的,要根据实际情况和实践经验而定。

模糊控制器的matlab设计步骤

模糊PID控制器设计和仿真步骤: 第一步:各变量隶属度函数的确定 1、用于PID 参数调整的模糊控制器采用二输入三输出的形式。该控制器是以误差E 和误 差变化率EC 作为输入,PID 控制器的三个参数P、I、D 的修正△KP、△KI、△KD 作为输出,如图1; 2、取输入E 和EC 和输出△KP、△KI、△KD 模糊子集为{NB,NM,NS,ZO,PS,PM,PB}, 其论域为[-6,6],量化等级为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6};如图2 3、在模糊逻辑工具箱的隶属度函数编辑器中,选择输入量E,EC隶属函数为高斯型 (gaussmf),输出△KP、△KI、△KD的隶属函数为三角形(trimf),如图2和3。 图1 图2

图3第二步:根据图4规则建立模糊规则表,如图5: 图4 图5

第三步:设置参数:与方式(And method)为min;或方式(Or method)为max;推理(Implication)为min;合成(Aggregation)为max;去模糊(Defuzzification)为重心平均法(centroid)。第四步:保存该FIS文件,取名为FuzzyPID.fis 第五步:在MA TLAB的M文件编辑器里建立一个名为FuzzyPID.m的文件,其内容为:martrix=readfis(‘Fuzzypid.fis’),并运行。 第六步:打开SIMULINK,新建一个Model,选择一个Subsystem,在其中编辑模块,如图6,并设置模糊化因子KE=KEC=0.01,解模糊因子KP=0.5,KI=KD=0.01,并在Fuzzy Logic Controller模块的Parameters中输入readfis('FuzzyPID.fis'): 图6 第七步:返回到新建的Model中,按照如图7所示建立模糊PID控制器,其中,PID初始值为KP0=20,KI0=1.35,KD0=3.7,传递函数为: 图7 第八步:保存为FuzzyPID.mdl并运行。 第九步:运行结果与初始PID控制器的结果比较,如图8和9: 图8图9

matlab下模糊控制器设计--实用步骤.docx

真理惟一可靠的标准就是永远自相符合。土地是以它的肥沃和收获而被估价的;才能也是土地,不过它生产 的不是粮食,而是真理。如果只能滋生瞑想和幻想的话,即使再大的才能也只是砂地或盐池,那上面连 小草也长不出来的。 下面将根据模糊控制器设计步骤,一步步利用Matlab 工具箱设计模糊控制器。 Matlab 模糊控制工具箱为模糊控制器的设计提供了一种非常便捷的途径,通过它我们不需要进行复杂的模糊化、模糊推理及反模糊化运算,只需要设定相应参 数,就可以很快得到我们所需要的控制器,而且修改也非常方便。 首先我们在Matlab的命令窗口(command window)中输入fuzzy ,回车就会出来这样一个窗口。 下面我们都是在这样一个窗口中进行模糊控制器的设计。 1.确定模糊控制器结构:即根据具体的系统确定输入、输出量。

这里我们可以选取标准的二维控制结构,即输入为误差为控制量 u。注意这里的变量还都是精确量。相应的模糊量为以选择增加输入 (Add Variable) 来实现双入单出控制结构。e 和误差变化ec,输出E, EC 和 U,我们可 2.输入输出变量的模糊化:即把输入输出的精确量转化为对应语言变量的模 糊集合。 首先我们要确定描述输入输出变量语言值的模糊子集,如{NB ,NM ,NS,ZO,PS, PM,PB} ,并设置输入输出变量的论域,例如我们可以设置误差E(此时为模 糊量)、误差变化EC、控制量 U 的论域均为 {-3 , -2 ,-1 ,0, 1, 2,3} ;然后我们为模糊语言变量选取相应的隶属度函数。

在模糊控制工具箱中,我们在先我们打开Member Function Edit Member Function Edit 窗口 . 中即可完成这些步骤。首 然后分别对输入输出变量定义论域范围,添加隶属函数,以 范围为 [-3 3] ,添加隶属函数的个数为7. E 为例,设置论域

相关文档
相关文档 最新文档