从TDS示波器捕捉FFT MATLAB代码

12个视图(30天)
我有一个代码所示,可以捕获电压和时间数据,然后计算系统的光谱图我处理…我想读/存储FFT直接从美国泰克的示波器,很难找到任何网站或他们的支持……万博1manbetx
我想复制一个老纸(这显示他们捕获数据直接从范围)。我可以自己和FFT数据匹配曲线,但我想捕捉它直接从范围。
% %仪器连接
清晰的所有;关闭所有;clc;
%创建一个VISA-USB对象。
resourceName = instrfind (“类型”,“visa-usb”,“RsrcName”,“USB0:: 0 x0699:: 0 x0363:: C054303:: 0:: INSTR”,“标签”,);
%如果它创建VISA-USB对象不存在
%,否则被发现使用对象。
如果isempty (resourceName)
resourceName =签证(“倪”,“USB0:: 0 x0699:: 0 x0363:: C054303:: 0:: INSTR”);
其他的
文件关闭(resourceName);
resourceName = resourceName (1);
结束
%创建设备对象。
范围= icdevice (“tektronix_tds2000B.mdd”,resourceName);
% %第一节
%通道1是用来捕捉的背景
clc;
断开(范围);
连接(范围);
devicereset(范围);
集(scope.Channel (1),“规模”,20);
集(scope.Channel (1),“耦合”,“交流”);
集(scope.Channel (1),“调查”,1.0);
集(scope.Trigger (1),“耦合”,“交流”);
集(scope.Trigger (1),“源”,“channel1”);
集(scope.Trigger (1),“水平”,0.40);
集(scope.Display (1),“格式”,“次”);
集(scope.Display (1),“坚持不懈”,0.0);
集(scope.Acquisition (1),时基的2.5 e-06);
集(scope.Acquisition (1),“延迟”12.5 e-6);
集(scope.Trigger (1),“模式”,“汽车”);
断开(范围);
% %第二节
%图形背景和传入的快速FFT
clc;
断开(范围);
连接(范围);
scopeTrigger = get(范围,“触发”);
调用(scopeTrigger“触发”);
[Y, X, YUNIT XUNIT] = invoke (get(范围,“波形”),“readwaveform”,“channel1”);
断开(范围);
关闭所有;
情节(X, Y);
包含(的时间(美国));
ylabel (“电压(V)”);
轴([0 2.5 e-5 6 6])%的时间在美国和伏在V
图(2)
光谱图(Y,凯瑟(256 2),240年,1280年,1 e8);
甘氨胆酸ax =;
斧子。XLim = (0.3, 5);% MHz的频率范围
斧子。YLim = (0,25);%的时间范围
F (S, T) =光谱图(Y,凯瑟(256 2),240年,1280年,1 e8);%存储作为一个向量
图(3)
Fs = 1 e8;%采样频率
T = 1 / f;%采样周期
L = 2500;%长度的信号
t = t (0: l - 1) *;%的时间vecto
英国《金融时报》= fft (Y);
P2 = abs(英国《金融时报》/ L);
P1, P2 (1: L / 2 + 1);
P1 (2: end-1) = 2 * P1 (2: end-1);
f = f * (0: (L / 2)) / L;
情节(f, P1)
标题(“X (t)的单面振幅谱”)
包含(“f (Hz)”)
ylabel (“| P1 (f) |”)

答案(0)

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!