专利名称:临近空间飞行器控制方法仿真与验证方法
技术领域:
本发明涉及一种航空航天领域的控制方法仿真与验证问题。具体地说,是临近空间飞行器控制方法的实时仿真与性能评估验证。特别涉及一种临近空间飞行器控制方法仿真与验证平台。
背景技术:
由于临近空间飞行器特殊的机体/发动机一体化设计和其复杂的飞行环境,对于临近空间飞行器的控制方法仿真研究存在诸多困难。例如,多种不同气动特性飞行器的精确数学模型描述,复杂飞行环境的模拟,气动参数的计算和数据保存,控制方法的性能评估,实时仿真与验证平台的设计等。
有关飞行控制系统仿真方面的研究,目前主要开发途径分为C、Fortran语言和 Matlab/Simulink语言两种方式。前者可快速用于实时仿真验证,但程序可读性差,模块通用性不强,不利于开发工作的继承;后者开发迅速,可读性强,易于模块化,但需要后期转化为C语言代码,且各种设置较为复杂。已有的仿真平台多单纯基于Matlab/Simulink设计, 仿真操作复杂,只能进行离线仿真,不具备实时仿真能力,且仿真结果需要人工考察性能是否满足要求,不同控制方法的优劣性难以比较。因此,迫切需要一个能够支持从控制设计到实时仿真测试与性能评估全过程的仿真验证平台。
通过对现有技术的检索,并未发现类似专利。特别是针对临近空间飞行器,缺乏专门的仿真平台,提供对其的仿真验证一体化功能。发明内容
为克服现有技术的不足,提供一种能够支持临近空间飞行器从飞行控制系统设计到实时仿真测试和性能评估的仿真与验证平台,本发明采取的技术方案是,临近空间飞行器控制方法仿真与验证方法,借助于下列装置实现运行有主控软件、性能评估软件的仿真主控机,以及负责实时仿真的dSPACE实时仿真系统,仿真主控机配备有DS817高速串行通讯接口板,通过光纤与dSPACE实时仿真系统的DS814高速串行通讯接口板进行通讯,实现仿真程序的下载和仿真数据的上传功能,所述方法包括下列步骤
主控软件实现步骤采用多种技术支撑仿真功能的实现,利用多线程Matlab引擎技术实现对基于Matlab/Simulink开发的仿真模型方法库的支持,同时通过选择需要的模型和控制方法实现离线仿真;利用dSPACE的RTI驱动程序完成仿真程序向C语言代码的自动转换,实现实时代码的下载,并利用Clib编程函数库实现dSPACE实时仿真机内存数据的读取,仿真参数解析技术用于获取C代码程序仿真参数变量与Matlab编写的仿真参数的对应关系,从而可以实时监控仿真数据信息;利用数据库技术将离线仿真数据与实时仿真数据均保存到数据库对应的数据表单中;
性能评估软件实现步骤采用多种技术支撑验证功能的实现,利用多线程Matlab 引擎技术实现标称模型仿真与基于不确定模型的蒙特卡罗仿真的自动配置,用于产生评估4所需要的原始数据;利用MySQL建立评估数据库,用于仿真评估数据与评估结果的保存与读取;基于自主研究的性能评估体系,对获得的仿真数据进行处理,提取需要的指标值,通过与评估准则进行比对,得出相应的评估结论;利用MFC开发软件界面,显示评估结果数据、曲线。
所述实现离线仿真的具体步骤为选择集成的模型方法库中模块进行临近空间飞行器的全回路仿真,其中飞行器模型包括通用的刚体模型、带气推耦合的刚体模型以及带气推耦合的弹性模型,选择不同模型可以充分验证控制方法的控制性能,已集成的控制方法包括传统滑模方法,高阶滑模方法,自适应反步法等一系列非线性控制方法,在以上两核心模块的基础上,仿真平台还加入大气环境模拟模块,模拟包括标准大气模型、重力模型、 风模型在内的各种大气环境,通过飞行器的飞行状态实时计算所处的环境参数,气动参数模块利用计算来的环境参数求取当前状态下的各种飞行器气动参数,同时将气动参数保存到数据库中供以后参考,舵机负载模块和发动机模块模拟飞行器的实际舵机和发动机状态,完成了模型方法的选择,利用多线程Matlab引擎启动后台的Matlab/Simulink进行仿真计算,得到离线仿真结果,保存到仿真数据库中供后期分析处理。
所述实现实时仿真的具体步骤为所述实现实时仿真的具体步骤为利用dSPACE 公司提供的实时接口 RTI驱动程序来实现包括输入输出接口及初始化过程的全部设置,并实现从Simulink模型到dSPACE实时硬件C代码的无缝自动下载,编译过程中同时生成配置变量描述TRC文件,提供Simulink仿真程序到实时代码之间的变量信息和变量组合方式的描述,根据配置变量描述TRC文件的语法结构特点,利用文件读取函数逐行读取文件中的信息,通过遍历查找到已知的Simulink仿真变量参数,利用对应信息文件的生成规则在已找到的仿真变量参数段内再进行定位搜索,即可获得对应的dSPACE实时硬C件代码中的变量参数信息。利用dSPACE公司提供的C语言函数库(Clib)编程实现对dSPACE处理器的控制功能,访问处理器内存,并根据解析出来的变量符号名进行寻址首先,需要用应用程序注册函数对dSPACE应用程序进行注册;然后,利用板卡注册函数完成对处理器的板卡选择,即可进行对dSPACE内存的读写操作,利用获取地址函数读取变量内存的地址,并根据该变量的数据类型和位置偏移量计算出其内存地址,之后,利用读写操作函数进行内存的读写操作,即可实现对dSPACE实时仿真中内存数据的读取,并在仿真平台下通过绘图函数绘制实时仿真曲线,仿真曲线绘制使用的采样时间利用多媒体定时器来实现,选择为设定好的仿真步长,仿真完成后,将获得的实时仿真数据保存到数据库中,供后期分析处理。
所述实现性能评估的具体步骤为将整个评估过程分为控制系统效能评估过程与评估确认过程两部分,控制系统效能评估过程通过以下三个步骤,获得控制系统效能评估所需要的数据①对模型信息进行分析;②Matlab/Simulink环境下的一次标称模型仿真; ③在标称模型的基础上,依次给定具有不同边界大小的不确定,在Matlab/Simulink环境下进行多次仿真,通过对这些数据的进一步提取与计算,获得评估体系中措施层的各个指标值,比对评估标准计算出评估得分,最后通过加权求和,得到效能评估结果,该结果代表了所评估控制系统的优劣程度,有效性验证过程通过带有随机不确定的模型进行蒙特卡罗仿真,获得各个指标符合评估标准的概率程度,目的是验证控制系统能否在各种不确定存在的情况下,依然保证飞行器安全、稳定飞行,并保持良好的跟踪性能,验证其有效性。所有评估结果通过界面进行显示。
本发明具有如下技术效果
本发明集成了丰富的模型库,包括通用刚体模型,带气推耦合的刚体模型和带气推耦合的弹性模型;控制方法库包括比例积分微分方法(PID)、线性二次型调节器最优控制方法(LQR)等传统方法,以及滑模控制、反步控制等新型控制方法。同时,充分利用 dSPACE实时仿真系统计算能力强,无缝连接Matlab的优势,解决了传统数字仿真不能在线调整参数的问题,实现了 Matlab/Simulink仿真程序的快速C代码化和仿真实时性。建立的性能评估软件,弥补了临近空间飞行器控制方法性能评估的空白,可以验证传统方法的有效性,并评估新型方法的适用性和正确性,实现控制方法设计阶段,不同控制方法之间的性能优劣比较,以及最优控制策略的选择。本发明的仿真与验证平台,可以加快飞行控制系统的开发速度,提高仿真的真实性和可信度,为飞行控制系统开发节约了成本,也为国内临近空间飞行器的产业化做好了准备。
图1仿真与验证平台硬件结构示意图。
图2仿真与验证平台软件结构示意图。
图3仿真与验证平台主控软件管理界面图。
图4模型方法仿真结构图。
图5仿真变量参数解析流程图。
图6C语言编程函数库(Clib)编程流程图。
图7控制系统性能评估指标体系图。
图8性能评估流程示意图。
图9性能评估软件组成图。
图10性能评估软件界面图。
具体实施方式
临近空间飞行器控制方法仿真与验证平台,硬件包括仿真主控机,dSPACE实时仿真系统,通信光纤;软件主要包括仿真与验证平台主控软件、性能评估软件。
本发明基于dSPACE实时仿真系统进行开发,dSPACE实时仿真系统主要负责仿真程序的实时仿真功能,其通过光纤与仿真主控机连接,实现仿真程序的自动编译和下载,同时仿真结果实时在仿真主控机上进行监控和数据保存,便于后期分析处理。
仿真与验证平台主控软件设计采用微软基础类(MFC)编程技术、Matlab引擎技术、数据库技术和dSPACE公司提供的C语言编程函数库(Clib)开发,主控软件界面采用 MFC设计,集成仿真模型方法库与Matlab/Simulink仿真功能,以及dSPACE实时仿真功能, 仿真数据通过数据库进行管理。
上述的主控软件所述的仿真模型方法库基于Matlab/Simulink进行开发,通过 Matlab引擎技术与主控软件实现连接。仿真模型方法库包括多种不同气动参数特性的飞行器模型,具体有通用的刚体模型、带气推耦合的刚体模型和带气推耦合的弹性模型,多种大气环境参数模型,气动参数计算模型,多种控制方法模型,具体有比例积分微分方法(PID)、 线性二次型调节器最优控制方法(LQR)等传统方法和传统滑模、高阶滑模、反步法、自适应反步法等新型方法,以及舵机负载模型,能实现临近空间飞行器在不同大气环境下的飞行仿真,充分验证各种控制方法对不同模型的适用性和控制性能。。
上述的主控软件所述的dSPACE实时仿真功能基于dSPACE公司提供的实时接口 (RTI)驱动程序和C语言编程函数库(Clib)开发。实时接口驱动程序库实现Simulink仿真程序到C代码程序的自动编译和下载,C语言编程函数库编程实现对dSPACE实时仿真内存的读取,将实时仿真数据通过主控软件进行绘图显示。
上述的主控软件所述的数据管理功能基于MySQL数据库进行开发。主要管理来自仿真中的三方面数据。具体包括仿真模型方法库的信息,方便查看和使用多种飞行器模型、控制方法和外围模型;仿真结果数据,保存Matlab离线仿真和dSPACE实时仿真的结果数据,便于仿真分析;性能评估数据,便于查看不同控制方法的性能优劣。
性能评估软件采用微软基础类(MFC)编程技术和数据库技术进行开发,能够对临近空间飞行器控制方法的控制性能进行评估与分析。软件借助Matlab引擎技术配置仿真评估环境;仿真数据经由数据库进行保存与提取;基于自主研究的性能评估体系,对仿真数据进行评估计算,获得最终的评估结果。
结合附图对本发明作进一步详述。
参见图1,临近空间飞行器控制方法仿真与验证平台中,主要包括2个部分的硬件运行有主控软件、性能评估软件的仿真主控机,以及负责实时仿真的dSPACE实时仿真系统。仿真主控机配备有DS817高速串行通讯接口板,通过光纤与dSPACE实时仿真系统的 DS814高速串行通讯接口板进行通讯,实现仿真程序的下载和仿真数据的上传功能。仿真主控软件负责将仿真模型方法库、Matlab/Simulink离线仿真以及dSPACE实时仿真集成到一个平台下,同时实现飞行控制系统全回路仿真和数据库管理功能。性能评估软件提取仿真数据库中数据,从数据中计算出需要的指标值,通过与软件中已有的评估体系进行比对、加权计算,最终获得待评估控制方法的评估得分。dSPACE实时仿真系统由两块DS1005处理板组成,实现多处理板卡的并行计算,以保证负责的模型和控制方法的实时计算。同时,作为基于Matlab/Simulink控制系统的开发及测试工作平台,实现与Matlab/Simulink的完全无缝连接,是完美的快速控制原型和硬件在回路仿真的综合解决方案。
参见图2,仿真与验证平台的核心是仿真主控软件,其目的是实现临近空间飞行器飞行控制系统从方案设计到模型方法集成、离线仿真、实时仿真的全过程。仿真平台技术层采用多种技术支撑仿真功能的实现,离线仿真基于Matlab/Simulink仿真功能开发,利用多线程Matlab引擎技术实现对基于Matlab/Simulink开发的仿真模型方法库的支持,同时通过选择需要的模型和控制方法实现离线仿真。实时仿真基于dSPACE实时仿真系统开发, 利用dSPACE公司提供的实时接口(RTI)驱动程序完成仿真程序向C语言代码的自动转换, 实现实时代码的下载,并利用C语言编程函数库(Clib)实现dSPACE实时仿真系统内存数据的读取,仿真参数解析技术用于获取C代码程序仿真参数变量与Matlab编写的仿真参数的对应关系,从而可以实时监控仿真数据信息。最后,利用数据库技术将离线仿真数据与实时仿真数据均保存到数据库对应的数据表单中。
参见图3,为仿真主控软件的仿真管理界面,合理优化的集成了飞行控制系统仿真开发过程中的全部流程操作。其中包括仿真信息显示区域(1),用于显示仿真所选择的模型和控制方法等信息;仿真框图区域O),用于选择相应的仿真回路模块,包括模型、控制方法、大气环境、气动参数等;仿真模型方法库区域(3),提供可用的模型方法供仿真人员自由选择搭配;仿真配置区域G),用于对选好的仿真回路模块进行仿真参数设置。
参见图4,选择集成的模型方法库中模块进行临近空间飞行器的全回路离线仿真,其中飞行器模型包括通用的刚体模型、带气推耦合的刚体模型以及带气推耦合的弹性模型,选择不同模型可以充分验证控制方法的控制性能。已集成的控制方法包括传统滑模方法,高阶滑模方法,自适应反步法等一系列非线性控制方法,并均在仿真中得到较好的效果。在以上两核心模块的基础上,仿真平台还加入大气环境模拟模块,可以模拟标准大气模型、重力模型、风模型等各种大气环境,通过飞行器的飞行状态实时计算所处的环境参数, 加强仿真的可信度。气动参数模块利用计算来的环境参数求取当前状态下的各种飞行器气动参数,同时将气动参数保存到数据库中供以后参考。舵机负载模块和发动机模块模拟飞行器的实际舵机和发动机状态,使仿真更加逼真和精确。完成了模型方法的选择,利用多线程Matlab引擎启动后台的Matlab/Simulink进行仿真计算,得到离线仿真结果,保存到仿真数据库中供后期分析处理。
参见图5,离线仿真到dSPACE实时仿真的过渡,利用dSPACE公司提供的实时接口(RTI)驱动程序来实现,完成包括输入输出接口及初始化过程的全部设置,并实现从 Simulink模型到dSPACE实时硬件C代码的无缝自动下载。编译过程中同时生成配置变量描述(TRC)文件,提供Simulink程序到实时代码之间的变量信息和变量组合方式的描述。 完成仿真变量参数解析工作,即将Simulink模型中的仿真变量与dSPACE实时硬件代码中的仿真变量建立一一对应关系。根据配置变量描述(TRC)文件的语法规则,其主要结构是由许多可相互嵌套的群组组成的,相互嵌套的群组构成了 Simulink模型中的各个模块、子系统之间的层次结构。由于dSPACE公司并未提供配置变量描述(TRC)文件变量的解析软件,为了充分利用C语言编程函数库(Clib),根据配置变量描述(TRC)文件的语法结构特点,编写了一个配置变量描述文件剖析类,将其中存储的Simulink模型结构信息及其变量信息提取出来。解析步骤为选中需要解析的文件,利用文件读取函数逐行读取文件中的信息,通过遍历查找到已知的Simulink仿真变量参数,利用对应信息文件的生成规则在已找到的仿真变量参数段内再进行定位搜索,即可获得对应的dSPACE实时硬件代码中的变量参数信息。
参见图6,利用dSPACE公司提供的C语言函数库(Clib)编程实现对dSPACE实时仿真系统的处理器控制功能,访问处理器内存,并可根据解析出来的变量符号名进行寻址, 实现实时仿真。具体步骤为第一步,需要用应用程序注册函数对dSPACE应用程序进行注册;第二步,利用板卡注册函数完成对处理器的板卡选择,即可进行对dSPACE内存的读写操作。利用获取地址函数读取变量内存的地址,并根据该变量的数据类型和位置偏移量计算出其内存地址。第三步,利用读写操作函数进行内存的读写操作,即可实现对dSPACE实时仿真中内存数据的读取,并在仿真平台下通过绘图函数绘制实时仿真曲线,仿真曲线绘制使用的采样时间利用多媒体定时器来实现,通常选择为设定好的仿真步长,第四步,仿真完成后,将获得的实时仿真数据保存到数据库中,供后期分析处理。
参见图7,为性能评估计算的基础,该评估体系确定了进行评估计算所需要考虑的指标以及各指标的权重。整个评估体系采用AHP层次分析法建立,将整个评估体系分为三层目标层、准则层和措施层。目标层为控制系统的性能,即评估的目标;准则层的稳定性、跟踪性能、鲁棒性、适用性为评估控制系统性能的四个相应准则,它们共同构成了评估控制系统性能的不同方面;措施层中,采用控制系统基于给定输入的时域响应特性进行考察 被控变量响应曲线的收敛或者发散情况用于表征控制系统的稳定性;响应曲线的跟踪时间、跟踪精度以及超调量用于表征控制系统的跟踪性能;采用自定义的鲁棒度来表征系统在存在各种参数不确定性情况下的鲁棒性;根据控制系统所适用的飞行阶段与数学模型, 以及飞行器在控制过程中是否满足各种约束条件表征其适用性。通过下式进行控制系统的效能评估计算
权利要求
1.一种临近空间飞行器控制方法仿真与验证方法,其特征是,借助于下列装置实现 运行有主控软件、性能评估软件的仿真主控机,以及负责实时仿真的dSPACE实时仿真系统,仿真主控机配备有DS817高速串行通讯接口板,通过光纤与dSPACE实时仿真系统的 DS814高速串行通讯接口板进行通讯,实现仿真程序的下载和仿真数据的上传功能,所述方法包括下列步骤主控软件实现步骤采用多种技术支撑仿真功能的实现,利用多线程Matlab引擎技术实现对基于Matlab/Simulink开发的仿真模型方法库的支持,同时通过选择需要的模型和控制方法实现离线仿真;利用dSPACE的RTI驱动程序完成仿真程序向C语言代码的自动转换,实现实时代码的下载,并利用Clib编程函数库实现dSPACE实时仿真机内存数据的读取,仿真参数解析技术用于获取C代码程序仿真参数变量与Matlab编写的仿真参数的对应关系,从而可以实时监控仿真数据信息;利用数据库技术将离线仿真数据与实时仿真数据均保存到数据库对应的数据表单中;性能评估软件实现步骤采用多种技术支撑验证功能的实现,利用多线程Matlab引擎技术实现标称模型仿真与基于不确定模型的蒙特卡罗仿真的自动配置,用于产生评估所需要的原始数据;利用MySQL建立评估数据库,用于仿真评估数据与评估结果的保存与读取; 基于自主研究的性能评估体系,对获得的仿真数据进行处理,提取需要的指标值,通过与评估准则进行比对,得出相应的评估结论;利用MFC开发软件界面,显示评估结果数据、曲线。
2.如权利要求1所述方法,其特征是,所述实现离线仿真的具体步骤为选择集成的模型方法库中模块进行临近空间飞行器的全回路仿真,其中飞行器模型包括通用的刚体模型、带气推耦合的刚体模型以及带气推耦合的弹性模型,选择不同模型可以充分验证控制方法的控制性能,已集成的控制方法包括传统滑模方法,高阶滑模方法,自适应反步法等一系列非线性控制方法,在以上两核心模块的基础上,仿真平台还加入大气环境模拟模块,模拟包括标准大气模型、重力模型、风模型在内的各种大气环境,通过飞行器的飞行状态实时计算所处的环境参数,气动参数模块利用计算来的环境参数求取当前状态下的各种飞行器气动参数,同时将气动参数保存到数据库中供以后参考,舵机负载模块和发动机模块模拟飞行器的实际舵机和发动机状态,完成了模型方法的选择,利用多线程Matlab引擎启动后台的Matlab/Simulink进行仿真计算,得到离线仿真结果,保存到仿真数据库中供后期分析处理。
3.如权利要求1所述方法,其特征是,所述实现实时仿真的具体步骤为利用dSPACE 公司提供的实时接口 RTI驱动程序来实现包括输入输出接口及初始化过程的全部设置,并实现从Simulink模型到dSPACE实时硬件C代码的无缝自动下载,编译过程中同时生成配置变量描述TRC文件,提供Simulink仿真程序到实时代码之间的变量信息和变量组合方式的描述,根据配置变量描述TRC文件的语法结构特点,利用文件读取函数逐行读取文件中的信息,通过遍历查找到已知的Simulink仿真变量参数,利用对应信息文件的生成规则在已找到的仿真变量参数段内再进行定位搜索,即可获得对应的dSPACE实时硬C件代码中的变量参数信息。利用dSPACE公司提供的C语言函数库Clib编程实现对dSPACE处理器的控制功能,访问处理器内存,并根据解析出来的变量符号名进行寻址首先,需要用应用程序注册函数对dSPACE应用程序进行注册;然后,利用板卡注册函数完成对处理器的板卡选择,即可进行对dSPACE内存的读写操作,利用获取地址函数读取变量内存的地址,并根据该变量的数据类型和位置偏移量计算出其内存地址,之后,利用读写操作函数进行内存的读写操作,即可实现对dSPACE实时仿真中内存数据的读取,并在仿真平台下通过绘图函数绘制实时仿真曲线,仿真曲线绘制使用的采样时间利用多媒体定时器来实现,选择为设定好的仿真步长,仿真完成后,将获得的实时仿真数据保存到数据库中,供后期分析处理。
4.如权利要求1所述方法,其特征是,所述实现性能评估的具体步骤为将整个评估过程分为控制系统效能评估过程与评估确认过程两部分,控制系统效能评估过程通过以下三个步骤,获得控制系统效能评估所需要的数据①对模型信息进行分析;②Matlab/ Simulink环境下的一次标称模型仿真;③在标称模型的基础上,依次给定具有不同边界大小的不确定,在Matlab/Simulink环境下进行多次仿真,通过对这些数据的进一步提取与计算,获得评估体系中措施层的各个指标值,比对评估标准计算出评估得分,最后通过加权求和,得到效能评估结果,该结果代表了所评估控制系统的优劣程度,有效性验证过程通过带有随机不确定的模型进行蒙特卡罗仿真,获得各个指标符合评估标准的概率程度,目的是验证控制系统能否在各种不确定存在的情况下,依然保证飞行器安全、稳定飞行,并保持良好的跟踪性能,验证其有效性。所有评估结果通过界面进行显示。
全文摘要
本发明涉及航空航天领域的控制方法仿真与验证。为提供一种能够支持临近空间飞行器从飞行控制系统设计到实时仿真测试和性能评估的仿真与验证平台,本发明采取的技术方案是,临近空间飞行器控制方法仿真与验证方法,借助于下列装置实现仿真主控机,dSPACE实时仿真机,仿真主控机配备有DS817高速串行通讯接口板,通过光纤与dSPACE实时仿真机的DS814高速串行通讯接口板进行通讯,所述方法包括下列步骤运行的主控软件;性能评估软件是指将整个评估过程分为控制系统效能评估过程与评估确认过程两部分,控制系统效能评估过程通过三个步骤,获得控制系统效能评估所需要的数据。本发明主要应用于航空航天领域的仿真与验证。
文档编号G06F9/455GK102508692SQ201110299530
公开日2012年6月20日 申请日期2011年9月28日 优先权日2011年9月28日
发明者吕力, 宗群, 曲照伟, 田栢苓, 黄福山 申请人:天津大学