Motores
 En esta clase…
• Veremos qué es un motor eléctrico y sus características
• Aprenderemos a controlar motores con Arduino
• Sabremos qué es y cómo hacer funcionar un
servomotor
• Y veremos otros tipos de motores empleados en robótica
 ¿Qué es un motor?
Son máquinas capaces
de transformar diversos
tipos de energía en
energía mecánica con la
que realizar trabajo
Los motores eléctricos se basan en interacciones
electromagnéticas para transformar energía eléctrica
en mecánica
 Motores de corriente continua con escobillas
Requieren de conmutadores rotativos para generar el
campo magnético adecuado
La velocidad depende generalmente de la tensión aplicada
 Arranque del motor
Al arrancar no existe fcem, por tanto la corriente
queda limitada por la resistencia del bobinado
¡¡Hay que prestar atención
a esos picos de corriente!!
 Control de motores de corriente continua: PWM
SEÑAL PWM
Podemos ver como la anchura del pulso modifica el
valor medio de la tensión de la señal
 Inversión del sentido de giro y frenado
• Para invertir sentido el giro hay que invertir la polaridad
• El motor puede tener frenado pasivo, reostático o
regenerativo
• Al desconectar un motor, colapsa el campo magnético de
las bobinas y se produce un pico de tensión de polaridad
opuesta
• No debe cambiarse bruscamente el sentido de giro de
un motor cargado, es mejor frenarlo primero
 El puente en H
• Consiste en 4 interruptores conectados en parejas
• Permite controlar la velocidad, invertir el giro y frenar el motor
 Puente en H de nuestro robot: el L293D
Existen varios chips que pueden
suministrar más o menos potencia, a
la vez de tener otras características
similares
> Consta de dos puentes en H
completos (4 medios puentes)
> Incluye diodos para absorber la
fcem al desconectar
> Hasta 600mA continuos, 1.2A de pico
> Transistores bipolares
 Uso del L293D
• Consta de 4 entradas y 4 salidas + 2 ENABLE
• Cada ENABLE activa uno de los puentes
• Las entradas controlan las salidas según la siguiente tabla:
 Esquema de conexión
 Ejemplo con Arduino
M o d ificacio n es:
D o n d e d ice “p in 4” n o so tro s
lo co n ectarem o s al p in 5
E xtern al p o w er su p p ly
sig n ifica la p ila d e 9V
E lim in arem o s to d a la p arte
d el p u lsad o r
 Ejemplo con Arduino: código
• La función AnalogWrite de arduino no da valores
puramente analógicos, sino PWM.
• Vamos a aprovecharlo para controlar nuestro
L293D.
• Lo primero será activar el ENABLE del
puente que vamos a utilizar
• Después, pondremos una entrada a HIGH o a LOW y
haremos PWM en la otra. Conmutaremos las funciones para
cambiar de sentido de giro.
 Ejemplo en Arduino de CNY 70
E n v ia re m o s u n a A p o r s e rie
p a ra a c tiv a r e l p u e n te , u n a P
p a ra d e s a c tiv a rlo .
E n v ia re m o s d p a ra q u e e l
m o to r g ire a la d e re c h a , i p a ra
q u e g ire a la iz q u ie rd a . E l m o to r
fre n a rá y lu e g o a rra n c a rá e n e l
o tro s e n tid o .
E n v ia re m o s F p a ra q u e e l
m o to r fre n e y s e m a n te n g a
fre n a d o .
E n v ia re m o s + p a ra in c re m e n ta r
la v e lo c id a d d e g iro , - p a ra
d is m in u irla
 Otros tipos de motores
• Un tipo de motor muy
empleado en radiocontrol
es el BLDC
• Son muy eficientes y pueden
suministrar grandes potencias
en tamaños reducidos
• Requieren corrientes sinusoidales
 Otros tipos de motores
• Los motores paso a paso pueden
hacer desplazamientos discretos
(pasos) de una serie de grados
• Conmutando secuencialmente
las bobinas pueden hacerse girar
• Pueden quedarse fijos en
una posición
 Servomotor
• Es un motor eléctrico de cualquier tipo con realimentación
de posición
• Mediante un sistema de control específico, pueden
quedarse fijos en cualquier posición angular y mantenerla
• Suelen consistir en un motor, una caja reductora acoplada
a un potenciómetro, y un circuito de control
• Normalmente se les aplica pulsos cuya duración es
proporcional a la posición deseada
 Servomotor
Colores habituales de los cables
 Ejemplo con Arduino: giros con servomotor
• Vamos a utilizar la clase Servo de Arduino para el
control de servomotores
• Tiene métodos para decirle al servo la posición
angular a la que quieres que se mantenga
directamente en grados
• Simplifica mucho el control y es compatible con la gran
mayoría de los servos, ya que las anchuras de pulso en
función de la posición deseada están prácticamente
estandarizadas
 Ejemplo con Arduino: giros con servomotor
Conectaremos el positivo del servo a 5V, el
negativo a tierra, y el cable de señal al pin 12
 Ejemplo con Arduino: giros con servomotor
Enviaremos por serie la posición
deseada, entre 0 y 180 grados.
El servo se moverá hasta esa posición.
Y eso es todo por hoy 
¿Alguna duda?
Descargar

Document