ChannelFreqResp optimized and compared to move-it

minimal lab setup
This commit is contained in:
Silas Labor Zizou
2024-10-07 08:19:56 +02:00
parent 8577f5f6f4
commit 135d0e7cfc
16 changed files with 369 additions and 146 deletions

View File

@@ -8,6 +8,7 @@ classdef ScopeKeysight
channel
autoScale
extRef
removeDC
interpolate
recordLen
IPaddress
@@ -25,6 +26,7 @@ classdef ScopeKeysight
options.channel logical = [0,0,0,0];
options.autoScale logical = 0;
options.extRef logical = 1;
options.removeDC logical = 1;
options.interpolate logical = 0;
options.recordLen double = 1000000;
options.IPaddress
@@ -169,11 +171,21 @@ classdef ScopeKeysight
recordedSignals = cell(size(obj.channel));
for n = find(obj.channel == 1)
% record
recordedSignals{n} = obj.readChannel(v,n);
% cut "safety samples" that were added at the end
recordedSignals{n} = recordedSignals{n}(1:obj.recordLen);
if obj.removeDC
recordedSignals{n} = recordedSignals{n}-mean(recordedSignals{n});
end
obj.writeNcheck(v,sprintf(':CHANnel%u:DISPlay ON',n));
end
% fill all other channels with nothing
for n = find(obj.channel == 0)
recordedSignals{n} = [];
end
@@ -181,6 +193,16 @@ classdef ScopeKeysight
obj.writeNcheck(v,sprintf(':%s',scope_state));
obj.writeNcheck(v,'*OPC?');
opdone = 0;
acqdone = 0;
procdone = 0;
while ~opdone || ~acqdone || ~procdone
opdone = sscanf(obj.writeReceiveCheck(v,'*opc?'), '%f');
acqdone = sscanf(obj.writeReceiveCheck(v,'ader?'), '%f');
procdone = sscanf(obj.writeReceiveCheck(v,'pder?'), '%f');
pause(0.005);
end
end
end