主要内容

雷达架构:测试自动化和需求可追溯性(第2部分)

本示例是关于如何根据一组性能要求在Simulink®中设计和测试雷达系统的两部分系列的第2部分。万博1manbetx本文讨论了第1部分中开发的模型的测试和初始需求的验证。它展示了如何使用Simulink Tes万博1manbetxt™来设置测试套件,以验证与系统组件相关联的需求。该示例还探讨了这样一个场景:所述需求已被修改,导致设计和测试中的更改。

本示例的第1部分从一组性能需求开始。利用Simulink system Composer开发了雷达系统的体系结构模型。万博1manbetx采用该体系结构模型作为虚拟试验台,对雷达系统设计进行测试和验证。第1部分展示了如何使用Simulink Requ万博1manbetxirements™将需求链接到体系结构的组件。它还展示了如何使用Simulink实现体系结构的各个组件。万博1manbetx

自动化测试

在设置测试之前,加载示例第1部分中构建的模型。

open_system (“slexRadarArchitectureExample”

万博1manbetxSimulink Test Manager是一个为模型创建测试套件的工具。要访问测试管理器,单击万博1manbetx仿真软件测试应用程序选项卡,然后导航到测试选择并单击万博1manbetxSimulink测试管理器.要开始测试,请单击为模型创建一个新的测试文件新建测试文件.然后添加两个独立的测试套件,每个需求一个。进一步配置测试套件:

  • 向每个测试套件添加描述,以简要描述正在测试的功能。

  • 将测试套件链接到一个或多个需求。为了验证需求,测试套件中的测试必须通过。

  • 为测试运行前的设置和测试运行后的清理添加回调。这个示例需要在基本工作空间中使用一个全局变量,以便在单个测试套件中聚合多个Monte Carlo运行的结果。

接下来,在测试套件中配置测试。更改只在“测试中的系统”、“参数重写”、“迭代”和“自定义标准”部分中进行。

  • 在“测试中的系统”部分中,设置模型字段转换为模型的名称,在本例中为slexRadarArchitectureExample

  • Parameter Overrides部分用于在测试执行期间为基本工作区中的参数分配不同的值。使用本节指定最大距离测试和距离分辨率测试的目标参数。

对于最大距离测试,指定一个1m的单个目标 2 在距离雷达6000米范围内的雷达横截面(RCS),如R1所述。

对于距离分辨率测试,指定两个具有不同RCS的目标,按照R2的要求在距离上间隔70 m。

  • 由于随机噪声和目标波动效应,有可能只验证在多次测试运行中收集的平均雷达系统性能。测试的Iterations部分可用于配置测试以多次运行以实现蒙特卡罗模拟。本示例将自定义脚本添加到Scripted Iterations小节中以设置蒙特卡洛。脚本只执行10次迭代。为了可靠地验证系统的性能,需要进行更多的迭代。

  • Custom Criteria部分允许您指定一个自定义规则,该规则在每次迭代结束时验证测试结果。配置它以运行helperslexRadarArchitectureTestCriteriaHelper函数,该函数处理每个测试迭代的结果并将它们存储在detectionResults基本工作区中的变量。这个函数计算检测阈值交叉的次数。如果这个数字等于测试中的目标数量,则系统通过测试迭代,否则迭代将被声明为失败。在上次迭代中,helperslexRadarArchitectureTestCriteria计算经过的迭代的总数。这个helper函数的第二个参数是整个测试必须通过的迭代的百分比。最大范围测试要求至少90%的迭代通过。由于范围分辨率测试对两个独立的目标建模,它要求至少80%的测试迭代是成功的。

在测试管理器中打开这个测试套件。

打开(“slexRadarArchitectureTests.mldatx”

在添加测试并将它们链接到需求之后,需求编辑器中的需求状态表明已添加验证,但测试尚未执行。

现在测试可以启动了。在运行两个测试套件之后,使用Data Inspector检查每个单独迭代的结果。自定义条件帮助函数还将每次迭代的状态打印到命令窗口。

由于两个测试都通过了,需求编辑器现在显示两个需求都已实现和验证。

修改后的需求

在设计过程中,初始需求通常会被修改和更改。本例假设新的最大距离要求是8000米,新的距离分辨率要求是35米。更新后的要求如下:

  • R1:雷达必须探测到一个雷达横截面(RCS)为1米的急转弯1格目标 2 在8000 m范围内,探测概率为0.9,虚警概率为1e-6。

  • R2:当探测到两个距离为35米、方位相同的转弯1型目标返回时,雷达必须在80%的情况下分辨这两个目标并生成两个唯一的目标报告。

在需求编辑器中对需求进行更改将生成更改问题,并以红色突出显示相应需求的摘要状态。到实现变更需求的组件的链接以及到验证需求的测试的链接也会突出显示。通过这种方式,可以很容易地确定设计的哪些组件和哪些测试需要更新,以便处理需求中的更改并对其进行测试。

为了监视需求或系统组件实现中的变更,可以使用需求可跟踪矩阵。

更新系统参数

新的最大射程要求超出了当前系统的明确射程7494.8米。为了满足新的要求,增加了明确的范围。这可以通过降低PRF来实现。将PRF设置为16 kHz可获得9368.5 m的明确范围,这远远超出所需的最大范围8000 m。

由于目前的雷达设计发射的是未调制的矩形脉冲,系统的分辨率极限由脉冲宽度决定。目前的范围分辨率限制是60米。35米的新要求几乎降低了两倍。满足这一要求的矩形脉冲必须短两倍,在相同范围内可用功率减少一半。使用Radar Designer应用程序进行的需求分析表明,该系统在最大距离8000米时无法达到所需的探测性能。为了获得所需的最大距离和距离分辨率,在不增加峰值发射功率或天线增益的情况下,采用时带宽积大于1的新波形。设置脉冲宽度为1 μ 年代 5 MHz的带宽将提供所需的分辨率。

在雷达设计器应用程序中打开此设计。

radarDesigner (“RadarDesigner_LFMWaveform.mat”

脉冲波形分析仪应用程序可用于从多个备选方案中选择雷达波形。本例使用LFM波形。

pulseWaveformAnalyzer (“PulseWaveformAnalyzer_LFMWaveform.mat”

修改后的设计

修改系统组件行为的一种方便方法是通过创建变体来添加可选设计。这可以通过右键单击组件并选择来完成增加变量选择.添加一个变体波形发生器并在其中添加Si万博1manbetxmulink行为,实现LFM波形的生成。

配置线性调频通过将脉冲宽度设置为新值1来阻塞 μ 年代 .设置扫描带宽为5 MHz, PRF属性为更新后的PRF值16 kHz。使用LFM波形运行模型。

%设置模型参数helperslexRadarArchitectureParameters;更新模型参数以使用LFM波形helperslexRadarArchitectureParametersLFM;simOut = sim(“slexRadarArchitectureExample.slx”);data = simOut.logsout{1}.Values.Data;图;情节(range_gates、数据元素个数(range_gates) + 1:结束));包含(的范围(m));ylabel (“权力(W)”);标题(“信号处理器输出”);网格

图中包含一个轴对象。标题为Signal Processor Output的axes对象包含一个line类型的对象。

更新测试

在验证具有线性调频的雷达系统能够满足更新后的要求之前,通过更新目标位置对测试进行相应的修改。

  • 在最大射程测试中将目标距离设置为8000米

  • 在距离分辨率测试中改变目标距离,使目标之间的距离达到35米

更新测试后,在需求编辑器中清除所有更改问题。点击显示链接需求选项卡,然后选择链接并单击清除所有按钮改变的信息部份细节右边的面板。在问题解决后启动测试。新设计将通过更新的测试,并验证系统满足更新的要求,确认雷达设计师应用程序所做的预测。

总结

本示例是关于如何基于一组性能要求在Simulink中设计和测试雷达系统的两部分系列的第2部分。万博1manbetx它展示了如何使用Simulink Tes万博1manbetxt来测试第1部分中开发的模型,如何将测试链接到需求,以及如何通过运行蒙特卡洛模拟来验证需求是否得到满足。该示例还说明了如何跟踪需求中的变更到相应的组件,以及如何通过向模型添加变量来创建可选的设计。本示例的第1部分从最终设计必须满足的需求开始。它使用System Composer开发了雷达系统的体系结构模型,可以作为虚拟测试平台。第1部分还展示了如何使用Simulink Requirem万博1manbetxents将需求链接到组件,以及如何使用Simulink实现体系结构的各个组件。