6 votos

Arduino AnalogWrite y su frecuencia y la eficacia

La lectura sobre el arduino función analogWrite he llegado a comprender que utiliza PWM para la variable de voltaje de CC. (por el control de la anchura del pulso)

Sin embargo, ¿cómo podemos controlar la frecuencia del pulso? Me encontré con un par de artículos sobre el mismo, pero no podía llegar a ellos. Cualquier ayuda es muy apreciada.

Por otra parte ¿qué tan efectivo es el uso que analogWrite de voltaje como decir una polarización de voltaje? O tal vez como una variable Vcc sí mismo. ¿El hecho de que la DC se obtiene a través de PWM deberá efecto subyacente de los circuitos de espera de trabajo (donde el circuito subyacente es algo que uno puede hacer con un transistor)

3voto

jason Puntos 147

El cambio de frecuencia PWM no es directamente compatible con Arduino conjunto de comandos, pero se puede hacer. Para esto usted necesita saber un par de cosas:

  • encontrar la hoja de datos para el exacto microcontrolador (ATmega..) que está en el Arduino
  • que pin de Arduino desea frecuencia PWM para el cambio;
  • que pin en el controlador está conectado (esto se describe en http://arduino.cc/ );
  • encontrar el capítulo en el PWM en la hoja de datos que describe el controlador de pines usted está interesado en.

En la parte superior de que, algunos de los PWM en los pines están conectados a timer0, que está fuertemente tomadas en consideración para otras tareas del sistema (como delay();). Así que jugando con PWM puede cambiar la velocidad de ejecución de código.

2voto

Hope Pires Puntos 6

La frecuencia del pulso puede ser controlado por la manipulación directa del temporizador de control de registros. Los detalles varían un poco dependiendo de lo temporizador y lo de los pines que está utilizando. Algunos pines permiten un control más fino de la frecuencia y ciclo de trabajo, mientras que otros sólo permiten el control de uno o el otro. Para muchas aplicaciones (por ejemplo, indicadores Led), la frecuencia exacta no importa mientras sea lo suficientemente alto.

En última instancia, una señal PWM se comporta de forma bastante diferente a la de un verdadero señales analógicas. Para algunas aplicaciones, por ejemplo, el control de los LEDs, una señal PWM es más conveniente que el verdadero analógico (es decir la relación de ciclo de trabajo del PWM para el brillo), pero para las aplicaciones que usted menciona (polarización de voltaje), PWM no es realmente adecuado.

0voto

userid53 Puntos 116

El Arduino frecuencia PWM de la biblioteca funciona de forma excelente. La biblioteca es un código abierto de terceros contribuido biblioteca, no forma parte de la distribución estándar.

Hay un foro de discusión, incluyendo la documentación de la biblioteca y actualización de la historia aquí.

He utilizado esta biblioteca ampliamente, no hay quejas.


Con respecto a la obtención de la variable DC PWM, la técnica estándar es el uso de un filtro de paso bajo: en el más simple, una resistencia y un condensador.

La parte inferior de la esquina de la frecuencia de este filtro, el más lento en su respuesta al ciclo de trabajo del PWM cambios, pero menor será la onda en la salida, dada una frecuencia PWM significativamente mayor que la frecuencia de la esquina.

Por el contrario, para reducir el rizado y, sin embargo, sensible DC de salida, una mayor frecuencia PWM podría ser utilizado junto con una mayor frecuencia de corte para el filtro de paso bajo.

La ondulación de la contribución también aumenta con la más alta corriente de carga, por lo que para contrarrestar que las frecuencias más altas se utilizan, así.

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