TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: QIQE en 09 de Julio de 2006, 13:08:34

Título: 16f877A + AD595
Publicado por: QIQE en 09 de Julio de 2006, 13:08:34
Hola compañeros llevo unos dias estirandome de los pelos, vereis tengo un proyecto entre manos y el problema es el siguiente:

* tengo un AD595 el cualme da una salida de 10mv/ºC si mido con el polimetro obtengo una salida correcta sin ruidos
* y tambien tengo el 16F877A al cual si le conecto un potenciometro a su entrada me lee el valor correctamente.

Mi problema viene al juntar todo el sistema, si observo las lecturas veo variaciones de 1 o 2 grados hacia arriba o abajo sin que se tengan que producir, y son aleatorias, alguien puede decirme lo que está pasando?? muchas gracias
Título: Re: 16f877A + AD595
Publicado por: jfh900 en 09 de Julio de 2006, 13:27:30
Posiblemente se este introduciendo ruido electrico. Para solucionarlo debes de apantallar el cable hasta el pic y poner una resistencia en serie de unos 470 ohmios y un condensador de 0,1 uF a tierra y la patilla del pic.

Un saludo.
Título: Re: 16f877A + AD595
Publicado por: QIQE en 09 de Julio de 2006, 13:44:23
aun sigue oscilando el problema no debe de ser de ruido ya lo haba estado probando :S:S
Título: Re: 16f877A + AD595
Publicado por: jfh900 en 09 de Julio de 2006, 13:46:30
Cual es la tensión de referencia del comparador del conversor ADC? 5V?. Estas utilizando 8 o 10 bits?.

Un saludo.
Título: Re: 16f877A + AD595
Publicado por: QIQE en 09 de Julio de 2006, 14:01:02
no uso voltage de referencia, y estoy usando 10 bits de resolución muchas gracias
Título: Re: 16f877A + AD595
Publicado por: jfh900 en 09 de Julio de 2006, 14:18:20
Entonces estas trabajando sobre 5V. Si dividimos 5V entre 1024 niveles tendremos: 4,8 mV de resolución. Cual es la temperatura máxima que vas a medir y la tensión máxima que tendiras en la sonda?, para bajar la tensión de referencia y aumentar la precisión.

un saludo
Título: Re: 16f877A + AD595
Publicado por: QIQE en 09 de Julio de 2006, 14:41:07
tengo un nivel máximo de 4,5 a 5 v y uso esta formula para convertir la tension a grados
resultado=(((datos leidos*5)/1024)*100)
Título: Re: 16f877A + AD595
Publicado por: jfh900 en 09 de Julio de 2006, 16:19:42
Puedes probar a realizar una conversión a 8 bits para ver el resultado?.

Un saludo
Título: Re: 16f877A + AD595
Publicado por: QIQE en 10 de Julio de 2006, 15:14:56
Sigue funcionando = de mal un grado arriba un grado abajo o dos me estoy volviendo lokoooo muchas gracias por tu ayuda
Título: Re: 16f877A + AD595
Publicado por: microcom en 10 de Julio de 2006, 15:29:40
prueva llamado dos veces conversion para asegurar lo que se esta convertiendo analogo digital.
call conversion
call conversion
sigue el programa

bueno
Título: Re: 16f877A + AD595
Publicado por: jfh900 en 10 de Julio de 2006, 21:03:19
Lo unico que se me ocurre es que sea un problema de redondeo en coma flotante. Que precisión necesitas en la conversión de la temperatura? Cual es la precisión de la sonda (grado, medio grado, decima de grado)?. Haber si determinamos la precisión y seleccionamos el tipo de variables a utilizar (¿por cierto que tipo de variables usas?).

Un saludo.
Título: Re: 16f877A + AD595
Publicado por: QIQE en 11 de Julio de 2006, 15:01:43
utilizo un termopar y un acondicionador AD595cd que me da a su salida un señal de 10mv/ºC la lectura del A/D la recojo con un int16 para tener una resolucion de uno 0,48 grados, ya que he configurado el A/D en 10 bits el resultado del conversor lo multiplico por 0,488 y lo dejo en un variable float, el 0,48 lo he sacado de la siguiente manera (5/1024) * 100 -> (Valor maximo de la tension/ resulocion)*paso a voltios
Título: Re: 16f877A + AD595
Publicado por: jfh900 en 11 de Julio de 2006, 15:09:17
Bien, en principio las variables seleccionadas estan bien. Solamente que el paso a voltios tienes que multipicar por 1000 y no por 100 (estamos en mV). Como realizas la conversión a grados centigrados?

Un saludo.
Título: Re: 16f877A + AD595
Publicado por: Veguepic en 11 de Julio de 2006, 23:58:25
Hola qiqe:

Podrias desechar el bit menos significativo y trabajar con los 9 bits mas significativos, perderas algo de precision pero ganaras en estabilidad.

Otra alternativa es que tomes varias medidas y obtengas un promedio, las variaciones aleatorias deberian eliminarse con este metodo.

No esta demas que revises si tu fuente de alimentacion mete ruido, podrias probar a alimentarlo con pilas para descartar esto, los condensadores de desacoplo, etc.

Un saludo.
Título: Re: 16f877A + AD595
Publicado por: sanpic en 12 de Julio de 2006, 01:58:06
Hola qiqe.
Te lo comento como alternativa.
Puedes usar el MAX6675 , para sensar el termopar , te entrega una salida digital con una resolución de 12 bit.



Cold-Junction-Compensated K-Thermocouple-to-Digital Converter (0°C to +1024°C)

Cold-Junction Compensation 
Simple SPI-Compatible Serial Interface 
12-Bit, 0.25°C Resolution 
Open Thermocouple Detection



Saludos a todos.