我使用 Simulink 使用 NI6024 采集卡进行了一些测量,型号如下:
我已经使用模拟时间 =“inf”和 0.2 的固定时间步长运行模拟,以便从卡中收集实时数据。但我没有意识到“时钟”给出的值与现实世界的时间不对应。更具体地说,我已经运行了大约一分钟的实验,但变量“t”中的数据范围从 0 到大约 50000,这显然是错误的。我已经保存了工作区数据,并且可以访问记录的数据(变量“t”和“h”),但无法重现实验。
有没有办法检索模拟的真实世界时间?
我使用 Simulink 使用 NI6024 采集卡进行了一些测量,型号如下:
我已经使用模拟时间 =“inf”和 0.2 的固定时间步长运行模拟,以便从卡中收集实时数据。但我没有意识到“时钟”给出的值与现实世界的时间不对应。更具体地说,我已经运行了大约一分钟的实验,但变量“t”中的数据范围从 0 到大约 50000,这显然是错误的。我已经保存了工作区数据,并且可以访问记录的数据(变量“t”和“h”),但无法重现实验。
有没有办法检索模拟的真实世界时间?
你基本上有两个选择。
实时运行您的模型,例如使用Simulink Real-Time或其他实时操作系统。在这种情况下,(挂钟)时间将表示自模型启动以来的时间。
编写一个 S-Function 以减慢模拟速度,使其实时模拟。在 File Exchange 上有多个这样做的例子。有关此类示例,请参阅Real-Time Pacer for Simulink。