1 votos

Cómo filtrar el ruido de diferente frecuencia en función de la potencia del motor

Estoy tomando lecturas de par de torsión de galgas extensométricas en un actuador y tratando de filtrar la señal para que parezca utilizable. Ya he colocado un filtro de mediana que reduce los picos esporádicos.

Cuando tengo el actuador bloqueado, puedo ajustar su potencia (a través del ciclo de trabajo PWM) a diferentes valores y ver las lecturas de par en consecuencia. En tal situación, tengo 0,1Nm de ruido. Esto es aceptable.

Sin embargo, cuando dejo el motor sin restricciones, y lo configuro para que gire a diferentes velocidades (de nuevo, lo configuro a diferentes potencias a través del ciclo de trabajo PWM), obtengo un alto ruido en las lecturas del sensor de par que parece tener una relación directa con la velocidad del motor.

En esta imagen, puedes ver las lecturas mientras el motor pasa de rápido a lento en 4 pasos bastante evidentes:

Torque readings when the motor speed is high, medium high, medium low and low

(Obviamente, dado que el motor funciona libremente, las lecturas de par son (deberían ser) un 0 constante).

Mi pregunta es, ¿cómo puedo filtrar estos datos durante el funcionamiento del motor? El procesamiento offline está descartado, y me imagino que la ventana de filtrado no puede ser muy grande (ya que produce una gran latencia en la lectura del valor del par actual), pero quizás sea inevitable.

He pensado en un filtro de paso bajo, naturalmente, que funcionaría muy bien para las altas velocidades del motor, donde la frecuencia del ruido es bastante alta, pero a medida que el motor se ralentiza, tendría que buscar esencialmente segundos de la historia para poder filtrar ese ruido de baja frecuencia, que es demasiado alto para ser útil para el control de retroalimentación.

1voto

JonRB Puntos 4599

El "ruido" que estás midiendo parece estar relacionado con la velocidad del rotor ya que indicas que se ha medido mientras se desacelera e igualmente se puede ver que hay una disminución de la frecuencia.

Lo que no se sabe es si esa frecuencia se corresponde con la velocidad del rotor o con algún armónico superior. Conocer la correlación de frecuencias entre el rotor y el "ruido" facilitaría la localización de la fuente.

Si se desea filtrar esta componente no deseada, la única complicación es el deseo de filtrar desde 0Hz hasta la frecuencia n del rotor. Esto descarta un filtro de paso bajo.

Dos opciones

Rechazo de CA

A continuación se muestra una ecuación para eliminar el componente de CA. Determina el componente de CA y luego lo resta de la señal original.

\$ reject = x - [ x - \frac{1}{N} \sum_{n=0}^{\infty} x ] \$

La ecuación de diferencia equivalente para el filtro de rechazo de CC es:

\$ y_n = 0.999*( ( x_n - x_{n-1})+y_{n-1}) \$

Como en la mayoría de los filtros, se trata de un compromiso entre el tiempo de asentamiento y la capacidad de rechazo. El factor 0,999 es la clave aquí. Esto compensa el tiempo de asentamiento del rechazo.

  1. Adquiera sus datos. x
  2. Pasa por el filtro. \$ y_n = 0.999*( ( x_n - x_{n-1})+y_{n-1}) \$
  3. generar la versión rechazada de AC \$reject = x_n - y_n\$

Tomar una rampa de datos y superponer sobre ella una componente de CA de frecuencia creciente de amplitud significativa + algo de ruido aleatorio. La compensación se puede ver a continuación.

NOTA si se requiere un rechazo completo pero el tiempo de asentamiento no es deseado... hay trucos digitales adicionales para ayudar al filtro a lidiar con grandes deltas

NOTA2: la eficacia del factor 0,9... depende de la frecuencia de muestreo con respecto a la señal de interés y los componentes no deseados. Los siguientes fueron realizados con un Ts de 100us, bastante lento

enter image description here

enter image description here

enter image description here

Filtro bandtop de seguimiento

Si se conoce la velocidad actual y el número de armónicos del componente también se conoce, se puede realizar un filtro bandtop adaptativo.

Voy a retrasar esta sugerencia, ya que es un poco más complicado y requiere información adicional

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