¿Cuál es el mínimo? frecuencia de muestreo de frecuencia para una adquisición de onda cuadrada con medición de amplitud [cerrado]

-1

EDITADO PARA MÁS CLARIDAD

Estoy un poco confundido por esto

enlace

Tengo una señal digital (en realidad UART, NRZ) de 70 KHz que será muestreada por un ADC. El objetivo será descodificar esta señal, pero se usa ADC porque también se usarán las mediciones de amplitud.

El swing será de 40V (alto) a 34V (bajo) pero, ocasionalmente, aparecerán otras señales de control digital en línea (no UART) hasta unos pocos voltios.

Lo pregunto porque trato de encontrar una explicación más elevada (que empíricamente) en la selección de ADC (costoso). Existen muchas limitaciones, como la velocidad SPI, el marco para ser compatible con la CPU, etc.

Ahora claramente, un punto Nyquist (2x) no se aplicará aquí ya que la descodificación será imposible. Seleccionamos empíricamente (para el cálculo del tamaño de ADC) un valor 10x de sobremuestreo o en algún lugar alrededor de 700Ksps.

Por supuesto, la muestra infinita reproducirá el cuadrado, pero como una respuesta a continuación, ¿hasta dónde debo ir o cómo acercarme mejor a esta selección?

Por favor, no publiques lo que podría hacer, bitbang, GPIO, etc.

Esta es una pregunta clara para un problema real y me gustaría gastar todos mis puntos (o comprar si es posible) para obtener respuestas serias (sin cazadores de recompensas).

Gracias de antemano.

    
pregunta orfruit

3 respuestas

0

Sin la relación señal / ruido, y una declaración de qué tasas de error de bits son tolerables, no se puede definir una solución.

Siempre hay ruido, y siempre hay basura (RFI, SwitchReg HFI, MCU basura en el ADC por medio de las líneas de interfaz ADC-MCU).

Cuando se amplifica una "onda cuadrada" (el OP no ha dado especificación de amplitud), las resistencias utilizadas para establecer la ganancia agregarán ruido KT / Boltzsmann / Johnson. A menos que las resistencias sean de película metálica, las resistencias tendrán un exceso de ruido proporcional al cuadrado (actual) debido al "efecto de exclusión de Pauli".

¿Qué bloqueos del sistema se producirán si se produce un error de bit?

EDIT1 Cada Tau de asentamiento permite otros 8.6dB de precisión de medición, asumiendo una constante de tiempo de 1 polo. 10Tau permite 86dB, o 14 bits de precisión. Para lograr esa precisión, debe tener un presupuesto de error y tener en cuenta el ruido térmico, EFI, HFI, etc.

Hace años, me pidieron que evaluara los sistemas de alarma contra incendios industriales existentes para las actualizaciones. Esto suena como ese tipo de sistema.

Por cierto, el 8.6dB es un Neper.

EDITAR Dado que desea medir un voltaje, una forma de onda NRZ, con cierta precisión, este menú / hoja de trabajo en particular puede ayudarlo a pensar. Los NEPERS están incorporados a la herramienta.

LaherramientahaincorporadolasbasesdedatosdeinterferenciadeElectricFieldyMagneticField;simplementehagaclicen"efi" o en "hfi" para ver o editar y seleccionar / deseleccionar. Para utilizar los interferers, haga clic en "gárgolas" e "I / C" (las trazas de PCB). Luego haga clic en "ACTUALIZAR" para leer el SNR / ENOB recién computado.

    
respondido por el analogsystemsrf
1

Entonces, la respuesta aquí es depende . Como en, depende de lo que quieras. Si desea muestrear una onda desconocida y luego reproducirla perfectamente, no podrá hacerlo si es una onda cuadrada perfecta. Si desea muestrear una onda desconocida, y luego reproducirla casi perfectamente si es una onda cuadrada, podrá hacerlo, pero su frecuencia de muestreo tendrá que ser muy alta, y exactamente qué tan alto dependerá de qué tan definida sea la cuadrícula. esquinas de las olas.

Sin embargo, si ya sabe que su onda es cuadrada y solo desea ver cuándo es alta o baja, entonces puede muestrear a cualquier velocidad de datos, que en este caso parece ser de 70 kbps. Para estar seguro, probablemente debería muestrear al doble de eso, por lo que 140 KHz.

edite: un poco pedante aquí, pero si su onda es una "onda cuadrada" con una frecuencia constante, técnicamente no puede enviar ningún dato con ella porque es solo una repetición alta y luego baja. Creo que lo que quieres decir es una onda binaria.

    
respondido por el BeB00
0

Nyquist todavía se aplica. Solo necesitas determinar la frecuencia más alta en tu sistema. En teoría, una onda cuadrada tiene un ancho de banda infinito. Debe determinar a qué distancia desea ir antes de decidir que está "lo suficientemente cerca". Esto podría deberse a que su sistema ya filtra las frecuencias más altas o porque considera que tiene una coincidencia lo suficientemente cercana.

Una onda cuadrada contiene todos los armónicos impares de su señal. En otras palabras, su 70kHz contendrá frecuencias a 210kHz, 350kHz, 490kHz, ...

Las cosas se complican un poco más cuando se incluye el hecho de que se trata de una onda NRZ. El espectro de una onda NRZ es (de Couch, Digital y Analog Communication Systems, 7ª edición):

$$ P_ {NRZ unipolar} (f) = \ frac {A ^ {2} T_ {b}} {4} \ Bigg (\ frac {\ sin (\ pi f T_ {b})} {\ pi f T_ {b}} \ Bigg) \ Bigg [1 + \ frac {1} {T_b} \ delta (f) \ Bigg] $$

donde \ $ \ frac {1} {T_b} = R \ $, la tasa de símbolos de los datos, y \ $ A \ $ es la amplitud.

Si trazas esto, obtienes la siguiente forma (nuevamente, el crédito es para Leon W. Couch):

Amenudodecimosquenecesitael"primer ancho de banda nulo" para obtener algo que coincida con su entrada lo suficientemente bien como para averiguar qué se transmitió. En este caso, podemos ver que este primer nulo está en R, o en su caso, 70 kHz. El NRZ bipolar (usando \ $ A \ $ y \ $ - A \ $ en lugar de solo \ $ A \ $ y 0) tiene el mismo aspecto, solo se elimina el Dirac-Delta en DC.

No es que si realmente planeas usar un ADC para muestrear la forma de onda, tendrás que usar un filtro anti-aliasing para evitar que el espectro se repliegue y cause problemas debido al aliasing.

Es posible que ahora te preguntes "espera un segundo, ¿entonces mi NRZ de 70kHz no contiene componentes de frecuencia a 70kHz?" ¡Sí! Pero cuidado: esto es cuando piensas que la NRZ es aleatoria e infinita. Tan pronto como aceptes que este no es el caso, volverá. Pero aún así, este resultado aparentemente contraintuitivo puede explicarse intuitivamente. Como tiene datos aleatorios, puede pensar que tienen la onda sinusoidal positiva y negativa en su frecuencia. Una serie de 101010 tiene el positivo, 010101 tiene el negativo. Cada vez que obtienes los dos, es como que "cambias" entre los dos. De este modo, se cancelan entre sí, lo que resulta en un nulo a la velocidad de símbolo.

    
respondido por el Joren Vaes

Lea otras preguntas en las etiquetas