基于MatlabGUI的预测控制仿真平台设计
基于MATLAB的计算机控制系统仿真平台的设计设计

基于MATLAB的计算机控制系统仿真平台的设计设计一、原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等。
)工作基础:了解计算机控制系统课程涉及的基本内容,熟练使用MATLAB 7软件。
研究条件:基于MATLAB 7的GUI(图形用户接口)程序设计。
应用环境:基于MATLAB 7的计算控制系统课程图形化的仿真平台的设计。
工作目的:熟练掌握MATLAB M文件的编写。
掌握计算机控制系统课程所涉及的最小拍有纹波、最小拍无纹波系统以及大林算法等基本内容。
完成基于MATLAB 7的GUI仿真平台程序M文件设计。
二、参考文献[1]邵年华. 水文时间序列几种预测方法比较研究[D]. 西安理工大学2010.[2]王莹. 基于MATLAB的永磁风力发电机动态仿真[D]. 大连理工大学2009.[3]李兴毓. 基于MATLAB的CFG桩复合地基优化设计研究[D]. 武汉理工大学2009.[4]黄师娟. 基于小波分析的时间序列预测模型及其应用研究[D]. 西安理工大学2009.[5]张宇. 嵌入式电脑横机可视化数据处理系统研究[D]. 东华大学2009.[6]吕辉榜. 基于MATLAB快速控制原型的磁悬浮控制系统研究[D]. 武汉理工大学2008.[7]朱会. 基于MATLAB的旋风分离器内气固两相流场的数值模拟[D]. 北京化工大学2007.[8]丘允阳.嵌入式GUI系统的研究与实现[D]. 电子科技大学2007.[9]韩雄振.基于统计学的预测结构域间相互作用方法的研究[D]. 吉林大学2006.[10]王震. 嵌入式GUI构件库的设计与实现[D]. 浙江大学2006.三、设计(研究)内容和要求(包括设计或研究内容、主要指标与技术参数,并根据课题性质对学生提出具体要求。
)1、掌握大林算法、最小拍有纹波、最小拍无纹波系统的算例仿真。
2、利用MATLAB 7中的GUI工具箱完成仿真环境的平台框架搭建。
基于MatlabGUI的预测控制仿真平台设计_秦辉

在算法模块中,对于一般的预测控制问题取定优化指标
为:
Pp
∑∑ min J (k) =
(qi ( j)[wi (k + j) − yˆi,PM (k + j|k)])2 +
如果个环节的不同阶次合成则每个环节都对应于这样一类递推关系所得到的输出再合成为是由各个输入线性叠加而成这样就可以精确的计算出仿真输出如图离散仿真计算仿真输出在算法模块中对于一般的预测控制问题取定优化指标是加权系数
第 18 卷第 10 期 2006 年 10 月
系 统 仿 真 学 报© Journal of System Simulation
Vol. 18 No. 10 Oct., 2006
基于 Matlab GUI 的预测控制仿真平台设计
秦 辉,席裕庚
(上海交通大学自动化研究所, 上海 200030)
摘 要:针对多变量预测控制系统,从克服 Matlab 仿真中数值解的弊端出发,提出了将预测模型
分解离散化精确递推的方法,从而有利于预测控制相关结论的验证。同时利用 Matlab 的图形用户
预测控制理论和方法的研究往往需要科学计算工具的 帮助。Matlab 作为一种拥有高速性能数值计算能力的科学 软件,在预测控制研究中得到了广泛的应用。特别是对于当 前把预测控制的复杂问题归结为 LMI(线性矩阵不等式)标 准形式之后,更加具有重要意义。然而使用 Matlab 的预测 控制工具箱进行系统仿真仍存在不少问题,突出的是各种新 算法难以加载,对模型失配的情况难以验证。特别对于求解 微分方程,Matlab 使用数值方法产生的误差可能会影响预测 控制理论的精确验证。因此,对于预测控制的研究有必要建 立 一 个 更 强 有 力 的 仿 真 平 台 。 本 文 利 用 Matlab GUI (Graphical User Interfaces)开发了预测控制的仿真平台软 件,为无约束和有约束多变量系统施加预测控制算法提供人 机交互的仿真环境,并且给出仿真结果分析。
基于MATLAB GUI控制系统仿真软件的设计与实现

摘要MATLAB语言是一种十分有效的工具,能容易地解决在系统仿真及控制系统计算机辅助设计领域的教学与研究中遇到的问题,它可以将使用者从繁琐的底层编程中解放出来,把有限的宝贵时间更多地花在解决科学问题上。
MATLAB GUI 是MATLAB的人机交互界面。
由于GUI本身提供了windows基本控件的支持,并且具有良好的事件驱动机制,同时提供了MATLAB数学库的接口,所以GUI 对于控制系统仿真的平台设计显得十分合适。
GUI对于每个用户窗口生成.fig和.m 文件。
前者负责界面的设计信息,后者负责后台代码的设计。
本文所做的研究主要是基于MATLAB GUI平台,结合控制系统基础理论和MATLAB控制系统工具箱,实现了用于控制系统计算机辅助分析与设计的软件。
本软件主要功能:实现传递函数模型输入、状态方程模型输入、模型装换、控制系统稳定性分析、系统可观性可控性判断,绘制系统奈奎斯特图、波特图、根轨迹图以及零极点分布图。
在继续完善的基础上能够用于本科自动控制原理教程的教学实验和一般的科学研究。
关键词:控制系统;MATLAB GUI;计算机辅助设计AbstractMATLAB language is a very effective tool,and can be easily resolved in the system simulation and control system of teaching in the field of computer-aided design and research problems,it could be the bottom of the user from tedious programming liberate the limited spend more valuable time to solve scientific problems.The MATLAB GUI is the interactive interface.As the GUI itself provides the basic control windows support,and has a good mechanism for event-driven,while providing the MATLAB Math Library interface,the GUI for control system simulation platform for the design of it is suitable. GUI window generated for each user. Fig and.M file. The former is responsible for the design of the interface information,which is responsible for the design of the background code.Research done in this article is mainly based on MATLAB GUI platform,the basis of combination of control system theory and MATLAB Control System Toolbox,the realization of control systems for computer-aided analysis and design software. The main functions of the software: the realization of transfer function model input,the state equation model input,the model fitted for the control system stability analysis,system observability controllability judgments、rendering the system Nyquist diagram、Bode plots、root locus and Pole-zero distribution. While continuing to improve based on the principle of automatic control can be used for undergraduate teaching course experiments and scientific research in general.Key words:Control System;MATLAB GUI; Computer-assistant design目录第1章概述 (1)1.1 论文选题背景和意义 (1)1.2 计算机辅助分析与设计在控制系统仿真中的发展现状 (1)1.3 本文主要内容 (3)第2章控制系统与MATLAB语言 (4)2.1 控制系统理论基础 (4)2.2 MATLAB语言与控制系统工具箱 (5)第3章 MATLAB GUI简介及应用 (9)3.1 MATLAB GUI (9)3.2 软件设计步骤 (10)第4章仿真系统测试与演示 (16)4.1 控制系统的模型输入 (16)4.2 控制系统的稳定性分析 (19)4.3 控制系统可控可观性分析 (20)4.4 控制系统频率响应 (23)4.5 控制系统时域响应 (27)4.6 控制系统根轨迹绘制 (28)结论 (31)参考文献 (32)致谢 (33)第1章概述1.1 论文选题背景和意义自动控制原理是自动控制专业和自动化专业的主要课程之一,是研究自动控制技术的基础理论课,是必修的专业基础课程。
基于MatlabSimulink和GUI的运动控制系统虚拟实验平台设计

谢谢观看
2、提高效率:通过计算机硬件虚拟实验平台进行实验,用户可以在短时间 内完成实验设计、模拟和测试等整个过程。此外,该平台还可以实现多用户同时 使用,提高了实验效率。
3、增强安全性:在虚拟环境中进行实验,可以避免由于误操作或者不规范 操作导致的设备损坏或者人员伤害,增强了实验的安全性。
4、丰富的实验资源:计算机硬件虚拟实验平台可以提供丰富的实验资源, 包括各种类型的CPU、内存、I/O接口等,可以满足不同用户的需求。
四、结论
计算机硬件虚拟实验平台的设计与实现具有重要的现实意义和实际应用价值。 该平台可以降低实验成本、提高实验效率、增强安全性以及提供丰富的实验资源。 为了实现该平台,我们需要选择合适的硬件设计工具、模拟和仿真工具、调试工 具和集成开
发环境等工具,并提供可视化工具帮助设计人员更好地理解和分析实验结果。 未来的计算机硬件虚拟实验平台将更加完善和强大,为计算机硬件设计和教育领 域提供更多的可能性。
2、智能控制:通过遥控器、手机App等设备控制家电设备,如空调、加湿器、 灯光、窗帘等;支持多种智能场景模式,如离家模式、会客模式、睡眠模式等; 将控制状态通过GUI界面实时展示给用户。
参考内容二
随着科学技术的发展,虚拟仿真实验平台已成为实验教学中的重要工具。虚 拟仿真实验平台可以为学生提供一个高度仿真的实验环境,帮助学生更好地理解 和掌握实验原理和方法。在众多虚拟仿真实验平台中,基于LabVIEW的平台设计 具有广泛的应用前景。
3、调试工具:调试工具可以帮助设计人员找出设计和实现中的错误。JTAG 是一种常用的调试工具,它可以用来调试硬件设计和软件代码。
4、集成开发环境(IDE):提供一个集成的开发环境,可以使得设计人员更 容易地进行设计和调试。该环境应包括编辑器、编译器、仿真器和调试器等工具。
利用MATLABGUI设计控制系统分析与设计界面

利用MATLAB GUI设计控制系统分析与设计界面1引言图形用户接口GUI是用户和计算机程序之间进行信息交流的方式。
通过图形用户界面,用户不需要输入脚本或命令,不需要了解任务的内部运行方式,计算机在屏幕显示图形和文本,若有扬声器还可产生声音。
用户通过输入设备,键盘,鼠标,麦克风等与计算机进行通信。
图形用户界面GUI中包含多个图形对象,如图标,菜单,文本的用户界面。
以某种方式选择或激活这些对象,引起相应的动作或变化,最常用的激活方式是用鼠标控制屏幕上的鼠标指针运动。
图形用户界面GUI具有操作方便,控制灵活的特点,已成为现代应用程序的主要方式。
用MATLAB GUI设计一个控制系统分析与设计界面,将系统的传递函数输入到GUI中,可以方便的绘制系统的各种常用曲线,如阶跃响应曲线,Nyquist曲线可以用于系统稳定性的分析,我们可以有意识的输入系统的开环传递函数或是闭环传递函数,分别对应Nyquist曲线和阶跃响应图。
根轨迹对控制系统的分析和设计也很有价值。
零极点图可以方便的查看系统的零极点分布,对于配置系统的极点进行系统校正具有重要意义。
Bode图和幅频响应图对系统的频率响应分析是一种手段,而阶跃响应指标则可更细致的观察系统的性能。
用GUI设计控制系设计控制系统分析与设计界面不仅在工程上有参考意义,在我们的学习过程中也很有意义,可以帮助我们更深入更容易理解控制系统的分析与设计意义。
传递函数是控制系统的核心,在这里设计了两种常用的传递函数输入形式,第一种可以称为直接形式,因为他的传递函数是已知的,我们可以将系统或以开环传递函数或闭环传递函数的形式输入GUI中,进行相应的分析设计;第二种是状态变量形式,这里开环或闭环取决于转换而来的状态空间方程,因为开环和闭环系统都可以转换为状态空间,因而在进行相应的计算和绘图时需注意。
2问题分析题目要求以MATLAB GUI设计图形用户界面,设计控制系统分析与设计界面,界面中包含控制系统中常见的功能,传递函数的输入和创建,性能指标计数显示,绘制常用曲线等。
基于Matlab_GUI界面的计算机控制系统设计及Simulink动态仿真报告

基于Matlab_GUI界面的计算机控制系统设计及Simulink动态仿真前言计算机控制系统是工业现代化的重要标志之一, 而计算机控制系统的设计又往往涵概了信号与系统、自动控制、接口技术、数值分析等多方面的知识。
因此要想设计出理想的数字调节器, 能否选择了恰当的计算机设计语言便显的为重要。
M at lab 主要包括了主包、Simu link 模块和工具箱三大部分。
它内嵌了大量的算法控制函数, 是当前工程计算的标准之一。
下面就如何利用该软件实现对带纯滞后环节的典型计算机控制系统的设计加以论述。
第一章理论算法实现1.1系统分析1.1.1控制系统建模在大多数工业过程控制中, 带有纯滞后特性的控制对象是十分常见的。
而对许多控制对象来说, 都可以抽象为一个一阶或二阶惯性环节和一个纯滞后环节的串接。
因而, 由计算机进行直接数字控制(DDC) 的典型反馈控制系统便可用以下框图加以表示, 如图1.1所示。
R(s)图 1.1 计算机反馈控制系统框图图中: R (s) ——输入信号;R (z ) ——经采样后的输入脉冲序列(采样周期为T ) ;E (z ) ——误差信号;D (z ) ——数字调节器(计算机设计的软件模块) ;ZOH ——零阶保持器;U (z ) ——数字调节器的输出信号;G0 (s) ——控制对象(包括纯滞后环节和惯性环节G (s) ) ;G1 (s) ——ZOH 与G0 (s) 组成的广义对象(输出为连续量) ;G1 (z ) ——广义对象的Z 变换(输出为离散量) ;Y (s)、Y (z ) ——输出信号, 后者为前者的采样离散信号。
1.1.2控制对象G0 (s)控制对象可抽象为一个一阶(或二阶) 惯性环节, 串联一个纯滞后环节。
其传递函数如下(本文主要针对一阶的情况进行讨论) :G0 (s) =Ke-ts/T0s+1 或G0 (s) = Ke-ts/(T 1s + 1) (T 2s + 1)为了减少系统超调, 实现系统的完全跟随, 现设计一个数字调节D (z ) (软件模块) , 与广义传递函数G1 (z ) 串联, 组成典型的计算机反馈控制系统。
基于Matlab GUI的自动控制可视化仿真软件开发
基于Matlab GUI的自动控制可视化仿真软件开发ZHANG Shao-jie;LIU Chun-sheng【摘要】本文介绍一种采用Matlab GUI开发自动控制可视化仿真软件平台.该软件平台以电机调速、液位、磁悬浮、飞行控制和倒立摆等五个常见工程控制系统为实例,涉及到各系统的数学模型、根轨迹分析、频域分析、PID参数设计等自动控制理论知识点,并提供系统响应的动画演示、响应曲线、性能指标等分析和显示功能.该软件平台界面友好,形象直观,简单易用.【期刊名称】《电气电子教学学报》【年(卷),期】2018(040)006【总页数】6页(P105-110)【关键词】自动控制理论;仿真软件开发;Matlab GUI【作者】ZHANG Shao-jie;LIU Chun-sheng【作者单位】;【正文语种】中文【中图分类】TP2730 引言“自动控制理论”课程的特点是系统性、理论性强以及相对较抽象,这使得学生对其理论知识难于理解,需要借助于实验加深对课堂学习内容的理解[1]。
传统的自动控制实验存在课时紧张、设备陈旧、操作复杂等缺点。
此外,在自动控制领域里的科学研究和工程应用中有大量的繁琐的计算与仿真曲线绘制任务,给控制系统的分析和设计带来了巨大的工作量。
为此,本文采用面向对象设计的软件开发方法,提出一种基于Matlab GUI的自动控制可视化仿真软件平台的设计方案,借助Matlab强大的控制系统工具箱和交互性能良好的图形用户界面GUIDE(Graphical User Interface Development Environment)开发环境,针对电机调速系统、液位控制系统、飞机纵向控制系统、磁悬浮球控制系统和倒立摆控制系统这些典型的系统进行软件设计[2~3]。
通过该软件,用户可以在不需要掌握深入的Matlab编程知识的情况下,方便地对系统进行控制原理和方法的分析与设计,也便于自动控制理论学习的学生利用所学的控制知识对系统进行验证。
实验二:基于MATLAB_GUI的自动控制原理虚拟实验平台
96科技创新导报 Science and Technology Innovation Herald2011 NO.35Science and Technology Innovation Herald工 程 技 术引言《自动控制原理》是电气信息类专业的核心课程,理论性强,实验是理解和消化课程内容的重要途径。
目前许多高校的实验教学还处于传统模拟实验阶段,利用集成封闭的实验箱,将相应的有源网络模块连接成典型环节或系统,再施加典型信号,通过示波器观察实验结果。
这种实验方法存在明显不足:(1)实验箱集成度高,学生对实验呈现出盲目性,同时容易损坏仪器设备。
(2)知识学习和实验动手操作相互分离,使学生缺乏学习主动性和创造性。
(3)由于元件非线性等因素,使实验结果与理论知识差异较大。
MATLAB是面对科学计算的高性能可视化仿真软件,GUI(Graphical UserInterfaces)是一种新型的图形用户界面。
通过MATLAB/GUI设计和开发《自动控制原理》虚拟实验平台,不但能很好地解决传统实验存在的问题,加深对自动控制原理理论课程内容的理解,更能使学生摆脱复杂的数学推导,对新知识产生浓厚的探索兴趣。
1 虚拟实验平台的总体设计整个平台由控制面板、登录界面、实验界面和主界面四大模块组成。
控制面板:设置进入按钮和提供一些简单的信息,如研制单位,研制人员。
登录界面:主要用于用户登录,还包括用户注册、修改密码、用户管理的功能。
主界面:用于各实验界面的调用,并对平台功能和使用法方法进行介绍。
实验界面:用于各实验的仿真操作,包括设置参数、指标计算、数据输出和保存等功能。
2 用户界面的设计2.1实验界面以根轨迹为例,介绍实验界面的设计。
先在草纸上构思界面的草图,设计坐标轴(axes)、标注以及显示相关输出参数需要8个静文本框(static text),6个编辑文本框(edit text)来输入参数,四个控制按钮(push button)来控制图形的显示以及相关操作。
基于Matlab_Simulink和GUI的运动控制系统虚拟实验平台设计
实验室研究与探索296Vol.29No.6第卷第期20106Jun.2010RESEARCHANDEXPLORA TIONINLABORA TORY年月Matlab/SimulinkGUI基于和的运动控制系统虚拟实验平台设计,尚丽淮文军(,215104)苏州市职业大学电子信息工程系江苏苏州:MatlabSimulinkGUI,摘要利用环境中的仿真工具箱和友好的界面设计和实现了运动控制系统课。
程的可视化虚拟实验平台的构建该实验平台包含运动控制系统实验教学中典型的仿真模型和仿真实,,例分析能够实现硬件实验所不能完成的项目帮助学生更直观地理解运动控制系统的组成和工作原,,、。
理增强感性认识培养学生的研究能力综合应用能力和创新能力:M atlab/Simulink;GUI;;关键词仿真工具箱界面运动控制系统虚拟实验平台+:TP273.4:A:1006-7167(2010)06-0066-06中图分类号文献标识码文章编号TheVirtualExperimentPlatformDesignofAuto-controlSystemBasedonM atlab/SimulinkandGUISHANGLi,HUAIWen-jun(DepartmentofElectronicInformationEngineering,SuzhouVocationalUniversity,Suzhou215104,China)Abstract:Utiliz ingSimulinksimulationtoolboxandfriendlyGUIinterf aceinM atlabsoftware,thevisualvirtualexperi-mentplatf ormoftheauto-controlsystemcoursewasdesignedandrealiz ed.Thisexperimentplatformcomprisesoftypicalsimulationmodelsandexampleanalysisi nexperimentalteachingofauto-controlsystem.Itcandosomeexperiments,whichcan’tberealiz edbyphysicaldevices,andhelpstudentstocomprehenddirectlythecomposingandtheoryof auto-controlsystem,enhancestudents’perceptualknowledge,andculturestudents’a bilityofresearch,syntheticallyappli-cationandinnovation.Keywords:M atlab/Simulinksimulationtoolbox;GUIinterf ace;auto-control;virtualexperimentplatform,,从培养的角度来说更重要的要设计或选用这些系统1引言是培养学生综合运用知识来解决工程实际问题的能。
基于 MATLAB/GUI 的过程控制仿真实验系统设计
基于 MATLAB/GUI 的过程控制仿真实验系统设计王红梅;张厚升;邢雪宁【摘要】为使学生更好地理解控制系统的结构及其特点,设计了基于MATLAB/GUI的过程控制仿真实验系统。
仿真系统借助GUIDE良好的界面管理,分层次设计了液位单回路控制、加热炉温度串级控制、锅炉汽包水位控制等八个子实验。
每个实验界面可进行参数设置、仿真结果显示、重要信息提示。
后台程序采用MALTAB 的m 文件或 Simulink实现。
该系统知识全面、内容设计合理、界面友好、使用简单、可操作性强。
%In order to make students better understand the structure and characteristics of the process control system ,the process control simulation system based on MATLAB/GUI was de‐signed .With the help of a GUIDE good interface management ,the simulation system hierarchical designs eight children experiment .For example ,liquid level single loop control ,furnace tempera‐ture cascade control and boiler drum water level control .Each experiment has the same charac‐ters:parameters can be set ,simulation results can be shown ,important messages are pointed out .Daemons use MALTAB m file or Simulink .This system has the characteristics of compre‐hensive knowledge ,reasonable content design ,friendly interface ,simple use ,and strong maneu‐verability .【期刊名称】《山东理工大学学报(自然科学版)》【年(卷),期】2015(000)006【总页数】3页(P58-60)【关键词】过程控制;MATLAB/GUI;仿真实验【作者】王红梅;张厚升;邢雪宁【作者单位】山东理工大学电气与电子工程学院,山东淄博255049;山东理工大学电气与电子工程学院,山东淄博255049;山东理工大学电气与电子工程学院,山东淄博255049【正文语种】中文【中图分类】TP373过程控制课程是自动化学科的主干专业课程,该课程理论性和实用性都很强.目前课程的体系结构主要是授课加实验的模式.通过对学生实验情况的观察,发现学生不能把课程知识和实验很好的结合,对系统的结构特点理解欠佳,致使做实验时一知半解,影响实验效果.鉴于此,本文开发的基于MATLAB/GUI的仿真实验系统重点弥补以上缺憾.一方面,借助MALTAB友好的界面显示特点使学生对理论知识有更直观的理解,另一方面,通过对仿真系统的构造加强对系统结构的认知,为今后在过程控制实验装置上进行实验打下基础.与传统实验装置相比,该仿真实验系统不需要传感器、变送器、执行器等实验装置,仅需有安装MATLAB软件的计算机就可进行实验,不受场地和时间的限制,实验投入少,实验成本低,而且可开放性强.过程控制课程主要包含三个核心内容:1)各种形式的系统结构,比如,单回路、串级系统、前馈-反馈系统等,应该重点掌握各结构的组成、特点及应用场合.2)理论分析,通过理论分析进一步验证系统的结构特点.3)参数整定,可按照一定的整定步骤,实现参数的最优化[1-2].为了使学生对以上内容有更好的掌握,仿真系统设计的总体思路是借助MATLAB/GUI仿真工具,直观、简洁的展示抽象的理论知识,借助MATLAB/Simulink,系统、全面的反映过程控制系统的结构特点和参数整定.本仿真系统考虑教学内容和学生的认知规律,由简入难,逐层的设计各实验.实验系统总体分为:简单系统、高性能系统、特殊系统、复杂系统四部分,每个系统下面又有相应的子实验.同时,子实验的实例选取特别注意和实际应用相结合.系统的整体结构如图1所示.MATLAB的GUI为用户提供了设计良好的人机交互界面的工具,通过它可以更好的管理程序,使操作变的更为简单、便捷.GUIDE界面中提供了按钮、列表框、复选框、文本框、滑块、坐标系、菜单等控件.界面生成过程主要包括界面设计和程序实现,具体步骤如下:1) 明确系统功能后,通过合理布置控件,制作友好的静态界面.2) 按一致性原则对各控件的属性进行设置.3) 根据功能要求,编写各控件的回调函数.4) 系统测试运行.2.1 统主界面设计的仿真系统的主界面主要实现两个功能:1)展示实验的整体内容;2)通过相应的控件进入到子实验.为此,设计了如图2所示的主界面.四个Panel控件用于区分四个不同种类的子实验,每个Panel里放有两个控件用于进入不同的子实验.每个Pushbutton的回调函数均完成执行关闭主界面并打开相应子实验界面功能.整个主界面力求做到设计简洁,层次清晰,使用方便.2.2 子实验界面当在主界面选择了子实验后,系统进入相应的实验.本系统共包括8个子实验,界面设计主要分为三个区域:1)参数设置区,该部分主要实现操作人员对系统参数的设置;2)显示区,将仿真结果以图形化的方式进行显示;3)子实验的仿真结构图及其它信息显示区,该区便于操作人员了解子实验系统的构成.本文以PID参数作用分析子实验及前馈—反馈子实验分别进行说明.PID参数作用分析子实验是通过分析系统的阶跃响应随某一参数的变化趋势,来更好的理解各参数的作用[3].这样界面操作中就需要能输入不同数值的比例系数、积分系数、微分系数,并将阶跃仿真结果进行显示.设计的PID参数作用分析子实验界面如图3所示.PID参数作用分析子实验GUI界面右边区域可以根据需要利用Edit控件设定比例、积分、微分系数,每个参数的意义及可变化的维数利用Text控件说明.参数设置完毕后点击相应的“开始仿真”按钮,则后台仿真程序运行,完毕后在左边的显示区域显示系统随参数变化的阶跃响应曲线.图3显示的是比例系数Kp从0.5变化到1.5时的系统阶跃响应曲线.界面中还提供了仿真中的重要信息——被控对象数学模型.当实验结束后可通过“返回”按钮回到图2系统主界面,继续进行其它子实验.本界面很关键的一点就是编写“开始仿真”按钮的回调函数.首先需要获取界面中用户在Edit控件输入的比例、积分或微分参数;然后将参数由字符型转化成数值型用于阶跃响应分析.前馈—反馈控制仿真实验是以工业中常用的换热器出口温度控制为例[4],其中被加热液体的流量变化比较剧烈,采用前馈对该干扰进行补偿.该实验通过比较前馈-反馈控制与反馈控制的阶跃响应曲线的性能区别来体现前馈控制的作用.干扰信号取脉冲干扰和随机干扰两种形式,可通过界面中的按钮来进行选择.设计的前馈—反馈控制子实验界面如图4所示.在进行实验前,需先将前馈—反馈MATLAB/Simulink仿真程序中的手动开关打到相应的位置.Simulink仿真程序中的Manual Swith用于选择是否加入干扰,Manual Swith1用于选择干扰类型,Manual Swith2用于选择是否进行前馈补偿.界面中所有控件的回调函数都可以看到,学生一方面可以学习如何编写代码,另一方面可以根据需要对界面进行改进,更进一步还可以设计新的功能界面,这也是MATLAB的优势所在.子实验的运行都是通过后台的MATLAB的m文件或Simulink程序来实现.MATLAB/Simulink在编程方面尤其简便,通过选取相应的模块并连接,则能构建仿真系统.而且Simulink除了丰富的工具箱,还提供了用户自定义模块,方便用户使用.本文以基于MATLAB/Simulink的串级控制仿真程序为例进行介绍.程序通过串级控制与单回路系统的比较,理解串级结构形式的改变带来的性能变化,再通过对一次干扰和二次干扰的抗干扰能力的仿真分析,学习串级系统的抗干扰特点.仿真实例取自实际应用中的反应釜加热炉温度控制系统[5],其中,加热炉温度为主变量,夹套温度为副变量的串级控制系统.构建的串级控制仿真系统结构如图5所示.程序中通过Manual Swith选择是单回路控制还是串级控制,Manual Swith1选择是否加入一次干扰,Manual Swith2选择是否加入二次干扰.将基于MATLAB/GUI的过程控制仿真实验系统应用于《过程控制》的教学,使学生直观的领会和理解该课程的各系统结构和理论知识,对调动学生的学习积极性以及提高学生的实验兴趣和实验能力都有相当的作用.一方面,学生通过MATLAB这一仿真平台,可以更快捷有效的编写仿真实验,其超强的计算能力和丰富的图形界面显示给知识的学习带来意想不到的效果;另一方面,教师可在授课时使用该软件进行理论知识的直观演示,增强知识的传授.同时,结合过程控制所学知识以及MATLAB软件,学生可自行根据需求将实验装置中没有的一些复杂控制系统通过仿真实验的形式加以实现,从而极大的培养学生学习能力.【相关文献】[1] 黄德先, 王景春, 金以慧. 过程控制系统[M]. 北京: 清华大学出版社, 2011.[2]潘永湘, 杨延西, 赵跃. 过程控制与自动化仪表[M]. 第二版. 北京:机械工业出版社, 2007[3]何佳佳, 候再恩. PID参数优化算法[J]. 化工自动化及仪表. 2010, 37(11): 1-4.[4]孙秀丽, 王培培. 前馈-反馈控制系统的具体分析及其MATLAB/Simulink仿真[J]. 中国集成电路, 2013(9), 54-58.[5]罗及红. 基于PID算法的炉窑温度串级控制系统设计[J]. 计算机测量与控制,2012, 20(12): 3243-3245.。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.2 仿真算法中的几个问题
作为仿真平台,对于算法应该具有可扩展性,并且提供
良好的接口,以便其他算法动态加载。本平台主要针对预测
控制的典型算法,如 DMC,GPC,MAC 的预测控制算法进
行设计,并且对于其他复杂的预测控制算法(如非线性 MPC
算法,鲁棒 MPC 算法等)提供预留接口。下面就离散化仿
as + b s2 + cs + d
也作类似变换。如果
yi,j
是由这两
个环节的不同阶次合成,则每个环节都对应于这样一类递推
关系,所得到的输出再合成为 yi,j,而第 i 个输出 yi 是由各个 输入 ui 所得到的 yi,j 线性叠加而成,这样就可以精确的计算 出仿真输出,如图 2 所示。
图 2 离散仿真计算仿真输出
引 言1
1 仿真平台总体设计
预测控制(Predictive Control)是由 Richalet 等人[1,2]于 1978 年首次提出的。近三十年来,预测控制被广泛应用于 工业领域,特别是针对复杂的控制对象和多样化的控制要 求,具有很好的控制效果。对于预测控制的理论和方法研究, 也始终是控制的热点领域之一。
Abstract:Dealing with the multi-variable predictive control system, from the point of view on avoiding Matlab simulation errors, a new method was proposed, in which the predictive model was decentralized and analyzed accurately. It helps to prove some related conclusions of predictive control. At the same time, Graphic User Interface (GUI) of Matlab was used to design a simulation platform of predictive control, which provides good interaction and extensibility. At last, some simulation examples were given to show the effectiveness of the platform. Key words:predictive control; GUI; simulation platform; extensibility
预测控制理论和方法的研究往往需要科学计算工具的 帮助。Matlab 作为一种拥有高速性能数值计算能力的科学 软件,在预测控制研究中得到了广泛的应用。特别是对于当 前把预测控制的复杂问题归结为 LMI(线性矩阵不等式)标 准形式之后,更加具有重要意义。然而使用 Matlab 的预测 控制工具箱进行系统仿真仍存在不少问题,突出的是各种新 算法难以加载,对模型失配的情况难以验证。特别对于求解 微分方程,Matlab 使用数值方法产生的误差可能会影响预测 控制理论的精确验证。因此,对于预测控制的研究有必要建 立 一 个 更 强 有 力 的 仿 真 平 台 。 本 文 利 用 Matlab GUI (Graphical User Interfaces)开发了预测控制的仿真平台软 件,为无约束和有约束多变量系统施加预测控制算法提供人 机交互的仿真环境,并且给出仿真结果分析。
(2) 提供一定的可扩展性。通过给定接口,实现新算法 (M 文件或 C 文件)的动态加载。
·2778·
第 18 卷第 10 期 2006 年 10 月
秦 辉, 等:基于 Matlab GUI 的预测控制仿真平台设计
Vol. 18 No. 10 Oct., 2006
预测控制的仿真平台之所以基于 Matlab GUI 进行设 计,是为了依托 Matlab 环境提供的基本科学计算,减少开 发周期。通常而言,Visual Basic/C++,Java 等面向对象的 程序语言是设计平台很好的工具,这里之所以选择 Matlab 是因为其提供了丰富的科学计算函数,比如实现预测控制算 法往往需要的各种向量矩阵运算,线性方程和二次规划的求 解。因此可借鉴 Matlab 基本的 API 函数,比如矩阵求逆 (inv)、矩阵维数(size)、线性方程求解(X=A\B),这些 均是其他语言所无法媲美的。更为重要的是,Matlab GUI 开发环境提供了创建用户界面的捷径。在这一环境中,可以 方便地创建各种图形句柄对象,实现仿真平台的用户界面。
收稿日期:2005-07-20
修回日期:2006-05-19
基金项目:国家自然科学基金(60274013,60474002);上海市科技发展
基金(04DZ11008)。
作者简介:秦辉(1981-), 男, 上海人, 硕士生, 研究方向为预测控制、大
系统优化策略等;席裕庚(1946-), 男, 上海人, 教授, 博导, 研究方向为
(1) 模型预测控制工具箱一般调用 Matlab 的基本 API 函数,在求解微分方程等问题时会使用某些数值方法(如欧 拉法,欧拉预估-校正法,龙格-库塔法等)。这些求解过程 会引入截断误差、舍入误差和数值稳定性等问题,这对于精 确仿真分析是不利的。
(2) 模型预测控制工具箱仅仅提供了基本函数,并未针 对一类问题给出一整套设计方案,也未给出仿真结果分析。
− −
e− pT e− pT
(4)
则输入输出的递推关系为:
·2779·
第 18 卷第 10 期 2006 年 10 月
系统仿真学报
Vol. 18 No. 10 Oct., 2006
yi, j (k
+ 1)
=
e− pT
yi, j (k ) +
b p
(1 − e− pT )u j (k )
(5)
对标准环节
(3) 一般 Matlab 控制台程序以命令形式调用模型预测 控制工具箱的函数,这种形式往往不象人机交互界面那样直 观,也不易数据处理,而且给程序代码的维护带来了不少困难。
正因为这些困难与不足,有必要设计基于 Matlab GUI 的预测控制仿真平台,同时它还能够:
(1) 提供良好的人机交互仿真环境,便于用户在各种参 数条件下的仿真实验。
图 1 系统框架模块
值得注意的是,算法嵌入模块在有无约束时处理方式的 不同。对于无约束问题来说,可以直接利用输入模型和系统 参数,离线计算出控制输出量的解析计算公式,再进行在线
仿真。而对于有约束问题而言,需要组成非线性规划问题求 解控制量,并在线实施。在这两种情况下,必须构造不同的 算法子模块,以供算法主模块调用。
真计算和无约束控制量计算问题作进一步的说明。
在仿真模块中,对于线性多变量系统而言,以传递函数
形式给出仿真对象:
⎡ g1,1 g1,2 L g1,nv ⎤
Y
(s)
=
G ( s )U
(s)
=
⎢ ⎢ ⎢
g 2,1 M
g 2 ,2 M
L O
g 2,nv M
⎥
⎥ ⎥
U
(s)
(1)
⎢ ⎣
g
ny
,1
g ny ,2
第 18 卷第 10 期 2006 年 10 月
系 统 仿 真 学 报© Journal of System Simulation
Vol. 18 No. 10 Oct., 2006
基于 Matlab GUI 的预测控制仿真平台设计
秦 辉,席裕庚
(上海交通大学自动化研究所, 上海 200030)
摘 要:针对多变量预测控制系统,从克服 Matlab 仿真中数值解的弊端出发,提出了将预测模型
2 基于 Matlab GUI 仿真平台的实现
本平台的实现是在 Matlab 的图形用户界面(GUI)设计环 境下完成。利用 Matlab 的 API 函数与自定义模块结合形成总 体算法框架,并且整合仿真模块,以形成完整的仿真平台。
2.1 系统详细实现
系统详细设计是平台实现的具体步骤。首先是输入输出 设计:通过输入参数构建系统对象,并且离散化,以便进行 算法设计。其次是算法设计:无约束的预测控制通过上述描 述的算法完成控制向量的计算,进而设计如下函数:function [y,u] = mympcsim(plant, model, controller, tfinal, setpoint)来 仿真系统控制输入和系统的输出;而对于有约束预测控制算 法来说,设计如下函数:function [y,u] =mycmpc(plant, model, ywt,uwt,M,P,tend,r,ulim,ylim),这里 ulim 和 ylim 是 u 和 y 的 约束。最后是数据分析设计:使用 axis 控件来展现各种响 应曲线,并且利用顺序搜索法对曲线各点遍历,从而确定用 户搜索数据节点。
预测控制、大系统和复杂系统控制、智能机器人系统与技术等。
总体设计往往是系统设计的核心。系统设计的初衷、目 的和总体构架等应得到通盘考虑。这将有利于设计出高效实 用的仿真平台。
1.1 系统设计分析
目前在 Matlab 中具有模型预测控制工具箱,它提供了 分析和设计模型预测控制系统的一系列函数。然而在实际应 用中存在如下不足:
如图 1 所示,输入模块主要完成线性对象、模型(两者可 以不同)参数及系统约束的输入。线性对象的输入可采用传 递函数或状态空间形式。以传递函数为例,需传入传递函数 矩阵各个单元的分子分母系数。输入模块将模型和约束传入 算法模块,完成各种预测控制算法(包括 DMC[3]、MAC、 GPC[4]等算法)的加载,以便在线计算出最优控制量。仿真 模块是对实际对象的模拟,它根据算法模块给出的控制输入 仿真计算出系统输出,而模型预测模块则利用算法已知的模 型信息预测控制输出。在模型与对象失配时,这两个模块的 输出不同,误差信息反馈到算法模块中进行校正,仿真模块 的输出结果传递给输出模块,输出模块主要完成以图形展现 各类响应曲线,显示数值结果,进行数据分析。上述模块均 由主控模块来协调和控制,以完成系统整体以滚动循环方式 的仿真。