第04章 MATLAB程序设计

合集下载

MATLAB精通科学计算_偏微分方程求解

MATLAB精通科学计算_偏微分方程求解

一、Maple V 系统Maple V是由Waterloo大学开发的数学系统软件,它不但具有精确的数值处理功能,而且具有无以伦比的符号计算功能。

Maple V的符号计算能力还是MathCAD和MATLAB等软件的符号处理的核心。

Maple提供了2000余种数学函数,涉及范围包括:普通数学、高等数学、线性代数、数论、离散数学、图形学。

它还提供了一套内置的编程语言,用户可以开发自己的应用程序,而且Maple自身的2000多种函数,基本上是用此语言开发的。

Maple采用字符行输入方式,输入时需要按照规定的格式输入,虽然与一般常见的数学格式不同,但灵活方便,也很容易理解。

输出则可以选择字符方式和图形方式,产生的图形结果可以很方便地剪贴到Windows应用程序内。

二、MATLAB 系统MATLAB原是矩阵实验室(Matrix Laboratory)在70年代用来提供Linpack和Eispac k软件包的接口程序,采用C语言编写。

从80年代出现3.0的DOS版本,逐渐成为科技计算、视图交互系统和程序语言。

MATLAB可以运行在十几个操作平台上,比较常见的有基于W indows 9X/NT、OS/2、Macintosh、Sun、Unix、Linux等平台的系统。

MATLAB程序主要由主程序和各种工具包组成,其中主程序包含数百个内部核心函数,工具包则包括复杂系统仿真、信号处理工具包、系统识别工具包、优化工具包、神经网络工具包、控制系统工具包、μ分析和综合工具包、样条工具包、符号数学工具包、图像处理工具包、统计工具包等。

而且5.x版本还包含一套几十个的PDF文件,从MATLAB的使用入门到其他专题应用均有详细的介绍。

MATLAB是数值计算的先锋,它以矩阵作为基本数据单位,在应用线性代数、数理统计、自动控制、数字信号处理、动态系统仿真方面已经成为首选工具,同时也是科研工作人员和大学生、研究生进行科学研究的得力工具。

Matlab与数学实验(第二版)(张志刚 刘丽梅 版) 习题答案

Matlab与数学实验(第二版)(张志刚 刘丽梅 版) 习题答案

Matlab与数学实验(第二版)(张志刚刘丽梅版)习题答案(1,3,4,5章)第一章d1zxt1用format的不同格式显示2*Pi,并分析格式之间的异同。

a=2*pi ;disp('***(1) 5位定点表示2*pi:')format short , a % 5位定点表disp('***(2) 15位定点表示2*pi:')format long , a % 15位定点表disp('***(3) 5位浮点表示2*pi:')format short e , a % 5位浮点表示disp('***(4) 15位浮点表示2*pi:')format long e , a % 15位浮点表示disp('***(5) 系统选择5位定点和5位浮点中更好的表示2*pi:')format short g , a % 系统选择5位定点和5位浮点中更好的表示disp('***(6) 系统选择15位定点和15位浮点中更好的表示2*pi:')format long g , a % 系统选择15位定点和15位浮点中更好的表disp('***(7) 近似的有理数的表示2*pi:')format rat , a % 近似的有理数的表disp('***(8) 十六进制的表示:')format hex , a % 十六进制的表disp('***(9) 用圆角分(美制)定点表示2*pi:')format bank , a % 用圆角分(美制)定点表示d1zxt2利用公式求Pi的值。

sum=0 ;n=21;for i = 1:4:n % 循环条件sum= sum+(1/i) ; % 循环体enddiff=0 ;for j = 3:4:(n-2) % 循环条件diff= diff+(1/j) ; % 循环体endpai=4*(sum-diff)d1zxt3 编程计算1!+3!+...+25!的阶乘。

MATLAB 8.5基础教程第9章 最优化计算

MATLAB 8.5基础教程第9章 最优化计算
第九章 最优化计算
• 最优化问题是专门研究如何从多个方案中科学合理地提出
最佳方案,其过程是找出反映实际问题最优化所要达到的
目标和各种约束条件,即建立数学模型,并合理选择优化
方法对模型进行求解。

本章重点
• 函数最值问题 • 线性规划问题 • 非线性规划问题 • 整数规划问题 • 二次规划问题
9.1 无约束优化问题
9.2 约束优化问题
约束优化问题就是在有约束条件下寻求目标函数的最小 值或最大值。本节主要利用MATLAB中的函数求解线性规划 、非线性规划、整数规划和二次规划等问题。
9.2.1 线性规划问题
线性规划问题是目标函数和约束条件均为线性函数,其标准 形式为:
目标函数: min f Tx x
约束条件: Ax b , Aeq x = beq , LB x UB
【例】计算函数 y = ex sin x1在区间[-1,1]上的最小值。
(1)直接在命令窗口中输入目标函数字符串。
>> [X,FVAL,EXITFLAG,OUTPUT]=fminbnd('(exp(x)-sin(x)-1)',-1,1) X=
4.3009e-06 FVAL =
9.2486e-12 EXITFLAG =
1 OUTPUT =
iterations: 10 funcCount: 11 algorithm: 'golden section search, parabolic interpolation'
message: 'Optimization terminated: the current x satisfies the termination criteria using OPTIONS.TolX of 1.000000e-04 and F(X) sati...'

基于MATLAB的信号与系统实验教程

基于MATLAB的信号与系统实验教程

基于MATLAB的信号与系统实验教程第一部分 MATLAB基础第1章 MATLAB环境1.1 MATLAB界面图1.1 MATLAB主界面图1.2 Workspace图1.3 MATLAB.m文件编辑窗口界面1.2 文件类型图1.4 设置路径图1.5 例1-1运行结果1.3 系统和程序控制指令1.4 练习第2章 数据类型与数学运算2.1 数值、变量和表达式2.1.1 数值的记述2.1.2 变量命名规则2.1.3 运算符和表达式2.2 数组、矩阵及其运算2.2.1 复数和复数矩阵2.2.2 数组和矩阵的运算2.2.3 特殊矩阵(Specialized matrices)2.3 关系和逻辑运算2.4 练习第3章 数值计算与符号计算3.1 线性代数与矩阵分析3.1.1 线性代数3.1.2 特征值分解3.1.3 奇异值分解3.1.4 矩阵函数3.2 线性方程组求解3.2.1 确定性线性方程组求解3.2.2 线性最小二乘问题的方程求解3.3 数据分析函数图3.1 例3-4运行结果3.4 符号计算图3.2 数值型与符号型数据转换关系3.5 练习第4章 绘图4.1 基本绘图指令4.1.1 plot的基本调用格式图4.1 例4-1运行结果4.1.2 stem: 离散数据绘制(火柴杆图)图4.2 例4-2运行结果4.1.3 polar: 极坐标图图4.3 例4-3运行结果4.2 各种图形标记、控制指令图4.4 例4-4运行结果4.2.1 图的创建与控制4.2.2 轴的产生与控制4.2.3 分格线(grid)、坐标框(box)、图保持(hold)4.2.4 图形标志4.3 其他常用绘图指令4.3.1 其他类型图的绘制图4.5 例4-5运行结果图4.6 例4-6运行结果简易绘图指令图4.7 例4-7运行结果4.4 练习第5章 SIMULINK5.1 SIMULINK的基本使用方法图5.1 Simulink Library Browser窗口图5.2 Pulse Generator模块的参数设置5.2 SIMULINK模型概念及基本模块介绍图5.4 SIMULINK模型的一般结构5.2.1 常用的sources——信号源模块5.2.2 常用的sinks——信号显示与输出模块图5.5 示波器纵坐标设置对话框图5.6 示波器属性对话框5.2.3 math operations——数学运算单元模块5.2.4 continuous——连续系统模块5.2.5 discrete——离散系统模块5.3 SIMULINK模型的仿真5.3.1 仿真参数设置图5.7 仿真设置对话框5.3.2 建立子系统图5.8 例5-2的SIMULINK模型图5.9 例5-2的子系统模型图5.10 例5-2仿真输出波形5.4 练习第6章 M函数和工具箱6.1 M函数6.2 工具箱图6.1 演示程序中的工具箱(Toolbox)使用帮助6.3 练习第7章 MATLAB实用技术遴选7.1 图形用户界面设计7.1.1 设计原则与设计步骤7.1.2 界面与控件介绍图7.1 标准菜单样式7.1.3 GUI实例分析。

MATLAB(PfYf-(

MATLAB(PfYf-(

MATL AB在材料力学教学中的应用*王文堂,李伟(河南机电高等专科学校机电工程系,河南新乡453002)摘要:利用M ATLAB绘制剪力图、弯矩图、应力圆以及求解最大弯矩和主应力。

证明了MAT LAB可以利用其强大的计算和绘图能力在材料力学教学中发挥巨大作用,使学生摆脱复杂的计算问题,进而提高学习效率。

关键词:材料力学;MATLAB;弯矩图;应力圆中图分类号:G642文献标识码:A文章编号:1008-2093(2010)04-0090-02随着高等教育教学改革的不断深入,国内许多高校都在材料力学课程体系、教学内容、教学方法等方面开展了大量研究。

当前计算机技术和现代数值计算方法的发展、解决问题手段的多样化,给力学的发展和教育带来了深刻影响。

因而在材料力学的教学中应当体现这种科技发展趋势,在原有的课程体系中融合新的计算技术和引进新的计算工具,从而提高教学质量,加强学生的建模和计算能力,拓宽学生的知识面,培养学生的创新思维。

我国高校工科专业的学生在学习材料力学之前,已经学过高等数学、工程数学和计算机应用等课程,这给在材料力学教学中引入计算机辅助教学创造了很好的条件。

当然,在课程教学中引入计算软件应该有一个大的前提,即科学计算软件引入的目的是为了提高教学效率和教学质量,要能使学生对基本概念、公式的物理意义理解得更清楚,而不能喧宾夺主;要将学生的主要精力放在研究力学问题上,而不是在编程计算上;对计算软件来说,既要能满足分析计算要求,又要简单易学,同时最好是工程中广为应用的通用软件。

MATLAB是目前被科学和工程各个领域的研究者们普遍采用的一种数学分析软件。

其基本特点有极强的数值计算功能和作图功能;图形窗口式的操作,简单易懂,操作简便;用简单的指令就可以完成大量的计算与作图功能,编程语言简单,程序设计方便。

因此对工科专业学生而言,选用MATLAB作为辅助教学软件是非常合适的。

下面就MATL AB在材料力学中的应用举例说明。

二元非线性方程组求根的牛顿迭代法

二元非线性方程组求根的牛顿迭代法

2 二元函数的牛顿迭代法
设 z = f ( x, y ) 在点 ( x0 , y0 ) 的某一邻域内连续且 有直到 2 阶的连续偏导数 , ( x0 + h, y0 + k ) 为此邻域 内任一点 , 则有
f ( x0 + h, y0 + k ) ≈ f ( x0 , y0 ) +
记符号
gfx - fgx | ( x k, y k) = g ( xk , yk ) fx ( xk , yk ) - f ( xk , yk ) gx ( xk , yk ) fgy - gfy | ( x k, y k) = f ( xk , yk ) gy ( xk , yk ) - g ( xk , yk ) fy ( xk , yk ) gx fy - fx gy | ( x k, y k) = gx ( xk , yk ) fy ( xk , yk ) - fx ( xk , yk ) gy ( xk , yk ) ( 1 ) 式可改写为 x = xk + y = yk + fgy - gfy | ( x k, y k) gx fy - fx gy | ( x k, y k) gfx - fgx | ( x k, y k) gx fy - fx gy | ( x k, y k) fgy - gfy | ( x k, y k) gx fy - fx gy | ( x k, y k) gfx - fgx | ( x k, y k) gx fy - fx gy | ( x k, y k) ( 3) ( 2)
f ( xk , yk ) + ( x - xk ) fx ( xk , yk ) + ( y - yk ) fy ( xk , yk ) = 0 g ( xk , yk ) + ( x - xk ) gx ( xk , yk ) + ( y - yk ) gy ( xk , yk ) = 0

matlab在电气工程中得应用第1、2章MATLAB概述

LabVIEW与Octave:LabVIEW是National Instruments开发的图形化编程环境,主要用于测试和测量应用。Octave是一种开源 的数值计算语言,与Matlab语法相似。Matlab在数值计算、信号处理和控制系统方面具有优势,而LabVIEW在仪器控制和测试 测量方面有专长。
参与Matlab相关的论坛和社区,如 CSDN论坛、知乎等,与其他使用者 交流心得,遇到问题可以寻求帮助, 同时也可以学习到最新的应用技巧。
Matlab的未来发展与展望
云端化与在线化
人工智能与机器学习集成
开源与社区发展
与其他软件的集成
随着云计算技术的发展,未来 Matlab可能会推出云端版本, 用户无需安装本地软件即可在 线进行Matlab编程和计算。
数据分析
Matlab在数据分析领域用于数据挖 掘、机器学习、统计分析等方面。
图像处理
Matlab在图像处理领域用于图像滤 波、特征提取、图像识别等方面。
科学计算
Matlab在科学计算领域用于数值求 解各种数学问题,如线性代数、微积 分等。
02
Matlab基础知识
Matlab的数据类型
字符型
用于存储文本和字 符串数据。
图形可视化
Matlab具有强大的图形可视化 功能,可以绘制各种二维、三 维图形。
编程语言
Matlab是一种高级编程语言, 具有简洁明了的语法和丰富的 函数库。
交互式环境
Matlab提供了交互式编程环境 ,方便用户进行数据分析和算
法开发。
Matlab的应用领域
电气工程
Matlab在电气工程领域广泛应用于 控制系统设计、信号处理、电力电子 等方向。
逻辑型
用于表示布尔值 (真/假)。

基于MATLAB的温度控制系统的PID控制器设计

基于MATLAB的温度控制系统的PID控制器设计摘要本论文以温度控制系统为研究对象设计一个PID控制器PID控制是迄今为止最通用的控制方法大多数反馈回路用该方法或其较小的变形来控制PID控制器亦称调节器及其改进型因此成为工业过程控制中最常见的控制器至今在全世界过程控制中用的84仍是纯PID调节器若改进型包含在内则超过90 在PID控制器的设计中参数整定是最为重要的随着计算机技术的迅速发展对PID参数的整定大多借助于一些先进的软件例如目前得到广泛应用的MATLAB仿真系统本设计就是借助此软件主要运用Relay-feedback法线上综合法和系统辨识法来研究PID控制器的设计方法设计一个温控系统的PID控制器并通过MATLAB中的虚拟示波器观察系统完善后在阶跃信号下的输出波形关键词 PID参数整定 PID控制器 MATLAB仿真冷却机AbstractThis paper regards temperature control system as the research object to design a pid controller Pid control is the most common control method up until now the great majority feedback loop is controlled by this method or its small deformation Pid controller claim regulator also and its second generation so become the most common controllers in the industry process control so far about 84 of the controller being used is the pure pid controller itll exceed 90 if the second generation included Pid parameter setting is most important in pid controller designing and with the rapid development of the computer technology it mostly recurs to some advanced software for example mat lab simulation software widely used now this design is to apply that soft mainly use Relay feedback law and synthetic method on the line to study pid controller design method design a pid controller of temperature control system and observe the output waveform while input step signal through virtual oscilloscope after system completedKeywords PID parameter setting PID controller MATLAB simulationcooling machine摘要Ibstract II第一章绪论 1课题来源及PID控制简介 1com 课题的来源和意义 1com PID控制简介1国内外研究现状及MATLAB简介 3二章控制系统及PID调节 5控制系统构成 5PID控制 5com积分微分 5com控制7三章系统辨识9系统辨识9系统特性图10系统辨识方法11PID最佳调整法与系统仿真1441 PID参数整定法概述14针对无转移函数的PID调整法15comay feedback调整法15com Relay feedback 在计算机做仿真15 com整法19com 在线调整法在计算机做仿真20针对有转移函数的PID调整方法23 com识法24com法及根轨迹法27五章油冷却机系统的PID控制器设计28 油冷却机系统28com机 28com转换器29com 控制组件30油冷却机系统之系统辨识31油冷却机系统的PID参数整定3340致谢41参考文献42第一章绪论11 课题来源及PID控制简介com 课题的来源和意义任何闭环的控制系统都有它固有的特性可以有很多种数学形式来描述它如微分方程传递函数状态空间方程等但这样的系统如果不做任何的系统改造很难达到最佳的控制效果比如快速性稳定性准确性等为了达到最佳的控制效果我们在闭环系统的中间加入PID控制器并通过调整PID参数来改造系统的结构特性使其达到理想的控制效果com PID控制简介当今的自动控制技术都是基于反馈的概念反馈理论的要素包括三个部分测量比较和执行测量关心的变量与期望值相比较用这个误差纠正调节控制系统的响应这个理论和应用自动控制的关键是做出正确的测量和比较后如何才能更好地纠正系统PID 比例 - 积分 - 微分控制器作为最早实用化的控制器已有 50多年历史现在仍然是应用最广泛的工业控制器 PID 控制器简单易懂使用中不需精确的系统模型等先决条件因而成为应用最为广泛的控制器PID 控制器由比例单元 P 积分单元 I 和微分单元 D 组成其输入 e t 与输出 u t 的关系为公式1-1公式1-1 公式1-2 比例调节作用是按比例反应系统的偏差系统一旦出现了偏差比例调节立即产生调节作用用以减少偏差比例作用大可以加快调节减少误差但是过大的比例使系统的稳定性下降甚至造成系统的不稳定积分调节作用是使系统消除稳态误差提高无差度因为有误差积分调节就进行直至无差积分调节停止积分调节输出一个常值积分作用的强弱取决与积分时间常数TiTi越小积分作用就越强反之Ti大则积分作用弱加入积分调节可使系统稳定性下降动态响应变慢积分作用常与另两种调节规律结合组成PI调节器或PID调节器微分调节作用微分作用反映系统偏差信号的变化率具有预见性能预见偏差变化的趋势因此能产生超前的控制作用在偏差还没有形成之前已被微分调节作用消除因此可以改善系统的动态性能在微分时间选择合适情况下可以减少超调减少调节时间微分作用对噪声干扰有放大作用因此过强的加微分调节对系统抗干扰不利此外微分反应的是变化率而当输入没有变化时微分作用输出为零微分作用不能单独使用需要与另外两种调节规律相结合组成PD或PID控制器PID控制器由于用途广泛使用灵活已有系列化产品使用中只需设定三个参数 Kp Ki 和 Kd 即可在很多情况下并不一定需要全部三个单元可以取其中的一到两个单元但比例控制单元是必不可少的首先PID应用范围广虽然很多控制过程是非线性或时变的但通过对其简化可以变成基本线性和动态特性不随时间变化的系统这样PID就可控制了其次PID参数较易整定也就是PID参数KpKi和Kd可以根据过程的动态特性及时整定如果过程的动态特性变化例如可能由负载的变化引起系统动态特性变化 PID 参数就可以重新整定第三PID控制器在实践中也不断的得到改进下面两个改进的例子在工厂总是能看到许多回路都处于手动状态原因是很难让过程在自动模式下平稳工作由于这些不足采用 PID 的工业控制系统总是受产品质量安全产量和能源浪费等问题的困扰PID参数自整定就是为了处理PID参数整定这个问题而产生的现在自动整定或自身整定的PID控制器已是商业单回路控制器和分散控制系统的一个标准在一些情况下针对特定的系统设计的PID控制器控制得很好但它们仍存在一些问题需要解决如果自整定要以模型为基础为了PID参数的重新整定在线寻找和保持好过程模型是较难的闭环工作时要求在过程中插入一个测试信号这个方法会引起扰动所以基于模型的 PID 参数自整定在工业应用不是太好如果自整定是基于控制律的经常难以把由负载干扰引起的影响和过程动态特性变化引起的影响区分开来因此受到干扰的影响控制器会产生超调产生一个不必要的自适应转换另外由于基于控制律的系统没有成熟的稳定性分析方法参数整定可靠与否存在很多问题因此许多自身整定参数的PID控制器经常工作在自动整定模式而不是连续的自身整定模式自动整定通常是指根据开环状态确定的简单过程模型自动计算PID 参数但仍不可否认 PID 也有其固有的缺点PID 在控制非线性时变耦合及参数和结构不确定的复杂过程时工作地不是太好最重要的是如果 PID 控制器不能控制复杂过程无论怎么调参数都没用虽然有这些缺点PID控制器是最简单的有时却是最好的控制器12 国内外研究现状及MATLAB简介PID控制中最重要的是对其参数的控制所以当今国内外PID控制技术的研究主要是围绕如何对其参数整定进行的自Ziegler和Nichols提出PID参数整定方法起有许多技术已经被用于PID控制器的手动和自动整定根据发展阶段的划分可分为常规PID参数整定方法及智能PID参数整定方法按照被控对象个数来划分可分为单变量PID参数整定方法及多变量PID参数整定方法前者包括现有大多数整定方法后者是最近研究的热点及难点按控制量的组合形式来划分可分为线性PID参数整定方法及非线性PID 参数整定方法前者用于经典PID调节器后者用于由非线性跟踪-微分器和非线性组合方式生成的非线性PID控制器Astrom在1988年美国控制会议ACC上作的《面向智能控制》〔〕自整定和自适应为智能PID控制的发展奠定了基础他认为自整定控制器和自适应控制器能视为一个有经验的仪表工程师的整定经验的自动化在文〔〕中继续阐述了这种思想PI或PID控制即自整定调节器应具有推理能力自适应PID的应用途径的不断扩大使得对其整定方法的应用研究变得日益重要目前在众多的整定方法中主要有两种方法在实际工业过程中应用较好一种是由福克斯波罗Foxboro公司推出的基于模式识别的参数整定方法基于规则另一种是基于继电反馈的参数整定方法基于模型前者主要应用于Foxboro的单回路EXACT控制器及其分散控制系统IA Series的PIDE功能块其原理基于Bristol在模式识别方面的早期工作〔〕这些技术极大地简化了PID控制器的使用显着改进了它的性能它们被统称为自适应智能控制技术〔〕〔〕PID参数整定方法和非线性PID参数整定方法PID控制算法是迄今为止最通用的控制策略有许多不同的方法以确定合适的控制器参数这些方法区分于复杂性灵活性及使用的过程知识量一个好的整定方法应该基于合理地考虑以下特性的折衷负载干扰衰减测量噪声效果过程变化的鲁棒性设定值变化的响应所需模型计算要求等我们需要简单直观易用的方法它们需要较少的信息并能够给出合适的性能我们也需要那些尽管需要更多的信息及计算量但能给出较好性能的较复杂的方法从目前PID参数整定方法的研究和应用现状来看以下几个方面将是今后一段时间内研究和实践的重点〔〕PID参数整定方法使其在初始化抗干扰和鲁棒性能方面进一步增强使用最少量的过程信息及较简单的操作就能较好地完成整定②对于多入多出被控对象需要研究针对具有显着耦合的多变量过程的多变量PID参数整定方法进一步完善分散继电反馈方法尽可能减少所需先验信息量使其易于在线整定〔〕PID控制技术有待进一步研究将自适应自整定和增益计划设定有机结合使其具有自动诊断功能结合专家经验知识直觉推理逻辑等专家系统思想和方法对原有PID控制器设计思想及整定方法进行改进将预测控制模糊控制和PID控制相结合进一步提高控制系统性能都是智能PID控制发展的极有前途的方向〔〕Matrix Laboratory 缩写为Mat lab 软件包是一种功能强效率高便于进行科学和工程计算的交互式软件包其中包括一般数值分析矩阵运算数字信号处理建模和系统控制和优化等应用程序并将应用程序和图形集于便于使用的集成环境中在此环境下所解问题的Mat lab语言表述形式和其数学表达形式相同不需要按传统的方法编程并能够进行高效率和富有创造性的计算同时提供了与其它高级语言的接口是科学研究和工程应用必备的工具目前在控制界图像信号处理生物医学工程等领域得到广泛的应用本论文设计中PID参数的整定用到的是Mat lab中的 SIMULINK它是一个强大的软件包在液压系统仿真中只需要做数学模型的推导工作用 SIMULINK对设计好的系统进行仿真可以预知效果检验设计的正确性为设计人员提供参考其仿真结果是否可用取决于数学模型正确与否因此要注意模型的合理及输入系统的参数值要准确〔〕PID调节21 控制系统构成对控制对象的工作状态能进行自动控制的系统称为自动控制系统一般由控制器与控制对象组成控制方式可分为连续控制与反馈控制即一般所称开回路与闭回路控制连续控制系统的输出量对系统的控制作用没有任何影响也就是说控制端与控制对象为单向作用这样的系统亦称开回路系统反馈控制是指将所要求的设定值与系统的输出值做比较求其偏差量利用这偏差量将系统输出值使其与设定值调为一致反馈控制系统方块图一般如图2-1所示图2-1反馈控制系统方块图22 PID控制将感测与转换器输出的讯号与设定值做比较用输出信号源 2-10v或4-20mA 去控制最终控制组件在工程实际中应用最为广泛的调节器控制规律为比例积分微分控制简称PID控制又称PID调节PID控制器问世至今已有近60年的历史了它以其结构简单稳定性好工作可靠调整方便而成为工业控制主要和可靠的技术工具当被控对象的结构和参数不能完全掌握或得不到精确的数学模型时控制理论的其它设计技术难以使用系统的控制器的结构和参数必须依靠经验和现场调试来确定这时应用PID控制技术最为方便即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统的参数的时候便最适合用PID控制技术com 比例积分微分比例图2-2 比例电路公式2-1积分器图2-3 积分电路公式2-2图2-4微分电路微分器式2-3实际中也有PI和PD控制器PID控制器就是根据系统的误差利用比例积分微分计算出控制量控制器输出和控制器输入误差之间的关系在时域中如公式2-4和2-5u t Kp e t Td 公式2-4U s ]E s 公式2-5公式中U s 和E s 分别为u t 和e t 的拉氏变换其中分别为控制器的比例积分微分系数〔〕com PIDP控制比例控制是一种最简单的控制方式其控制器的输出与输入误差讯号成比例关系当仅有比例控制时系统输出存在稳态误差Steady-state error 积分I控制在积分控制中控制器的输出与输入误差讯号的积分成正比关系对一个自动控制系统如果在进入稳态后存在稳态误差则称这个控制系统是有稳态误差的或简称有差系统System with Steady-state Error为了消除稳态误差在控制器中必须引入积分项积分项对误差取关于时间的积分随着时间的增加积分项会增大这样即便误差很小积分项也会随着时间的增加而加大它推动控制器的输出增大使稳态误差进一步减小直到等于零因此比例积分 PI 控制器可以使系统在进入稳态后无稳态误差微分D控制在微分控制中控制器的输出与输入误差讯号的微分即误差的变化率成正比关系自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳其原因是由于存在有较大惯性的组件环节和或有滞后 delay 的组件使力图克服误差的作用其变化总是落后于误差的变化解决的办法是使克服误差的作用的变化要有些超前即在误差接近零时克服误差的作用就应该是零这就是说在控制器中仅引入比例项往往是不够的比例项的作用仅是放大误差的幅值而目前需要增加的是微分项它能预测误差变化的趋势这样具有比例微分的控制器就能够提前使克服误差的控制作用等于零甚至为负值从而避免了被控量的严重地冲过头所以对有较大惯性和或滞后的被控对象比例微分 PD 的控制器能改善系统在调节过程中的动态特性〔〕31 系统辨识1 所谓系统辨识即是在不知道系统转移函数时根据系统特性辨识出来2 若被控对象的数学模式相当线性 linear 且各项参数都可知道则可用控制理论来设计PID控制器的系数大小但实际的被控对象往往是非线性系统且系统复杂难以精确地用数学式表达所以工业上设计PID控制器时常常使用实验方法而较少用理论来设计调整PID控制器的方法中最有名的是Ziegler-Nichols所提出的二个调整法则这个调整法测是基于带有延迟的一阶传递函数模型提出的这种对象模型可以表示为公式3-1在实际的过程控制系统中有大量的对象模型可以近似的由这样的一阶模型来表示如果不能物理的建立起系统的模型我们还可以由实验提取相应的模型参数[5]3 将大小为1的阶跃信号加到被控对象如图3-1所示图3-1 将阶跃信号加到被控对象对大多数的被控对象若输入为阶跃信号则其输出c t 大多为S状曲线如下图3-2所示这个S状曲线称之为过程反应曲线process reaction curve 图3-2被控对象的阶跃响应图4 系统转移函数空调方面图3-3空调系统示意图图3-4 空调系统方块图由图3-3及图3-4可得知此系统的转移函数推导如下公式3-232 系统特性图1 系统为制热使用最大信号去控制系统直到稳定之后也就是热到达无法再上升时此时系统特性就会出现如下图3-5所示图3-5 系统制热的特性图2 系统为制冷使用最大信号去控制系统直到稳定之后也就是冷到达无法再下降时此时系统特性就会出现如下图3-6所示图3-6 系统制冷的特性图33 系统辨识方法1一阶系统带有延迟特性图3-7 一阶系统带有延迟特性图一阶系统加一个传递来近似被控对象则其近似转移函数如公式3-3所示公式3-3其中KTL可由上图3-7求得K稳态时的大小T时间常数※注系统越大时间常数越大L延迟时间2 KTL的求法K如上图3-31所示K值相当于C t 在稳态时的大小T与L求T及L必须在S形状曲线划一条切线最大斜率画出切线之后T及L值可以直接从图上得知T及L值与C t 及切线的关系如上图3-7所示第四章PID最佳调整法与系统仿真41 PID参数整定法概述1PID参数整定方法1 Relay feedback 利用Relay 的 on-off 控制方式让系统产生一定的周期震荡再用Ziegler-Nichols调整法则去把PID值求出来2 在线调整实际系统中在PID控制器输出电流信号装设电流表调P值观察电流表是否有一定的周期在动作利用Ziegler-Nichols把PID求出来PID值求法与Relay feedback一样3 波德图跟轨迹在MATLAB里的Simulink绘出反馈方块图转移函数在用系统辨识方法辨识出来之后输入指令算出PID值[13]2PID调整方式图4-1 PID调整方式如上描述之PID调整方式分为有转函数和无转移函数一般系统因为不知转移函数所以调PID值都会从Relay feedback和在线调整去着手波德图及根轨迹则相反一定要有转移函数才能去求PID值那这技巧就在于要用系统辨识方法辨识出转移函数出来再用MATLAB里的Simulink画出反馈方块图调出PID值〔〕PID 值的方法有在线调整法Relay feedback波德图法根轨迹法前提是要由系统辨识出转移函数才可以使用波德图法和根轨迹法如下图4-2所示42 针对无转移函数的PID调整法在一般实际系统中往往因为过程系统转移函数要找出之后再利用系统仿真找出PID值但是也有不需要找出转移函数也可调出PID值的方法以下一一介绍com Relay feedback4-3所示将PID控制器改成Relay利用Relay的On-Off 控制将系统扰动可得到该系统于稳定状态时的震荡周期及临界增益Tu及Ku在用下表4-4 的Ziegler-Nichols第一个调整法则建议PID调整值即可算出该系统之KpTiTv之值Controller P 05Ku PI 045Ku 083Tu PID 06Ku 05Tu 0125Tu 〔〕com Relay feedback 在计算机做仿真Step 1 以MATL AB里Simulink绘出反馈方块如下图4-5所示图4-5 Simulink绘出的反馈方块图Step 2让Relay做On-Off动作将系统扰动On-Off动作将以±1做模拟如下图4-6所示图4-6Step 3即可得到系统的特性曲线如下图4-7所示图4-7 系统震荡特性曲线Step 4取得Tu及a带入公式3-1计算出Ku以下为Relay feedback临界震荡增益求法公式4-1a振幅大小d电压值com 在线调整法图4-8在线调整法示意图在不知道系统转移函数的情况下以在线调整法直接于PID控制器做调整亦即PID控制器里的I值与D值设为零只调P值让系统产生震荡这时的P值为临界震荡增益Kv之后震荡周期也可算出来只不过在线调整实务上与系统仿真差别在于在实务上处理比较麻烦要在PID控制器输出信号端在串接电流表即可观察所调出的P值是否会震荡虽然比较上一个Relay feedback法是可免除拆装Relay 的麻烦但是就经验而言在实务上线上调整法效果会较Relay feedback 差在线调整法也可在计算机做出仿真调出PID值可是前提之下如果在计算机使用在线调整法还需把系统转移函数辨识出来但是实务上与在计算机仿真相同之处是PID 值求法还是需要用到调整法则Ziegler-Nichols经验法则去调整与Relay feedback的经验法则一样调出PID值com 在线调整法在计算机做仿真Step 1以MATLAB里的Simulink绘出反馈方块如下图4-9所示图4-9反馈方块图PID方块图内为图4-10 PID方块图Step 2将Td调为0Ti无限大让系统为P控制如下图4-11所示图4-11Step 3调整KP使系统震荡震荡时的KP即为临界增益KU震荡周期即为TV 使在线调整时不用看a求KU如下图4-12所示图4-12 系统震荡特性图Step 4再利用Ziegler-Nichols调整法则即可求出该系统之KpTiTd之值43 针对有转移函数的PID调整方法com系统反馈方块图在上述无转移函数PID调整法则有在线调整法与Relay feedback调整法之外也可利用系统辨识出的转移函数在计算机仿真求出PID值至于系统辨识转移函数技巧在第三章已叙述过接下来是要把辨识出来的转移函数用在反馈控制图之后应用系统辨识的经验公式Ziegler-Nichols第二个调整法求出PID值〔〕4-14所示controllerPPI33LPID2L 表4-14 Ziegler-Nichols第二个调整法则建议PID调整值〔〕为本专题将经验公式修正后之值※comL为延迟时间可com b※coma的解法可有以下2种解一如下图4-15中可先观察系统特性曲线图辨识出a值解二利用三角比例法推导求得图4-15利用三角比例法求出a值公式4-2用Ziegler-Nichols第一个调整法则求得之PID控制器加入系统后一般闭环系统阶跃响应最大超越的范围约在1060之间所以PID控制器加入系统后往往先根据Ziegler-Nichols第二个调整法则调整PID值然后再微调PID值至合乎规格为止com 波德图法及根轨迹法利用系统辨识出来的转移函数使用MATLAB软件去做系统仿真由于本设计中PID参数的整定主要是基于系统辨识及Ziegler-Nichols调整法则所以在此不用波德图法及根轨迹法第五章油冷却机系统的PID控制器设计51 油冷却机系统本论文设计以油冷却机温度控制系统为被控对象进行PID控制器的参数整定及其设计下面介绍一下油冷却机系统以及各个组成部分com 油冷却机图5-1 油冷却机实物图图5-2 油冷却机系统循环图油冷却机系统循环主要可分为冷媒循环系统以及油循环系统冷媒循环系统即为一般常见之制冷循环而油循环则是将油打出后经过负载加热再与冷媒循环的蒸发器作热交换再流回油槽做冷却用[16]com 感测与转换器图5-3 PT100实物图电阻式温度检测器 RTDResistance Temperature Detector -一种物质材料作成的电阻它会随温度的上升而改变电阻值如果它随温度的上升而电阻值也跟着上升就称为正电阻系数如果它随温度的上升而电阻值反而下降就称为负电阻系数[6]PT100温度传感器是一种以白金 Pt 作成的电阻式温度检测器属于正电阻系数其电阻和温度变化的关系式如下R Ro 1αT其中α 000392Ro为100Ω 0℃的电阻值 T为摄氏温度Vo 255mA ×100 1000392T 0255T1000 电源是带噪声的因此我们使用齐纳二极管作为稳压零件由于72V齐纳二极管的作用使得1K电阻和5K可变电阻之电压和为65V靠5K可变电阻的调整可决定晶体管的射集极极电流而我们须将集极电流调为255mA使得量测电压V如箭头所示为0255T1000其后的非反向放大器输入电阻几乎无限大同时又放大10倍使得运算放大器输出为255T100 6V齐纳二极管的作用如72V齐纳二极管的作用我们利用它调出255V因此电压追随器的输出电压V1亦为255V其后差动放大器之输出为Vo 10 V2-V1 10 255T100-255 T10如果现在室温为25℃则输出电压为25V。

MATLAB制作图形界面的应用

文章编号:1008-1402(2003)04-0402-05M AT LAB 制作图形界面的应用梁 辉(中南民族大学计算机学院,湖北武汉430074)摘 要: 应用M ATLAB 语言,设计图形用户界面的框架结构,设置了其控件的属性,并说明了M ATLAB 语言进行图形用户界面设计时的若干相关内容,并以污染物模拟软件图形界面为例说明.关键词: MAT LAB 语言;图形界面;污染物中图分类号: T P 319 文献标识码: A0 M AT LA B 概述M ATLAB 是集数值计算,符号运算及图形处理等强大功能于一体的科学计算语言.自产生之日起就具有方便的数据可视化功能,它不仅在一些其它软件所具有的功能(如二维图形和三维图形的绘制和处理等)方面更加完善,而且对于一些其它软件所没有的功能(如图形的光照处理,色度处理以及四维数据的表现等),M AT LA B 也有相应的处理函数,保证了用户不同层次的要求.1 M AT LA B 图形用户界面1.1 图形对象句柄每个图形对象都有一个句柄,只有获取了图形对象的句柄,才可以对该图形对象进行控制,设置或修改对象的有关属性.每创建一个对象,就为它建立一个唯一的句柄,用来唯一的确定该对象.计算机屏幕作为根对象,其对象句柄通常为零,图形窗口的句柄为整数,其它图形对象句柄为浮点值.1)获取对象句柄要获得对象句柄值,可通过以下三个函数:gcf 获得当前图形窗口的句柄值;gca 获得当前图形窗口内当前坐标轴的句柄值;gco 获得当前图形窗口内当前对象的句柄值;2)属性设置在获得对象的句柄值后,就可以利用该对象句柄设置或修改对象的属性了.在M AT LAB 中,可以通过函数get 获得图形对象的属性,通过函数set 设置或修改图形对象的属性.1.2 GU I 设计工具GUI 设计工具包括以下几个:对象设计编辑器:在图形对象内创建和安排各种对象;菜单编辑器:创建,设置或修改下拉式菜单和内容式菜单;对象属性查看器:可查看每个对象的属性值,也可修改和设置对象的属性值;位置调整工具:左右,上下对多个对象的位置进行调整;第21卷第4期佳木斯大学学报(自然科学版)Vol .21No .42003年12月Journa l of Ji a musi University (Natural Sci ence Edition )Dec .2003 收稿日期:2003-06-15作者简介:梁辉(1975—),男,湖北武汉人,中南民族大学计算机学院在读研究生硕士.对象浏览器:可观察当前设计阶段的各个句柄图形对象.1)对象设计编辑器在MAT LAB 命令窗口中,选择File 主菜单的New 子菜单,选择GUI,或者也可以在命令窗口中命令行上输入g uide,进入对象设计编辑器.如下图1所示:图1 对象设计编辑器 图2 对象属性编辑器选择上图左边某一控件拖到中间的对象设计区,即生成该对象,创建图形对象后,双击该对象,就会显示该对象的属性编辑器,如上图2所示.在对象设计编辑器界面的工具条上,有菜单编辑器,位置调整器,属性编辑器,对象浏览器的按钮,可用于方便地调用需要使用的GUI 设计工具.2)菜单编辑器利用菜单编辑器,可以创建,设置和修改下拉式菜单和内容式菜单.进入菜单编辑器,图3 对象属性查看器 图4 对象位置调整器使用菜单编辑器左上角的按钮用于添加或删除下拉式菜单和子菜单,以及对菜单的设置和修改.如上图3所示.3)对象属性查看器从对象设计编辑器界面工具条上选择Property Inspector 按钮,或者选择Edit 菜单或T ools 菜单下的Pr operty Inspector 子菜单,或者在命令窗口输入inspect 命令,就可以进入对象属性查看器界面.4)位置调整工具利用位置调整工具,可以对对象设计编辑区中对象设计区的多个对象位置进行调整.选择工具条上403第4期 梁 辉:MA TLAB 制作图形界面的应用Align Objects 按钮,或者选择Layout 菜单下Align Objects 子菜单,就可看到对象位置调整器界面,如上图4所示.第一栏用于垂直方向的位置调整,Align 表示对象间垂直对齐,Distribute 表示对象间垂直距离.在选中Distr ibute 中某个按钮后,Set Spacing 变为可用,即可设置对象间距离,其中距离单位为像素(Pix els).第二栏示水平方向的位置调整,可以同样的方法调整水平位置.5)对象浏览器利用对象浏览器,可查看当前设计阶段的各个句柄图形对象.从对象设计编辑器界面工具条上选择Object Bro wser,或者选择T oo l 菜单下Object Br ow ser 子菜单,就可以进入对象浏览器界面.如下图5所示.图5 对象浏览器1.3 回调程序的编制在对象设计编辑器界面上,要编制某一的控间的回调程序,即在该控件上点击右键,在弹出菜单中选择View Callbacks 子菜单,从中选择一种激活回调程序的方式,就可以编制程序了,如CreateFcn 指控件创建时调用该程序.2 M AT LA B 设计图形界面实例在M ATLAB 命令窗口点击'file'菜单,选择'new ',进入GUI 设计界面,如下图6所示:图6 GUI 设计界面点击GU I 图形页面左部'Static T ex t'按钮,拖拉到对象设计区生成该对象.双击该对象,即显示该对象的404 佳木斯大学学报(自然科学版) 2003年属性编辑器.即可修改该静态文本框的属性.改变'position'属性值设置静态文本框的位置[19.81275.412.54],'string '属性设置文本框上显示文本串为'河流水质模型计算机模拟',设置字体控制属性Fo ntAngle 确定字符倾向为'italic',FontSize 属性设置字体大小为30.0,Fortgro udCo lor 设置文本框上显示文本的颜色为蓝色,即完成水资源污染物模拟软件主页面的制作.完成界面设计之后,开始编制回调程序.在界面上点击鼠标右键,进入View Callbacks 子菜单,选择ButtonDow nFcn,表示在主页面上点击鼠标即运行回调程序,在程序编制界面,写上fig ur e(gul),显示g ul 界面,即11种污染物选择页面.在gul 页面选择框架控件Frame ,定义框架后即可定义框架中的控件了.选择Radio Button 按钮拖到框架上,改变'string'属性为'非降解的无机矿物',同样设置11个Radio Button 按钮,界面如下图7所示.设置每个按钮的回调程序,例如点击'非降解的无机矿物'按钮,figure (kuang w u),显示非降解无机矿物计算页面.图7 gu l 界面 图8 列表框按照同样的方法作出非降解无机矿物界面上框架,按钮,列表框等控件,如上图8所示.用户可以把采集到的数据录入图8的各文本框中,利用弹出式菜单Popup menus 设置时间步长的数值和单位,如图8中的3秒.'下一组数据'按钮部分回调程序中,x 2=get (h andles .edit 1,'string'); 取出第一个文本框中的数据jiance(x2);调用函数用于监测是否为合法数据x1(1,j)=str2nu m(x2);把取出的字符串类型数据转化为数值型u0(1,j)=9.8*h1(1,j)*j1(1,j)u0(1,j)=u0(1,j)^(1/2)计算摩阻流速set(han dles.text11,'string',u0(1,j));把算出的摩阻流速值写入界面dl1(1,j)=51*51*0.4*h1(1,j)*u0(1,j)/6;计算离散系数dl 0=dl 1(1,j )set(han dles.text12,'string',dl0);set(han dles.edit1,'string ','');记录下个数据后把各文本框清零准备下一次输入输入所有数据后,点击'下一时刻各点浓度'按钮,就会在回调程序中代入一系列的有限插分方程计算出河道上各点的下一时刻的浓度.tim=get(handles.pop upmen u1,'value');取出时间差值e4=get(han dles.popupmenu3,'value');取出时间单位for i=1:j q1(1,i)=ax1(1,i)*ux1(1,i);计算各点处流量end detav1=ax1(1,1)*x1(1,1); 计算单位体积 B(1,1)=1.0+(ax1(1,1)*dl1(1,1)*tim)/(detav1*x1(1,1))+q1(1,1)*tim/detav1405第4期 梁 辉:MA TLAB 制作图形界面的应用406 佳木斯大学学报(自然科学版) 2003年 C(1,1)=-(ax1(1,1)*dl1(1,1)*tim)/(detav1*x1(1,1))利用追赶法求解主元矩阵 Z(1,1)=(s1(1,1)*tim)/detav1+c1 ju1(1,1)=B(1,1) ju2(1,1)=C(1,1)/B(1,1) juy(1,1)=Z(1,1)/B(1,1) for i=2:j k=i-1 detax=x1(1,i)-x1(1,k) %计算坐标增值 detav=detax*ax1(1,i)%计算单位体积增量=断面积*坐标增量 A(1,i)=-(ax1(1,k)*dl1(1,k)*tim)/(detav*d etax)-(q1(1,k)*tim/detav) B(1,i)=1.0+(ax1(1,i)*dl1(1,i)+ax1(1,k)*dl1(1,k))*tim/(detav*detax)+q1(1,i)*tim/detav C(1,i)=-(ax1(1,i)*dl1(1,i)*tim)/(detav*detax) Z(1,i)=Ci(1,i)+s1(1,i)*tim/detav %计算时刻n时各值Ci(1,k)为 %追赶法求解 %第一步分解 ju1(1,i)=B(1,i)-A(1,i)*ju2(1,k) %计算ju1 ju2(1,i)=C(1,i)/ju1(1,i) %计算ju2 %第二步 ju y(1,i)=(Z(1,i)-A(1,i)*juy(1,k))/ju1(1,i)end%第三步Cjc(1,j)=juy(1,j)i=j-1;w hile(i>0) Cjc(1,i)=juy(1,i)-ju2(1,i)*Cjc(1,i+1) i=i-1end%求得了下一时刻所有点的非降解无机矿物浓度值Cjc(1,i)Cj=Cjc;经过上述处理,一个水环境污染物模拟软件的M ATLAB应用就大体完成了其中略去了许多具体的应用.3 结束语上面利用M AT LA B编制了水环境模拟软件,主要介绍了用户界面的设计与应用.,M ATLAT是近年发展起来的用于工程计算的变成软件,它的应用范围越来越广泛,在日益增多的具体工程问题中使用到.参考文献:[1] 姚东等.M AT LAB命令大全[M].北京:人民邮电出版社,2002.[2] 苏金明等.M AT LAB使用指南[M].北京:电子工业出版社,2002.[3] 楼顺天等.基于M AT LAB的系统分析与设计[M].西安:西安电子科技大学出版社,1999.APPLICATION OF GUI MAKING BASED ON MATLABL I AN G H ui(College of Information Science and Technology,South-Central Univers ity for Nationalities,Wuhan430074,China) ABSTRACT: The fram e str ucture of GU I is desig ned w ith MAT LAB,locate the co mponent pr operties of GU I are set and so me associated co ntents are illustrated in GUI designing.Besides,an ex-ample of making the GUI o f soft of simulating co ntaminants is given.KEY WORDS: M AT LAB language;graphic user interface;co ntaminant。

第三章 习题(带答案)

第三章判断题T 1 Linux操作系统的源代码是公开的,它是一种“自由软件”。

(判断)T 2 MATLAB是一种能用于数值计算的高级程序设计语言。

(判断)F 3 Windows系统中,不同文件夹中的文件不能同名(判断)F 4 Windows系统中,可以像删除子目录一样删除根目录。

(判断)F 5 Windows系统中,每一个物理硬盘只能建立一个根目录,不同的根目录在不同的物理硬盘中。

(判断)T 6 操作系统三个重要作用体现在:管理系统硬软件资源、为用户提供操作界面、为应用程序开发提供平台。

(判断)T 7 操作系统通过各种管理程序提供了“任务管理”、“存储管理”、“文件管理”、“设备管理”等多种功能。

(判断)T 8 计算机软件通常指的是用于指示计算机完成特定任务的,以电子格式存储的程序、数据和相关的文档。

(判断)T 9 软件产品是交付给用户使用的一整套程序、相关的文档和必要的数据。

(判断)T 10 软件是以二进位表示,且通常以电、磁、光等形式存储和传输的,因而很容易被复制。

T 11 为了延长软件的生命周期,常常要进行软件版本升级,其主要目的是减少错误、扩充功能、适应不断变化的环境。

(判断)T 12 在Windows系统中,按下Alt+PrintScreen键可以将桌面上当前窗口的图像复制到剪贴板中。

(判断)F [01]. 数据库管理系统是最接近计算机硬件的系统软件。

(判断)T [05]. 用Pentium4 的指令系统编写的可执行程序在PentiumⅢ中不一定能被执行;反之,用PentiumⅢ的指令系统编写的可执行程序在Pentium4 中一定能被执行。

(判断)F [07]. 所有存储在磁盘中的MP3音乐都是计算机软件。

(判断)F [09]. P3是世界著名的项目管理软件。

由于使用P3能管理一个大型工程系统的有关资源,因此,它应属于系统软件。

(判断)T [10]. 计算机软件包括软件开发和使用所涉及的资料。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档