Arduino PWM vs. potenciómetro

2

Tengo una de estas antiguas estaciones de juego de Mentores con el juego de tenis (Pong). En lugar de usar los controladores con un poti, me gustaría usar el puerto Arduino PWM para establecer un voltaje entre 0 y 5 voltios. Sin embargo, esto no funciona, por lo que no hay movimiento de la paleta. Probé varias posibilidades, pero ahora me pregunto si el PWM y el poti están haciendo lo mismo.

    
pregunta Patrick

2 respuestas

5

No, no lo son. El potenciómetro establece un voltaje constante en algún lugar entre otros dos voltajes, y el PWM controla pulsos de 0V y 5V en rápida sucesión, ajustando el período de tiempo durante el cual la señal es 0V y 5V para obtener un voltaje promedio en algún lugar entre los dos.

Si esta diferencia es significativa (y parece que lo es, ya que la paleta no se mueve) dependerá de dos cosas: el circuito de detección del hardware que usaba anteriormente el pot, y el filtrado que se aplica a la señal PWM .

El circuito de detección necesita usar los mismos niveles de voltaje que el PWM. 0V debe ser equivalente para ambos circuitos (unidos entre sí), y la tensión máxima debe ser inferior a 5V. Su Arduino generará voltajes cercanos a 0V y cercanos a 5V, pero no precisamente a esos voltajes. Eso debería estar bien. El juego Pong puede consumir más corriente de la que Arduino puede proporcionar, lo que lleva a voltajes más bajos (incluso a una salida constante de 0 V). Eso sería un problema.

El filtrado se suele ignorar para los sistemas con una gran cantidad de su propio filtrado. Los motores tienen peso, y nuestros ojos proporcionan un filtro de paso alto para atenuar los LED, pero puede que este no sea el caso de la entrada al juego PONG. Intente colocar una pequeña resistencia en línea con la señal, y después de la resistencia, un pequeño condensador a tierra. Esto formará un filtro pasivo de paso bajo . Los valores utilizados dependerán de las necesidades del juego PONG y la frecuencia de tu PWM (¡Cuanto más alta sea la frecuencia, mejor!). Puedes comenzar con una resistencia de 470 ohmios y una tapa de 0.1uF. Pruebe la salida con un osciloscopio: debería ver una onda sinusoidal con una pequeña variación sobre el voltaje objetivo, en lugar de una onda cuadrada que alterna de 0 a 5V. Cuanta más variación pueda tolerar, más rápido podrá mover la paleta.

Sin embargo, también debe mirar potenciómetros digitales y DAC. Una olla digital funciona eléctricamente como una olla manual. Puedes mover el limpiaparabrisas imaginario en pasos digitales. El MCP4131 es un ejemplo. Un DAC, o convertidor de digital a analógico, es lo opuesto a los ADC disponibles en el microcontrolador. Conduce un voltaje, en lugar de promediar otros dos voltajes. Los DAC son mucho más comunes que los potes digitales; Algunos microcontroladores los incluyen para complementar los ADC. Yo sugeriría usar una olla digital en este caso, porque desea reemplazar una olla existente y no tiene mucho control sobre el resto del sistema.

    
respondido por el Kevin Vermeer
5

Si los extremos de la olla no son 0-5V, entonces no se sabe qué sucederá. ¿Mediste el voltaje en ambos extremos de la olla en un sistema en funcionamiento?

¿Supongo que está filtrando la salida PWM con un filtro RC?

PWM es una fuente de voltaje. El potenciómetro es una resistencia variable pasiva. Es difícil decir cómo el resto del sistema está leyendo el bote.

Su PWM de 0-5 V solo funcionaría si los extremos son 0-5 V, retira el potenciómetro, conecta la salida PWM filtrada RC al pin del deslizador y el circuito de medición no intenta extraer más corriente que el PWM La salida puede proporcionar (como señala reemrevnivek).

    
respondido por el darron

Lea otras preguntas en las etiquetas