Difference between revisions of "DSPACE/TakeData1"
Jump to navigation
Jump to search
m |
|||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
− | The code below contains the <code>TakeData1.m</code> script for use with the Instrumentation Basics lab | + | The code below contains the <code>TakeData1.m</code> script for use with the Instrumentation Basics lab for ME 344. If you need to, you can copy and paste the text out of the block below. |
<source lang="matlab"> | <source lang="matlab"> |
Latest revision as of 16:31, 19 February 2013
The code below contains the TakeData1.m
script for use with the Instrumentation Basics lab for ME 344. If you need to, you can copy and paste the text out of the block below.
%% Close figures and clear - NOTE - globals will still work!
close all; clear
%% Access dSPACE card
mlib('SelectBoard','ds1104')
%% Define globals for ADC and DAC
%% Assumes ADC/DAC handles have been defined
global ADC1 ADC5 DAC1
%% Gather data using the dSpace card
% Set voltage to 0 and wait 5 seconds
fprintf('Setting 0 V on DACH1 - waiting 5 seconds\n')
mlib('Write', DAC1, 'Data', 0)
pause(5)
% Start data collection and start counter
fprintf('Starting data collection\n')
Count = 0;
% Set voltage to 5 V and start timer
fprintf('Setting 5 V on DACH1\n')
mlib('Write', DAC1, 'Data', 5);
tic;
% Run for 5 seconds - asynchronus data collection mode
while toc<5
% Increment counter
Count = Count+1;
% Tell dSPACE which channels to acquire and start acquisition
mlib('Set','TraceVars',[ADC1; ADC5],'NumSamples',1);
mlib('StartCapture')
% Do not go to next step until data is taken
while mlib('CaptureState')~=0
end
% Store time and data in Count row of vector
tout(Count, :) = toc;
data(Count, :) = mlib('FetchData');
end
% Set voltage to 0 and take data for another ~5 seconds
% (see above for comments)
fprintf('Setting 0 V on DACH1\n')
mlib('Write', DAC1, 'Data', 0)
while toc<10
Count = Count+1;
mlib('Set','TraceVars',[ADC1; ADC5],'NumSamples',1);
mlib('StartCapture')
while mlib('CaptureState')~=0
end
tout(Count) = toc;
data(Count, :) = mlib('FetchData');
end
fprintf('Finished with data collection\n')
%% Make a plot
plot(tout, data)