8 votos

¿Cómo puedo limitar la corriente de mi motor manteniendo la caída de tensión a través de él?

Estoy tratando de ampliar mis conocimientos sobre el trabajo con motores de corriente continua utilizando un MOSFET IRF510 para encender y apagar un motor. Por favor, consulte el esquema de abajo para ver cómo he conectado todo.

\$S_1\$ = puente que utilicé para cambiar el voltaje de la puerta a \$0\$ o \$5V\$
\$R_P\$ = resistencia de pulldown ( \$9.85k\Omega\$ , medido)
\$R_M\$ = resistencia del motor eléctrico ( \$1\Omega\$ , medido)
\$i_{DS}\$ = corriente de drenaje ( \$\approx750mA\$ , medido)
\$R_{DS}\$ = resistencia drenaje-fuente cuando el MOSFET está encendido ( \$0.6\Omega\$ , de \$V_{DS}/i_{DS}\$ )
\$V_{BATT, open}\$ = tensión en circuito abierto de la pila de 9V ( \$8.68V\$ )

Schematic

Lo primero que me puso en un bucle fue cuando el voltaje de la batería cayó después de cerrar el interruptor. Hice algunas mediciones más para entender lo que estaba pasando:

\$V_{BATT, closed}\$ = tensión de la batería cuando \$S_1\$ está cerrado ( \$3.11V\$ , medido)
\$V_{M}\$ = tensión del motor ( \$2.57V\$ , medido)
\$V_{DS}\$ = tensión de la fuente de drenaje ( \$0.54V\$ , medido)

Tras investigar un poco, determiné que la caída de tensión se debía a la resistencia interna de la batería. Esto es lo que pude averiguar después de algunos cálculos más:

\$V_{R_i}\$ = tensión a través de \$R_i\$ ( \$5.11V\$ , de \$V_{BATT, open}-V_{BATT, closed}\$ )
\$R_i\$ = resistencia interna de la batería ( \$2.87\Omega\$ de un divisor de tensión)

Mi instinto me dice que use un divisor de tensión para mantener la tensión a través del motor. Quiero hacer esto porque mi motor está clasificado para funcionar entre 5V y 9V. También quiero añadir una resistencia limitadora de corriente en serie para evitar que la corriente sea tan alta que queme mi circuito y agote mi batería. Lo ideal es que pueda conseguir el resultado deseado \$V_M\$ si añado una resistencia en paralelo al motor ( \$R_P\$ ) tal que la resistencia equivalente del motor y su \$R_P\$ ( \$R_{EQ}\$ ) es mucho mayor que \$R_i + R_{DS}\$ . Sin embargo, como \$R_M=1\Omega\$ La mejor resistencia equivalente que puedo conseguir es \$approx1\Omega\$ Lo que me devuelve al punto de partida. Además, la resistencia limitadora de corriente en serie se llevará la mayor parte de la caída de tensión, robando así al motor la tensión que necesita.

¿Cómo puedo conseguir la caída de tensión que quiero y limitar la corriente? Cualquier ayuda será muy apreciada. Esta es la primera vez que publico en StackExchange así que me disculpo si he roto algún protocolo.

1 votos

\$R_P\$ es el lado equivocado de S1. Lo necesitas para descargar la carga de la puerta cuando S1 se abre. No puedes obtener 3/4 A de una batería de 9 V estilo PP3. +1 por dar buenos detalles y un esquema en tu primer post.

2 votos

Muy bien presentado, +1. Espero que tus compañeros aprecien lo bien que presentas los hechos. Como han dicho otros, parece que la fuente de alimentación es una batería de baja capacidad. Su voltaje caerá debido a su resistencia interna y su baja capacidad, y se agotará muy rápidamente. Yo recomendaría conseguir un motor de corriente mucho más baja, o una batería de mayor capacidad. Cualquier cosa con una corriente de parada inferior a 400mA debería estar bien, entonces pueden ser alimentados desde los 5V de un Arduino (siempre y cuando no se pare el motor demasiado tiempo), por ejemplo rapidonline.com/Search?query=37-0441

0 votos

@transistor, gracias por la aclaración. La explicación del pulldown tiene todo el sentido del mundo y se me ha escapado.

3voto

Samuel Danielson Puntos 1043

Su voltaje cayó b/c una batería de 9V es sólo una fuente de voltaje pobre. Si utilizas unas cuantas pilas AA o más grandes en serie, tu caída de tensión será mucho menor.

En el control de motores -y en muchos campos- querrá utilizar modulación por ancho de pulso (PWM) . Imagínese que hace girar el interruptor miles de veces por segundo. Si lo pulsas la mitad del tiempo, entonces tendrías un ciclo de trabajo del 50%, o la mitad de la tensión efectiva en el motor.

El PWM es el método estándar para controlar la tensión y/o la corriente en los motores y en los convertidores CC/CC.

No uso mucho Arduino, pero creo que tiene un PWM en placa y funciones analógicas que son realmente PWM. Creo que funciona a ~500Hz. No estoy seguro de si esto es lo suficientemente rápido, pero no va a dañar nada para cambiar muy lentamente. Úsalo para controlar tu MOSFET directamente (quita el interruptor) usando la función analogWrite. Para implementar esto, mueve la puerta de tu MOSFET a un analógico u otro PWM y usa la función apropiada para aplicar el PWM.

Si su frecuencia PWM es demasiado baja, entonces podrá oír la respuesta del motor. Por ejemplo, si es de 1Hz, entonces el motor se encenderá durante medio segundo, y luego se apagará durante medio segundo. Podrás oírlo claramente. Aumente la frecuencia PWM hasta que el motor funcione sin problemas. Hay otras razones para cambiar la frecuencia PWM también, pero en tu etapa de aprendizaje esto debería ser suficiente. Disfruta, ¡los motores son divertidos!

0 votos

Gracias por su respuesta. Me olvidé por completo de usar PWM para controlar el motor. Dicho esto, si mi tensión efectiva está por debajo de la tensión de funcionamiento, ¿todavía me encuentro con el problema de dañar mi motor. Por ejemplo, mi motor está especificado para 5-9V. Si utilizo 4 baterías AA en serie, un ciclo de trabajo del 20% en esta fuente de 6V, suponiendo \$R_i = R_{DS} = 0\$ El resultado sería una tensión efectiva de 1,2V en el motor. ¿Estaré operando mi motor por debajo de la tensión de funcionamiento, o estaré bien ya que el pico de tensión de los pulsos PWM será de 6V?

1 votos

Puedes hacer funcionar tu motor a un voltaje tan bajo como quieras usando PWM. Yo suelo hacer funcionar motores de 200V a un ciclo de trabajo del 5% para reducir su velocidad. El problema es cuando se hace funcionar un motor de baja tensión a alta tensión, y esto suele ser una limitación térmica.

1 votos

Buena respuesta. Por cierto, la frecuencia PWM por defecto del Arduino es de 490Hz (976Hz en los pines 5/6), pero se puede aumentar si es necesario: hasta 31,3kHz (62,5kHz en los pines 5/6). Pero 490Hz debería estar bien para esta aplicación.

1voto

Martin R-L Puntos 2300

Hay algunos "atajos" con los que deberías estar familiarizado, para poder hacer un rápido "análisis operativo".
Cuando el transistor está encendido, puedes pensar en él como un cortocircuito (un trozo de cable), así que si quieres 5v a través del motor (que es de 1 ohmio), necesitas 5A. Dado que la resistencia interna de la batería es de unos 2 ohmios, eso haría caer 10v, por lo que necesitarías una batería de 15v capaz de suministrar 5A (75 vatios... 25W para el motor y 50W dentro de la batería).
Si puedes conseguir una batería con sólo 1 ohmio de resistencia interna, entonces sólo necesitarías 10v, 5A (50 vatios... 25W para el motor y 25W dentro de la batería).

Ten en cuenta que como el transistor no es realmente un cortocircuito, su resistencia también consumiría algo de energía que la batería tendría que suministrar.

Así que ahora, usando 1 ohmio para el motor 1ohm para el transistor, y 2 ohmios para la resistencia interna da 4 ohmios de resistencia total. La corriente máxima que puede proporcionar la batería de 9v es (9/4 =) 2,25A, lo que significa que el voltaje máximo que puede obtener el motor (bajo estos parámetros) es de 2,25v (2,25v a través del transistor, y 4,5v dentro de la batería).

Lo anterior se consideraría un análisis de "estado estacionario". Así que ahora, para limitar la corriente y seguir proporcionando la tensión necesaria, el método PWM (que se ha propuesto), sería una forma de hacerlo - a costa de un menor par producido por el motor.

Yo te recomendaría que usaras una batería de coche de 12v y ver si los cambios de medida se acercan más a lo que quieres.

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