您用于为每个子系统在中记录信号数据的方法取决于信号是否为:
非总线信号-直接记录每个子系统的
总线或总线阵列信号-使用以下方法之一:
使用总线选择器块选择要记录的信号并标记这些信号以进行信号记录。这种方法适用于许多型号。
将信号连接到外埠阻止并记录每个子系统的外部信号。当您想要记录整个总线信号,并且该总线信号包括许多总线元件信号时,请使用此方法。
笔记
不能将总线信号直接记录在每个子系统的日志中。
如果存在以下任一条件,则无法在每个子系统的内部的引用模型中记录信号:
在快速加速器模式下,每个子系统的模型模拟。
每个子系统本身的模型位于模型在加速器模式下阻塞。
每个子系统的a中记录的每个信号的数据保存在单独的数据集
元素作为万博1manbetxSimulink.SimulationData.Signal
对象记录的信号数据的格式取决于您如何设置数据集信号格式配置参数:
如果设置为时间序列
,则每个信号对象包含一个MATLAB数组®时间序列
数组将每次迭代的不同数据分开保存。
如果设置为时间表
,则每个信号对象包含一个MATLAB单元数组时间表
对象。此数组的维度与每次迭代的次数相匹配。例如,如果For Each subsystem有三次迭代,则记录的数据具有3x1
一系列时间序列
或时间表
物体。对于每个子系统的嵌套,每层嵌套都会向记录的数据添加另一个维度。
本例将每个子系统的一个信号记录在嵌套的日志中。
打开ex_loginsideforeach_嵌套
模型
打开系统(docpath)(完整文件(docroot、,“工具箱”,“万博1manbetxsimulink”,...“例子”,'ex_loginsideforeach_nested.slx')))
在Simuli万博1manbetxnk中®编辑,打开对于每个子系统1
块,然后在该子系统内部打开对于每个子系统2
块
模拟模型,检查顶部子系统第一次迭代和底部子系统第三次迭代的信号测井数据2x3
时间序列
每个级别第一次迭代两次,第二次(嵌套)迭代三次的结果
模拟(“ex_loginsideforeach_nested”); 洛格苏特(“nestedDelay”)
ans=Si万博1manbetxmulink.SimulationData.Signal包:Simulink.SimulationData属性:带字段的结构:名称:'nestedDelay'传播名称:''块路径:[1×1 Simulink.SimulationData.BlockPath]端口类型:'outport'端口索引:1个值:[2×3 timeseries]
返回内斯特德雷
对象
洛格苏特(“nestedDelay”).数值(1,3)
timeseries公用属性:名称:“nestedDelay”时间:[5x1 double]时间信息:[1x1 tsdata.timemetadata]数据:[1x5 double]数据信息:[1x1 tsdata.datametadata]
本例为每个子系统在a中记录一个双总线信号。对于一个总线信号,使用总线选择器阻止并记录每个选定的信号。对于其他总线信号,您使用外埠每个子系统的块和日志在外部。
打开每条日志总线的ex_
模型
打开系统(docpath)(完整文件(docroot、,“工具箱”,“万博1manbetxsimulink”,...“例子”,'ex_for_each_log_bus.slx')))
在Simuli万博1manbetxnk编辑器中,打开对于每个子系统
块
将信号记录在限制
总线信号,该信号被分支到总线选择器块,并且每个总线元件信号都标记为用于信号记录。
记录全部柜台巴士
信号,总线信号连接到外埠块每个子系统的输出信号标记为信号记录。为了使总线信号穿过子系统边界总线生成创建柜台巴士
信号具有输出数据类型参数设置为公共汽车:柜台公共汽车
和输出为非虚拟总线选中复选框。
模拟模型并检查信号测井输出。将重点放在为每个子系统记录的内部总线元件信号之一和为每个子系统记录的外部总线元件信号上。
模拟(“每个日志总线的ex_”); 罗格苏特
万博1manbetx仿真数据。模拟数据。模拟数据。模拟数据。数据集。数据集“logsout”数据“logsout”和3个元素的3个元素的3个元素的3个元素的名称“logsout”的3个元素的名称“数据集”数据集。数据集“数据集”数据集“logsout”和3个元素的3个元素的3个元素的3个元素的名称名称名称名称“3个元素的名称名称”名称,路径路径,路径,路径,UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU每个子系统/总线选择器3[1x1信号]…g_bus/对于每个子系统/总线选择器-使用大括号{}访问、修改或添加使用索引的元素。
返回饱和下限
对象
logsout{2}.值
具有以下属性的3×1 timeseries数组:事件名称UserData Data DataInfo Time TimeInfo Quality QualityInfo IsTimeFirst TreatNaNasMissing Length
返回外侧
对象
logsout{1}.值
ans=3×1带字段的结构数组:数据限制
如果数据集
信号格式为时间表
,则输出为时间表
对象。例如:
out=sim(“每个日志总线的ex_”,“数据集信号格式”,“时间表”); out.logsout{2}.value
ans=3x1单元阵列{11x1时间表}{11x1时间表}{11x1时间表}