Saltar al contenido

Número efectivo de bits de ADC de 14 bits

Isabel, parte de este gran staff, nos ha hecho el favor de redactar este escrito porque domina perfectamente dicho tema.

Solución:

¡Te han engañado!

14 bits es jerga de marketing, y el hardware también te da eso, así que dirán que no tienes nada de qué quejarte. Justo encima de ENOB en la hoja de datos, proporciona números SINAD (Señal a ruido y distorsión). Eso es 72 dB, y 1 bit corresponde a un nivel de 6 dB, por lo que 72 dB son de hecho 12 bits. Los 2 bits más bajos son ruido.

Es posible recuperar datos que están por debajo del ruido de fondo, pero necesitan una muy buena correlación, lo que significa que tienen que ser muy predecibles.

Supongamos que desea medir un voltaje constante con la mayor precisión posible, utilizando un ADC que devolverá un valor de 8 bits para cada medición. Supongamos además que se especifica ADC para que nominalmente se devuelva un código de N para voltajes entre (N-0.5)/100 y (N+0.5)/100 voltios (por ejemplo, un código de 47 representaría nominalmente algo entre 0.465 y 0.475 voltios). ¿Qué desearía tener la salida del ADC si se alimenta con un voltaje de estado estable de exactamente 0,47183 voltios?

Si el ADC siempre emite el valor que representa el rango definido anteriormente en el que cae la entrada (47 en este caso), entonces no importa cuántas lecturas se tomen, el valor parecerá ser 47. Resolver cualquier cosa mejor que eso sería imposible.

Supongamos, en cambio, que los ADC se construyeron de modo que se agregara a cada lectura un valor de “interpolación” aleatorio distribuido linealmente de -0.5 a +0.5 antes de convertirlo en un número entero. En ese escenario, un voltaje de 47,183 voltios daría una lectura de 48, aproximadamente el 18,3 % del tiempo, y un valor de 47 el otro 81,7 % del tiempo. Si uno calcula el promedio de 10,000 lecturas, debe esperar que sea aproximadamente 47,183. Debido a la aleatoriedad, puede ser un poco más alto o más bajo, pero debería estar bastante cerca. Tenga en cuenta que si se toman suficientes lecturas, se puede lograr un nivel arbitrario de precisión esperada, aunque cada bit adicional requeriría más del doble del número de lecturas.

Agregar precisamente un LSB de tramado distribuido linealmente sería un comportamiento muy bueno para un ADC. Desafortunadamente, implementar tal comportamiento no es fácil. Si el tramado no se distribuye linealmente, o si su magnitud no es precisamente un LSB, la cantidad de precisión real que se podría obtener del promedio estaría severamente limitada, sin importar cuántas muestras se usen. Si en lugar de agregar un LSB de aleatoriedad distribuida linealmente, se agrega el valor de múltiples LSB, lograr un nivel dado de precisión requerirá más lecturas de las que se requerirían utilizando la aleatoriedad ideal de un LSB, pero el límite final de la precisión que se puede lograr al tomar un número arbitrario de lecturas será mucho menos sensible a las imperfecciones en la fuente de oscilación.

Tenga en cuenta que, en algunas aplicaciones, es mejor usar un ADC que no altere su resultado. esto es especialmente true en circunstancias en las que uno está más interesado en observar cambios en los valores de ADC que en los valores precisos en sí mismos. Si resolver rápidamente la diferencia entre una tasa de aumento de +3 unidades/muestra y +5 unidades/muestra es más importante que saber si un voltaje de estado estable es precisamente de 13,2 o 13,4 unidades, un ADC sin oscilación puede ser mejor que un vacilante uno. Por otro lado, el uso de un ADC difuminado puede ser útil si uno quiere medir las cosas con más precisión de lo que permitiría una sola lectura.

Lección adicional: realmente obtienes 14 bits de precisión, pero sólo 12 bits de exactitud.

valoraciones y reseñas

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *