Necesito leer los datos de un sensor que proporciona una salida analógica (el rango es de +10 V a -10 V) y convertirlos a formato digital usando ADC de 24 bits y luego almacenarlos en una tarjeta de memoria. Tengo algo de experiencia con el microcontrolador PIC y Arduino. ¿Es lo suficientemente bueno elegir uno de estos o ir a otras plataformas para minimizar el ruido? Por favor, guíeme, ¿cuáles son los factores a tener en cuenta al elegir ADC, controlador en el diseño de mi aplicación? Solo dudo si es posible o no leer una resolución de al menos 18 bits con ADC externo y combo arduino.
Especificaciones del sensor:
Aquí hay un análisis, usando interferencias HFI, EFI, PSI y GPI. Estos son el campo magnético , que induce basura determinista en el bucle de señal de seguimiento sobre el plano; Campo eléctrico que induce corrientes de desplazamiento en la impedancia de los nodos del circuito; Ondulación de la fuente de alimentación /ruido de conmutación/timbre LC donde el circuito/ADC PSRR es inadecuado; Ruido de tierra , donde se calculan ground_impedance * ground_currents. El total de estas 4 interferencias es de 14 milivoltios.
Configuré la herramienta --- Signal Chain Explorer --- para 20 voltios PP en el ADC; editó las especificaciones maestras de muestreo para 18 bits y frecuencia de muestreo de 10 KHz; la retención de muestra interna del ADC es de 50 ohmios y valores predeterminados de 48 pF. Muchas de estas especificaciones se pueden editar.
La SNR resultante sin interferencias es de 109 dB.
La SNR resultante con interferencias (agregué interferencias adicionales de las tablas Gargoyle, para ser realista en un sistema Arduino), es de solo 54 dB.
Conclusión: la construcción ciega de un sistema de este tipo producirá una medición de 9 bits con 9 bits adicionales de ruido determinista.
Aquí, a continuación, se encuentran los resultados de la inyección de los 4 tipos de interferencias, con la respuesta de frecuencia del sistema utilizada para modelar la basura determinista trastornada al Code Spread (el piso de ruido o SNR). Tenga en cuenta que el campo magnético del reloj MCU demasiado cercano es el mayor problema.
Aquí está la tabla HFI (campo magnético); el Switch Reg de 10 MHz está activo por defecto; Puedes apagarlo. Puede editar cualquiera de los parámetros, incluida la distancia, para explorar qué tan cerca o qué tan lejos se pueden colocar algunos generadores de campo y aun así lograr sus objetivos de SNR.
Aquí está la tabla EFI (campo eléctrico);
¿Qué puede hacer para reducir en gran medida el ruido de fondo determinista de los 4 tipos de interferencias? (Tenga en cuenta el piso de ruido térmico, con fuentes KT que solo son el sensor de 50 ohmios y el ADC de 50 ohmios ---- ambos editables ---- solo contribuyen con 9 microVoltios RMS en el ancho de banda del sistema; si desea 20 bits, tendrá necesitamos reducir estos 9uV, pero primero mejoremos los 14 milivoltios existentes de basura determinista.
El problema principal es la ubicación demasiado cercana de las fuentes de alimentación conmutadas y de las líneas MicroController CLock/IO.
La potencia de conmutación está a solo 10 milímetros de distancia, con una frecuencia de conmutación y dI/dT supuestas. Mueva eso lejos, y protéjalo.
¿Qué tan preciso es el número HFI? Usamos un área de bucle, definida por la longitud del trazo y la altura del trazo por encima de gnd (ambos editables); indicamos la Distancia de cable a bucle; expresamos el dI/dT en el cable; asumimos el peor de los casos (voltaje inducido máximo).
La línea de E/S/reloj de la MCU está a 1 milímetro de la traza de entrada del ADC; ¿Quién estaría tan limitado por el área de PCB que enrutaría un reloj de alta velocidad/traza de datos a solo 1 mm de una traza analógica de 18 bits (o 24 bits)?
¿Qué tan preciso es el número EFI? Suponemos un acoplamiento de placas paralelas en ausencia de cualquier otra geometría mecánica. Conocemos la velocidad de respuesta y el simulador integrado de Signal Chain Explore calcula la impedancia del nodo.
Usted preguntó si se pueden lograr 24 bits con un ancho de banda de 3 KHz. Examine el ruido del sensor y la sensibilidad de salida como una sola especificación, simplemente multiplicando esos números:
0,006 nT RtHz * 0,145 mV/nT == 0,00087 milivoltios de ruido por RtHz
o 0,87 microvoltios RMS por ancho de banda de RtHz
•Rango de frecuencia CC ..... 3 kHz CC – 30 s
• Ruido del sensor < 0,006 nT √Hz a 1 Hz
•Sensibilidad de salida 0,143 mV/nT
¿Qué sucede en un ancho de banda de 3000 Hertz? Suponiendo que no haya comportamientos de ruido 1/Freq (rosa), lo que significa que la energía del ruido es constante en la frecuencia, la potencia del ruido aumenta linealmente con el ancho de banda y el VOLTAJE del ruido aumenta con la raíz cuadrada del ancho de banda, por lo tanto
Vruido = 0.87uV/RTHz * sqrt(3,000) = 0.87 * 55 == 48 microVoltios RMS
Comparando 48 microVoltios RMS con el rango de 20 voltios PP, tendrá alrededor de 18 o 19 bits, EN ANCHO DE BANDA COMPLETO.
Reducir severamente el ancho de banda, por ejemplo a DC -- 30 Hertz, causa 10:1 menos voltaje de ruido y 100:1 menos potencia de ruido.
Por lo tanto, en CC: 30 Hz, espere 4,8 microvoltios RMS, o alrededor de 22 bits.
Volveré más tarde y configuraré Signal Chain Explorer para ADC de 22 bits y ancho de banda de 30 Hz. Insertaré un filtro de paso bajo RC (1 polo) para reducir el ancho de banda.
Use los 'comentarios' para sugerir cualquier interferencia preferida (la parte superior derecha de la pantalla principal de SCE tiene botones para habilitar/deshabilitar una/todas las gárgolas).
el fotón
Shrikant
Transistor
Shrikant
Alexander von Wernherr
marcos
Pedro Smith
chris stratton
Juan Birckhead
pjc50
Tony Estuardo EE75