Generate and acquire signals with a DT9857E box using Matlab
Afficher commentaires plus anciens
Hello,
i'm trying to generate and acquire signals for a study using a DT 9857E box, so i wrote a short code to test wether the result could be satisfying or not. The code is written this way:
clear all, clc, close all
s = daq("dt");
fAbtast = 50e3;
s.Rate = fAbtast; %1000;
BoxName = 'DT9857E-16(00)';
addoutput(s,BoxName, '0', 'Voltage');
addinput(s,BoxName,'0', 'Voltage');
fIn = 1e3;
t = 0:1/fAbtast:1-1/fAbtast;
x = sin(2*pi*fIn*t);
Output_data = x'*1.2;
Input_data = readwrite(s, Output_data);
figure
time_vec = seconds(Input_data.Time);
plot(time_vec, Output_data)
hold on
plot(time_vec, Input_data.Variables)
hold off
grid on
legend(["Output Signal","Acquired Signal"])
The result looks this way:

Any Idea on why the acquired signal does look that way? Since i just connected the output channel to the input channel, the same output signal or at least likely was expected to be acquired.
I even try to reproduce the example in the following matlab documentation: Simultaneously Acquire Data and Generate Signals - MATLAB & Simulink - MathWorks Deutschland
but the result did not look great:
%% Example from Matlab's documentation
% A session has been already defined
output = cos(linspace(0,2*pi,1000)');
data1 = readwrite(s, output);
figure
plot(output);
hold on
plot(data1.Variables);
ylabel("Voltage (V)")
%title("Acquired Signal");
legend(["Output Data","Acquired Signal"])

below is an enlarged view of the acquired signal

Any suggestion to fix this will be greatly appreciated.
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Data Import and Analysis dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
