+ All Categories
Home > Documents > termistor

termistor

Date post: 13-Dec-2015
Category:
Upload: daniel-nahuis-tisnado
View: 19 times
Download: 4 times
Share this document with a friend
Description:
d
9
UNIVERSIDAD NACIONAL DEL CALLAO Facultad de Ingeniería Eléctrica y Electrónica Escuela Profesional de Ingeniería Electrónica LABORATORIO DE CONTROL INTELIGENTE Tema: REGRESION DE LA CURVA CARACTERISTICA DE UN TERMISTOR CON REDES NEURONALES Profesor: Ing. RODRIGUEZ BUSTINZA, RICARDO Alumnos: SALVATIERRA ALTAMIRANO, ESTEBAN 1023220495 CADILLO VILLANUEVA ANTHONY 1023220236 LORA VERAMENDI RONAL 102321013 LIMA -- PERU
Transcript
Page 1: termistor

UNIVERSIDAD NACIONAL DEL CALLAOFacultad de Ingeniería Eléctrica y ElectrónicaEscuela Profesional de Ingeniería Electrónica

LABORATORIO DE CONTROL INTELIGENTE

Tema:

REGRESION DE LA CURVA CARACTERISTICA DE UN TERMISTOR CON REDES NEURONALES

Profesor:

Ing. RODRIGUEZ BUSTINZA, RICARDO

Alumnos:

SALVATIERRA ALTAMIRANO, ESTEBAN 1023220495

CADILLO VILLANUEVA ANTHONY 1023220236

LORA VERAMENDI RONAL 102321013

LIMA -- PERU

2015-A

Page 2: termistor

LABORATORIO DE CONTROL INTELIGENTE

REGRESION DE LA CURVA CARACTERISTICA DE UN TERMISTOR CON REDES NEURONALES

1.-Termistor NTC:Un termistor es un sensor resistivo de temperatura. Su funcionamiento se basa en la variación de la resistividad que presenta un semiconductor con la temperatura. El término termistor proviene de Thermally Sensitive Resistor. NTC (Negative Temperature Coefficient) – coeficiente de temperatura negativo.

El siguiente modelo caracteriza la relación entre la temperatura y la resistencia mediante dos parámetros:

RT es la resistencia del termistor NTC a la temperatura T (K)TR: o To es la temperatura de referencia (298°K)R0 es la resistencia del termistor NTC a la temperatura de referencia (T=25°C=298°K)B es la temperatura característica del material, entre 2000 K y 5000 K.

Fig 1. Circuito de medición de voltaje del NTC

Ecuaciones del diseño:

Temperatura en función del voltaje medido por la tarjeta de adquisición de datos y labview:

…….Ecuación 1Parámetros de nuestro termistor utilizado:

ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA 2

Page 3: termistor

LABORATORIO DE CONTROL INTELIGENTE

2.- Adquisición de datos:Adquirimos los datos, en este caso será la variación del voltaje del sensor NTC que será convertida a temperatura mediante el software Labview.

Fig 2. Esquema de adquisición de datos

La adquisicion de datos se guarda en el archivo: data71.lvm

Fig 3. Plateo los datos en Matlab

3.- Algoritmo de entrenamiento para la adquisición de temperatura:Una vez obtenido los datos voltaje y temperatura del sensor NTC se procede a elaborar el algoritmo usando redes neuronales multicapa [1-4-1]; usando una entrada 4 neuronas ocultas y una neurona de salida.

P=voltaje=data71(:,2)'

T=temperatura=data71(:,4)'

ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA 3

Page 4: termistor

LABORATORIO DE CONTROL INTELIGENTE

Entrenamiento de la red neuronal:Programa1:%Termistor NTC Algoritmo TRN 2 CAPAS [4 1]close all; clear all; clc%DATA P=IMPUT(Voltaje), T=TARGET(TEMPERATURA)load data71.lvmP=data71(:,2)';T=data71(:,4)';%CREANDO LA RED NEURONALNO=4; %numero de neuronas ena la capa 1 (capa oculta)net=newff(minmax(P),[NO 1],{'logsig','purelin'},'trainlm');%Pesos iniciales aleatoriosnet.iw{1,1}=-1+2*rand(NO,1); %Pesos capa ocultanet.lw{2,1}=-1+2*rand(1,NO); %Pesos capa de salidanet.b{1}=-1+2*rand(NO,1); %Bias capa ocultanet.b{2}=-1+2*rand(1); %Bias capa de salida%Parametros de entrenamientonet.trainParam.epochs=500;net.trainParam.lr=0.05;net.trainParam.goal=1e-5;net.trainParam.show=50;[net,tr]=train(net,P,T);%Simulando La RED y ERRORa=sim(net,P);e=T-a;%Actualiza pesos y Biaswh=net.iw{1,1};wo=net.lw{2,1};bh=net.b{1};bo=net.b{2};%Ploteo de Performancefigure(1)subplot(211)plot(tr.epoch,tr.perf,'r')title('Performance de la red (E_{mse})');grid onsubplot(212)plot(tr.epoch,tr.gradient,'k')title('Evolucion del gradiente \nabla_x');grid on%Ploteo de red neuronal entrenadafigure(2)plot(P,T,'r','Linewidth',2);hold onplot(P,a,'b','Linewidth',1)title('Red neuronal entrenada');xlabel('Voltaje [V]');ylabel('Temperatura [ºC]')legend('Data','Red entrenada');grid on

Fig 4. Estructura de la red neuronal multicapa

ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA 4

Page 5: termistor

LABORATORIO DE CONTROL INTELIGENTE

Fig 5. Ploteo de Performance

Fig 6. Ploteo de red neuronal entrenada

Programa2: algoritmo código puro y data normalizada

% TERMISTOR NTC ALGORITMO PURO 2 CAPAS [1-4-1]clear all, close all, clc;

% DATA NORMALIZADA [0 1], P=IMPUT(voltaje), T=TARGET(temperatura)load data71.lvmP=(1/(max(data71(:,2))-min(data71(:,2)))*(data71(:,2)-min(data71(:,2))))';T=(1/(max(data71(:,4))-min(data71(:,4)))*(data71(:,4)-min(data71(:,4))))';

%PESOS INICIALES ALEATORIOSnc1=4;v=-1+2*rand(nc1,1); % numero de neuronas en la capa1 (capa oculta)w=-1+2*rand(1,nc1); % pesos capa ocutavo=-1+2*rand(nc1,1); % bias capa oculta wo=-1+2*rand(1); % bias capa de salida

ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA 5

Page 6: termistor

LABORATORIO DE CONTROL INTELIGENTE

% coeficiente de aprendizajeaf=0.7;emse=1;epochs=0;fn=@(var)(1/(1+exp(-var))); % funcion sigmoidewhile(epochs<500&&emse>1e-5) a= zeros(1,length(T)); numIn = length (P(1,:)); for i=1:numIn % CAPA OCULTA for j= 1:nc1 s1(j) = vo(j)+P(i)*v(j); z(j) = fn(s1(j)); end % CAPA SALIDA net = wo; for j=1:nc1 net = net+z(j)*w(j); end a(i)=fn(net); %ajuste de los incrementos para la capa de salida (net3) % delta(wi) = xi*delta %delta = (t-a)*a*(1*a) delta2=(T(i)-a(i))*a(i)*(1-a(i)); %Ajuste de los incrementos para las capas ocultas %El incremento final se obtiene al multiplicar deltas entre capas %ocultas, y capa de salida(ver derivasdas parciales) for j=1:nc1 delta1(j)=z(j)*(1-z(j))*w(j)*delta2; end %sumar cambios de pesos de los pesos originales %y usar los nuevos pesos en una nueva iteracion %delta weight=n*x*delta for j=1:nc1 vo(j)=vo(j)+af*delta1(j); v(j)=v(j)+af*P(i)*delta1(j); w(j)=w(j)+af*z(j)*delta2; end wo=wo+af*delta2; end %error EMS; e=T-a; emse=mse(e); epochs=epochs+1;end

%ploteo de red neuronal entrenadavolt=data71(:,2)';temp1=data71(:,4);temp2=a*(max(data71(:,4))-min(data71(:,4)))+min(data71(:,4));figure(1)plot(volt,temp1,'r','LineWidth',2);hold onplot(volt,temp2,'b','LineWidth',1);title('Red Neuronal Entrenada')xlabel('voltaje[v]');ylabel('Temperatura[°C]');legend('Data','Red Entrenada');grid on

ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA 6

Page 7: termistor

LABORATORIO DE CONTROL INTELIGENTE

Fig 7. Ploteo de red neuronal entrenada (data normalizada)

CONCLUSIONES:

En la adquisición de datos se hizo variar la temperatura del termistor NTC lo máximo posible esto se logró utilizando un cautín de soldar. Para obtener una data adecuada.

Gracias a él software Labview es posible ver la variación de temperatura de los sensores de forma más clara.

Con la tarjeta de adquisición de datos se facilita mucho este tipo de implementaciones, debido al efecto de poder comunicar la señal de salida de los sensores de temperatura con el computador para ver su comportamiento.

El entrenamiento de la red se logró gracias a una red neuronal multicapa [1 4 1], se realizó dos programaciones una usando la data entregada por la tarjeta de adquisición de datos y la otra normalizando esta data (solo ceros y unos).

La grafica de la red entrenada mejoraba cada vez que se aumentaba el número de iteraciones o disminuyendo el error mse.

ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA 7


Recommended