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

简介: 【Simulink】示波器图形数据导入Matlab重新绘图的简明教程(论文)

版本:Matlab2019b

1. 效果

示波器波形图片:

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

对比 Matlab 绘图:

接下来介绍如何设置~

2. Simulink 设置波形数据导出

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

点击 View > Configuration Properties … > Logging

Logging 页面中,勾选 Log data to workspace

变量名称 Variable name 可以自己定,保存格式 Save format 选择 Structure With Time,如果需要记录时间数据的话,不需要的可以直接选 Structure With Time ,最后点击 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 文件形式,再进行美化。

相关文章
|
17天前
|
存储
MATLAB - 使用 MPC Designer 线性化 Simulink 模型
MATLAB - 使用 MPC Designer 线性化 Simulink 模型
10 1
|
18天前
|
存储
MATLAB - 模糊设计器使用教程
MATLAB - 模糊设计器使用教程
23 1
|
10天前
matlab绘图之plot使用
matlab绘图之plot使用
12 0
|
17天前
|
传感器 数据可视化
MATLAB - 读取双摆杆上的 IMU 数据
MATLAB - 读取双摆杆上的 IMU 数据
23 0
|
2月前
|
机器学习/深度学习 算法 数据挖掘
基于改进K-means的网络数据聚类算法matlab仿真
**摘要:** K-means聚类算法分析,利用MATLAB2022a进行实现。算法基于最小化误差平方和,优点在于简单快速,适合大数据集,但易受初始值影响。文中探讨了该依赖性并通过实验展示了随机初始值对结果的敏感性。针对传统算法的局限,提出改进版解决孤点影响和K值选择问题。代码中遍历不同K值,计算距离代价,寻找最优聚类数。最终应用改进后的K-means进行聚类分析。
|
26天前
|
Go C++ Windows
Matlab 冰壶仿真游戏安装及教程
在Matlab上安装并运行冰壶仿真游戏的详细教程,包括编译环境准备、通过APP安装或直接运行源代码的方式,以及游戏的基本操作步骤。
21 0
|
3月前
|
算法 数据可视化 数据挖掘
大学生必备!GitHub星标破千的matlab教程(从新手到骨灰级玩家)
MATLAB(Matrix Laboratory)是MathWorks公司推出的用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境的商业数学软件。 MATLAB具有数值分析、数值和符号计算、工程与科学绘图、数字图像处理、财务与金融工程等功能,为众多科学领域提供了全面的解决方案。
|
3月前
|
机器学习/深度学习 算法 数据可视化
m基于PSO-LSTM粒子群优化长短记忆网络的电力负荷数据预测算法matlab仿真
在MATLAB 2022a中,应用PSO优化的LSTM模型提升了电力负荷预测效果。优化前预测波动大,优化后预测更稳定。PSO借鉴群体智能,寻找LSTM超参数(如学习率、隐藏层大小)的最优组合,以最小化误差。LSTM通过门控机制处理序列数据。代码显示了模型训练、预测及误差可视化过程。经过优化,模型性能得到改善。
67 6
|
3月前
|
算法 数据可视化 数据挖掘
大学生必备!GitHub星标破千的matlab教程(从新手到骨灰级玩家)
MATLAB(Matrix Laboratory)是MathWorks公司推出的用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境的商业数学软件。 MATLAB具有数值分析、数值和符号计算、工程与科学绘图、数字图像处理、财务与金融工程等功能,为众多科学领域提供了全面的解决方案。
|
3月前
|
机器学习/深度学习 算法 计算机视觉
基于CNN卷积神经网络的金融数据预测matlab仿真,带GUI界面,对比BP,RBF,LSTM
这是一个基于MATLAB2022A的金融数据预测仿真项目,采用GUI界面,比较了CNN、BP、RBF和LSTM四种模型。CNN和LSTM作为深度学习技术,擅长序列数据预测,其中LSTM能有效处理长序列。BP网络通过多层非线性变换处理非线性关系,而RBF网络利用径向基函数进行函数拟合和分类。项目展示了不同模型在金融预测领域的应用和优势。

热门文章

最新文章

下一篇
云函数