【Simulink】示波器图形数据导入Matlab重新绘图的简明教程(自用)

24 篇文章 18 订阅
5 篇文章 2 订阅

版本:Matlab2019b

在写论文的时候,通常要对实验数据做进一步处理,绘制清晰的图片。本篇博客将介绍如何将Simulink的示波器运行结果导出并绘制图像。

1. 效果

示波器波形图片:

在这里插入图片描述

黑色背景,而且坐标轴字体较小,不方便修改,不能直接用在论文上面

对比 Matlab 绘图:
请添加图片描述

接下来介绍如何设置~

2. Simulink 设置波形数据导出

选择需要导入的示波器数据

点击 View > Configuration Properties … > Logging

在这里插入图片描述

Logging 页面中,勾选 Log data to workspace

在这里插入图片描述

变量名称 Variable name 可以自己定,如果需要记录时间数据的话保存格式 Save format 选择 Structure With Time,不需要的可以直接选 Structure,最后点击 OK

(当然保存成其他格式也是可以的,只是后面的代码需要微调一下)

然后运行一下 Simulink 文件,名为 ScopeData 的数据就会出现在 Matlab 工作区。

在这里插入图片描述

3. Matlab 绘图代码

3.1 绘制基本波形图

双击工作区的 ScopeData 数据,可以看到:
在这里插入图片描述

除了模块名称 blockName 之外,还有时间变量 time 和 信号 signals ,signals 双击之后显示:

在这里插入图片描述

我们绘图的数据来源于 ScopeData.signals.values
直接在 Matlab 输入

plot(ScopeData.signals.values)

显示:
在这里插入图片描述

波形大体是对的,但是没有加入时间轴,所以再进一步修改为:

plot(ScopeData.time, ScopeData.signals.values)

显示:
在这里插入图片描述

和 Simulink 示波器的波形对比:
在这里插入图片描述

波形是一致的,而且 Matlab 绘图可以进一步编辑 Simulink 示波器导出的图像数据。

还有一种比较简单的方法是选中工作区的变量,然后在主菜单上的绘图中选择plot,自动画出波形图,并且生成绘图的基本代码。

3.2 添加波形信息

添加横纵坐标、标题:

plot(ScopeData.time, ScopeData.signals.values)
xlabel('Time(seconds)');
ylabel('Current(A)');
ylim([-20,20]);
title('Current waveform');

在这里插入图片描述

添加细节图(局部放大):

axes('Position',[0.35,0.75,0.15,0.15]); 
plot(ScopeData.time,ScopeData.signals.values,'b');                                                                                                      
xlim([0.02, 0.03]);
ylim([5,10]);

整体代码:

plot(ScopeData.time, ScopeData.signals.values)
xlabel('Time(seconds)');
ylabel('Current(A)');
ylim([-20,30]);
title('Current waveform');

axes('Position',[0.35,0.75,0.15,0.15]); 
plot(ScopeData.time,ScopeData.signals.values,'b');                                                                                                       
xlim([0.02, 0.03]);
ylim([5,10]);

在这里插入图片描述

3.3 多组波形数据

比如波形图包含两组数据

y1=ScopeData2.signals(1).values;
y2=ScopeData2.signals(2).values;

两组数据可以绘制在同一张图内。

4. 修改图片属性

绘图之后,还有很多细节(比如颜色、字体、大小等)可以通过 Matlab 代码(附加参数)进行修改,也可以把波形图导入其他软件,比如 illustrator、Affinity Designer 进行美化处理。

一个比较简单的方法是点击属性检查器,直接调整属性参数:

修改前:

在这里插入图片描述

调整字体为 Times New Roman,修改字体大小、柱形颜色和边框粗细。

修改后:

在这里插入图片描述

采用 Affinity Designer 进行美化之前,需要把 matlab 图像导出成 eps (推荐格式,矢量图)文件形式,再进行美化。

  • 59
    点赞
  • 299
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

不雨_亦潇潇

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

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

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

打赏作者

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

抵扣说明:

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

余额充值