Entonces, si genera una onda cuadrada simplemente cambiando una señal entre dos valores, en los límites de la muestra, produce una serie infinita de armónicos, que alias y producen tonos por debajo de su fundamental, que es muy audible. La solución es la Síntesis de banda limitada , ya sea usando síntesis aditiva o pasos de banda limitada para producir formas de onda que son las mismas que si hubiera limitado la banda de la onda cuadrada matemática ideal antes de muestrearla:
Pero me di cuenta de que si aplica una amplificación grande a una onda sinusoidal digital y luego la recorta digitalmente, producirá la misma forma de onda cuadrada, sin las ondas del fenómeno Gibbs. Entonces, también está produciendo productos de distorsión con alias, ¿verdad? Entonces, ¿ cualquier distorsión no lineal en el dominio digital que produzca armónicos fuera de los límites de Nyquist producirá productos de distorsión con alias? (Editar: he hecho algunas pruebas y he confirmado que esta parte es cierta).
¿Existe una distorsión de banda limitada para simular (en el dominio digital) los efectos de la distorsión (en el dominio analógico) antes de la limitación de banda y el muestreo? Si es así, como lo haces? Si busco "distorsión ilimitada de banda", encuentro algunas referencias a los polinomios de Chebyshev, pero no sé cómo usarlos o si solo funcionan para ondas sinusoidales o qué:
Este instrumento no intenta generar una distorsión de banda limitada. Los interesados en la distorsión de banda limitada deben investigar el uso de polinomios de Chebyshev para generar el efecto. Distorsión de la tangente hiperbólica
"Chebyshev polinomio" - dar forma a las funciones con la importante propiedad de que son intrínsecamente de banda limitada, es decir, que no introducen armónicos espectrales espurias debido a la superposición etc. Wave Shaper
fuente
Respuestas:
La aplicación de una función no lineal siempre introducirá armónicos, y la combinación de funciones no lineales con versiones muestreadas de señales continuas agrega la arruga que notas arriba (donde los armónicos de alta frecuencia tienen un alias a bajas frecuencias).
Se me ocurren algunas formas de proceder:
Puedes combinar (1) y (2). El tercer enfoque es complejo, pero le brinda el mejor control sobre la cantidad de distorsión que debe admitir, y probablemente escalará mejor a requisitos de muy alta fidelidad.
(Con un poco de reflexión, también podría usar este formulario directamente para aproximar la no linealidad filtrada. Eso requeriría una buena representación en serie para el clipper).
fuente
Algunos enfoques para la distorsión no lineal sin alias (en orden creciente de dificultad):
Restringir el diseño algebraico basado : en el elemento anterior, ha visto que la distorsión no lineal antialiasing conduce a filtros no lineales. Por supuesto, no todos los filtros no lineales están libres de alias, pero algunos pueden estarlo. Entonces, la pregunta obvia es un criterio para hacer que dicho filtro sea estrictamente libre de alias y cómo diseñarlo. Como resultado, una afirmación equivalente a estar libre de alias es que el filtro no lineal conmuta con traducciones de submuestra. Por lo tanto, debe asegurarse de que no haga una diferencia si traduce primero y luego filtra, o filtra primero y luego traduce. Esta condición conduce a restricciones de diseño muy estrictas.para filtros no lineales, pero depende de cómo realice la traducción de la señal. Por ejemplo, la traducción ideal requeriría infinitos coeficientes para el filtro no lineal. Por lo tanto, debe aproximar la traducción de la señal a un orden finito para obtener un filtro no lineal finito. La ausencia de alias se escala con la aproximación que usa, pero tiene un muy buen control sobre ella. Después de haber trabajado con las matemáticas de este enfoque, puede diseñar cualquier función de transferencia no lineal (no solo suave) como un modelo digital casi ideal en forma de filtro no lineal. No puedo bosquejar los detalles aquí, pero tal vez puedas encontrar algo de inspiración en esta descripción.
fuente
Los propios polinomios se pueden generar fácilmente utilizando la siguiente relación de recurrencia :
Aquí están los primeros:
Al calcular una serie de Chebyshev
fuente
@ robert-bristow-johnson explica esto muy claramente en comp.dsp :
En otras palabras, si su no linealidad es un polinomio, la frecuencia más alta que puede producir la distorsión será la frecuencia más alta en su señal multiplicada por el orden N del polinomio. (La no linealidad polinómica está multiplicando la señal por sí misma N veces, por lo que su espectro se enreda consigo mismo y se extiende por la misma relación).
Entonces conoce la frecuencia máxima (ya sea Nyquist o algún límite inferior para su aplicación), y conoce el orden del polinomio, por lo que puede sobremuestrear lo suficiente para evitar el aliasing, hacer la distorsión y luego el filtro de paso bajo y la disminución de la muestra.
De hecho, puede reducir la tasa de sobremuestreo permitiendo que ocurra algún aliasing, siempre que esté contenido en la banda que se eliminará antes de la disminución de muestreo:
fuente