一种仿真方法及系统技术方案

技术编号:11833890 阅读:53 留言:0更新日期:2015-08-05 20:41
本发明专利技术公开了一种仿真方法,接收用户发送的仿真请求,所述仿真请求包括指令参数和模式参数;通过指令工厂确定指令参数对应的指令,并创建所述指令对应的指令实例;调用指令实例中的用于执行所述指令的指令函数;执行指令函数,其中,在执行指令函数的过程中还包括:将模式参数传递至模式工厂;通过模式工厂确定模式参数对应的模式,并创建模式对应的模式实例;调用模式实例中的用于执行所述模式下的所述指令的模式函数,执行所述模式函数以完成所述指令在所述模式下的仿真操作。上述方法采用了双层工厂模式,满足“开发封闭”原则,即对扩展开放,对修改封闭,很好地保证了多信号雷达回波模拟器的仿真功能的实现。本发明专利技术还公开了一种仿真系统。

【技术实现步骤摘要】

本专利技术涉及雷达模拟器仿真控制领域,更具体的说,是涉及一种仿真方法及系统
技术介绍
多信号雷达回波模拟器作为一种功能完备的测试设备,在雷达系统的设计、研制和测试阶段发挥着十分重要的作用,其主要功能是根据不同的信号数据对雷达系统不同的工作模式(比如,气象/湍流、风切变、信标、地图等)进行仿真。为了保证多信号雷达回波模拟器的功能实现,需要相应的控制类软件对多信号雷达回波模拟器进行控制,比如,在一次仿真过程中,控制类软件需要对每种工作模式共有的流程指令(即“参数装订”一“开始”一“停止”)进行控制,但流程指令中的每个指令对不同工作模式来说均不相同,这无疑增加了控制的复杂性。现有技术中常用的控制类软件,多采用分支结构(switch…case)区分不同的工作模式,根据用户选择的工作模式,选择相应的分支进行实例化,但是,多信号雷达回波模拟器的工作模式包含多种,从10到20多种不等,当工作模式达到20多种时,可以想象,代码中的“switch”分支将庞大到何种地步,当新增一种工作模式时,还需增加“case”分支条件,需要在原代码上进行修改,虽然对扩展开放,但导致对修改也开放,违背了面向对象的开发封闭的封装原则,极易对其他工作模式对应的“switch”分支中的源码造成误操作,因此,也就不能很好地保证多信号雷达回波模拟器的功能实现。
技术实现思路
有鉴于此,本专利技术提供了一种仿真方法及系统,以克服现有技术中由于常用的控制类软件对修改也开放,违背了面向对象的开发封闭的封装原则,极易对其他工作模式对应的“switch”分支中的源码造成误操作,因此不能很好地保证多信号雷达回波模拟器的功能实现的问题。为实现上述目的,本专利技术提供如下技术方案:一种仿真方法,包括:接收用户发送的仿真请求,所述仿真请求包括指令参数和模式参数;通过指令工厂确定所述指令参数对应的指令,并创建所述指令对应的指令实例;调用所述指令实例中的用于执行所述指令的指令函数;执行所述指令函数;其中,在执行所述指令函数的过程中还包括:将所述模式参数传递至模式工厂;通过所述模式工厂确定所述模式参数对应的模式,并创建所述模式对应的模式实例;调用所述模式实例中的用于执行所述模式下的所述指令的模式函数;执行所述模式函数以完成所述指令在所述模式下的仿真操作。优选的,所述方法还包括:预先定义不同指令的对应的指令枚举值,并设定各个指令枚举值对应的指令处理类;以及,预先定义不同模式对应的模式枚举值,并设定各个模式枚举值对应的模式处理类。优选的,所述通过指令工厂确定所述指令参数对应的指令,并创建所述指令对应的指令实例,包括:确定所述指令参数对应的指令;查询所述指令对应的指令枚举值;根据预先定义的指令枚举值与指令处理类的对应关系确定所述指令枚举值对应的指令处理类;调用所述指令枚举值对应的指令处理类创建所述指令对应的指令实例。优选的,所述通过所述模式工厂确定所述模式参数对应的模式,并创建所述模式对应的模式实例,包括:确定所述模式参数对应的模式;查询所述模式对应的模式枚举值;根据预先定义的模式枚举值与模式处理类的对应关系确定所述模式枚举值对应的模式处理类;调用所述模式枚举值对应的模式处理类创建所述模式对应的模式实例。优选的,所述通过指令工厂确定所述指令参数对应的指令,包括:通过指令工厂确定参数装订指令参数对应的参数装订指令;或,通过指令工厂确定开始指令参数对应的开始指令;或,通过指令工厂确定结束指令参数对应的结束指令。一种仿真系统,包括:接收单元,用于接收用户发送的仿真请求,所述仿真请求包括指令参数和模式参数;指令实例创建单元,用于通过指令工厂确定所述指令参数对应的指令,并创建所述指令对应的指令实例;指令函数调用单元,用于调用所述指令实例中的用于执行所述指令的指令函数;指令函数执行单元,用于执行所述指令函数;其中,所述指令函数执行单元包括:参数传递子单元,用于将所述模式参数传递至模式工厂;模式实例创建子单元,用于通过所述模式工厂确定所述模式参数对应的模式,并创建所述模式对应的模式实例;模式函数调用子单元,用于调用所述模式实例中的用于执行所述模式下的所述指令的模式函数;仿真操作执行子单元,用于执行所述模式函数以完成所述指令在所述模式下的仿真操作。优选的,所述系统还包括:设定单元,用于预先定义不同指令的对应的指令枚举值,并设定各个枚举值对应的指令处理类;以及,预先定义不同模式对应的模式枚举值,并设定各个枚举值对应的模式处理类。优选的,所述指令实例创建单元具体用于:确定所述指令参数对应的指令;查询所述指令对应的指令枚举值;根据预先定义的指令枚举值与指令处理类的对应关系确定所述指令枚举值对应的指令处理类;调用所述指令枚举值对应的指令处理类创建所述指令对应的指令实例。优选的,所述模式实例创建子单元具体用于:确定所述模式参数对应的模式;查询所述模式对应的模式枚举值;根据预先定义的模式枚举值与模式处理类的对应关系确定所述模式枚举值对应的模式处理类;调用所述模式枚举值对应的模式处理类创建所述模式对应的模式实例。优选的,所述指令实例创建单元在通过指令工厂确定所述指令参数对应的指令时,具体用于:通过指令工厂确定参数装订指令参数对应的参数装订指令;或,通过指令工厂确定开始指令参数对应的开始指令;或,通过指令工厂确定结束指令参数对应的结束指令。经由上述的技术方案可知,与现有技术相比,本专利技术公开了一种仿真方法,接收用户发送的仿真请求,所述仿真请求包括指令参数和模式参数;通过指令工厂确定指令参数对应的指令,并创建所述指令对应的指令实例;调用指令实例中的用于执行所述指令的指令函数;执行指令函数,其中,在执行所述指令函数的过程中还包括:将模式参数传递至模式工厂;通过模式工厂确定模式参数对应的模式,并创建模式对应的模式实例;调用模式实例中的用于执行所述模式下的所述指令的模式函数;执行模式函数以完成所述指令在所述模式下的仿真操作。上述方法采用了双层工厂模式,满足“开发封闭”原则,即对扩展开放,对修改封闭,很好地保证了多信号雷达回波模拟器的仿真功能的实现。本专利技术还公开了一种仿真系统。【附图说明】为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根当前第1页1 2 3 4 本文档来自技高网...
一种仿真方法及系统

【技术保护点】
一种仿真方法,其特征在于,包括:接收用户发送的仿真请求,所述仿真请求包括指令参数和模式参数;通过指令工厂确定所述指令参数对应的指令,并创建所述指令对应的指令实例;调用所述指令实例中的用于执行所述指令的指令函数;执行所述指令函数;其中,在执行所述指令函数的过程中还包括:将所述模式参数传递至模式工厂;通过所述模式工厂确定所述模式参数对应的模式,并创建所述模式对应的模式实例;调用所述模式实例中的用于执行所述模式下的所述指令的模式函数;执行所述模式函数以完成所述指令在所述模式下的仿真操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:许亚娟
申请(专利权)人:北京润科通用技术有限公司
类型:发明
国别省市:北京;11

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

1