我是靠谱客的博主 内向大象,这篇文章主要介绍Matlab/Simulink 波形FFT分析图 绘制,现在分享给大家,希望可以做个参考。

Matlab/Simulink 波形FFT分析图 绘制

Simulink FFT分析图导出至Visio文件后需重新编辑

若果想要将其他多余部分删除还需要取消组合,删除网格等操作

本程序的目的便是为了解决上述问题,简化后续操作,实现matlab只出图可以直接用于汇报、文章初稿

第一步,matlab中将想要实现FFT分析的数据输入scope

第二步,修改示波器配置

双击打开scope-右键属性配置-记录:变量名称、保存格式

(本人为22a版本,中文,需自行对应英文格式)
第三步,运行仿真

结束后工作区便出现同名称结构体数据

第四步,同文件夹运行。m程序文件

注意:需根据实际需要修改数据,具体可见注释部分

% Simulink波形FFT数据导出并绘图
% 解决Simulink导出FFT分析图需要取消组合并且需要删除网格的操作

FFTDATAa = power_fftscope(FreqScan); %% 生成FFTDATA结构体,括号内为simulink导出的结构体名称
FFTDATAa.input = 1; %% 输入信号排序,Eg:输入为三相电压、三相电流两个信号。电压为1,电流为2
FFTDATAa.signal = 1; %% 输入信号中信号排序,Eg:A相电压为1,C相电压为3
FFTDATAa.startTime = 1; %% 起始时刻
FFTDATAa.cycles = 50; %% 参与FFT的周期数
FFTDATAa.fundamental = 50; %% 基波周期
FFTDATAa.maxFrequency = 100000; %% FFT最大频率
FFTDATAa_update = power_fftscope(FFTDATAa);%% 更新结构体

frequency=FFTDATAa_update.freq;% 频率
Mag=FFTDATAa_update.mag;% 幅值
Mag_fund=FFTDATAa_update.magFundamental;% 基波幅值
Thd=FFTDATAa_update.THD;% 百分之

Fundstr=num2str(Mag_fund);% 基波幅值数值信号转换为字符串,用于显示
THDstr=num2str(Thd);% THD幅值数值信号转换为字符串,用于显示

Titleplot1=['Fundamental(50Hz)=' Fundstr '(V), THD=' THDstr '%'];%数值转化为字符串

bar(frequency,100*Mag/Mag_fund,'facecolor','m','EdgeColor','k');hold on;%柱状图
axis([0 200,0 0.14]);%设置横纵坐标范围
title(Titleplot1);
ylabel('rmfontname{Times New Roman}Mag(% of Fundamental)');
xlabel('rmfontname{Times New Roman}Frequency(Hz)');
set(gca,'FontSize',12,'Fontname', 'Times New Roman');
set(gcf,'unit','normalized','position',[0.1,0.1,0.4,0.3]);

最后

以上就是内向大象最近收集整理的关于Matlab/Simulink 波形FFT分析图 绘制的全部内容,更多相关Matlab/Simulink内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部