Simulink数据保存到excel表

通过仿真,有的时候需要把数据导出去其他软件绘图,写论文会用到,当然了MATLAB自身通过一些命令也可以进行绘图,但是我还是懒得去整那些命令了,用他们用的origin软件绘图,所以需要导出数据到excel表里面。记录一下大概的步骤。

1、示波器设置导出数据到工作空间

示波器设置

2、重新运行一下仿真

3、到工作空间找到数据

这一步,我查了网上的,跟着操作,一直没有看到我命名的数据,然后瞎搞了一下,才发现是在out里面,如下图所示。


示波器导出来的数据位置

4、在MATLAB命令窗口写几句命令

方法一,指定数据数量

timeData = out.PI_Control.time; % 提取时间数据
signal1Data = out.PI_Control.signals(1).values; % 提取第一个信号的数据
signal2Data = out.PI_Control.signals(2).values; % 提取第二个信号的数据
signal3Data = out.PI_Control.signals(3).values; % 提取第三个信号的数据
 % 创建一个包含时间和其他信号数据的表格
T = table(timeData, signal1Data, signal2Data, signal3Data);
% 导出表格到Excel文件
 writetable(T, 'E:\output.xlsx');

方法二,自动识别提取

% 自动提取所有信号
timeData = ScopeData1.time;
num_signals = length(ScopeData1.signals);
signal_data = cell(1, num_signals);
var_names = cell(1, num_signals);

for i = 1:num_signals
    signal_data{i} = ScopeData1.signals(i).values;
    var_names{i} = sprintf('Signal_%d', i);
end

% 构建表格
T = table(timeData, signal_data{:}, 'VariableNames', [{'Time'}, var_names]);

% 导出
output_path = 'C:\Users\Administrator\OneDrive\Parper\毕业大论文\图表绘制\output.xlsx';
writetable(T, output_path);
disp('所有信号已自动导出到 Excel!');

5、路径下找到excel表格

表格
欢迎关注本人WXG众H:那个混子
记录自己学习的过程,分享乐趣、技术、想法、感悟、情感!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容