测试数据经常使用 matal 进行处理,在此保存一份读/写文件模板方便以后使用
基本操作过程
1.测试数据读入
采集卡得到的的数据大部分可以以.txt
文件列向量的形式得到,删除数据描述部分后,可以使用以下语句读入为列向量。
1
| [x,y]=textread('Path',' %f %f');
|
2.数据处理
之后可以通过不同的处理手段,对数据进行(不限于)以下的操作
3.数据导出
处理完毕后可以将数据以.txt
文件输出,给后续计算/处理使用
1 2 3 4 5 6 7 8
| fid=fopen('D:\Project\Graduation Design\Matlab\MiX_Z_L.txt','wt');
for i = 1:1:1000 fprintf(fid,'%d ',f(i)); fprintf(fid,'{%f %f}\n',arr1(i),arr2(i)); end fclose(fid);
|
多文件处理模板
这里以某次处理振动加速的得到速度的过程作为案例;
- 数据文件采用统一命名规则,可以方便利用循环语句快速导入数据
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| direction=["x","y","z"]; pressure=["150","50"]; for i=1:length(pressure) for j = 1:length(direction) fname_in="\T02_"+pressure(i)+"_"+direction(j)+".txt"; path="D:\works\duct_analize\vib_"+pressure(i)+... "\outlet2_"+pressure(i); [num,t,a]=textread( char(path+fname_in) ,' %d %f %f'); za=detrend(a); vz=cumtrapz(t(2),za); v=detrend(vz); fname_out = "\T02_"+pressure(i)+"_"+direction(j)+"vel.txt"; fid=fopen('D:\works\duct_vibration\test\vib_vel\'+fname_out,'wt'); for n = 1:length(vz) fprintf(fid,'%d ',num(n)); fprintf(fid,'%f %f\n',t(n),v(n)); end fclose(fid); hold on; plot(t,v); end end
|