模糊控制实验
- 格式:docx
- 大小:320.65 KB
- 文档页数:14
洗衣机模糊控制仿真实验报告一、实验目的本实验旨在通过对洗衣机运行过程的模糊控制仿真实验,帮助学生更好地了解模糊控制的基本原理和实现方法。
二、实验原理洗衣机模糊控制系统主要包括模糊控制器、模糊推理机和输出规则等三个部分。
模糊控制器是模糊系统的核心部分,其主要作用是将输入信号转化为模糊集,并将控制输出信号转化为真实输出信号。
模糊控制器的输入为洗衣机工作状态的一些参数,例如水位、温度等,输出为洗衣机运行状态的一些控制命令,例如加热、搅拌等。
模糊推理机是由一系列规则组成的系统,它负责根据输入的模糊集和一组先验规则,进行模糊推理,得到控制输出信号的模糊集,即模糊控制器的中间变量。
输出规则主要为控制输出信号的模糊集赋值,即将模糊集中各个元素映射到真实输出信号的取值范围内。
三、实验步骤1、建立洗衣机的模糊控制系统模型,包括模糊控制器、模糊推理机和输出规则等。
2、设置洗衣机的运行参数,例如水位、温度等,作为模糊控制器的输入。
3、根据洗衣机的运行状态,制定一组先验规则,作为模糊推理机的输入,并进行模糊推理。
4、根据模糊推理得到的控制输出信号的模糊集,进行输出规则的映射,得到洗衣机的真实控制命令。
5、根据洗衣机的控制命令,模拟洗衣机的工作流程。
6、对洗衣机的工作流程进行仿真实验,并记录实验结果。
四、实验结果分析经过多次实验,得到了洗衣机的模糊控制系统的优化参数,能够实现洗衣机的良好控制。
通过对实验结果的分析,可以发现,模糊控制系统可以有效地调节洗衣机的运行状态,使其在不同的工作状态下保持稳定且高效的运行。
同时,模糊控制系统也具有很强的适应性和鲁棒性,可以自适应地调节参数,应对各种不同的运行环境。
五、实验总结本实验通过模拟洗衣机的工作流程,对模糊控制系统的基本原理和实现方法进行了深入探究,能够有效地帮助学生掌握模糊控制系统的设计和应用方法。
同时,在实验过程中,也需要注意对实验数据和结论的分析和总结,以便更好地优化模糊控制系统的参数和性能,实现最佳控制效果。
一阶倒立摆模糊控制实验报告一、实验目的本实验旨在通过模糊控制方法来控制一阶倒立摆系统,实现摆杆保持竖直的稳定控制。
二、实验原理1. 一阶倒立摆系统一阶倒立摆系统由一个垂直的支撑杆和一个在杆顶端垂直摆动的杆组成。
系统的输入为杆的控制力矩,输出为杆的角度。
系统的动力学方程可以表示为:Iθ''(t) + bθ'(t) + mgl sin(θ(t)) = u(t)其中,I为倒立摆的转动惯量,b为摩擦阻尼系数,θ为倒立摆的角度,m为倒立摆的质量,l为杆的长度,g为重力加速度,u为输入的控制力矩。
2. 模糊控制方法模糊控制方法是一种基于模糊逻辑的控制方法,通过将模糊集合与模糊规则相结合,构建模糊控制器来实现对系统的控制。
在本实验中,可以使用模糊控制器来实现倒立摆系统的稳定控制。
三、实验步骤1. 搭建实验平台,包括倒立摆系统、传感器和执行器。
2. 训练模糊控制器a. 定义模糊集合:根据角度误差和角速度误差定义模糊集合,并确定模糊集合的划分方式。
b. 构建模糊规则:根据经验或系统建模,确定模糊规则。
c. 设计模糊控制器:根据模糊集合和模糊规则,设计模糊控制器,包括模糊推理和模糊解模块。
d. 调整模糊控制器参数:根据系统响应实验,根据控制效果调整模糊控制器参数。
3. 实施模糊控制a. 读取传感器数据:获取倒立摆的角度和角速度数据。
b. 计算控制器输出:根据模糊控制器和传感器数据计算控制力矩的输出。
c. 执行控制器输出:将控制力矩作用在倒立摆上。
4. 监测系统响应:实时监测倒立摆的角度和角速度,判断控制效果。
5. 调整模糊控制器参数:根据实验监测结果,调整模糊控制器参数,以提高控制效果。
四、实验结果分析通过实验,我们可以观察到倒立摆系统在模糊控制下的稳定控制效果。
通过实时监测倒立摆的角度和角速度,可以验证控制器的性能。
实验结果可以通过绘制控制力矩输入和倒立摆角度响应曲线,以及观察系统的稳态误差来分析。
1假设一个双输入/单输出系统,输入X∈[-5,5]和Y ∈[-10,10]模糊化成三级:负、零、正,输出Z ∈[-5,5]模糊化成五级:负大、负小、零、正小、正大。
模糊规则表如下所示。
适当选择隶属度函数后,设计一个基于Mamdani模型的模糊推理系统,绘制出输入/输出曲线,并计算当X和Y分别为-3和5以及-2和-7时输出Z的大小。
图1:输入变量X范围及隶属度函数曲线
图2:输入变量Y范围及隶属度函数曲线
图3:输出变量Z范围及隶属度函数曲线
图4:输入输出变量三维曲面图
图5:输入变量X=-3,Y=5时输出变量Z值
图6:输入变量X=-5,Y=-9时输出变量Z 值
2.查找相关文献,设计能跟踪给定输入的模糊控制器,假设系统模型如下:
其中K=30, T1=10, T2=40, Td=2。
(用simulink 搭建系统,对系统进行仿真,给
出系统的阶跃响应曲线)
图7:模糊控制经验规则
)
1)(1()(21s T s T Ke s G s
T d ++=
-
图8:E和EC的范围及隶属度函数曲线
图9:输出变量u的范围及隶属度函数
图10:模糊控制规则
图10:模糊控制规则观察表
图11:输入输出变量三维曲面图
图12:simulink仿真电路图
其中,经过多次试探,当K1=2.4,K2=0.65,K3=1.15时,仿真效果较好。
图13:系统单位阶跃响应输出曲线图。
模糊控制实验报告本实验通过使用模糊控制器来控制直流电机的转速。
模糊控制是一种基于模糊推理的控制方法,该方法可以处理一些无法准确数学建模的系统控制。
模糊控制的输入和输出都是模糊变量,这样可以考虑到系统存在的不确定性和模糊性。
实验装置包括模糊控制器、直流电机、转速测量装置、实验板等。
模糊控制器由模糊推理机、偏差和变化率输入模糊化模块、输出反模糊化模块、规则库组成。
实验板可通过控制开关选择转速和方向。
在实验中,通过设置转速值和方向,记录电机的真实转速和输出控制信号,来验证模糊控制器的控制效果。
通过不同的控制变量和规则库来对比不同的控制方案。
实验结果表明,模糊控制器对于直流电机转速的控制具有较好的效果。
当控制变量为偏差和变化率时,规则库中的设定合理,输出控制信号的变化平稳,电机转速较为稳定。
当增加控制变量或修改规则库时,控制效果也发生了变化。
同时,实验还验证了模糊控制的重要性和优越性,可以解决一些无法准确建模的系统控制问题。
在实验中,还需要注意一些实验细节,例如校准直流电机转速传感器的准确度,保证实验板电路的正常工作和实验数据的准确性,减少误差的影响。
总之,本实验通过实际操作验证了模糊控制器在直流电机转速控制中的应用,对于学习模糊控制的控制方法和实验操作具有很好的参考意义。
同时,本实验也展示了模糊控制对于处理模糊问题的效果。
在直流电机转速控制中,存在许多因素的影响导致控制过程不确定和模糊,例如负载的变化、外部干扰的存在等等。
而模糊控制可以将这些不确定因素转化为模糊变量进行处理,从而提高控制精度和鲁棒性。
此外,本实验也强调了规则库的重要性。
规则库是模糊控制中很关键的一部分,其中包含了专家经验和数学模型的映射关系。
规则库中的设定需要充分考虑被控对象的特性,才能够保证模糊控制器的控制效果。
而实验中不同的规则库设计对于控制效果的影响也展现了模糊控制的灵活性和可定制性。
最后,本实验的数据记录和实验结果分析也为后续工程实际应用提供了很好的参考。
模糊控制实例及simulink仿真实验报告
一、背景介绍
模糊控制是一种基于模糊逻辑的控制方法,其优点在于可以很好地处理复杂的非线性和不确定性系统,而且不需要精确的数学模型和计算,能够快速实现控制的优化。
二、实例介绍
本次实例采用一个双轮小车为对象,实现小车在平面上向指定位置运动的控制。
通过小车的速度和转向角两个输入变量,输出一个模糊控制信号,控制小车前进和转向。
三、实验过程
1. 建立模糊控制系统模型
打开Simulink软件,建立一个新模型,模型中包括输入变量、输出变量和控制器。
2. 设计输入变量和输出变量
(1)设计输入变量
本实例选择小车速度和转向角两个输入变量,每个变量包含三个模糊集合,速度变量分别为“慢速”、“中速”、“快速”,转向角变量分别为“左转”、“直行”、“右转”。
(2)设计输出变量
模糊控制信号输出变量选择小车的前进和转向,每个变量包含三个模糊集合,分别为“慢行”、“中行”、“快行”、“左转”、“直行”、“右转”。
3. 建立控制器
建立模糊控制器,包含输入变量和输出变量的关系,建立控制规则库和模糊关系。
4. 仿真实验
在Simulink下进行仿真实验,调整控制器参数,观察小车运动状态,对比试验。
四、实验结果
经过多次试验和调整,得到最优的小车模糊控制参数,可以实现小车的平滑运动
和准确转向。
五、实验结论
本实验通过建立一个小车的模糊控制系统,可以有效实现小车的平滑运动和准确转向,控制效果优于传统的PID控制方法。
模糊控制可以很好地处理非线性、不确定性和模糊性的系统,适合许多需要快速优化控制的场合。
基于单片机模糊PID控制算法实验设计基于单片机的模糊PID控制算法是一种将模糊逻辑和PID控制相结合的控制方法。
模糊PID控制算法在许多工程和科学领域中具有广泛的应用,用于控制各种物理系统,例如机械系统、电子系统和化学系统等。
本文将介绍基于单片机的模糊PID控制算法的实验设计。
一、实验目的本实验旨在通过使用单片机实现模糊PID控制算法,控制一个虚拟物理系统的运动。
通过这个实验,我们可以了解模糊PID控制算法的原理和实现过程,并通过实验结果对其性能进行评估。
二、实验原理模糊PID控制算法是将模糊逻辑和传统的PID控制算法相结合而得到的一种控制方法。
PID控制算法是一种反馈控制方法,它通过测量和计算系统的误差,调整输出控制量,使得系统的运行状态能够接近期望状态。
模糊PID控制算法的原理是,在PID控制算法的基础上,使用模糊逻辑来处理模糊因素,使得控制系统能够对模糊因素有更好的适应性和鲁棒性。
模糊逻辑是对不确定性和模糊性进行建模和处理的一种方法,它能够通过模糊集合和模糊规则来描述和处理模糊因素。
在模糊PID控制算法中,首先使用一组模糊集合来表示误差和变化率的程度,然后建立一组模糊规则,通过模糊推理得到模糊控制量,最后将模糊控制量经过模糊解模糊化得到实际控制量。
这样,通过模糊逻辑的处理,能够使得控制系统对于模糊因素有更好的适应性和鲁棒性。
三、实验步骤1.设计一个虚拟物理系统,可以使用一个电机控制器和一个电机模拟器来模拟物理系统的运动。
2.根据虚拟物理系统的特性,确定控制系统的输入和输出变量,例如位置和速度。
3.设计一组模糊集合来表示位置和速度的程度,例如“远”、“近”、“大”、“小”等。
4.建立一组模糊规则,通过模糊推理得到模糊控制量。
5.设计一个PID控制算法,用于计算系统的误差和调整输出控制量。
6.将模糊控制量和PID控制量相结合,得到最终的实际控制量。
7.使用单片机编程语言,例如C语言,实现上述的模糊PID控制算法。
1假设一个双输入/单输出系统,输入X∈[-5,5]和Y ∈[-10,10]模糊化成三级:负、零、正,输出Z ∈[-5,5]模糊化成五级:负大、负小、零、正小、正大。
模糊规则表如下所示。
适当选择隶属度函数后,设计一个基于Mamdani模型的模糊推理系统,绘制出输入/输出曲线,并计算当X和Y分别为-3和5以及-2和-7时输出Z的大小。
图1:输入变量X范围及隶属度函数曲线
图2:输入变量Y范围及隶属度函数曲线
图3:输出变量Z范围及隶属度函数曲线
图4:输入输出变量三维曲面图
图5:输入变量X=-3,Y=5时输出变量Z值
图6:输入变量X=-5,Y=-9时输出变量Z 值
2.查找相关文献,设计能跟踪给定输入的模糊控制器,假设系统模型如下:
其中K=30, T1=10, T2=40, Td=2。
(用simulink 搭建系统,对系统进行仿真,给
出系统的阶跃响应曲线)
图7:模糊控制经验规则
)
1)(1()(21s T s T Ke s G s
T d ++=
-
图8:E和EC的范围及隶属度函数曲线
图9:输出变量u的范围及隶属度函数
图10:模糊控制规则
图10:模糊控制规则观察表
图11:输入输出变量三维曲面图
图12:simulink仿真电路图
其中,经过多次试探,当K1=2.4,K2=0.65,K3=1.15时,仿真效果较好。
图13:系统单位阶跃响应输出曲线图。
智能控制课程作业模糊控制理论实验报告题目洗衣机系统模糊控制建模与仿真班级姓名学号2014年3月13日一.实验目的通过设计洗衣机洗涤时间的模糊控制系统,理解模糊控制的基本原理。
掌握模糊控制系统MATLAB建模与仿真的方法。
二.实验原理洗衣机洗涤时间的模糊控制是一个开环模糊决策过程,其基本原理框图如图1-1所示。
它的核心部分是模糊控制器,模糊控制器的控制律由计算机程序来实现。
图1-1 系统原理框图系统选用两输入单输出的模糊控制器。
控制器的输入为衣物的污泥量x和油脂量y,输出为洗涤时间z。
将污泥分为3个模糊集:SD(污泥少),MD(污泥中),LD(污泥多);将油脂分为3个模糊集:NG(油脂少),MG(油脂中),LG(油脂多);将洗涤时间分为5个模糊集:VS(很短),S(短),M(中等),L(长),VL很长。
首先,定义输入x,y变量,输出z变量的隶属函数。
根据“污泥越多,油脂越多,洗涤时间越长”;“污泥适中,油脂适中,洗涤时间适中”;“污泥越少,油脂越少,洗涤时间越短”的规律建立洗衣机模糊规则表。
然后,根据模糊规则进行模糊推理并得到洗涤时间的模糊集合。
最终,利用重心法对模糊系统反模糊化,将洗涤时间的推理结果转化成精确值z输出。
三.实验内容利用MATLAB软件实现上述洗衣机系统模糊控制的建模与仿真。
1.建立x,y,z的隶属函数洗衣机系统变量x,y,z的隶属函数分段表达式,如式1-1所示。
()()()()()()()()()()()()()()()()SD MD LD NG MG LGVS 50/50050/50050100/505010050/505010050/50050/5005011100/505010050/505010010/10010Sx x x x x x x x x x x y y y y y y y y y y y z z z z μμμμμμμμμμμ=-≤≤⎧⎪≤≤⎧⎪⎪==⎨⎨-<≤⎪⎩⎪⎪=-<≤⎩=-≤≤⎧⎪≤≤⎧⎪⎪==-⎨⎨-<≤⎪⎩⎪⎪=-<≤⎩=-≤≤=污泥油脂洗涤时间()()()()()()()()()VL /1001025/15102510/15102540/15254025/15254060/20406040/204060M L z z z z z z z z z z z z z z z z z μμμ⎧⎪≤≤⎪⎧⎪=⎨⎪-<≤⎪⎩⎪⎪-≤≤⎧⎪⎪=⎨⎨-<≤⎪⎪⎩⎪-≤≤⎧⎪⎪=⎨⎪-<≤⎪⎩⎪⎪=-≤≤⎩在MATLAB 中,定义本系统为一个Mamdani (普通)型模糊控制系统,命名为a 。
模糊控制MALTAB系统仿真实验报告可编程控制器智能控制技术仿真实验题目: 模糊控制系统MATLAB仿真实验报告院系名称:电气工程学院专业班级:电气学生姓名:学号:模糊控制系统MATLAB仿真实验报告一、实验目的 1、通过本次设计,了解模糊控制的基本原理、模糊模型的建立和模糊控制系统的设计过程。
2、熟悉在MATLAB下建立模糊控制器的方法,并能利用MATLAB对给定参数的模糊控制系统予以仿真二、实验项目1、实验题目本设计要求设计一个采用模糊控制的加热炉温度控制系统。
被控对象为一热处理工艺过程中的加热炉,加热设备为三相交流调压供电装置,输入控制信号电压为0~5V,输出相电压0~220V,输出最大功率180KW,炉温变化室温~625℃,电加热装置如图所示:图1-1电加热装置示意图3、实验数据:本实验输入变量为偏差e和偏差的变化ec,输出变量为控制电压U,变量模糊集量化论域均为[-6 6]采用的常用的三角形隶属函数。
控制规则表: U 输入变量ec NB NM NS ZO PS PM PB 输入变量 e NB NB NB NB NB NM NS ZO NM NB NB M, M, MS ZO ZO NS NV NM NM NS ZO ZO PS ZO NM NS NS ZO PS PS PM PS NS ZO ZO PS PM PM PB PM ZO ZO PS PM PM PB PB PB ZO PS PM PB PB PB PB 三、实验步骤 1、建立系统仿真图:在MATLAB主窗口单机工具栏中的Simulink快捷图标弹出“Simulink Library Browser”窗口,单击“Create a new model”快捷图标弹出模型编辑窗口。
依次将Signal Generator(信号源)、Subtract(减运算)、Gain(增益)、Derivative(微分)、Mux(合成)、Fuzzy Logic Controller(模糊逻辑控制器)、TransferFcn(传递函数)、Saturation(限幅)、Memory(存储器)、Scope(显示器)模块拖入窗口并连接成系统仿真图如图1-2 图1-2 系统仿真图 2、在模糊推理系统编辑器中设置变量:在MATLAB 命令窗口输入fuzzy并按回车键,启动FISEditor(模糊推理系统编辑器)。
第1篇一、实验名称:时域控制算法实验二、实验目的1. 理解时域控制算法的基本原理和设计方法。
2. 掌握常见时域控制算法(如PID控制、模糊控制等)的原理和实现。
3. 通过实验验证不同控制算法的性能,分析其优缺点。
4. 学会使用MATLAB等工具进行时域控制算法的仿真和分析。
三、实验原理时域控制算法是一种直接在系统的时间域内进行控制的算法,主要包括PID控制、模糊控制、自适应控制等。
本实验主要针对PID控制和模糊控制进行研究和分析。
四、实验内容1. PID控制(1)原理:PID控制是一种线性控制算法,其控制律为:$$u(t) = K_p e(t) + K_i \int_{0}^{t} e(\tau) d\tau + K_d\frac{de(t)}{dt}$$其中,$u(t)$为控制输出,$e(t)$为误差,$K_p$、$K_i$、$K_d$分别为比例、积分和微分系数。
(2)实验步骤:a. 在MATLAB中搭建被控对象模型。
b. 设计PID控制器参数,包括比例系数、积分系数和微分系数。
c. 在MATLAB中实现PID控制器,并添加到被控对象模型中。
d. 仿真控制系统,观察控制效果。
2. 模糊控制(1)原理:模糊控制是一种基于模糊逻辑的控制算法,其控制律为:$$u = F(e, e')$$其中,$u$为控制输出,$e$和$e'$分别为误差和误差变化率,$F$为模糊推理规则。
(2)实验步骤:a. 在MATLAB中搭建被控对象模型。
b. 设计模糊控制器参数,包括隶属度函数、模糊推理规则和去模糊化方法。
c. 在MATLAB中实现模糊控制器,并添加到被控对象模型中。
d. 仿真控制系统,观察控制效果。
五、实验结果与分析1. PID控制(1)实验结果:通过调整PID控制器参数,可以使系统达到较好的控制效果。
(2)分析:PID控制算法简单易实现,适用于各种被控对象。
但其参数调整较为复杂,且对被控对象的模型要求较高。
编号:实验一普通PI控制方法的设计与实现一、实验目的1. 掌握数字PI及其算法的实现2. 熟悉在在keil环境下进行单片机程序的设计3. 熟悉仿真软件protues的使用二、实验设备及条件1. 计算机系统2. 编程软件keil4和仿真软件protues7.8三、实验原理及其实验步骤(1) PID算法的数字化实现在模拟系统中,PID算法的表达式为u(t)=K P[e(t)+1T I∫e(t)dt+T Dde(t)dt]式中u(t):调节器的输出信号;e(t):调节器的偏差信号,它等于测量值与给定值之差;Kp:调节器的比例系数;T I:调节器的积分时间;TD:调节器的微分时间;离散化的PID为:u(k)=K P[e(k)+TT I∑e(j)kj=0+T DT(e(k)−e(k−1))]Δt=T:采样周期,必须使T足够少,才能保证系统有一定的精度;E(k):第K次采样时的偏差值;E(k-1) :第K-1次采样时的偏差值;K:采样序号,K=0,1,2……;P(k-1):第K次采样时调节器的输出;上式计算复杂,经过化简为:u(k)=u(k−1)+K P[e(k)−e(k−1)]+K I e(k)+K D[e(k)−2e(k−1)+e(k −2)]式中:K I=K P TT I为积分系数K D=K P T DT为微分系数要计算第K次输出值u(k),只需要知道u(k-1),e(k),E(k-1),e(k-2)即可。
上式也称为位置型PID的位置控制算法。
在很多控制系统中,由于执行机构是采用布进电机进行控制,所以只要给一个增量信号即可。
因此得到增量型PID的位置控制算法。
∆u=K P[e(k)−e(k−1)]+K I e(k)+K D[e(k)−2e(k−1)+e(k−2)] (2) 控制系统的结构框图整个系统的控制框图如下所示:图1 PID控制系统结构框图在本次设计中,经过计算,被控对象的传递函数是:G(s)=1 (SCR)2+3SCR+1其中:C=10uf,R=20K;带入上式后可得:G(s)=10.04S2+0.6S+1显然是一个二阶系统。
实验三模糊控制实验班别:自动化081 姓名:覃健学号:200800301031一实验过程1 对模糊控制模块建立模糊规则的步骤(1)在Command window 命令窗口中输入fuzzy,按enter弹出模糊规则窗口;(2)加入一个输入,在弹出的窗口中选择Edit→Add V ariable→input;(3)在name中更改input1为“e”,input2为“ec”,output为“u”;(4)双击e对e的设置:a, 选择Edit→Add MFs→numbers of MFs 中选择4;b,在range和display range中设置隶属函数图的取值范围;c,更改mf1~mf7的参数,分别命名为“NB”、“NM”、“NS”、“Z”、“PS”、“PM”、“PB”,并设置三角形的顶点值,其中'NB'的类型为'zmf','PB'为'smf'其他的都为'trimf',结果如下图所示:(5)重复步骤(4)对ec、u进行设置,结果如下图所示:(6)双击mamdani,设置49条Rules命令语句,结果如下图所示:(7)在Defuzzification中选择mom;(8)最后完成模糊规则的建立如下图所示,然后选择file→export→to workspace,保存到工作路径中;2simulink仿真(1)打开simulink模块库浏览器窗口,然后选择菜单file→new→model,新建空白的模型窗口;我们所需要画的模块框图,框图如下所示,按下图在simulink模块库中查找我们所需的模块,拉到模型窗口中,然后连接各个模块,画好图形。
(2)画好图形后,设定载入模糊控制模块的模糊规则:a,双击模糊控制模块,输入文件名为之前设计好的模糊规则fuzza;b,右键选择look under mask,在弹出的窗口中双击模糊控制木块,在弹出的选择框中输入fuzza;然后就可以进行仿真。
《模糊控制》课程实验报告学院:___________________专业:___________________班级:___________________学号:___________________姓名:___________________同组:___________________成绩:___________________指导教师:_______________提交日期:_______________批改日期:_______________存档日期:_______________Harbi n In stitute of Tech no logy2005.1一、实验目的利用Matlab软件实现模糊控制系统仿真实验,了解模糊控制的查询表方法和在线推理方法的基本原理及实现过程,并比较模糊控制和传统PID控制的性能,得出结论。
二、实验要求设计一个二维模糊控制器分别控制一个一阶被控对象和二阶被控对象。
先用模糊控制器进行控制,然后改变控制对象参数的大小,观察模糊控制的鲁棒性。
为了进行对比,再设计PID控制器,同样改变控制对象参数的大小,观察PID 控制的鲁棒性。
三、实验步骤叙述查询表式模糊控制系统仿真及在线推理模糊控制的仿真的主要步骤。
四、实验内容(一)查询表式模糊控制系统仿真实验11、一阶对象Gi(s) 米用查询表式方法进行仿真实验,自己选定Ke,Ts + 1Ku,Kec的值,通过仿真实验观察它们各自对控制性能的影响。
从而确定一组较好的参数值并填入表中。
然后按下表中给出的数值调整对象参数并观察输出响应曲线,将实验结果填入下表。
控制参数:Ke二Ku二Kec二2、给定对象参数T1二2,通过调整两组控制参数Ke, Ku, Kec 使其得到较 好的响 应 曲 线 , 将 结 果 填 入 下 表 中 。
(二)给定二阶对象G 2 (s ): 仃2+1皿+1)1、采用在线模糊推理方法进行仿真实验,自己选定对象参数,调整控制参数Ke ,Ku ,Kec ,得到较好的响应曲线,并把实验结果填入下表。
文件20《模糊控制》课程实验教学设计方法李士勇教授Harbin Institute of Technology2005.11文件20《模糊控制》课程实验教学设计方法一、问题的提出模糊控制课程作为黑龙江省精品课程,是由哈工大航天学院控制科学与工程系面向自动化专业开设的一门专业课,在自动化专业课程体系中,占有重要地位。
模糊控制教学,在形式上分为理论课教学和实验课教学,二者是一个有机的整体。
内容上它们既有联系,又有差别;教学上它们既一致,又各有侧重点;理论与实践上它们相辅相成。
然而,伴随着精品课程建设的不断深入,素质教育理念的确立,原有模糊控制课程的教学,无论是理论教学,还是实验教学都明显地缺少科学素质教育的核心内容之一——科学方法教育的支持。
素质教育泛指对学生各方面修养、能力的综合培养;科学素质教育是指对学生发现问题、分析问题、解决问题以及知识更新能力的综合培养。
模式泛指可以使人模仿的标准样式、某种规范的结构或者框架。
方法论教育有两个层次。
一个是一般的、共性的、概括性的方法论教育,即哲学方法教育;另一个是特殊的、个性的、具体的方法论教育,如科学方法,思维方法和工作方法等。
这两个层次的方法统一于辩证法、认识论和方法论,它们之间既相互区别、又相互联系、相互包含,并且还会在一定条件下相互转换。
本文所指科学方法专指具体的逻辑思维方法、创造性方法、研究方法和科学研究成果组织与表达方法(即写作方法)。
本文所指实验设计是指在正式进行科学实验之前,实验者根据一定的目的和要求,运用相关的科学知识、实验原理,科学方法对实验过程中的材料、手段、方法、步骤和策略等全部要素进行定制,以获得优化实验方案的过程。
科学素质教育模式下的理论教学设计应该是原有理论教学设计再加上科学方法的教学设计;而由于实验教学设计的核心内容是实验设计,所以实验教学设计应该是在原有实验设计基础上再加上科学方法的教学设计,并按一定的原则和方式对其进行重新组织。
模糊控制实验报告1.引言随着科技的不断发展,模糊控制理论在控制系统中的应用越来越广泛。
模糊控制通过将精确的数学模型转化为模糊的规则,可以更好地适应复杂、非线性的控制系统。
本实验旨在通过设计一个模糊控制系统来实现对一个简单的水温控制过程的控制,以验证模糊控制在实际系统中的有效性。
2.实验原理本实验将一个简化的水温控制过程作为被控对象,控制目标是使得水温保持在一个设定的温度范围内。
水温的变化是由水流量和加热功率两个因素决定的。
因此,控制系统的输入变量为水流量、加热功率,输出变量为水温。
通过模糊控制器根据当前的水温及其变化率来调节水流量和加热功率,从而实现对水温的控制。
模糊控制器的输入变量为当前的水温和水温变化率,输出变量为水流量和加热功率的控制信号。
通过设定一系列模糊规则,模糊控制器可以根据当前的输入变量来决定输出变量的值,并调整其大小以实现对水温的精确控制。
3.实验步骤1)设定水温的设定值及其变化率,作为模糊控制器的输入变量。
2)使用模糊推理方法,通过设定一系列模糊规则,将输入变量映射到输出变量。
3)根据输出变量的值,调节水流量和加热功率的控制信号。
4)监测水温的变化,根据测量结果对模糊控制器进行调整,以提高控制的精度。
5)重复步骤3和4,直到水温稳定在设定的范围内。
4.实验结果经过多次实验,我们成功地设计出了一个能够稳定控制水温的模糊控制系统。
在不同的设定值和变化率下,模糊控制器都能够根据当前的输入变量来自适应地调节输出变量的值,使水温保持在设定的范围内。
通过对实验数据的分析,我们发现模糊控制系统具有较好的动态性能和鲁棒性。
在水温变化较快的情况下,模糊控制器能够及时地调整输出变量的值,使水温能够迅速回到设定的范围内。
而在水温变化较慢的情况下,模糊控制器能够稳定地控制输出变量的值,使水温能够保持在设定的范围内。
对比传统的PID控制器,我们发现模糊控制系统在对非线性系统和难以建模的系统进行控制方面具有明显的优势。
实验一熟悉模糊工具箱一、目的和要求1.目的(1)通过本次实验,进一步了解模糊控制的基本原理、模糊模型的建立和模糊控制器的设计过程。
(2)掌握MATLAB模糊逻辑工具箱的图形用户界面设计模糊控制器的过程。
2.要求(1)充分理解实验内容,并独立完成实验报告。
(2)实验报告要求:实验题目、实验具体内容、结果分析、收获或不足。
二、实验内容1、利用matlab中的模糊逻辑工具箱提供的图形用户界面(GUI)工具设计一个两输入、一输出的模糊控制器,控制器的要求如下:(1)设模糊控制器的输入变量为:误差E和误差变化EC,输出量为U。
(2)隶属度函数:◆隶属度函数均为三角函数◆E、EC和U的模糊语言变量集均为{NB,NM,NS,ZO,PS,PM,PB}◆E和EC论域为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}◆U的论域为{-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7}(3)控制规则表如下:表1 模糊控制表三.实验步骤模糊逻辑工具箱提供的图形用户界面(GUI)工具有五个:模糊推理系统(FIS)编辑器;隶属函数编辑器;模糊规则编辑器;模糊规则观察器;输出曲面观察器。
1.模糊控制器结构设计FIS处理系统有多少个输入变量,输出变量,名称是什么,模糊算子“与”(min,prod乘积,custom自定义),“或”(max大,probor 概率统计方法,custom),推理方法(min,prod,custom),聚类方法(max,probor,sum,custom),解模糊的方法(centroid 质心法,bisector中位线法,middle of maximum,largest of maximum,smallest of maximum)。
Matlab的FIS界面如图3所示。
图3 模糊推理系统(FIS)界面2.隶属函数编辑器:确定各个变量的论域和显示范围(左下角编辑区内),如图4所示。
实验报告课程名称智能控制学院自动化学院班级姓名学号日期2019.4.9基于mamdani 型模糊控制器线性系统的位置跟踪一、实验目的1.熟悉mamdani 模糊控制器的设计原理;2.掌握模糊控制器的设计步骤;3.熟悉模糊控制规则对控制系统效果的影响 ;4.熟悉模糊控制器设计的Matlab 命令;5.掌握用MATLAB 实现模糊控制系统仿真的方法。
二、设备及条件 计算机系统Matlab 仿真软件三、实验原理根据跟踪误差及其变化率,设计模糊控制器使得跟踪误差趋近于零。
四、设计要求 已知某一线性系统2400500s s+,根据误差及其变化率来设计模糊控制器,使得闭环系统的输出跟踪正弦信号0.5sin(10)t ,已知:误差及其变化率的范围初步定为[]33-,要求分为7个模糊集; 输出的范围初步定为[]4.5 4.5-,要求分为9个模糊集;设计隶属度函数误差变化划分表,控制电压变化划分表和模糊控制规则表,基于MATLAB 实现该控制器,并对控制效果进行仿真,根据仿真结果对模糊控制规则、控制信号范围、误差及其变化率进行调整。
五、实验环境I Simulink 介绍1.1 Simulink 简介Simulink 是MATLAB 中的一种可视化仿真工具, 是一种基于MATLAB 的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。
1.2 Simulink 优点Simulink 提供一个动态系统建模、仿真和综合分析的集成环境。
在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。
对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink 提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。
II模糊控制工具箱介绍2.1 模糊控制工具箱简介MATLAB模糊控制工具箱为模糊控制器的设计提供了一种非常便捷的途径,通过它我们不需要进行复杂的模糊化、模糊推理及反模糊化运算,只需要设定相应参数,就可以很快得到我们所需要的控制器,而且修改也非常方便。
中南大学
模糊控制课程实验报告
学生姓名:彭雄威_____________ 指导教师: ________________ m _______ 学院:信息科学与工程学院
学号:114611167 ______________
实验一:
本系统设计基于MATLAB图形模糊推理系统,设计步骤如下:打开MATLAB,输入指令fuzzy,打开模糊逻辑工具箱的图形用户界面窗口,新建一个Mamdani模糊推理系统。
(1) 增加一个输入变量,将输入变量命名为E、Ec,将输出变量命名U。
这样就建立了一个两输入单输出的模糊推理系统。
如图1.1所示。
图1.1增加一个输入变量
(2) 设计模糊化模块:设计隶属度函数论域范围
图3.2设计水位误差E模块
3.3设计水位误差EC模块
图3.4设计水位输出U模块
(4)模糊控制器的规则设计
le Editor: fuzzf
(5)通过观察器观察规则情况
在菜单view中的rules和surface选项分别对应得是规则观测器和曲而观测器。
123 4567891011121314151617181920212223242526272829”
Input: 20】Plot points: ioi Move: [ left 11 rg ] |down] ( up ]
Opened system tuzzf, 49 rules| 5 Close |
图3.7规则观测器
图3.6曲面观测器(6)保存编辑好的FIS文件
实验二
利用MATLAB软件的M文件编辑器和实验一所生成的fuzzf.FIS文件,在M 文件编辑器中输入:a=readfis('fuzzf');
evalfis([・0.5广0.07;-0.5,0;・0.5,0.07; 0,・0.07;0,0;0,0.07;0.5广0.07;0.5,0;0.5,0.07],a)
便可得fuzzf.FIS文件的模糊控制査询表,其中的数据在水位误差E的论域为[・ 1 1], 误差变化EC的论域为[.0.1 0.1]内可以任意取值。
a=readfis(' fuzzf')
a =
name:' fuzzf'
type: 'mamdani'
andMethod: 'min'
orMethod: 'max'
defuzzMethod: 'centroid'
impMethod: 'min'
aggMethod: 'max'
input: [1x2 struct]
output: [lxl struct]
rule: [1x5 struct]
a=readfis(' fuzzf'); evalfis([-0.5,-0.07;-0.5,0;-0.5,0.07;0,-0.07;0,0;0,0.07;0.5,-0.07;0.5,0;0.5,0.07],a)
ans =
-0.2000
-0.4444
-0.4667
0.1363
-0.0014
-0.2271
0.4000
0.4412
0.1333
实验三
利用MATLAB软件的M文件编辑器(也可选择C语言)完成模糊控制查询表的计算。
注意:全部工作都由程序实现,不利用FIS文件,不使用Fuzzy I具箱,包括模糊关系矩阵的求取及模糊推理、模糊判决。
表控制量的赋值表
状6 m l *z %*n r<o O S O T S O S O O .o rn .000000o o o o o o o o o o o o o m o z o T Z I lr n m % 咨s o m .E o o o o o o o o o o o o o o o m .o o m .o z .o 」l<.o O T Z .O m o O
o l *8%%H oo o z .O T Z o z o o o o o o d o O O O O O O
T 9.O T O O O O O o o o o o o z o z o I Z o m o T o o o o o o o o o o rn .o s O T Z O Z .O o o o o o o o o rH o 寸o z o o J
forjjj=l:13 %偏差率EC的模糊值控制
for ii=l:8 %偏差E的模糊规则控制
forjj=l:7 %偏差变化率EC的模糊规则控制
A_rulelist = rulelist(iijj); % 査模糊规则表
%******计算C1A************* A = E(ii,:); %取友
C_A = U(A_rulelist,:); %取Ci for i=l:13 %求口人
for j=l:13
if(A(i)>C_A(l,j))
Ra(iJ)= C_A(1J); else
Ra(iJ) = A(i);
end
end
end
AA = zeros(l,13); %取AA=A' 如AA=[1,0,0,0,0,0,0,0,0,0,0,0,0]; %AA(l,iii)
= E(iijii);
AA(lJii)=l;
for i=l:13 %先取小
forj=l:13
if(AA(j) > Ra(j,i))
A_qux(j,i) = Ra(jJ);
else
A_qux(jJ) = AA(j);
end
end
end
for i=l:13 %再取大…求和CiA
max = A_qux(l,i);
forj=l:13
if(max <A_qux(j,i)) max = A_qux(j,i);
end
end
CiA(i) = max;
end
%********CiA 计算完毕********* %*******计算
GB*************B = EC(jj/); %取日 ???
C_B = U(A_rulelist/); %取Ci ??? for i=l:13 %求口日
forj=l:13
Rb(iJ) = C_B(l,j);
else
Rb(Lj) =
end
end
end
BB = zeros(l,13); %取BB=B* 如BB司1,0,0,0,0,0,0,0,0,0,0,0,0];
%BB(l,jjj) = EC(jj,jjj);
fori=l:13 % 先取小
forj=l:13
if(BB(j) >Rb(jJ»
B_qux(j,i) = Rb(jJ);
else
B_qux(j,i) = BB{j);
end
end
end
fori=l:13 %再取大,,,求和CiA max = B_qux(lJ);
forj=l:13
if(max <B_qux(j,i))
max = B_qux(j,i);
end
end
CiB(i) = max;
end
%****♦*♦计算CiB,完毕****
%*******计算CT=CiA,交ciB»********
for i=l:13
ifCiA(i) >CiB(i)
Ci(i) = CiB(i);
else
Ci(i)= CiA(i);
end
end
%****♦*♦计算CT完毕♦*♦*♦*♦*****
C((ii-l)*7+jj,:) = Ci; % 将Ci 存到数组C 中,C 是56*13 的数组end
end
%根据式ui=c=cr并CZ并 (3)
for i=l:13
max = C(1J);
for j=l:56
if(max < C(j,i))
max = C(j,i);
end
end
Ui(i) = max;
end
%用重心法进行解模糊运算,并映射为实际的控制量sum_fenz = 0;
sumfenm = 0;
for i=l:13
sumfenz = sumfenz + (i-7)*Ui(i); sum_fenm = sum_fenm + Ui(i);
end
core = sumfenz/sumfenm;
U_control(iiijjj) = core;
end
end
U_control = round(U_controL* 10000)/10000; % 对控制量保留小数点后两位U_control 计算结果:
U control =
实验四
控制系统仿真实验。
利用MATLAB的SIMULINK设计一个控制系统,在库中找到所需的各模块,连接各模块,启动仿真,显示输出曲线,观察控制性能,不理想时适当修改有关参数或控制规则,获得满意的控制效果。
(对象采用二阶以上)
被控对象模型为:
?+ 55+3
simulink结构图如下:
得到如下曲线:。