使用 matlab 产生GK101任意波数据文件的方法
一、引言
MATLAB是由美國mathworks公司發布的主要面對科學計算、可視化以及交互式程序設計的高科技計算環境。它不但包含高效的數值計算、數據處理能力,而且簡單易用,是工程師日常研發過程中不可缺少的工具。本文使用matlab 生成一組簡單的數據文件然后轉換成 《GK101 任意波發生器》波形數據文件,由此為大家演示數據生成、格式轉換的過程。
二、文件轉換函數
我們已經做好了任意波文件格式轉換文件,源代碼如下:
?
1 %======================================= 2 % 生成GK101 任意波數據文件的程序 3 % Copyright GINGKO @2014 4 %======================================= 5 6 function arb(x,fre,amp,offs) 7 %清理工作臺 8 close all 9 clc 10 %建立文件 11 fid=fopen('arb0.wvt','wt') ; 12 %寫入注釋頭 13 fprintf(fid,';==== arb file generator for gk101 ====\n'); 14 %寫入頻率信息 15 fprintf(fid,'[frequency] = %f;\n',fre); 16 %寫入幅度信息 17 fprintf(fid,'[amplitude] = %f;\n',amp); 18 %寫入直流偏置信息 19 fprintf(fid,'[offset] = %f;\n',offs); 20 %寫入日期信息 21 fprintf(fid,'[date] = %d-%d-%d;\n',year(now),month(now),day(now)); 22 %提取矩陣大、小范圍,并寫入 23 fprintf(fid,'[datarange] = %f,%f;\n',min(x),max(x)); 24 [m,n]=size(x); 25 %提取矩陣長度,并寫入 26 fprintf(fid,'[length] = %d;\n',n); 27 %寫入數據 28 fprintf(fid,'[data] = \n'); 29 fprintf(fid,'%f,%f,%f,%f,%f,\n',x); %輸出矩陣 30 %關閉文件 31 fclose(fid)?
這個程序很簡單,沒接觸過 matlab 的估計也能看個大概,大家不用復制,我上傳個文件(arb.m):http://files.cnblogs.com/xiaomagee/arb.rar
大家下載這個文件后解壓縮,為了方便使用,把它放在任意一個硬盤的根目錄下。
三、數據生成實例
本節通過產生一個疊加白噪聲的正弦波,來演示整個數據產生、格式轉換并存儲的過程。
1.進入 arb.m 所在的目錄:
?我把arb.m 文件保存在了 D 盤的 matlab 目錄,所以通過下面的命令行進入:
2.通過命令行產生一個正弦波:
其中: x = 0:0.01:2*pi; 表示生成一個矩陣 x ,它包含從 0到 2π 、間隔為 0.01 的數據。
?y = sin(x) 計算正弦信號,保存在矩陣 y 中。
3. 疊加白噪聲:
其中:z = awgn(y,20) 表示在矩陣 y 上,疊加信噪比位 20dB 的白噪聲,并存儲在矩陣 z 中。
1 subplot(2,1,1); 2 plot(y) 3 subplot(2,1,2); 4 plot(z)?
四句為繪制波形,執行后如圖所示,分別為原始波形和疊加噪聲后的波形。
?
4. 調用函數,保存文件:
其中 arb(z,1000,5,0) 參數分別為:z 為需要保存的矩陣數據,1000 為波形頻率,5 為波形幅度,0 為波形直流偏置。
執行后會在工作目錄生成任意波數據文件:arb0.wvt。
這里我們也提供下載:http://files.cnblogs.com/xiaomagee/arb0.rar
生成文件后,把?《GK101 任意波發生器》連接電腦,就可以把波形文件復制進去了并重現波形了。通過本例疊加噪聲的正弦波,我們可以測試低通、帶通濾波器的性能。
通過《GK101 任意波發生器》沖先后的波形:
?
?
四、結束語
本文通過 matlab 生成數據并轉換成 GK101 所能識別的文件格式,使得《GK101任意波發生器》更容易與計算機配合工作,重現大家工作中想要的激勵信號。
實際工作中,數據來源可以多種多樣,例如ADC采集的原始數據、經過處理后的數據、標準函數疊加等等,完全不受限制。極大的發揮了《GK101 任意波發生器》 的潛能,為電子工程師研發過程推波助瀾。
?
儀器介紹頁面:
http://item.taobao.com/item.htm?id=40313916417
?
轉載于:https://www.cnblogs.com/xiaomagee/p/3930321.html
總結
以上是生活随笔為你收集整理的使用 matlab 产生GK101任意波数据文件的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java学习之数组(二)
- 下一篇: Ubuntu 下连接Github