Motores de corriente continua son ampliamente usados en electrodomésticos, juguetes, fabricas, proyectos estudiantiles y universitarios, drones, robótica, automóviles, domótica, etc. de ahí su importancia de conocerlos. en este capítulo aprenderemos sobre su manejo y control con la tarjeta MICROBIT.
Los Motores son componentes electromagnéticos capaces de transformar energía
Eléctrica en energía Mecánica. Se clasifican principalmente en Motores de corriente alterna (AC) y motores de corriente continua (DC). Observe la siguiente figura:
En los motores de corriente continua, se controlan principalmente 2 características:
• La velocidad.
• El sentido de giro.
Una de las maneras de controlar la velocidad del motor de corriente continua, es variando el voltaje de alimentación y lo veremos más adelante en este capítulo. Para cambiar el sentido de giro de un motor de corriente continua, es necesario cambiar la polaridad del voltaje de alimentación como muestra la siguiente figura:
Para esto es necesario una forma de interruptor o switch que nos permita hacer el cambio de polaridad y por lo tanto el sentido de giro. La manera más sencilla para lograr esto es usar un interruptor de 3 posiciones, 2 polos y 6 patas. Para entender cómo funciona este interruptor podemos analizar el funcionamiento de un interruptor sencillo. La siguiente figura muestra un interruptor de 3 posiciones, 1 polo y 3 patas:
Observemos que cuando el interruptor está en la posición central, no hay ningún tipo de conexión entre las patas. Cuando está hacia la derecha o izquierda, hay conexión entre la pata central y alguna de las otras patas. Para controlar el sentido de giro de un motor de corriente continua, es necesario un interruptor como el descrito anteriormente, pero doble, es decir de 2 polos. La siguiente figura muestra un interruptor de 3 posiciones, 2 polos, 6 patas:
Notemos que el funcionamiento es similar al interruptor sencillo. Si observamos y analizamos la siguiente figura, nos podemos dar cuenta como con un interruptor de este tipo, podemos cambiar la polaridad del voltaje de alimentación del motor de corriente continua:
La siguiente figura muestra la conexión eléctrica para invertir la polaridad con el interruptor de 3 posiciones, 2 polos, 6 pines:
Notemos cómo a partir de la misma fuente de voltaje, es posible la inversión de polaridad. Entendido esto, podemos entender los circuitos integrados utilizados para hacer exactamente lo mismo que el interruptor. Hay una variedad de circuitos integrados para controlar el giro de un motor de corriente continua. En este capítulo utilizaremos el circuito integrado L9110. La mayoría de los circuitos integrados para controlar motores, están basados en un circuito llamado: “puente H”. Para entender cómo funciona este circuito, observe la siguiente figura:
Notamos que está formada por 4 interruptores y podemos pensar como hacer para invertir la polaridad de voltaje del motor a partir de este circuito. La siguiente imagen muestra como hacer esto:
Notemos que al cerrar los interruptores: S1 y S4, tenemos una polaridad en el motor. Cuando se cierran los interruptores: S2 y S3, tenemos la otra polaridad. En ambos casos los otros interruptores deben estar abiertos para que el circuito funcione bien. En los circuitos integrados con puente H para el control de motores, en lugar de los interruptores, son usados transistores de potencia, como en el caso del L9110.
El circuito integrado L9110 es un driver para manejar motores pequeños. Sus principales características son:
• Rango de voltaje de 2.5 hasta 12 Vcc.
• Capacidad de manejar 800 mA continuos por cada canal.
• Es compatible con salida CMOS/TTL, lo cual permite conectarlo directamente al microcontrolador.
La siguiente imagen muestra los pinos de circuito integrado L9110:
La tabla de verdad para este integrado es:
Notemos que cuando las entradas: IA y IB están a nivel bajo o están a nivel alto, las salidas se colocan a nivel bajo, lo que hace que el motor no gire o esté apagado. Cuando la entrada: IA, está a nivel alto y IB, está a nivel bajo, entonces tenemos una polaridad en las salidas: OA y OB. Cuando la entrada: IA, está a nivel bajo y IB, está a nivel alto, tenemos la otra polaridad.
Controlando el sentido de giro de un motor CC.
Para controlar el sentido de giro de un motor CC vamos a usar un módulo con el circuito integrado L9110 como el mostrado en el siguiente circuito:
Este módulo posee 2 circuitos integrados L9110, con el que se pueden manejar 2 motores. Las conexiones son sencillas de realizar. Desde la tarjeta microbit, conecte el positivo y tierra (GND) a el Vcc y GND del módulo. El Pin P1 a una entrada y el Pin P2 a la otra entrada. El programa para controlar el motor es mostrado en la siguiente figura:
Note que el programa en el bloque: “al iniciar”, coloca los Pines P1 y P2 a nivel bajo, con lo cual se apaga el motor. Si es presionado el Botón “A”, girará en un sentido, si es presionado el Botón “B”, girará en el sentido contrario y si es presionado los botones “A” y “B”, el motor se detendrá.
El bloque: “escritura digital pin a”, se encuentra en el menú: “Avanzado->Pines”, como muestra la siguiente figura:
De click en este bloque y arrastrarlo hasta encajar en los bloques que los usa.
El siguiente programa es muy similar al programa anterior, con la diferencia que cuando el botón “A” o “B” es liberado el motor se apaga.
El bloque: “if them entonces”, lo encontramos en el menú: “Lógica”, como muestra la siguiente figura:
Otra diferencia es que no se ha utilizado el bloque: “al presionarse el botón”, sino que se ha usado una expresión para evaluar cuando el botón es presionado. Esta expresión se encuentra en el menú: “Entrada” como es observado en la siguiente figura:
Para conseguir expandir el bloque: “si entonces”, de click en el símbolo “+”. Después de click en el bloque: “botón presionado”, y arrastre hasta encajar en el bloque: “si no, si entonces”, como muestra la siguiente figura.
En el menú desplegable seleccione el botón “B”, como muestra la siguiente imagen:
Algo muy utilizado con motores de corriente continua es la automatización, es decir la programación de ciertos movimientos en uno o en los 2 sentidos de giro. El siguiente programa muestra un ejemplo de esto:
El programa comienza apagando el motor. Después lo hace girar en un sentido por 3 segundos, luego lo apaga por 1 segundo, luego lo gira en el sentido contrario por 5 segundos, luego se apaga por 2 segundos y luego gira en el mismo sentido por 4 segundos. Este bucle se repite continuamente. Esta técnica es muy usada en mecanismos. Normalmente, son usados sensores para detener las temporizaciones. Todo depende de lo que se desea hacer con el motor. Practique cambiando tiempos y sentidos de giro.
Controlando la velocidad de un motor CC.
Para controlar la velocidad de un motor de corriente continua (CC), es necesario variar su voltaje de alimentación. Una manera de controlar el voltaje es usando la técnica llamada PWM o Modulación por ancho del pulso. La siguiente figura muestra como es una señal, usando PWM:
La técnica de modulación por ancho de pulso consiste en mantener la señal por un tiempo a nivel pósito (on) y luego mantenerla a nivel negativo (off). Dependiendo de cuánto tiempo dura la señal en positivo, se observa que hay un tiempo, el cual es llamado: ciclo de trabajo (Duty Cicle). Este ciclo es emitido varias veces por el pin y con una frecuencia constante por segundo (periodo). Así, por ejemplo, si queremos con una tensión de 5 Volts, obtener 1 volt, debemos controlar el 20% del ciclo de trabajo. Si queremos 2.5 Volts, el 50% del ciclo de trabajo. En otras palabras, se modula el ancho del pulso. Con esta técnica, podemos controlar la velocidad de los motores de Corriente Continua. Las señales PWM, en la tarjeta microbit, están en un rango de 3 Volts. Por eso es necesario que los circuitos integrados para controlar los motores acepten este nivel de tensión.
Con la tarjeta microbit, podemos generar señales PWM. Para esto en necesario que el pin que se va a utilizar como control PWM sea programado como un pin de señal analogica: Para hacer esto vaya al menú: “Avanzado->Pines” y de click en el bloque: “escritura analogica pin a” y arrestrelo hasta encajar en bloque: “al iniciar”, como muestra la siguiente figura:
Ahora es necesario programar el periodo de la señal PWM. Para hacer esto vaya al menú: “Avanzado->Pines”, de click en el bloque: “Establecer periodo analógico pin en (us)” y arrastrarlo hasta encajar en bloque: “al iniciar” como muestra la siguiente figura:
Ahora, se puede seleccionar el pin que se desea programar como PWM, dando click en el menú desplegable del bloque: “escritura analógica pin a” y del bloque: “establecer periodo analógico pin en (us)”, como muestra la siguiente figura:
El siguiente programa nos permite controlar una salida PWM usando el botón “A”, para incrementar el ciclo de trabajo y el botón “B”, para decrementar el ciclo de trabajo:
Con una señal PWM es posible cambiar el brillo de un LED y así comprender mejor cómo funciona esta técnica. Con el siguiente circuito podemos probar el programa anterior:
Para hacer este programa, cree una variable: “cicloTrabajo”, como muestra la siguiente imagen:
Y construya el programa como mostrado anteriormente. El programa también lo podemos usar para controlar la velocidad de un motor de corriente continua usando el circuito integrado L9110, como el mostrado anteriormente para controlar el sentido de giro.
El siguiente programa permite manejar una determinada velocidad del motor, pero en los 2 sentidos de giro:
Note que hemos usado configurado los pines P1 y P2 para ser salidas PWM.
Flechas para mostrar sentido o dirección.
Existe un bloque que permite mostrar fechas para indicar algún sentido o dirección. El bloque se llama: “mostrar flecha” y se encuentra en el menú:”Básico”, como muestra la siguiente figura:
El siguiente programa muestra las flechas que el bloque ofrece:
En la matriz de LEDs vamos a observar en forma secuencial la siguiente flecha:
Todas esta flechas se encuentran en el menú desplegable del bloque: “mostrar flecha”, como muestra la siguiente imagen:
El siguiente programa es el mismo que usamos para controlar el sentido de giro del motor usando los bloques: “al presionar el botón”, pero hemos utilizado el bloque: “mostrar flecha” para indicar el sentido de giro del motor: