Filtro de paso bajo para señal PWM de 20 kHz

3

Quiero detectar una señal \ $ 20 \ mathrm {kHz} \ $ PWM desde una tarjeta electrónica. Quiero leer esta señal con la función "analogRead (A0)" en mi placa Arduino. Por lo tanto, hice un filtro de paso bajo de primer orden que consta de una resistencia, un condensador y un búfer opamp.

Primero, produje una señal \ $ 20 \ mathrm {kHz} \ $ PWM del pin D9 de mi Arduino. El ciclo de trabajo de la señal PWM se está desvaneciendo con \ $ 0 \ mathrm {\%} \ $ y \ $ 100 \ mathrm {\%} \ $ continuamente. El código de generación PWM:

pwmWrite(led, brightness);
brightness = brightness + fadeAmount;
if (brightness == 0 || brightness == 255) {
    fadeAmount = -fadeAmount ; 
}   

Según mis cálculos, para \ $ 20 \ mathrm {kHz} \ $ filtro de paso bajo, la resistencia debe ser \ $ 82 \ mathrm {k \ Omega} \ $ y el condensador es \ $ 100 \ mathrm {pF} \ $.

Pero usé \ $ 68 \ mathrm {k \ Omega} \ $ resistor porque no tengo \ $ 82 \ mathrm {k \ Omega} \ $. En este caso, la frecuencia de corte del filtro de paso bajo es \ $ 23 \ mathrm {kHz} \ $. Leí esta señal del pin A0 con muestreo analógico de lectura y ADC. El código de lectura es:

int c;
long a;
for(c=0;c <32;c++) {
    pwm_deger=analogRead(A0);
    a += pwm_deger;
}

int f = a / 32;
Serial.println("pwm_deger:");
Serial.println(f);
delay(200);

He añadido los resultados a continuación. Las cifras se escalan en 0-1023 (valor ADC de Arduino)

  • La Figura 1 muestra la señal \ $ 20 \ mathrm {kHz} \ $ PWM de que quiero probar la señal con desvanecimiento de \ $ 0 \ mathrm {\%} \ $ a \ $ 100 \ mathrm {\%} \ $ ciclo de trabajo con \ $ 200 \ mathrm {ms} \ $.

  • La Figura 2 muestra la señal LPF sin búfer.

  • La Figura 3 muestra la señal LPF de la salida del búfer opamp.

¿Hay algún problema en las cifras? ¿Por qué la figura 2 muestra 0.7 de 1023 y corte después de un valor de ADC de 700. ¿Es debido a la opamp?

Figura 1

Figura2:

Figura3:

    
pregunta Adem Gül

1 respuesta

4
  

Por qué la figura 2 muestra 0.7 de 1023 y el corte después del valor de ADC de 700. Es   es para opamp?

Es casi seguro que necesite utilizar un amplificador operacional riel a riel (R2R) que sea capaz de producir una salida decente cerca del riel superior de potencia. Si está utilizando algo como un LM324, es probable que la sujeción suave que se ve en la parte superior de la forma de onda se deba a que no está R2R en las partes altas de la señal de entrada y también en las partes altas de la señal de salida.

    
respondido por el Andy aka

Lea otras preguntas en las etiquetas