
Funcion de transferencia
Publicado por denis (18 intervenciones) el 03/12/2015 12:52:31
Hola muy buenas quería saber si alguien me podría ayudar con un problema que me ha surgido ahora, os comento yo obtengo los datos de un sensor de temperatura y humedad y los guardo en 2 variables así como los tiempos en los que estos datos han sido recogidos. El problema es ahora sacar la función de transferencia de esos datos lo podria hacer cogiendo las gráficas y hacer las cuentas a mano lo que me gustaría es hacerlo mediante Matlab mediante alguna función o algún algoritmo que queda mas profesional. Un saludo Denis aqui os dejo el código.
las variables a y b son para ver el tiempo de muestreo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
clc;
clear all;
delete(instrfind({'Port'},{'COM3'}));
arduino = serial('COM3', 'BaudRate', 9600);
fopen(arduino);
muestras=100;
global tem;
global humedad;
global time;
global a;
global b;
global tt;
global th;
tic
for i=1:muestras
y(i)=fscanf(arduino, '%d');
time(i)=toc;
end
tem(1)= y(1)/100;
humedad(1)=y(2)/100;
tt(1)= time(1);
th(1)= time(2);
for i=3:length(y)
if mod(i,2)~=0
tem= [tem y(i)/100];
tt= [tt time(i)];
else
humedad= [humedad y(i)/100];
th= [th time(i)];
end
end
subplot(211);
plot(tt,tem,'g');
title('temperatura vs tiempo');
xlabel('muestras');
ylabel('temperatura');
grid
subplot(212);
plot(th,humedad,'m');
title('humedad vs tiempo');
xlabel('tiempo');
ylabel('humedad');
grid
a=tt(2:muestras/2)-tt(1:(muestras/2)-1);
b=th(2:muestras/2)-tt(1:(muestras/2)-1);
fclose(arduino);
delete(instrfind({'Port'},{'COM3'}));
las variables a y b son para ver el tiempo de muestreo.
Valora esta pregunta


0