Autor Tema: Rango tensiones ADC  (Leído 3285 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
Rango tensiones ADC
« en: 05 de Noviembre de 2004, 03:20:00 »
Ahora que tengo medio controlado el tema del tiempo que tarda el ADC en tomar las muestras, necesito adaptar el rango de conversión de -5V a +5V.
Según he leído, habría que activar los bits del 3 al 0 del ADCON1, poniendo "1000", para que se active la Vref+ y Vref-.

¿Es la única manera de hacerlo en C?

¿Servirá como tensiones de referencia las salidas del 7805 y 7905?

Gracias

Desconectado oshow

  • PIC18
  • ****
  • Mensajes: 321
RE: Rango tensiones ADC
« Respuesta #1 en: 05 de Noviembre de 2004, 04:32:00 »
Si el pic te permitiera tener esa amplitud (+5 -5V) que lo dudo, no tienes más que poner la siguiente cabecera:

Codigo:

setup_adc_ports ( RA0_ANALOG_RA3_RA2_REF );  //analógica por RA0, RA3 Vref+ y RA2 Vref-



Indicas el canal analógico y los pines de la tensión de referencia.Existen varias configuraciones, para eso mira el archivo de cabecera del pic que vayas a usar que ahí salen todas las combinaciones posibles.

Ahora mismo no recuerdo la amplitud con la que permite tomar muestra el canal A/D, pero dudo que puedas tomar muestras negativas de tensión.. si así fuera y permitiese ese rango de tensiones, lo puedes hacer perfectamente con esos reguladores, si tuvieses otras tensiones "menos redondas" podrías usar divisores de tensión para adecuar  la señal Vref+ y Vref- deseada.

Saludos.

PD: Acabo de darme cuenta que no tiene lógica un rango de -5v/5V, si permitiese tensiones negativas como mucho podrías tener el rango de -2,5V a 2.5V (rango absoluto de 5V) que es lo máximo que debe permitir el pic. Pero para más seguridad tendría que mirar el data, que ahora no estoy seguro

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
RE: Rango tensiones ADC
« Respuesta #2 en: 05 de Noviembre de 2004, 06:27:00 »
Muchas gracias, amigo Chus. Lo probaré y os cuento.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
RE: Rango tensiones ADC
« Respuesta #3 en: 06 de Noviembre de 2004, 01:33:00 »
Pues lo he probado, y por poco tengo un incendio en casaArdiendo.

El PIC se ha calentado un huevo y evidentemente estaba colgado.

Menos mal que a estos no hay quien los mate y en cuanto le quité el -5 y lo dejé enfriar de nuevo va como la seda.

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: Rango tensiones ADC
« Respuesta #4 en: 06 de Noviembre de 2004, 07:07:00 »
Ja, ja, ja .... suele pasar, suele pasar ... hasta en las mejores casas.

Desconectado oshow

  • PIC18
  • ****
  • Mensajes: 321
RE: Rango tensiones ADC
« Respuesta #5 en: 06 de Noviembre de 2004, 07:39:00 »
No se que pic estarás usando, pero he mirado el datasheet del 1687X (supongo que para toda la gama media será igual) y efectivamente no puedes meter tensiones negativas en las referencias del canal A/D (no estaba seguro, por eso miro ahora el data).

En las especificaciones eléctricas, indica que la minima tensión a aplicar al pin Vref+ es (AVdd-2.5V) o sea unos 2,5V y la máxima tensión a aplicar en este pin (AVdd+0.3) unos 5 voltios, la minima tensión al pin Vref- (AVss-0.3V) vamos cero voltios y la maxima tensión a este pin sería ((Vref+)- 2.0V).

Lo que suponía mas o menos, pero no pude confirmartelo antes porque no me acordaba del data, creo que hice hace tiempo una cosilla en proteus con una NTC y usaba las tensiones de referencia, creo que se entiende bastante bien, si queires te lo busco.

Un saludo.

PD: Por supuesto ni que decir tiene que esto depende del pic que uses, en los 18 supongo que será distinto, vendrá reflejado en el data

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
RE: Rango tensiones ADC
« Respuesta #6 en: 06 de Noviembre de 2004, 10:14:00 »
Pues yo estuve buscando en el data del 18F452 antes de meterle la negativa y no encontré esa información. Seguro que no supe verla, pero finalmente he tenido que pasar por el crematorio para averiguarloSonrisa Gigante

Desconectado kruskal

  • PIC16
  • ***
  • Mensajes: 108
RE: Rango tensiones ADC
« Respuesta #7 en: 08 de Noviembre de 2004, 03:25:00 »
Vref- es un voltaje de referencia bajo de entrada con respecto a Vref+ no es en ningun caso un voltaje negativo y esta claro que el nivel minimo para Vref- es Vss o tierra (0 V). Debes tener en cuenta que un PIC trabaja en niveles TTL (entre 0 y 5V).

Dependiendo de la señal que estes tratando deberias implementar un rectificado para generar una señal con nivel de tension media distinto de cero. Si lo haces con diodos, implica perdida de precision por la distosion del cruce por cero, ademas no puedes saber cuando la señal es negativa.

Algo mas entretenido es montar la señal sobre un nivel de tension dado por un divisor de tension con un condensador de acoplo esto reproduce la señal  igual pero solo con tensiones positivas y con valor medio de tension distinto de cero. Si usas dos resistencias iguales entre Vdd y Vss sera entonces con voltaje medio 2,5V (si usas 10 bit en numeros decimales equivale a 521 convertido). Si quieres que cero sea el nivel de referencia entoces tendrias que hacer un rectificado por software es decir si el voltaje convertido es mayor a 512 hay que restar este valor a 512 (ya que este es el valor medio de la señal) y al reves si  menor a 512 hay que restarlo.

A se me olvidaba no puedes pasarte con la señal mas de 5V ya que cualquier valor mayor sera convertido a 1024 y tendras perdidas de presicion.

Salud2