失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > matlab gui怎样将结果保存在excel中_声发射简单使用matlab导入参数波形数据并绘图...

matlab gui怎样将结果保存在excel中_声发射简单使用matlab导入参数波形数据并绘图...

时间:2022-04-22 12:33:32

相关推荐

matlab gui怎样将结果保存在excel中_声发射简单使用matlab导入参数波形数据并绘图...

在数据分析的时候,很多人习惯使用matlab做为分析工具,matlab自带有强大的数据分析处理能力,有方便和强大的GUI绘图插件可以方便的绘制波形图、散点图、柱形图等,另外也有FFT、小波分析、神经网络等插件,给声发射的信号分析以很大的方便和提升。之前有人问matlab相关的问题,一直没有回复。主要是matlab功能非常的多没有时间专门进行讲解,且这个属于一款专业的分析软件,就软件的使用而言和声发射教学并没有关系,完全可以通过专业的matlab的教学视频进行学习。这里推荐一个B站上台大郭彦甫老师的视频,在B站搜索matlab播放量最高的就是。在知乎上搜索“MATLAB教程-台大郭彦甫”有对应的教案和课后习题答案,讲的非常的不错。本文主要介绍几个matlab和声发射相关的简单操作。分别是声发射数据的导入、波形数据的显示、基于参数表的关联图和小波分析的功能插件。如果对你有帮助请帮忙转发。

1、数据的导入显示方法1,手动

声发射数据一般的厂家都有专门的格式,基本是二进制的数据保存的,如果不知道其数据格式是不能用matlab解析的。好消息是一般的厂家都提供了导出数据的功能,可以导出波形图和参数表。导出的数据可能是txt格式的、也可能是csv格式的(可以用txt和excel打开的数据格式)。1波形图导入导出的波形图可能是如下这样的,每行都是一个数值,每行表示一个电压点,两个点之间的时间间隔就是采集时候使用的采样率的倒数,比如用10Mpps的采样率采集数据,两个点之间的时间间隔就是1/1000000秒,0.1微秒。

图:txt

操作:在界面主页导入数据->选择对应的文件->修改变量名->点击保存。在matlab的工作区内就会出现对应的变量,可以选中变量,右键另存为,保存成.mat格式的文件,以后就可以直接用matlab打开了。这里导入的是一个模拟的波形数据(没有实际采集的声发射数据),选中变量,在菜单->绘图->点击plot图标,波形图就绘制出来了。

图形如下,是不超简单

2、波形数据导入方法2,代码

如果文件非常多,或者要更精确的控制绘图就需要用到程序了。点击主主页新建脚本->编制如下内容

%读取路径下的文件,保存到变量dataFromTxt2中dataFromTxt2 = textread('C:\Users\10580.DESKTOP-FERFBJP\Desktop\data.txt');%设置采样率,根据实际的设置sampleRate=10000000;%两点之间的时间间隔,单位是ust=1*1000000/sampleRate;%设置X轴x=t:t:size(dataFromTxt2)*t;%绘图plot(x,dataFromTxt2);xlabel('Time-us');ylabel('Amp-V');title('AE wave');

我们添加了图片的名字,添加了XY轴的标签,把X轴的坐标换成了时间

3、如果文件里面有文件头信息

有些导出数据中包含文件头,里面记录了包括采样率,到达时间,数据长度等基本信息,这些信息也是非常有用的,只需要修改读取文件的代码就可以了。

%从文件读取fid=fopen('C:\Users\10580.DESKTOP-FERFBJP\Desktop\data.txt','r');%文件无法打开或者文件不存在返回if(fid==-1) return;end%将文件头的消息去掉,也可以解析之后得到有用的消息,本处示例去掉for i=1:5 fgetl(fid);end%读取一行一行的数据,写入变量dataFromTxt3dataFromTxt3=zeros(1024,1);index=1;%循环读取每一行转成数字while ~feof(fid) dataFromTxt3(index)=str2double(fgetl(fid)); index=index+1;end%后面的操作和之前一样

4、如何导入参数表

导入参数表的方式和上面一样,参数表的格式可能如下所示,每个厂家的格式可能不一样。手动导入数据,可以导入成一个矩阵,每行表示一帧数据的参数,每列表示一种参数的数值。当然你也可以用代码的方式读入数据。

5、根据参数表绘制散点图

%散点图% plot(count,'x')% xlabel('frame');% ylabel('count');% title('每帧的振铃计数');

6、根据参数表绘制柱形图

%柱形图% bar(energy)% xlabel('frame');% ylabel('energe');% title('每帧的能量');

7、绘制参数表之间的相关图

如下是计数和能力之间的相关图:

%X计数Y能量,相关图% plot(count,energy,'or')% xlabel('count');% ylabel('energy');% title('X计数Y能量');

8、调用小波分析的功能

小波分析可以通过菜单选择,弹出小波分析的界面,有可以通过代码输入"wavemenu"弹出,这是matlab自带的小波分析工具包,功能非常的强大。以上。

如果觉得《matlab gui怎样将结果保存在excel中_声发射简单使用matlab导入参数波形数据并绘图...》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。