¿Cómo puedo reducir el ruido PWM de un motor soplador?

1

He construido una caja de ventilación que utiliza un motor soplador de un viejo Subaru Impreza 1996, que me regaló un mecánico amigable.

El volumen de flujo es sorprendente, pero es un poco ruidoso y demasiado poderoso. El motor consume aproximadamente un pico de 20A en el arranque y luego opera a 7A a 12V.

Pero cuando se usa PWM, el motor básicamente suena como un alienígena que grita, no importa si el ciclo de trabajo es 90% o 10%. Estoy usando Arduino para enviar una señal pwm y un MOSFET IRF3205.

He intentado una frecuencia baja (usando delay y delayMicroseconds, 10-1000 Hz) y alta frecuencia (usando prescaler de 32 bits y 8 bits de Atmega328). Solo cambió el tono del sonido, pero aún era muy audible. El menos ruidoso era a baja frecuencia, pero el motor era inestable.

¿Debo usar un condensador o un inductor? (o ambos). No he trabajado con inductores antes. Y me imagino que el condensador no servirá de mucho ...

Vídeo: enlace

simular este circuito : esquema creado usando CircuitLab

Código fuente:

digitalWrite(pin11, LOW);
delayMicroseconds(50);
digitalWrite(pin11, HIGH);
delayMicroseconds(100);
    
pregunta user95482301

4 respuestas

3

Como la mayoría de los MOSFET de potencia, el IRF3205 tiene una gran capacidad de puerta que debe cargarse y descargado, requiriendo aproximadamente 50nC de carga para encender correctamente. En su circuito, esta carga se filtra a través de R1, distorsionando su agradable onda cuadrada de 12 V en un diente de sierra que se hace más pequeño a medida que aumenta la frecuencia de PWM. Para obtener una buena forma de onda de unidad Gate a 20 KHz, debe reducir R1 a aproximadamente 500 & ohm; (para cargar la compuerta más rápido) y R2 y R3 a aproximadamente 1 k (para garantizar que Q1 se encienda por completo).

El 1N4001 es un diodo rectificador de frecuencia de red con acción de conmutación lenta, no adecuado para PWM de alta frecuencia. Debe usar un diodo Schottky con una capacidad nominal de al menos 3A continua.

El software PWM creado con DelayMicroseconds() no es muy preciso ya que no tiene en cuenta la sobrecarga del bucle, por lo que la frecuencia de PWM será más baja de lo que esperaba. Además, no debe tener ningún código de interrupción en ejecución (por ejemplo, temporizador, serie) o la forma de onda PWM sufrirá problemas técnicos que podrían ser audibles. Si todavía puedes oírlo, ¡no es 20KHz!

Con una buena unidad de compuerta, un diodo de retorno rápido y un PWM real de 20 KHz, debe obtener un funcionamiento silencioso del motor.

    
respondido por el Bruce Abbott
2

He intentado el mismo proyecto, pero en otra escala: traté de administrar la velocidad de rotación de la computadora. Entonces, el secreto es que Arduino por defecto tiene baja frecuencia en su salida PWM. Eso hace ruido, que puedes oír. Por lo tanto, la decisión es establecer la frecuencia correcta directamente a través de los registros AVR. Entonces, eche un vistazo aquí: enlace bajo el título "Usar el ATmega PWM se registra directamente".

    
respondido por el Misha
2

De hecho, resultó que el ruido desapareció al utilizar PWM de alta frecuencia.

En conclusión, tomo nota de lo siguiente:

  • Usando el trabajo de Nick Gammon en los temporizadores , pude obtener una frecuencia PWM que, según su escritos, deben ser alrededor de 25kHz; esto hizo que el ruido desapareciera por completo

  • El voltaje de la compuerta del MOSFET debe poder cargarse / descargarse rápidamente; el MOSFET se pondría muy caliente; utilizando resistencias más pequeñas (100 ohmios), el problema se redujo pero no se resolvió en algunos ciclos de trabajo (gracias @Bruce Abbott)

  • En frecuencias más altas, el motor no arrancaría, presumiblemente porque el MOSFET no se cargaría lo suficientemente rápido (Me pregunto si sería posible usar dos transistores (NPN + PNP), para permitir una alternancia rápida y eficiente entre resistencia cero a tierra y resistencia cero a 12 V, reduciendo así la pérdida de calor y mejorando la función del motor y permitiendo PWM de mayor frecuencia)
  • Con el siguiente código fuente, logré una operación muy silenciosa, con un pequeño flujo de aire, a una corriente de 1.3 A (que era lo que buscaba: una operación constante baja con una operación ocasional de alta potencia)

Código fuente:

#include <TimerHelpers.h>

const byte timer0OutputB = 5;

void setup() {
  pinMode (timer0OutputB, OUTPUT); 
  TIMSK0 = 0;  // no interrupts
  Timer0::setMode (7, Timer0::PRESCALE_64, Timer0::CLEAR_B_ON_COMPARE);
  OCR0A = 10;   // count to 4, zero-relative
  OCR0B = 5;   // duty cycle
}
    
respondido por el user95482301
2

Espero que no hayas usado el diodo 1Amp 1N4001 para sujetar un motor de 7A. La corriente de sobrecarga está más cerca de 8 ~ 10x o 70A máx. Comenzando con PWM.

Aunque puede manejar corrientes de impulsos cortos mucho más altas que 1A, generalmente es mejor igualar la clasificación de corriente del motor o más.

El diodo de pinza y los valores nominales del interruptor PWM deben AMBOS MÁS sobre el valor nominal de la corriente de sobretensión del motor para evitar un sobrecalentamiento y un funcionamiento estable y eficiente para el control de velocidad.

Esto se debe a que el diodo conduce la corriente inductiva de los motores mientras el transistor está apagado. Debe elegir un diodo > 10 veces la clasificación de la corriente del motor, ya que cada impulso a bajas velocidades estará a la altura de esta sobrecorriente. De lo contrario se pondrá muy caliente.

Sugeriría algo como este diodo de potencia del automóvil. $ 4.19 (1)   - Pero es mejor observar la respuesta en un alcance y luego determinar si el ruido es electromagnético-acústico o mecánico-acústico.

  • En el video, el ruido de la cuchilla es excesivo y la resonancia del gabinete es evidente como un diseño de altavoz.
  • un mejor diseño coloca el ventilador en un conducto del horno en una ubicación remota para que no haya ruido de fricción de interfaz o corrientes de Foucault con la rejilla de ventilación

  • El PFM con 30-500us tiempos de retardo, es una mala manera de controlar el ventilador distribuido, aunque esto es útil para un regulador BoPS SMPS, no para un controlador de velocidad de ventilador.

  • debería utilizar PWM por encima de 20 kHz. yo G. 21 ~ 22Khz y compruebe los efectos de aliasing con el ruido del ventilador, pero debe estar muy tranquilo en una cámara plenaria.
respondido por el Tony EE rocketscientist

Lea otras preguntas en las etiquetas