当前位置: 首页 > 专利查询>中南大学专利>正文

基于MATLAB引擎的可视化过程控制实时仿真方法技术

技术编号:8593433 阅读:257 留言:0更新日期:2013-04-18 06:31
本发明专利技术公开了一种基于MATLAB引擎的可视化过程控制实时仿真方法,基于三层架构的仿真系统实现实时仿真,用户界面层:在Visual?c++即VC环境下,加载Visual?Graph?ActiveX控件,形成用户界面;数据管理层:用于实现运行数据管理和模型数据管理;仿真运行层:对存储于MATLAB?workspace中的数据以及对由MATLAB运行时生成的数据文件进行访问,并基于MATLAB引擎对数据进行运算,得到仿真结果数据;该基于MATLAB引擎的可视化过程控制实时仿真方法,不但充分利用了MATLAB的强大数据处理功能,还具有VC界面人性化、操作使用方便的优点。

【技术实现步骤摘要】

本专利技术涉及一种基于MATLAB引擎的可视化过程控制实时仿真方法,是一种基于用户操作层、数据管理层、后台运行层三层组成的可视化过程控制实时仿真系统的设计方法。
技术介绍
随着我国经济的飞速增长和工业自动化程度的快速提高,各种计算机仿真系统广泛应用于各种工业生产过程。这些系统所使用的控制算法,绝大多数提供的是单变量PID等常规控制方法,而少有先进的控制策略。这些常规控制方法的仿真系统简单易用,深受工业界的欢迎,但随着工业生产过程规模扩大和日益复杂化,工业生产过程具有多变量、强耦合、非线性、大时滞以及不确定性等特点,使得生产现场难以对自动化系统及相应的优化控制软件进行充分调试和实验。有些计算机控制系统虽配置了先进控制软件,但需采用脚本语言形式实现控制算法组态,这对于那些具有实际过程控制经验而缺乏编程知识的用户来说使用起来甚为困难。即便对于精通编程知识的用户,复杂控制系统的组态也非一件易事。经过多年的自主创新和对外合作,企业已经具有较高的自动化水平,现已经建有各种较为先进的控制系统。技术人员通过在高校的学习和多年的操作,不论是理论水平还是实际的动手操作能力,都有了很大的提升。连续工业过程的控制与优化研究通常不能直接操作生产装置,而是要通过实验验证以后才能实际应用。为了降低反复进行实验的成本,开发和设计相应的软件实验平台是必要的。国外已经有了多年的软件开发经验,并有些已经形成了垄断。即便是如此,这些软件的针对性不强,且价格昂贵。而且国内企业现有的自动化水平以及先进控制算法的开发和运用与国际领先水平还有一定的差距。现面临已建控制系统维护和优化,亟需一个通用的过程控制仿真平台,来对生产各种对象模型和组态控制模块模型提供数据支持。在目前的过程控制仿真平台中,仿真平台对软件和硬件的依赖比较强,同时仿真平台往往针对的是某个过程缺乏一定的通用性。研制一个面向工业现场的、可视化的、图形控件的,能够非常直观、生动地模拟工业系统的,摆脱依赖实际硬件的测量,实现以软件为中心的,能够在一个和实际过程系统相似的环境中对先进控制的控制方案、策略和算法进行大量仿真实验的过程控制仿真实验平台势在必行。
技术实现思路
本专利技术所要解决的技术问题是提供一种基于MATLAB引擎的可视化过程控制实时仿真方法,该基于MATLAB引擎的可视化过程控制实时仿真方法,不但充分利用了 MATLAB的强大数据处理功能,还具有VC界面人性化、操作使用方便的优点。专利技术的技术解决方案如下一种基于MATLAB引擎的可视化过程控制实时仿真方法,基于三层架构的仿真系统实现实时仿真,所述的三层架构包括用户界面层、数据管理层和仿真运行层;用户界面层在Visual c++即VC环境下,加载Visual Graph ActiveX控件,形成用户界面;数据管理层用于实现运行数据管理和模型数据管理;运行数据管理指运行数据的读取和存储,模型数据管理指对模型信息的设置及保存,所述的模型信息包括与原理图和组态图相关的结构和参数信息;数据管理层通过前台通信接口与用户操作层通信,数据管理层通过后台通信接口与仿真运行层通信;仿真运行层对存储于MATLAB workspace中的数据以及对由MATLAB运行时生成的数据文件进行访问,并基于MATLAB引擎对数据进行运算,得到仿真结果数据,仿真涉及到连接外部硬件时,仿真运行层还提供与外部硬件通信的通讯接口 ;三个层次之间设有内部通讯接口用于数据的传递与保存,实现基于三层架构的仿真过程,所述的内部通讯接口包括前台通信接口和后台通信接口。用户界面层包含以下四个部分(I)组件库部分包括绘制组件图时需要用到的元件或虚拟设备(包括管道,阀门,电机,水箱等),使用MFC自带的Ctrl List控件将组件库显示出来;使用外部加载的Visual Graph控件将组件库文件打开,CtrI List控件将Visual Graph控件的图标转换成List控件需要的图标;(2)组态图部分调用组件库中的元件或虚拟设备绘制而成;组态图由两部分构成,分别是组态图Visual Graph控件和组态图属性Visual Graph控件;组态图VisualGraph控件负责显示组态界面,组态图Visual Graph控件负责显示组态图中每个元件的属性,提供对元件属性的查看和修改;(3)控件库部分包括控制器控件(如PID控制器,模糊控制器等)、输入控件(用于表征模拟输入用于连接外部的模拟信号输入设备和数字输入阶跃输入,方波信号输入等)、输出控件(模拟 输出和数字输出)、算术控件(用于执行加、减、乘、除等操作)、延时控件、开关控件和逻辑控件(与、或、非等);通过Ctrl List控件显示控件库,通过VisualGraph控件打开控件库文件,Ctrl List控件将Visual Graph控件的图标转换成List控件需要的图标;(4)原理图部分原理图通过调用控件库中的控件绘制而成;通过原理图VisualGraph控件显示原理图界面,通过原理图属性Visual Graph控件显示原理图中每个控件的属性,提供对控件属性的观察和修改接口。MFC (Microsoft Foundation Classes),是一个微软公司提供的类库(classlibraries),以C++类的形式封装了 Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内津控件和组件的封装类。仿真运行层包括MATLAB引擎和simulink,通过调用MATLAB引擎使VC生成simulink模型和读取simulink运行的数据,不断地进行运算并产生数据,并通过数据管理层将数据上传到用户界面层显示,仿真涉及到连接外部硬件时,下发到与外部硬件通信的通讯接口以控制外部硬件,或者通过与外部硬件通信的通讯接口从外部硬件获取数据或指令。具体的仿真方式为如下三种方式的任一种方式1:使用虚拟控制器控制虚拟对象过程控制系统的控制器和控制对象均基于三层架构构建,在用户界面层(即用户操作层)选择组件库中的组件构建用于模拟控制对象的组态图,选择控件库中的控件构建用于模拟控制系统的原理图,此时,组态图和原理图中涉及到控制对象的实时数据来自仿真数据;无需采用实际控制器,也无需采用实际控制对象,整个仿真过程均在PC机的内部完成。方式2 :使用虚拟控制器控制实际对象在用户操作层选择组件库中的组件构建用于模拟控制对象的组态图,选择控件库中的控件构建用于模拟控制系统的原理图;组态图和原理图中涉及到控制对象的实时数据来自所述的实际对象;装载有所述仿真系统的PC机通过板卡直接接收外部硬件设备的存储器(如PLC的DB模块)存储的实际对象控制结果数据,所述的PC机发送数据和控制信号(如变频器的频率)到外部硬件设备的存储器(如PLC的DB模块),实现仿真;方式3 :使用实际控制器控制虚拟对象在用户操作层选择组件库中的组件构建用于模拟控制对象的组态图,选择控件库中的控件构建用于模拟控制系统的原理图;此时,组态图和原理图中涉及到控制对象的实时数据来自仿真数据;原理图中涉及到的控制器的控制参数来自外部硬件设备;装载有所述仿真系统的PC机通过板卡直接接收外部硬件设备的控制器(如P本文档来自技高网
...

【技术保护点】
一种基于MATLAB引擎的可视化过程控制实时仿真方法,其特征在于,基于三层架构的仿真系统实现实时仿真,所述的三层架构包括用户界面层、数据管理层和仿真运行层;用户界面层:在Visual?c++即VC环境下,加载Visual?Graph?ActiveX控件,形成用户界面;数据管理层:用于实现运行数据管理和模型数据管理;运行数据管理指运行数据的读取和存储,模型数据管理指对模型信息的设置及保存,所述的模型信息包括与原理图和组态图相关的结构和参数信息;数据管理层通过前台通信接口与用户操作层通信,数据管理层通过后台通信接口与仿真运行层通信;仿真运行层:对存储于MATLAB?workspace中的数据以及对由MATLAB运行时生成的数据文件进行访问,并基于MATLAB引擎对数据进行运算,得到仿真结果数据,仿真涉及到连接外部硬件时,仿真运行层还提供与外部硬件通信的通讯接口;三个层次之间设有内部通讯接口用于数据的传递与保存,实现基于三层架构的仿真过程,所述的内部通讯接口包括前台通信接口和后台通信接口。

【技术特征摘要】
1.一种基于MATLAB引擎的可视化过程控制实时仿真方法,其特征在于,基于三层架构的仿真系统实现实时仿真,所述的三层架构包括用户界面层、数据管理层和仿真运行层;用户界面层在Visual c++即VC环境下,加载Visual Graph ActiveX控件,形成用户界面;数据管理层用于实现运行数据管理和模型数据管理;运行数据管理指运行数据的读取和存储,模型数据管理指对模型信息的设置及保存,所述的模型信息包括与原理图和组态图相关的结构和参数信息;数据管理层通过前台通信接口与用户操作层通信,数据管理层通过后台通信接口与仿真运行层通信;仿真运行层对存储于MATLAB workspace中的数据以及对由MATLAB运行时生成的数据文件进行访问,并基于MATLAB引擎对数据进行运算,得到仿真结果数据,仿真涉及到连接外部硬件时,仿真运行层还提供与外部硬件通信的通讯接口 ;三个层次之间设有内部通讯接口用于数据的传递与保存,实现基于三层架构的仿真过程,所述的内部通讯接口包括前台通信接口和后台通信接口。2.根据权利要求1所述的基于MATLAB引擎的可视化过程控制实时仿真方法,其特征在于,用户界面层包含以下四个部分(1)组件库部分包括绘制组件图时需要用到的元件或虚拟设备,使用MFC自带的Ctrl List控件将组件库显示出来;使用外部加载的Visual Graph控件将组件库文件打开,Ctrl List控件将Visual Graph控件的图标转换成List控件需要的图标;(2)组态图部分调用组件库中的元件或虚拟设备绘制而成;组态图由两部分构成,分别是组态图Visual Graph控件和组态图属性Visual Graph控件;组态图VisualGraph控件负责显示组态界面,组态图Visual Graph控件负责显示组态图中每个元件的属性,提供对元件属性的查看和修改;(3)控件库部分包括控制器控件、输入控件、输出控件、算术控件、延时控件、开关控件和逻辑控件;通过Ctrl List控件显示控件库,通过Visual Graph控件打开控件库文件, Ctrl List控件将Visual Graph控件的图标转换成List控件需要的图标;(4)原理...

【专利技术属性】
技术研发人员:曹卫华王冠华吴敏陈都安剑奇
申请(专利权)人:中南大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1