Está en la página 1de 26

Sistemas de Medida y

Regulación
UD 3 - Adquisición de Datos

Mikel Arambarri 2021-2022


3.1 Adquisición de datos en PC
Hoy en día, los sistemas de control y la adquisición de datos basada en PC es una alternativa muy utilizada
gracias a su bajo coste, fácil implantación y altas prestaciones. Estos sistemas son lo suficientemente
adaptables como para que trabajen con diferentes instrumentos de medida como pueden ser osciloscopios,
controladores industriales, voltímetros, amperímetros, etc.

Una ventaja de estos sistemas es a la hora de realizar postprocesado de la información, ya que esta ya se
ubica en un ordenador capaz de manejar dichos datos.
3.1.1 Entradas analógicas. Resolución
Teniendo en cuenta que la mayoría de las magnitudes se medirán mediante una señal analógica, esta tendrá
que ser convertida en una señal digital para que el PC pueda entenderla. Siendo esto así las lecturas de los
sensores se convertirán a número binario.

La resolución de entrada del sistema se expresa generalmente en bits. Resoluciones típicas son de 8, 10, 12,
14 y 16 bits. El número de bits determina cuántos posibles valores se pueden aplicar a la entrada, por lo que
otra forma de expresar la resolución es indicándolo como una parte entre 2", siendo n el número de bits.

Si por ejemplo la señal de entrada es de tensión, la resolución en voltios se


determina:
3.1.1.1 Resolución
Como ejemplo en la gráfica se muestra cómo se convierte una señal analógica de 0 a 10V con una resolución
de 4 bits.

La resolución del sistema de adquisición se debe adaptar


a la aplicación para la que está previsto. Por el hecho de
elegir resoluciones más altas no se va a mejorar el
comportamiento del sistema si el resto de elementos no
pueden aprovechar esta resolución. Así, por ejemplo, si
se va a medir la temperatura de un horno con un sensor y
transmisor que proporcionan una tensión entre 0 y 10 V
con una precisión de 2%, la tensión para un valor teórico
de 5 V puede estar comprendida entre 4.9 V y 5,1 V. No
tendría sentido elegir una resolución de 16 bits cuando la
tensión de entrada es tan imprecisa.
3.1.1.2 Precisión
La precisión del sistema es el posible error cometido en la lectura del dato y el valor real de la magnitud que
se está midiendo. La precisión está relacionada con la resolución, puesto que a mayor resolución más exacta
podrá ser la medida. Sin embargo, la imprecisión del sistema también depende de otros factores, como el
sensor utilizado para medir la magnitud, por lo que puede existir un sistema con alta resolución pero muy
impreciso.

Hay diferentes formas de indicar la precisión, pero la más habitual es hacerlo indicando un error en % de la
lectura y sumarle a este +/-1 bit (esta imprecisión de +/- 1 bit es debido al efecto de convertir una señal
analógica en digital).

Ejemplo. Se dispone de un sistema con un 0.02% de precisión en la lectura, en el que el rango de entrada
varía desde 0 a 10V. El sistema de adquisición de datos tiene una resolución de 12 bits y el valor de lectura es
de 5V. El error máximo será:
3.1.1.2 Precisión
La imprecisión en la lectura se debe a los siguientes errores:

● Error de cuantización. Depende de la resolución y este error siempre podrá ser de hasta +/-1 bit.
● Error de desajuste del cero (offset). Es la diferencia entre el valor real y el ideal en el origen de la
escala.
● Error de ganancia. Es la diferencia entre el valor real y el ideal en el fondo de escala, suponiendo que
el error de offset haya sido eliminado.
● Error de linealidad. Hace referencia al alejamiento de la curva de transferencia respecto de la recta
ideal.
3.1.1.3 Máxima velocidad de muestreo
La máxima velocidad de muestreo es la cantidad de muestras de una señal que es capaz de registrar un
sistema de adquisición de datos. Este valor se suele dar en muestras/segundo [Hz].

Por norma general, los sistemas de adquisición de datos tienen varios canales de entrada, un multiplexor
para la selección del canal de entrada y un único convertidor A/D.
3.1.1.3 Máxima velocidad de muestreo
Con el multiplexor se elige cuál de los canales de entrada se quiere muestrear. Cuantos más canales de
entrada haya menor será la velocidad de muestreo para cada una de las entradas.

Un sistema de adquisición de datos con una velocidad máxima de muestreo de 40kHz podrá registrar 40.000
muestras por segundo de una única señal cuando se esté trabajando con un único canal.

Si el mismo sistema de adquisición de datos se configura para trabajar con 8 canales, tan solo podrá registrar
5000 muestras por segundo de cada canal de entrada.
3.1.1.3 Teorema de Nyquist
Para no perder información de una determinada señal cuando está siendo muestreada, el teorema de
Nyquist indica que la frecuencia con la que se toman las muestras debe ser como mínimo dos veces la
máxima frecuencia de la señal de entrada.

Sin embargo, hoy en día las frecuencias de muestreo son por lo menos entre 3 y 10 veces superiores a la
máxima frecuencia de entrada.
3.1.1.3 Aliasing
El aliasing se produce cuando una señal se muestrea con una frecuencia de muestreo muy inferior que la
frecuencia de la señal de entrada. El aliasing consiste en interpretar las muestras tomadas como si fueran
otra señal de frecuencia más baja.

El aliasing no presenta grandes problemas cuando la señal de


entrada no presenta armónicos por encima de la frecuencia de
muestreo. En caso contrario, es recomendable pasar la señal de
entrada por un filtro antialiasing. Este filtro consiste en un filtro
de paso-bajo que elimina las frecuencias más altas de la señal
de entrada que pudieran provocar errores en la lectura.

La frecuencia de corte fc se suele ajustar a la mitad de la


frecuencia de muestreo.
3.1.2 Convertidores A/D
Los convertidores Analógico Digital (ADC) son una de las partes fundamentales de los sistemas de adquisición
de datos ya que es el elemento que convierte la señal analógica en digital.

Estos ADC pueden ser de los siguientes tipos:

● Aproximaciones sucesivas
● Doble rampa
● Flash
● Tensión / Frecuencia
3.1.2.1 ADC de aproximaciones sucesivas
Es uno de los ADC más utilizados ya que se consiguen altas resoluciones y tiempos de conversión bajos (hasta
1MHz) con un bajo coste. A continuación se muestra el diagrama de bloques del ADC:

El registro proporciona códigos digitales al convertidor


D/A para que la tensión VDA se compare con la tensión de
entrada VIN. Este proceso se repite hasta que la tensión
VDA y VIN son parecidas.

En un sistema de 0-10V y un registro de 6 bits, el primer


registro generado será el 100000. Este número digital se
convierte en tensión, que le corresponden 5V. Si la
tensión VIN es mayor que esta VDA, entonces el registro
generará el registro 110000 (7.5V), en caso contrario
generará el registro 010000 (2.5V). Y así sucesivamente
hasta lograr el registro más adecuado.
3.1.2.1 ADC de aproximaciones sucesivas
Como ejemplo se tiene:

Supongamos que el citado registro es de 6 bits y que la entrada es de 7,3 V, siendo el rango de entrada de 0 a
10 V.

En el primer ciclo de reloj saca el código 100000.

Como VIN es mayor que VDA el siguiente código que pase al convertidor será 110000 (ciclo 2).

Como VIN < VDA, el siguiente código será 101000 (ciclo 3).

Al ser VIN > VDA sacará 101100 (ciclo 4).

Al seguir siendo VIN > VDA sacará 101110 (ciclo 5).

Como ahora es VIN < VDA saca el código 1001101 (ciclo 6) y al ser VIN > VDA se queda con este código como
resultado de la conversión.
3.1.2.2 ADC de doble rampa
Es un método de conversión muy preciso con alta inmunidad al ruido pero muy lento, sólo se pueden lograr
frecuencias de unos 100Hz.

En este ADC, se integra la entrada analogíca VIN a lo


largo de un tiempo Tfix fijo. Al finalizar este tiempo, se ha
conseguido un VIntg que depende únicamente de la
tensión VIN.

A continuación, se conmuta la entrada del integrador a


la tensión Vref y se cuenta cuánto tiempo tarda en
conseguir la tensión Vref a la salida. Durante este tiempo
Tvar el contador cuenta impulsos, y la suma de estos
impulsos es el resultado de la conversión A/D.
3.1.2.2 ADC de doble rampa
Si VIN es constante mientras se está integrando y los tiempos Tvar y Tfix se calculan contando impulsos del reloj:

Y como resultado se obtiene:


3.1.2.3 ADC tipo flash
Este método de conversión es el más rápido de todos (hasta 10MHz de frecuencia de muestro) pero tiene
como pega que para una resolución de n bits necesita 2ⁿ-1 comparadores. Por lo que no se suele usar para
resoluciones mayores de 8 bits.
La tensión de entrada se compara con 2ⁿ-1 escalones de
tensión que se obtienen mediante un divisor resistivo
formado por 2ⁿ resistencias iguales.

El código a la salida de los comparadores se obtiene


prácticamente al instante y mediante el codificador a
binario se consigue la codificación a número binario a la
salida.
3.1.2.3 ADC tensión/frecuencia
Este método de conversión tiene una gran inmunidad frente al ruido y puede llegar a tener resoluciones muy
altas (16 o 24 bits) pero es una conversión muy lenta.

El funcionamiento es muy simple. El sistema ADC tiene un contador que


cuenta los impulsos generados por el oscilador controlado por la tensión
VCO.

En función de la tensión de entrada VIN, el oscilador tendrá una


frecuencia u otra, y como el contador cuenta los impulsos en un tiempo
fijo, la salida del contador dependerá únicamente de la tensión de
entrada VIN.
3.1.3 Disparo del ADC
Cuando en electrónica se habla de disparo se refiere a comenzar las diferentes operaciones cuando se
da/recibe una señal. Estos disparos se utilizan para sincronizar los diferentes componentes y que todos
funcionen correctamente.

En los sistemas de adquisición de datos generalmente se utilizan 3 tipos de disparos:

● Disparo por programa


● Disparo utilizando un temporizador
● Disparo por una señal externa
3.1.3 Disparo del ADC por programa
En este caso es el programa de control que se ejecuta en el PC el que establece cuándo comenzar la
conversión de la señal de entrada. Una vez se ha lanzado la conversión, el convertidor avisará al programa de
alguna manera de que el proceso ha finalizado para que recoja la información, ya en digital, y el programa
vuelva a disparar una nueva conversión.

Mediante este sistema se pueden perder muestras intermedias, ya que el programa esperará hasta que todos
los elementos hayan acabado su tarea para lanzar una nueva conversión.
3.1.3 Disparo del ADC por temporizador
Con el objetivo de realizar múltiples conversiones automáticamente en intervalos de tiempos precisos, la
mayoría de tarjetas de adquisición de datos contienen un reloj programable que puede servir como
temporizador.

Una vez que la frecuencia del reloj ha sido ajustada, son los impulsos de este reloj los que disparan la
conversión en los sistemas ADC. De esta forma, el programa sólo tiene que recoger la información cada vez
que el conversor le avise de que hay información nueva para guardar.
3.1.3 Disparo del ADC por señal externa
En el disparo por una señal externa, es otro dispositivo el que manda por un conector externo cuándo iniciar
la conversión mediante una señal (ya sea analógica o digital).

De esta forma se pueden sincronizar las conversiones con acontecimientos externos. Puede indispensable por
ejemplo si la salida del transductor del que se dispone sólo ofrece la lectura durante un periodo breve de
tiempo. Estos dispositivos tendrán una salida en el que “avisen” de que la salida está preparada para realizar
una lectura.

De no utilizar estos disparos con estos transductores las lecturas realizadas no serán correctas.
3.1.4 Modos de transferencia de datos
Mediante la transferencia de datos se entiende el método por el cual, la información adquirida por la tarjeta
de adquisición es guardada en la memoria del PC.

En la práctica existen 3 métodos posibles para realizar la transferencia de datos:

● Por programa (poolling)


● Por interrupciones
● Por acceso directo a memoria (DMA)
3.1.4 Transf. de datos por programa
Cuando las velocidades de adquisición no son muy altas, las transferencias programadas son una buena y
fácil solución. En este caso es el propio programa el que se encarga de comprobar que la conversión de la
señal de entrada ha acabado y cuando esto sucede, guarda la información en digital en una variable para
luego guardarla en la memoria.

Para saber si el proceso de conversión ha finalizado, suele existir un bit de control que el sistema ADC
modifica cada vez que empieza y finaliza un proceso de conversión. De esta forma, el programa lee este bit
para saber si la información que existe a la salida del registro del ADC es nueva información, o no.

Al igual que en el método de disparo por programa, al gestionar la transferencia de datos por programa
puede suceder que se pierda información. En este caso es debido a que la tarjeta de adquisición requiere la
utilización del hardware del PC para guardar información, y puede suceder que el ordenador este realizando
otras operaciones.
3.1.4 Transf. de datos por interrupciones
En la transferencia por interrupciones, el software configura la tarjeta de adquisición de forma que este
interrumpe la ejecución del programa del PC cuando tiene datos nuevos para guardar.

Cuando esto sucede se ejecuta un programa de tratamiento de interrupción donde el nuevo dato es
guardado en la memoria y el ordenador vuelve a ejecutar el programa previo a la interrupción.

Esto quiere decir que el ordenador sólo está pendiente de la tarjeta de adquisición cuando es necesario,
liberando al PC de esta tarea la mayor parte del tiempo.
3.1.4 Transf. de datos por acceso directo
En la transferencia por acceso directo a memoria (DMA - Direct Memory Access) se utiliza un canal DMA libre
del sistema. Mediante un controlador de DMA /y su configuración) se consigue que la tarjeta de memoria
pueda registrar la información directamente en la memoria sin que la CPU del PC intervenga.

Esto permite una lectura/escritura de datos más grande que con los otros métodos y la posibilidad de
transferir más de 1 dato por cada operación.

Tiene como desventaja la necesidad de disponer de un canal DMA y de configurar el controlador.


3.2 Ejercicio cálculo de resolución
En un proceso industrial, la temperatura ambiente es tomada mediante un sensor LM335. La señal que
proporciona este sensor, es convertida a una señal de 0-12V para el rango de temperaturas de -25ºC a 75ºC.

Los datos de esta señal son adquiridos por un equipo que tiene 5 bits de resolución.

a) Calcula la resolución del sistema de adquisición de datos. ¿Cuánto tiene que cambiar la temperatura
ambiente para detectar una diferencia después de digitalizar la medida?
b) Teniendo en cuenta que el sensor LM335 proporciona una señal de 10 mV/K, qué tiene que pasos
tiene que tener el transductor o el convertidor de tensiones del sistema?
c) Qué señal ha de ver el ordenador si la tensión de entrada es de 7.865V?
d) Cuál será el error máximo si el sensor tiene un error de 1ºC en el rango de temperaturas de
funcionamiento?

También podría gustarte