从.mat文件中导入数据到simulink进行FFT分析

1. 在matlab中准备数据

.mat 文件中包含时间向量和需要分析的数据

load('fcssiabc061302.mat');

提取时间和需要分析的数据

time = fcssiabc061302.X.Data;          % 时间向量
signal = fcssiabc061302.Y(1).Data;     % A相电流数据

将数据转换为“structure with time”格式

% 转为列向量
time = time';
data = signal';
% 创建timeseries数据
inputData = timeseries(data,time);
save("inputData.mat","inputData","-v7.3");

运行以上代码,将数据加载到workspace中。

2. 在 Simulink 中创建模型

A. 导入数据到Simulink

  • 打开 Simulink 并创建一个新的模型,从 Simulink 库中拖动一个 From Workspace 块到模型中,将输出连接到示波器
  • From Workspace 块的参数设置中,将变量名设置为 inputData

B. 添加 Powergui 模块

  • 从 Simulink 库中拖动一个 Powergui 块到模型中,求解器类型选为离散,采样时间1e-6

C. 模型运行环境配置

  • 在模型设置中将求解器选为定步长

  • 在数据输入/输出处取消”Single simulation output“的勾选。(如果不取消勾选,进行FFT分析的时候,signal option的列表会显示empty)

 3. 运行仿真并进行 FFT 分析

  • 将仿真的运行时间设置为涵盖输入信号的整个时间范围,运行仿真,打开示波器查看数据无误后按照以下设置把采样到的数据,保存在工作区

  • 再次运行仿真,双击Powergui 块,选择 FFT Analysis 工具

  • 这时会在Structure with time模块的下拉列表中显示刚刚在示波器中导出的数据Scopedata,进行 FFT 分析

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值