8 votos

La eliminación de ruido digital en software

Tengo un diseño en la que se espera un nivel de TTL de onda cuadrada de un receptor de radio que se alimenta en un microcontrolador. Hay algunos TTL nivel de ruido sin ningún tipo de codificación se realiza en la transmisión final. Me preguntaba si alguien tiene alguna sugerencia sobre cómo podría disminuir el ruido en el software? (Entiendo que hay un número de soluciones de hardware, pero estoy más interesado en el aprendizaje) no estoy buscando a nadie a solucionar mi problema para mí, sólo para algunos consejos.

Nombres/artículos/temas sería genial!

8voto

Duncan Smart Puntos 9195

A partir de tu último comentario, me permito sugerir la corrección de la entrada. Grabar varias muestras consecutivas y, a continuación, su salida debe ser lo que la mayoría de las muestras registradas.

Por ejemplo, digamos que el registro de 10 muestras. Si usted consigue un ruido de pico, sólo una o dos de las muestras será dañado, mientras que la mayoría de ellos son el valor correcto. Si usted obtener datos reales, entonces, finalmente, el 1s superarán en número a los 0s y la salida va a cambiar.

6voto

Dan Puntos 12178

Hay muchas maneras de trabajar con el ruido en el software, y se están convirtiendo en más y más eficaces para implementar en el software en lugar de hardware, reducir el costo del sistema.

En lugar de intentar explicar a mí mismo, voy a pasar a Jack Ganssle, incrustado consultor de sistemas que me han crecido a partir de la lectura de los artículos de.

Él tiene un listado de sus artículos en línea, la primera de ellas, me gustaría que se acerca analógico de ruido en sistemas embebidos. El segundo artículo que tiene un enlace a es acerca del uso de software para reducir el ruido en el sistema.

Te recomiendo también su artículo en el suavizado de las entradas digitales y auto calibración de los sistemas. Después de pasar un tiempo trabajando con sistemas embebidos me duro cogido algo de esta información a partir de mis propios errores, pero he disfrutado mucho de la lectura de sus formas de pensar. La calibración automática del sistema era muy obvio para mí, pero la forma en que él sugirió que va sobre que era valioso para mí. Puede que no necesite la información, pero sus artículos me han ayudado.

5voto

He encontrado Procesamiento Digital de la Señal y el Microcontrolador por Grover y Deller a ser el único libro sobre los filtros que yo pueda entender. Desafortunadamente, es difícil encontrar barato.

http://www.google.com/books?id=GzVmQgAACAAJ

4voto

SQLMenace Puntos 68670

¿Su software de encuesta de esta entrada, o utilizar una interrupción esquema de proceso?

Si eres de votación, es de suponer que usted lea la entrada a un ritmo mucho mayor que el esperado cambio en la señal. Si el ruido es bien separados, de muy alta frecuencia picos, estos tendría el aspecto aislado de muestras de la "equivocado" de la polaridad. Usted podría mitigar esta manteniendo el más reciente de N muestras y decidir a leer la entrada como lo que la polaridad es en la mayoría. I. e., si N=5, entonces si tiene 3, 4 o 5 '1' bits, su entrada es un '1'; si tienen 0, 1, o 2 '1' bits, su entrada es un '0'. Esto es realmente sólo una especie de filtro de paso bajo en el software.

Si usted está utilizando la entrada para activar las interrupciones en el cambio (ambos extremos), usted puede tener la rutina de interrupción (ISR) iniciar un temporizador para causar una segunda interrupción de un poco tiempo más tarde, pero más que el ruido de tiempo de pico. En lugar de tener el pin de entrada ISR directamente acumular la señal de los bits, usted tiene el temporizador de ISR hacerlo. Por ejemplo, si la señal es baja, y un gran incremento viene, el flanco de subida iniciar el temporizador, pero antes de que la cuenta atrás del tiempo expira, el flanco de bajada de la espiga restablece, por lo que cuando el temporizador de interrupción finalmente se apaga, usted está buscando en la señal, y no el ruido. La señal, por otro lado, se iniciará el temporizador sólo una vez, y el temporizador de ISR será capaz de agarrar el nuevo nivel de la señal.

De estos dos, los Encuestados vs Interrumpir, personalmente me gustaría ir para los encuestados enfoque, b/c (1) las interrupciones son más complicadas, y (2) un patológicamente colocado par de picos podrían dar falsos de entrada.

0voto

Mark Biek Puntos 41769

Tal vez el "ruido" es un problema causado por la falta de codificación. Simples transmisores y receptores requieren NRZ - Manchester código se utiliza a menudo.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X