仿真与测试:通过From Workspace模块导入外部数据

本文介绍了如何利用Matlab的FromWorkspace模块将试验数据导入Simulink进行仿真。通过处理Excel表格数据并将其转换为TimeSeries对象,然后在Simulink中用FromWorkspace模块替换输入模块,结合Gain和Scope模块展示仿真结果。这种方法对于分析汽车电控软件问题非常有用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文研究通过From Workspace模块导入外部数据并进行仿真测试的方法。

1 仿真外部数据

在汽车的电控软件开发中,经常会在公司园区内进行试验或者实车道路试验。在试验的过程中会通过工具软件采集一些数据(如CANape或INCA)并保存到本地。这些数据可以拿回到办公室,在电脑上用Simulink模型仿真,从而分析其中的问题。这时,可以用到From Workspace模块,把测试的数据导入到Matlab中。
在这里插入图片描述
后面博主会用简单的例子说明这个模块的用法。

2 仿真过程

2.1 准备数据

仿真前,需要拿我们的原始数据,处理成Matlab的时间序列。这里的原始数据可以是各种工具导出的各种文件格式,这里博主用一个简单的EXCEL表格作为演示。

如下图所示,Excel表格中的第一列是时间(Time),第二列是车速(VehicleSpeed)。
在这里插入图片描述
通过下面的Matlab脚本,将表格里的数据先导入到Matlab的Workspace中。

function ImportData()

[DataList,~,~] = xlsread('demo.xlsx','sheet1');
TimeList = DataList(:,1);
SpeedList = DataList(:,2);
assignin('base','SpeedSeries',timeseries(SpeedList,TimeList));

end

运行以后,会在Workspace中导入一个TimeSeries序列。双击它就可以看到序列的内容,正是导入的EXCEL的内容。
在这里插入图片描述
现在,就已经把外部文件的数据导入到了Matlab的Workspace中,也就为Simulink中的From Workspace模块做好了准备。

2.2 Simulink仿真

导入好数据到Workspace中以后,就可以以这些数据为输入,在Simulink中仿真我们的控制算法。通常的做法是,把模型中的输入Inport模块全都去掉,换成From Workspace模块。这里博主没有控制算法,就直接使用From Workspace模块和Scope把Workspace中的数据显示成随时间变化的曲线。

1)首先,建立一个空的Simulink模型;

2)拖入一个From Workspace模块,把里面的Data参数改成Matlab工作区的变量名(SpeedSeries),Output Data Type就保持为默认的继承;
在这里插入图片描述
3)在模型中再添加一个Gain模块和一个Scope模块;
在这里插入图片描述

4)仿真模型,就可以在Scope中看到工作区中的数据被显示到了Scope中了;
在这里插入图片描述

3 总结

以上是导入试车测试数据的方法。

>>返回个人博客总目录

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

chhttty

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值