用于Matlab自动测试的Bus结构体反向自动建模方法与流程

文档序号:17237548发布日期:2019-03-30 08:26阅读:543来源:国知局
用于Matlab自动测试的Bus结构体反向自动建模方法与流程

本发明属于航空发动机控制律模型自动测试领域。



背景技术:

目前,基于Matlab的模型自动测试应用越来越多,模型自动仿真测试在V流程开发验证中起到了非常重要的作用,任何开发(包括模型开发)过程,只要有人的介入,都必然存在各种各样的错误,因此,仿真与测试的作用非常重要,起到了最后把关的作用,V&V是指Validation和Verification,首先要正确的做事,然后验证是否做了正确的事情。

在模型自动测试与验证过程中,非常重要的一环就是需要生成被测Harness模型,由于模型本身各种各样,如何解析所有的模型,然后自动生成被测模型是非常重要的。在顶层模型和中间各层的模型中都必然用到Bus结构体,因此,解析模型就会遇到对Bus结构体的解析,由于Bus结构体也是复杂多变、千差万别的。而且最为重要的是Matlab市面上所有的版本对含有Bus结构体的识别不是很好,在生成被测模型Harness的时候,无法自动解析、生成包含Bus结构体的输入端和输出端信号,只能通过修改模型,去掉Bus结构体,或者对Bus结构体简化后才可以生成Harness模型。因此,对与Bus结构体的解析与反向自动建模的技术关系着自动测试的成败。如果解决了对所有Bus结构体的解析与反向自动建模技术,那么模型自动测试才会真正得到应用。



技术实现要素:

发明目的:本发明提供一种用于Matlab自动测试的Bus结构体反向自动建模方法。

技术方案:

一种用于Matlab自动测试的Bus结构体反向自动建模方法。包括:

1)自动采集EXCEL文件中的测试用例数据;

2)自动读入被测模型,查找被测模型中所有的输入与输出端,辨析哪些输入输出端包含BUS结构体,哪些输入输出端不包含BUS结构体;

3)针对包含BUS结构体的输入输出端,读入其包含的BUS结构体,采用多叉树前序遍历算法,层层解析每个Bus结构体的个数与名称,同时记录每个BUS结构体中叶子节点的路径与名称存放在缓存数组中;

4)根据缓存数组中的路径与名称,从根节点开始,层层反向自动建模,直到所有的叶子节点;

5)封装自动反向建模后的模型,输出为可以在Matlab环境下自动测试的Harness模型。

有益效果:

采用本发明后,可以全自动识别各种复杂的Bus结构体,通过大量的测试和验证,可以完全正确的按照Bus结构体层级结构的反向自动建立模型,并且连线关系正确,编译通过,满足自动测试的一切要求。解放了人力,解决了在使用matlab工具进行测试时必须人工建立被测Harness模型的缺陷。

附图说明

图1为本发明方法流程图。

具体实施方式

一种用于Matlab自动测试的Bus结构体反向自动建模方法。如图1所示,包括:

1)测试用例读入:自动采集EXCEL文件中的测试用例数据;

2)模型读入:自动读入被测模型,查找被测模型中所有的输入与输出端,辨析哪些输入输出端包含BUS结构体,哪些输入输出端不包含BUS结构体;

3)遍历解析BUS结构体:针对包含BUS结构体的输入输出端,读入其包含的BUS结构体,采用多叉树前序遍历算法,层层解析每个Bus结构体的个数与名称,同时记录每个BUS结构体中叶子节点的路径与名称存放在缓存数组中;

4)自动反向建模:根据缓存数组中的路径与名称,从根节点开始,层层反向自动建模,直到所有的叶子结点;

5)自动封装Harness模型:封装自动反向建模后的模型,自动设置所有输入与输出端的相关属性,最终输出为可以在Matlab环境下自动测试的Harness模型。

本发明方法的软件部分的编译流程如下:

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1