MATLAB课程设计

发布 2022-10-01 01:21:28 阅读 3607

海南大学本科生 2010—2011学年度第2学期。

课程考查**。

学院(中心、所): 信息科学技术学院专业: 电子信息工程。

研究方向班级 09理科实验班。

学生姓名周游学生证号 20090411310067

课程名称matlab

**题目matlab在控制系统**中的应用。

任课老师杜锋

以上由学生填写)

教师评阅:

阅卷教师(签名年月日。

matlab在控制系统**中的应用。

摘要: matlab成为许多学科的解题工具,将matlab融入其它课程的学习中,可以大大提高运算效率和准确性。随着计算机的普及和国民整体素质的提高,科学计算将会更加的普及。

matlab在矩阵及数值计算、多项式和线形代数、符号数学的基本方法等方面都有较好的应用。本文概括地介绍了matlab的主要功能和使用方法。本文通过从pid控制器的设计和模糊控制器的分析与设计阐述了matlab在控制系统**中的应用。

关键词:matlab pid控制模糊控制

1引言:1984 年两名美国人 jack little 和 cleve moler基于其数学、工程及计算机科学的背景,共同开发了 matlab 高级语言,并成立了 mathworks公司,主要致力于 matlab 的深层研发与推广。至 2010 年3 月,mathworks 公司已开发出 matlab 7.

10 (release 2010a)。matlab 在科学计算及工程领域产生了深远、广泛的影响,成为工程项目和科学研究的基本工具,在世界各地的大学、**实验室、研究院所、公司研发部门等获得广泛应用。

matlab 发展到今天,已不仅仅是一种高级语言,其包含将近 100 个附加产品,是工程师、科学家、数学家、研究者使用的一种数学计算软件,是一个研发平台,更是一种综合应用的工具。matlab 可以划分为两部分:matlab 产品族、simulink 产品族。

matlab 产品族包含数学与优化、统计与数据分析、数据库连接与报告、应用开发等模块,还包含专用产品计算生物、财务建模与分析等模块; simulink是matlab 中的一种可视化**工具,采用模块化建模方式,每个模块都有自己的输入/输出端口,实现一定的功能。simulink 产品族包括图形模拟、基于事件模型、定点模型、物理模型、**生成、快速原型生成与 hil **、以及证明验证与测试等模块。此外,matlab 与 simulink 均包含专用产品:

控制系统设计与分析、信号处理与通信、图像和**处理、测试与测量等功能模块。

2模糊控制器分析与设计。

目前的大部分控制系统的分析和设计方法都是基于被控对象的数学模型是已知的,或者通过实验或者辨识方法能够获取的。但是现代工业的发展,人们在工程实践中发现,有些复杂的系统,要想获取它的精确的模型几乎没有可能,这时候,无法用传统控制方法进行控制。但是可以凭借多年的工作经验,把控制的方法总结成带有模糊性质的、用自然语言表达的操作规则,来实现对这些系统的有效控制。

模糊控制即模拟人类如何凭经验和常识利用模糊规则进行推理,并用系统进行实现的控制过程。模糊控制过程不依赖于被控对象的精确的数学模型,而是以人的实际操作经验作为基础,是把人的智能和控制系统结合到了一起,因此模糊控制属于智能控制领域。目前,它已经称为智能控制领域的一个重要分支。

在 matlab 的 simulink **模块库中,设有专门的模糊逻辑工具箱,专门用于构成模糊控制系统**模型图。

模糊逻辑控制(fuzzy logic control)简称模糊控制(fuzzy control),是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的一种智能控制方法。它的诞生是以美国的年提出的模糊集合论为标记的;2024年他给出了模糊逻辑控制的定义和相关的定理。2024年,英国的首先利用模糊数学理论进行蒸汽机和锅炉控制方面的研究,并且获得成功,从此模糊控制的研究和应用一直十分活跃。

与传统控制器依赖于系统行为参数的控制器设计方法不同的是模糊控制器的设计是依赖于操作者的经验,因此模糊控制器实现了人的某些智能,是智能控制的一个重要分支,对于非线性控制应用广泛。

模糊控制的基本思想是利用计算机来实现人的控制经验,而这些经验多是用语言表达的具有相当模糊性的控制规则。

二、模糊控制器的基本结构和组成。

模糊控制器主要由以下四部分组成:模糊化、模糊推理、清晰化和知识库。模糊化的作用是将输入的精确量转换成模糊化量,并用相应的模糊集合来表示。

模糊推理是模糊控制器的核心,它具有模拟人的基于模糊概念的推理能力。该推理过程是基于模糊逻辑中的蕴涵关系及推理规则来进行的。清晰化的作用是将模糊推理得到的控制量变换为实际用于控制的清晰量。

知识库中包含了具体应用领域的知识和要求的控制目标。它通常由数据库和模糊控制规则库两部分组成。在模糊控制中,一般通过用一组语言描述的规则来表示专家的知识,专家知识通常具有如下的形式:

if(满族一组条件)then(可以推出一组结论)。

当论域为离散量时,经过量化后的输入量个数是有限的。可以针对输入情况的不同组合离线计算出相应的控制量,从而组成一张控制表,能够减少**的运算量。这种模糊控制方法很容易满足实时控制的要求。

在这种模糊控制结构中,通常用误差e和误差的导数de/dt作为模糊控制器的输入量。如图所示:

三、模糊控制器的设计:

设控制系统的输入为单位阶跃信号r,输出为y,误差为e,误差导数为de;被控对象的输入为u;模糊控制器与e,de对应的输入分别为e1,de1,与u对应的输出为u1。e1,de1,u1的论域取[-6,+6],语言值取5个,分别为“负大nb”,“负小ns”,“零zr”,“正小ps”和“正大pb”。nb,ns,ps,pb取梯形隶属度函数,zr取三角形隶属度函数。

根据经验,可以得到用“if 。。then 。。形式表达的模糊控制规则:

1. if (e l is nb) and (de l is nb) then (u l is nb)

2. if (e l is nb) and (de l is ns) then (u l is ns)

3. if (e l is nb) and (de l is zr) then (u l is ns)

23. if (e l is pb) and (de l is zr) then (u l is ps)

24. if (e l is pb) and (de l is ps) then (u l is pb)

25. if (e l is pb) and (de l is pb) then (u l is pb)

以上模糊控制规则共计25条,这些控制规则可以总结归纳成表。

四、模糊控制器的**模型。

这里取被控对象为:

取t=3秒,t=0.5秒。

在matlab的命令窗口输入命令fuzzy,进入图形用户界面(gui)窗口。根据上述隶属度函数和控制规则,利用模糊推理系统(fis )编辑器可以建立一个fis文件,取名为这里模糊推理及其非模糊化方法采用min-max一重心法,即有名的mamdani推理法在simulink环境中,用鼠标将相应模块拖入窗口中,连接好便得到图5所示的模糊控制系统**模型。

这里模糊控制器的结构变量取flc,误差的量化因子ke取6,误差变化的量化因子kc取0.5,控制输出的比例因子ku取0.4。

限幅器1和限幅器2的限幅范围是[-6, 6],其作用是把控制系统的误差及误差导数由基本论域变换到模糊控制器输入变量的论域。假设被控对象允许的最大输入是士20,因而在被控对象的前面设置了限幅器3,其限幅范围是[-20, 20]。利用**参数对话框,可以设置相关的**参数。

这里**时间设置为15秒,采样周期设置为0.01秒。

五、系统的**。

整个系统在simulink环境下所搭建的结构图4如下:

在matlab的命令窗口中输入指令:flc=readfis(’这样就在基本工作空间中建立起了模糊推理系统的结构变量flc。,然后再输入指令:

start,**即开始。这时可以利用模拟示波器来观察系统的动态响应情况。**结束后,可以利用plot(t ,y)指令将响应曲线绘出,如图5所示。

图5中,u为控制量(黄色),f1为原来未加模糊控制器控制的曲线(绿色),f2为加了模糊控制器以后的响应曲线(紫色)。

六、结论。由图5可以看出,原系统调节时间大约为14秒,而用模糊控制器控制后调节时间为大约6秒。可见,虽然用模糊控制器控制后系统略有超调,但它所存在的这种微小超调是在系统稳定所允许范围之内的,而用模糊控制器控制却大大缩短了调节时间,从而提高了系统的特性。

通过一学期的学习,使我对matlab有了一个初步的了解,让我从一个连matlab是什么都不知道的状况下,在老师的带领下一步一步去揭开matlab的神秘面纱!从第一节课起,老师就跟我们强调matlab的重要性,在他看来,大学生必须要会至少一个**软件,这是对以后的生存技能!那时我对此有些不以为然,自己对**软件也没有任何了解!

随着matlab课程的深入和学了信号与系统的部分内容之后,逐渐对matlab有了不一样的看法!越来越发现matlab功能的强大,经常会想,这么一个优秀的**软件,我们有什么理由不去深入的了解呢?

在这半学期的学习中,渐渐对matlab产生的兴趣,每当自己**出来的图像与结果一致时,总会有发自内心的喜悦,这是进步,也是对自己接下来的任务的鼓励。现在回想起开始的那段时间,感觉自己都特别傻,仅仅因为生成了一个矩阵就高兴了好久。这是matlab给我带来的幸福!

学到第二章的时候,看着标题就很不明白,因为我们正在学信号与系统,没感觉到一堆数学工式还能建模,本来学信号就挺难的!于是乎在不了解的情况下我承认我怕了。不过既然要学,那么就没什么怕与不怕的,难道怕了就真不学了?

而随着老师的讲解与自己的亲身操作,才发现它真正的乐趣。而且通过对信号的建模与**,更是对我学习信号与系统有着不小的帮助。

MATLAB课程设计

1 求被控对象传递函数g s 的matlab描述。num 789 6312 11835 den 1 14 56 64 0 0 gs tf num,den transfer function 789 s 2 6312 s 11835 s 5 14 s 4 56 s 3 64 s 2 2 求被控对象脉冲...

MATLAB课程设计

课程设计。题目 matlab计算器。姓名 班级 学院 专业 完成时间。1总体设计。该计算器程序主要是matlab来制作,界面主要由四个静态文本框 21个运算按钮和两个动态文本框组成。实现的运算功能有四则运算 加 减 乘 除。而且添加了括号使人们使用时更加简单。这些计算功能主要调用了matlab的自定...

MATLAB课程设计

matlab课程设计。如图所示,为测量系统的示意图,它由两个能相互转动的连杆,角度编码器和滚轮等组成。o1为固定点,o2点为转动点,o3点为滚轮的中心,连杆的有效长度分别为l1和l2。任一位置时,连杆1相对于某基准位置的角度为 1,两连杆的相对角度为 2。其中对于 1,取垂直方向为基准线,在基准线左...