Cálculo de SNR para muestras ADC

3

He recolectado algunas muestras para una onda sinusoidal de 200Hz usando un microcontrolador AVR. Me gustaría cuantificar el rendimiento del ADC mediante la medición de la relación señal / ruido. Teóricamente, para un ADC ideal debería ser SNR = 6.02N + 1.76 (dB). ¿Qué podría hacer en MATLAB para ver cómo este ADC se compara con el ideal?

    
pregunta Vanvan

3 respuestas

1

Eso es solo un tipo de medición y no es necesariamente la mejor, pero como tienes los datos ...

Necesitas trazar los datos del dominio de Fourier en una gráfica de dB vs. frecuencia. - Necesitas los datos de magnitud. - Tenga cuidado al seleccionar su ventana para la FFT - podrá ver el piso de ruido en comparación con el pico (@ 200 Hz)

    
respondido por el placeholder
1

Dado que la señal está en una frecuencia conocida y precisa, puede separarla del ruido de cuantificación (y otros) mediante un filtro. La potencia total de la señal "limpia" dividida por la potencia total de lo que queda es la SNR. En Matlab, asumiendo que tiene sus datos en un vector llamado data y el tiempo de cada muestra en t , puede hacerlo:

>> noise_portion = idealfilter(timeseries(data, t), [199, 201], 'stop');
>> signal_portion = idealfilter(timeseries(data, t), [199, 201], 'pass');
>> SNR_dB = 10*log10(sum(signal_portion.data.^2)/sum(noise_portion.data.^2))
    
respondido por el Theran
0

El enfoque más sencillo sería grabar la señal ADC con una conexión abierta. al calcular la desviación estándar, una media del conjunto de datos resultante le dará una buena idea del nivel de ruido y la desviación de su convertidor.

Si es relevante para su caso, podría transformar el conjunto de datos en un espacio de Fourier para estimar el espectro de ruido. Cuidado: para obtener una buena aproximación de un espectro de ruido, necesitará promediar MUCHOS espectros de ruido. Sabrá cuándo tiene suficiente cuando el espectro promedio ya no cambie significativamente.

Por supuesto, puede hacer lo anterior con un rango de valores de DC (sin ruido) aplicados para tener una idea de si el ruido es similar para todo el rango del convertidor.

Existen esquemas de muestreo de ruido más elaborados (más rápidos) pero no son triviales de usar.

    
respondido por el ARF

Lea otras preguntas en las etiquetas