模拟数据检查器可以比较从工作区或文件导入的运行和各个信号的数据和元数据或登录模拟。您可以使用公差分析比较结果,并且您可以通过指定信号属性和比较约束来配置比较行为。此示例使用从模型的模拟中记录的数据slexAircraftExample
并演示如何:
比较信号和运行。
分析比较结果使用比较窗格中的。
指定信号公差和全局公差。
配置比较约束。
有关公差计算和影响比较的信号属性的更多信息,请参见仿真数据检查器如何比较数据.要以编程方式比较数据,请使用金宝appSimulink.sdi.compareRuns
函数或金宝appSimulink.sdi.compareSignals
函数。
这个例子从检查模拟数据.您还可以使用此脚本生成示例所需的数据。
load_system(“slexAircraftExample”)配置要记录的信号金宝appsimulink.sdi.marksignalforstreaming(“slexAircraftExample /试点”,1,'在') 金宝appSimulink.sdi.markSignalForStreaming (“slexAircraftExample /飞机动力学模型”3,'在') 金宝appSimulink.sdi.markSignalForStreaming (“slexAircraftExample /飞机动力学模型”4'在')%将导频信号改为正弦set_param (“slexAircraftExample /试点”那“波形”那'正弦')%模拟模型SIM(“slexAircraftExample”)%将导频信号变为正方形set_param (“slexAircraftExample /试点”那“波形”那'正方形')%模拟模型SIM(“slexAircraftExample”)
您可以通过比较信号来分析模型中两个信号之间的关系。例如,比较坚持
输入信号到输出信号,α,rad
.
导航到比较窗格。
要查看可供比较的信号列表,请展开基线下拉选择信号.
选择Stick(运行1:slexAircraftExample)
.
扩大比较下拉选择alpha, rad(运行1:slexAircraftExample)
.
点击比较.
或者,您可以选择基线和比较通过右键单击该信号使用上下文菜单的信号检查窗格。
信号是不相同的,所以它们不匹配的绝对,相对和时间公差,所有设置0.
默认情况下。
在比较视图的顶部,你可以看到α,rad
信号滞后坚持
信号。对于信号比较,仿真数据检查器使用指定的公差值基线信号。为此添加时间容忍度坚持
解释滞后的信号。
选择坚持
信号输入0.5
在时间的宽容场的属性窗格。当你指定一个公差基线信号,它覆盖全球宽容字段自动更改为是的
.当你点击离开时间的宽容字段时,使用指定的信号级公差再次运行比较。如果要对信号使用全局公差值,请单击覆盖全球宽容字段和选择没有
从下拉。
仿真数据检查器在标绘的周围绘制公差带基线信号和周围带符号的差分信号显示在底部的子图中。差值图顶部的条形图用绿色和红色分别表示公差内和公差外区域。
时间公差包含两个信号之间的相位差,但比较中仍然包含由于幅度差而超出公差的区域。你可以添加一个大小公差作为绝对的宽容或相对宽容.
为了增加绝对的容忍度坚持
信号,输入0.05
到绝对的宽容属性窗格中的字段。结合绝对公差和时间公差,信号比较通过。
笔记
模拟数据检查器使用最宽松的释放每个点的指定公差的最宽容解释绘制公差区域。有关仿真数据检测器如何计算公差频带的更多信息,请参阅公差规范.
您还可以使用模拟数据检查器将所有信号与另一个运行中的所有信号进行比较。运行比较可以提供有关更改模型参数的影响的有用信息。例如,更改控制杆输入信号的滤波器的频率截止。然后,使用模拟数据检查器评估对记录信号的影响。
要访问模型工作区中的数据,请在建模标签,下面设计,点击模型浏览器.
单击模型名称旁边的箭头并选择模型的工作空间.
改变TS.
从0.1
到1
并关闭模型浏览器.
使用新滤波器模拟模型。
在比较窗格在模拟数据检查器中,展开基线下拉,选择运行.
从运行列表中选择运行2:Slexaircraftexample
.
扩大比较下拉选择3:运行slexAircraftExample
.
点击比较.
这比较窗格中列出了来自比较运行的所有信号,并在结果列。在这个例子中,三个信号都对齐了,没有一个匹配。你可以点击更多的要查看每个信号比较不匹配的原因。所有三个信号都超出了容差。
笔记
仿真数据检查器只比较来自的信号基线把它和来自比较运行。如果一个信号来自基线运行不与来自的信号保持一致比较运行,信号列于比较窗格与警告。有关信号对准的更多信息,请参见信号对齐.
要绘制比较结果,请在中选择要查看的信号比较窗格。例如,为q, rad /秒
信号。上面的图显示了q, rad /秒
信号从中基线和比较运行。下面的图显示了信号和计算的公差带之间的差异。
要分析运行比较中的信号,可以指定全局公差。若要指定全局公差,请单击更多的.在下面全球公差, 进入0.75
对于时间的宽容和0.075
绝对容忍。
单击比较按钮运行比较。仿真数据检查器绘制公差带围绕基线信号和有符号的差分图。在新的容忍值下坚持
和q, rad /秒
信号通过比较。
查看α,rad
信号以分析比较结果中的公差区域。单击箭头按钮在工具栏中导航公差外区域。图上的两个游标表示第一个超出容忍区域的开始和结束。您可以使用键盘箭头来探索每个公差区域外的信号和公差值。要查看下一个超出公差区域,单击工具条上的右箭头按钮。
要解析公差外区域,可以选择修改全局公差值或向α,rad
信号使用信号属性。
您还可以对影响结果是匹配还是不匹配的比较应用约束。例如,您可以指定信号的时间向量必须匹配,以使结果匹配。要指定约束,请单击更多的,然后选择信号时间向量必须匹配.要与此约束进行新的比较,请单击比较.
比较结果表明所有信号都像现在一样不匹配。时间向量与任何信号不匹配,因为它们是用使用可变步骤求解器的模型的模拟来记录的,并且在模拟之间发生变化。当比较结果是由于约束而不匹配时,模拟数据检查器不会计算该信号的结果。选择一个信号时,绘图区域显示了信号结果是不匹配的原因。
你可以配置这些比较约束:
信号数据类型必须匹配
信号启动和停止时间必须匹配
信号时间向量必须匹配
当您在信号元数据中要求匹配时,指定约束可以更快地返回不匹配的结果,因为当指定的元数据不匹配时,比较不会计算结果。
您还可以在检测到第一次不匹配结果后配置比较以停止计算结果。当您配置比较以停止第一次不匹配时,比较在检测到信号元数据中的第一个不匹配后始终停止。当比较信号数据时,您还可以选择停止比较。
仿真数据检查器始终将信号对齐,并始终检查信号单元是否匹配。当您配置比较以停止第一次不匹配时,不匹配与不匹配的单元对齐和信号的信号始终导致停止的比较。您可以通过选择一个或多个约束来指定其他元数据以进行比较。
本例中使用的运行和信号相对较小,比较运行得很快。当您比较长信号或包含多个信号的运行时,比较可能会花费更多时间。仿真数据检查器在比较过程中显示增量进度指示器,并且比较按钮成为A.取消按钮可以单击以在任何时候取消比较。对于分层数据,结果列总结每个层次节点上的结果。