找回密码
 注册
Simdroid-非首页
查看: 86|回复: 0

实时仿真框架ESim(可跨操作系统进行建模仿真)

[复制链接]
发表于 2011-2-24 10:16:08 | 显示全部楼层 |阅读模式 来自 北京
FlexSci | All right reserved. Page 1
FlexSci Technology Ltd. www.flexsci.com
实时仿真框架ESim
FlexSci | All right reserved. Page 2
ESim实时仿真框架
ESim实时仿真框架最早由欧洲航天局主导开发,用于构建各种实时或非实时/超实时的仿真模拟器,这些模拟器涵盖了从产品的概念设计阶段应用到操作培训阶段应用的全过程。
通过支持仿真模型的可移植性规范,ESim可以重用已有的仿真模型,这使得用户可以大大降低模拟器的研发成本和周期,并使仿真应用可以应用于产品研发的全周期。由于提供了强大的人在回路和硬件在环(Hardware-in-the-Loop)的实时仿真功能,ESim在产品的测试阶段尤为有用。
 硬实时仿真(Hard-Real-time Simulation)
 非实时仿真、超实时仿真(Faster-than-Real-time Simulation)
 复杂系统的知识管理
 多学科项目团队
 多用户仿真解决方案
 项目全周期内的知识传递
FlexSci Technology
ESim 仿真框架
400
300
200
100
FlexSci | All right reserved. Page 3
FlexSci Technology
ESim 仿真框架
400
300
200
100
ESim的系统架构
ESim的核心思想是:每个仿真应用都可以划分一个独立的工具部分和一个与特定对象相关的模型部分。基于这一思想,ESim构建了一个开放式系统架构的工具:
o 增强了模型的可移植性(不同项目之间或是项目的不同阶段)
o 有效地管理系统所有的仿真模型,包括其配置管理
o 可以在对原有模型不做修改的前提下,使仿真模型达到实时仿真
o 通过代码并行和分布式网络实现仿真的可扩展性
o 容易集成已有的用户仿真应用或其它商业软件工具——开放性
o 允许用户将部分软件模型用相应的硬件实物进行替代
o 与第三方软件的集成接口
由于采用了与平台无关的架构设计,ESim可以支持跨平台的开发。对于研发人员来说,环境不再具备特殊性(具备相同的界面和功能),研发人员可以在Windows平台上开始一个新的仿真初步设计,当仿真应用对于多核和实时性、外围硬件接口有特殊要求时,研发人员可以将仿真应用方便地移植到基于PC的Linux系统或其他嵌入式系统上。
FlexSci | All right reserved. Page 4
FlexSci Technology
ESim 仿真框架
400
300
200
100
软件特点
o 易于使用的图形用户界面
o 支持仿真模型可移植性规范
o 可扩展的和灵活的仿真模拟器解决方案
o 基于场景的仿真控制
o 动态、硬实时仿真
o 集成的配置管理
o 支持MATLAB模型
o 集成外部设备
o 支持分布式仿真、客户机/服务器架构
o „„
FlexSci | All right reserved. Page 5
ESim仿真环境
仿真的目的是为了验证设计或是操作培训,仿真应用过程包含了一系列活
Simulator development:
用户没有必要必须是一名仿真专家,或是从一开始就完全投入到应用模型的初始代码设计中去,用户也不必自己编写底层的硬件接口,或是编写实时图像显示的引擎。所有这些工作,ESim框架已经为我们完成了。
Test preparation:
用户为一次特定的仿真任务(或某一仿真器)定义测试条件,如初始条件、场景、激励以及数据记录等。
Test execution:
测试运行。测试人员需要根据预先指定的场景设置运行相应的仿真测试,测试人员也可以在仿真运行的任意时刻修改场景,比如说引入失效。
Test analysis:
仿真测试的结果可以被处理并分析,仿真驱动的图像也可以重放。
FlexSci Technology
ESim 仿真框架
400
300
200
100
动:任务规划、模拟器开发、测试分析等,ESim提供了一个实时的仿真环境来支持这些活动。
Facility management:
各种不同的仿真应用都可以在configuration control中进行管理,这些仿真应用包含了所有经过验证的应用模型的库文件、模型等,它们可以被同类的其他仿真应用所共用或重用。
FlexSci | All right reserved. Page 6
FlexSci Technology
ESim 仿真框架
400
300
200
100
六步实现实时仿真
Step 1:
o 创建新的项目
o 添加子模型
o 添加模型代码
o 自动添加相应的API
Step 2:
编译项目,生成可执行的仿真应用程序。
Step 3:
创建一次仿真的任务及调度。
Step 4:
创建仿真定义。
仿真定义中包含了如下信息:变量的初始值、激励、记录器及监控等,这些仿真定义将用于监控并影响仿真运行。
Step 6:
仿真执行完毕后,可以在Test Analyzer中定义仿真结果的测试分析,显示各种分析的曲线结果。
Step 5:
执行模拟器仿真。
仿真运行既可以实时运行,也可以非实时或超实时运行。
FlexSci | All right reserved. Page 7
FlexSci Technology
ESim 仿真框架
400
300
200
100
实时仿真模型开发
o 支持C、C++、Fortran、ADA95、JAVA等编程语言开发的模型
o 支持MATLAB/Simulink/RTW、Scilab/Scicos及其他商业软件生成的模型代码,如Dymola等
o 自动添加相应的API
核心技术
仿真模拟器的开发过程是个持续渐进的过程,模型文件会在开发过程中不断更新和完善;同时,研发也是一个团队协作的过程。为此,ESim提供了模型/模拟器仓库:
o CVS版本控制
o 项目及知识管理
o 模型/模拟器的存储、搜寻及使用控制(客户机/服务器架构)
o 模型/模拟器的重用(Re-use)
模型/模拟器
仓库
FlexSci | All right reserved. Page 8
FlexSci Technology
ESim 仿真框架
400
300
200
100
硬件接口
对于模拟器来说,如何通过接口与其他系统进行协作至关重要。ESim通过其Library为用户提供了各种“物理的”或硬件的接口,这些接口有:
软件接口
ESim框架还提供了软件接口ExternalSimAccess,借助这一接口,用户只需要极少量的代码就可以将ESim环境下的模型的数据字典连接到外部应用程序的地址空间,这样外部应用程序即成为一个标准的ESim客户端——既可以本地运行也可以远程运行,客户端与服务端建立在TCP/IP协议基础上。对于需要多用户的仿真应用,ExternalSimAccess提供了一个极为便利的分布式仿真应用网络。
这些接口使得用户可以建立一个混合的硬件/软件仿真器(在仿真应用的初期,用户往往会建立一个纯软件环境的模拟器,到后期随着部分硬件设备出现,部分软件子系统会被硬件设备替代,组成一个半实物的仿真应用,以获取一个更加可靠的系统仿真)。
o 串行RS232/422
o VME总线接口
o IRIG-B时间码接口
o 反射内存
o GPIB接口
o 外部中断
o MIL1553B总线接口等
FlexSci | All right reserved. Page 9
FlexSci Technology
ESim 仿真框架
400
300
200
100
仿真执行与控制
ESim的仿真执行与控制是基于场景的(事件及动作),ESim提供了强大的Simulation Controller仿真控制器来定义仿真场景,ESim独有的任务定义语言MDL为用户定义场景提供了极大的便利,典型的任务如:
o 激活特定的用户任务(任务在调度中定义,通常由时钟来激活)
o 将采样数据记录到一个文件中
o 从激励文件中读取数据样本
o 操作模型数据池中的数据
o 向控制终端写消息
o 显示一个在线的监控终端,既可以是字符形式的,也可以是曲线图形形式的
仿真调度
模型的时钟信息通过任务和相应的调度来定义。任务是模型中的一系列顺序操作,而调度则是定义这些任务何时以及怎样被执行。
ESim的仿真调度工具可以确保所有的仿真任务满足特定的“时限”要求(在每一个任务的最小、最大及平均执行周期的基础上),用户可以以特定的调度定义一个运行在特定处理器上的仿真过程。
FlexSci | All right reserved. Page 10
FlexSci Technology
ESim 仿真框架
400
300
200
100
分布式仿真
ESim仿真框架的一大特点是支持分布式仿真。ESim内嵌了HLA接口。
o 对于普通网络,使用基本的Socket(速度快)或RTI(开销大)
o 对于反射内存实时网络,消息服务使用反射内存接口或RTI
对于大型的仿真应用,用户需将系统划分为能够在多目标机上运行的子模型;对于多学科的子系统,用户需将各个学科的子模型连接起来。ESim提供的数据池可以方便地将系统模型划分为各个功能子系统,并在多核计算机或是多台计算机上实现分布式仿真
嵌入式仿真
对于嵌入式软件来说,软件错误所造成的系统故障将引起重大经济损失。嵌入式软件运行在特定的硬件环境中,因此对它的可靠性测试是在仿真测试环境下进行的。
o 各种低成本的桌面电脑
o 高端的工作站
o 嵌入式系统
FlexSci | All right reserved. Page 11
平台支持
ESim的跨平台设计可以支持各种仿真计算平台:
o 各种低成本的桌面电脑
o 高端的工作站
o 嵌入式系统
FlexSci Technology
ESim 仿真框架
400
300
200
100
实时性指标
o < 50 μs 的时钟抖动
o 最大可达1000 Hz 的时钟频率
o < 500 μs 的中断响应时间
CPUs支持:
o MIPS处理器、PowerPC、Intel等
o 单核、多核
操作系统支持各种IRIX、Linux、Windows版本:
o Red Hat Linux 8.0、Red Hat Linux 9、Fedora Core 1/2/3/4/5/6、Fedora 7/8/ SuSE Linux 9.1/9.2/9.3/10.0/10.1、OpenSUSE 10.2/10.3、Debian 3.1、Mandriva 2008.0、Concurrent RedHawk 4.2 和Red Hat Enterprise Linux 4/5 (-compatible) distributions等;
o VxWorks
针对每一个仿真平台,ESim都将充分发挥平台的实时性能,如:
o IRIX RT性能
o Real-time Linux
o Concurrent TR functions
FlexSci | All right reserved. Page 12
FlexSci Technology
ESim 仿真框架
400
300
200
100
3D虚拟现实及可视化
ESim仿真框架提供了与虚拟现实及可视化的
Web接口及COM组件接口
ESim提供了基于HTTPS的Web通讯接口(结合SSL的超文本传输协议),允许远程网络上的计算机监控仿真网络中的所有模拟器。
利用COM组件接口,用户也可以将模拟器与Excel进行连接(通过VBA),实现如参数控制、仿真控制、曲线显示等。
接口,这些可视化既可以是2D的柱状图、曲线等,也可以是3D的视景显示。实时仿真结果可以被用来驱动场景中的实体,利用其开放的API接口,用户可以实现与任意的图形引擎进行连接。
常见的可视化接口包括:
o OpenGL Performer
o VEGA
o PV-WAVE等
FlexSci | All right reserved. Page 13
FlexSci Technology
ESim 仿真框架
400
300
200
100
应用案例
Plank卫星高度控制与测量系统(ACMS)模拟器
Plank卫星由欧洲航天局2009年发射升空,用于观测宇宙微波背景辐射。为验证卫星ACMS系统的设计,最终的目标是使软件运行于板载计算机ERC32,配合控制力矩陀螺及转台实现半实物仿真。
o 磁强计Magnetometers
o 太阳敏感器Sun sensor(s)
o 星敏感器Star tracker
o 陀螺仪Gyroscopes
o 磁力矩器Magneto-torquers
o 德国Teldix公司的控制力矩陀螺(CMGs)
FlexSci | All right reserved. Page 14
模拟器包含以下子模型:
o 操纵动力学模型
含柔性体的多体系统动力学核心模型
o 执行器模型
关节的驱动模型
FlexSci Technology
ESim 仿真框架
400
300
200
100
空间机械手人在回路仿真
欧洲空间机械手是俄罗斯国际空间站上的重要部件:
o 11米长,7个关节组成
o 机械臂质量达到620Kg
o 有效负载最大8000Kg
o 端部速度达到0.2m/s
o 传感器模型
两类传感器:一类是测量机械手内部运动状态的传感器,一类是外部状态传感器如接近传感器。
o 关节控制模型
关节定位依靠由编码器/解码器构成的闭环定位系统组成。
o 通讯模型
FlexSci | All right reserved. Page 15
FlexSci Technology
ESim 仿真框架
400
300
200
100
飞行模拟器
ESim仿真框架的功能之一就是模型重用(Re-use),对于各种型号的飞行模拟器,很多模型子系统具备共性,这些子模型在ESim下以模型仓库的形式存储。在开发完一个型号的飞行模拟器后,用户可以方便地重用模型仓库中的子模型,快速构建新型号的飞行模拟器。
再入飞行器着陆仿真
再入滑翔式飞行器从24Km高度和2.5倍马赫下开始制动并着陆。
再入飞行器着陆仿真模拟器主要是为了在实时环境下验证两种模式:自动操纵驾驶模式下的着陆策略;半自动模式下驾驶员在回路的实时操控性与人机界面。
FlexSci | All right reserved. Page 16
FlexSci Technology
ESim 仿真框架
400
300
200
100
自主水下航行器AUV模拟器
自主水下航行器AUVs的可靠性越来越受到关注,在AUVs的部件故障、不适当的控制面或是遇到障碍等情况下,用户希望控制系统可以自动配置任务以最大可能保证成功,或是放弃任务。
AUVs模拟器的目标是建立一个虚拟的航行器及水下环境,验证控制系统的功能并测试任务脚本。
月球着陆器原型仿真
欧洲航天局发射的EuroMoon 2000月球着陆器主体框架由上下两个支撑板、中间圆柱形月球车舱和4个间隔90°的着陆腿组成。
F16战机嵌入式训练模拟器
o 设计一个合适的着陆策略和时间表
o 衡量人在导航回路的能力
o 为地面任务准备设计一个地面操控模拟器,并进行任务的地面验证
战术导弹、雷达、飞行动力学以及环境等模型在ESim环境下定向编译至PowerPC嵌入式处理器,训练模拟器的目的是为了在地面训练F16战机驾驶员在遇到诸如导弹侵袭等情况下的正确操控。
FlexSci | All right reserved. Page 17
北京飞思博科技有限公司
FlexSci Technology Ltd.
www.flexsci.com
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-9-20 13:57 , Processed in 0.048974 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表