Vous êtes sur la page 1sur 49

CURSO TALLER

ARDUINO BSICO
Carlos Prez
www.TecBolivia.com
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

MOTORES
Curso Taller Arduino Bsico
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

MOTOR DC
Es el motor mas simple que

existe.

El funcionamiento se basa

en la interaccin de campos
magnticos (imanes).
El movimiento del motor se

produce cuando existe una


fuerza de repulsin por la
interaccin de polos iguales.
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

PARTES DE UN MOTOR DC
Estator: que es la

parte fija del motor y


generalmente tiene
imanes permanentes.
Rotor: que es la parte

mvil del motor y


tiene un electroimn
conectado con las
terminales del motor
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

MOTOR DC
Los motores de este tipo son

conocidos por trabajar con


escobillas.
Las escobillas interactan las

terminales del motor (partes fijas),


con el electroimn del rotor (parte
mvil).

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

MOTOR DC
Cada escobilla entrar en contacto con una mitad del

electroimn generando dos campos magnticos iguales pero


contrarios.

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

MOTOR DC
Aumentando la seal de

corriente se aumenta el campo


magntico, aumentando la
velocidad del motor.

Invirtiendo la seal de corriente,

se invierten los campos


magnticos, invirtiendo la fuerza
de repulsin, invirtiendo el
sentido de giro.

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

MOTOR DC
Para aumentar la fuerza de un motor DC se utiliza un

sistema de engranajes reductores.


Un sistema reductor une un engranaje pequeo a uno

grande para reducir la velocidad del sistema pero


aumentando su fuerza.

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

MOTOR DC
Motor de doble eje
Relacin de reduccin: 1: 48
Voltaje de funcionamiento: 3V ~ 6V
Consumo de Corriente sin carga:

200mA @ 6V

150mA @ 3V

Velocidad sin carga:

200 10% RPM @ 6V

90 10% RPM @ 3V

2015 WWW.TECBOLIVIA.COM

MOTOR DC PUENTE H
Un puente H dirige el sentido de la corriente en un motor.
Existen diferentes Circuitos Integrados que cumplen con

esta funcin, por ejemplo: L9110 y L298N.

Puente H
2016 WWW.TECBOLIVIA.COM

Estados Bsicos del Puente H


viernes, 26 de Febrero de 2016

10

MDULO CONTROLADOR DE MOTORES L9110


Control de dos motores (A y B)
Control mediante seales digitales.

Motor A

Motor B

Seales PWM en lugar de estados HIGH para

controlar la velocidad.
A-IA
B-IA

A-IB
B-IB

Operacin

LOW

HIGH

Giro derecha

HIGH

LOW

Giro izquierda

LOW

LOW

Motor Stop

HIGH

HIGH

Motor Stop

2016 WWW.TECBOLIVIA.COM

Alimentacin Motor: 5-12V


viernes, 26 de Febrero de 2016

11

MDULO CONTROLADOR DE MOTORES L298N


Trabaja de la misma manera

que el L9110
IN1
IN3

IN2
IN4

LOW

HIGH

Giro derecha

HIGH

LOW

Giro izquierda

LOW

LOW

Motor Stop

HIGH

HIGH

Motor Stop

2016 WWW.TECBOLIVIA.COM

Operacin

viernes, 26 de Febrero de 2016

12

MDULO CONTROLADOR DE MOTORES L298N


El pin habilitador permite utilizar

solo un puerto PWM para el


motor.

Dos puertos hacen la

combinacin de salidas.

Un puerto (PWM) en el

habilitador (Enable) regula la


velocidad.

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

13

PREGUNTAS
CURSO TALLER ARDUINO BSICO

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

14

SERVOMOTORES
Bsicamente son motores

DC con una placa de


control.

Capacidad de ubicarse y

mantenerse estable en
cualquier posicin dentro
de su rango de operacin

Rango de operacin

normalmente es menor a
360

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

15

SERVOMOTORES
Tienen un torque muy

fuerte.
Puede trabajar ms all

de los 360, en este


caso se controla la
velocidad.
Los que trabajan en

ms de 360 no tienen
control de posicin.
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

16

ESTRUCTURA INTERNA
Un servomotor se compone de:
Motor DC: alta velocidad bajo

torque
Caja reductora: juego de engranajes,
reduce la velocidad y aumenta el
torque
Potencimetro: alineado con el eje
del motor para el control de la
posicin.
Tarjeta controladora: con los datos
del potencimetro mueve el motor
DC
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

17

CABLE DE CONEXIN
Los servomotores

tienen tres cables:


alimentacin, tierra, y
seal.
La tensin de

alimentacin puede
variar de 4 a 8 voltios
(dependiendo del servo),
vara velocidad y torque.
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

18

FUNCIONAMIENTO
Cable de Seal:
La posicin del motor

se define por el ancho


de pulso de una seal
PWM.
Los servomotores de

rotacin continua utilizan


la seal PWM para variar
la velocidad de rotacin

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

19

LIBRERAS
Una librera es un programa que contiene funciones las

cuales pueden ser utilizadas por otros programas para su


utilizacin.
Para llamar a una librera, se coloca al inicio del Sketch la
palabra de invocacin seguido del nombre de la librera:
#include <Servo.h>

Un objeto es una variable que contiene todas las

especificaciones de la librera, algunas libreras requieren que


sean creadas:
Servo nombre_servo;

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

20

LIBRERA SERVO
El Arduino UNO deshabilita la funcin analogWrite() en

los puertos 9 y 10.


Los servos consumen energa de manera considerable, se

recomienda el uso de fuentes externas alimentando


directamente los cables de alimentacin de los servos.

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

21

LIBRERA SERVO
attach(): Asocia la variable servo a un pin
nombre_servo.attach(pin)
nombre_servo.attach(pin, min, max)

min: ancho de pulso ngulo mnimo (544)


max: ancho de pulso ngulo mximo (2400)
detach(): Desasocia la variable servo de un pin
nombre_servo.detach(pin)

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

22

LIBRERA SERVO
write(): Ajusta el eje al ngulo deseado
nombre_servo.write(ngulo)

read(): Lee el ngulo Actual del servo


nombre_servo.read()

attached(): Devuelve TRUE si la variable servo est asociada

a un pin

nombre_servo.attached()

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

23

CIRCUITO SWEEP

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

24

SWEEP
#include <Servo.h>

// Llamada a la librera Servo

Servo myservo;

// Creacin del objeto tipo Servo

int pos = 0;

// Variable donde se guarda la


// posicin del servo

void setup()
{
myservo.attach(9);

// Se asocia el servo al pin 9 (PWM)

}
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

25

SWEEP
void loop() {
// Se hace el recorrido total en ambas direcciones
for(pos = 0; pos < 180; pos += 1){
myservo.write(pos);
delay(15);

// Retardo de 15 ms para el movimiento del motor

}
for(pos = 180; pos>=1; pos-=1){
myservo.write(pos);
delay(15);
}
}
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

26

CIRCUITO KNOB

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

27

KNOB
#include <Servo.h>

Servo myservo;
int potpin = 0;

// Pin del potencimetro

int val;

// Variable lectura potencimetro

void setup(){
myservo.attach(9);
}
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

28

KNOB
void loop()
{
val = analogRead(potpin);

// Lectura potencimetro

// Mapeo a rango de 0 a 180


val = map(val, 0, 1023, 0, 180);
myservo.write(val);

// Mover servo

delay(15);

// Retardo movimiento

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

29

PREGUNTAS
CURSO TALLER ARDUINO BSICO

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

30

MOTOR PASO A PASO


Convierte impulsos elctricos en desplazamientos angulares

discretos, lo que significa que es capaz de avanzar una serie


de grados (paso) dependiendo de sus entradas de control

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

31

MOTOR PASO A PASO


El motor de paso de rotor de imn

permanente: Permite mantener un par diferente de cero


cuando el motor no est energizado. Dependiendo de la
construccin del motor, es tpicamente posible obtener
pasos angulares de 7.5, 11.25, 15, 18, 45 o 90

Este tipo de motor tiene cuatro bobinas que al ser

energizadas atraen al eje haciendo mover el motor.

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

32

TIPOS

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

33

SECUENCIAS
Paso simple
Esta secuencia consiste

en activar cada bobina


una a una y por
separado, con esta
secuencia de encendido
de bobinas no se obtiene
mucha fuerza ya que solo
es una bobina cada vez la
que arrastra y sujeta el
rotor del eje del motor

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

34

SECUENCIAS
Paso doble
En paso doble se activan

las bobinas de dos en dos


con lo que se hace un
campo magntico ms
potente que atraer con
ms fuerza y retendr el
rotor del motor en el sitio.
Los son algo bruscos
debido a que la accin del
campo magntico es ms
poderosa que en la
secuencia de paso sencillo

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

35

SECUENCIAS
Medio paso
Este se logra

combinando dos
tipos de secuencias es
decir el paso sencillo
y el doble paso y as
se puede hacer mover
el motor en pasos
ms pequeos y
precisos de esta
manera se tiene el
doble de pasos de
movimiento para el
recorrido total de
360 del motor.

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

36

PLACA MDULO PARA MOTORES PASO A PASO


(ULN2003)
Las terminales del motor requieren pasar por una etapa de

conversin para conectarse con la placa Arduino, existen


varios circuitos que pueden hacer ese trabajo

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

37

MOTOR PASO A PASO 5V 28BYJ-48


Para una vuelta completa

con solo una bobina


activada a la vez se
necesitan 32 pasos.
Para una vuelta completa

con dos bobinas activadas a


la vez se necesitan 64
pasos.
Relacin de reduccin: 1: 48
2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

38

MOTOR PASO A PASO 5V 28BYJ-48


Con la relacin de reduccin se multiplica por 64 la cantidad

de pasos para dar una vuelta completa en el eje final.

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

39

MOTOR PASO A PASO 5V 28BYJ-48


Para conocer el ngulo de paso se divide el recorrido de un giro

completo (360) entre la cantidad total de pasos por ciclo del


motor:
360
= 0,17578125 /
64 32
Para conocer la cantidad de pasos que se necesitan para un
ngulo en especfico se divide el ngulo deseado entre el ngulo
de paso, por ejemplo para 135:
135
= 768
0,17578125/

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

40

PREGUNTAS
CURSO TALLER ARDUINO BSICO

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

41

ARDUINO SHIELD DRIVER / CONTROL /


EXPANSIN PARA MOTORES L293D
Tiene dos conexiones de

expansin de los pines 9 y 10


del Arduino para el control de
servomotores.

Puede controlar 4 motores

DC o 2 motores paso a paso.

La librera AFMotor debe

descargarse de la siguiente
pgina web:
www.ladyada.net/make/mshield

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

42

CONEXIN MOTOR DC

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

43

CONEXIN MOTOR PASO A PASO

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

44

LIBRERA AFMOTOR PARA MOTOR DC


AF_DCMotor nombre_obj(motor#, frequencia): Crea

el objeto tipo Motor DC

motor: puerto del motor 1, 2, 3, 4


frecuencia:

Para motores 1 y 2: MOTOR12_64KHZ, MOTOR12_8KHZ,


MOTOR12_2KHZ, MOTOR12_1KHZ.
Para motores 3 y 4 solo funciona MOTOR12_1KHZ

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

45

LIBRERA AFMOTOR PARA MOTOR DC


setSpeed(speed): determina la velocidad del motor 0 para

motor detenido, 255 para la mxima velocidad del motor

run(direction): determina la direccin del motor:


FORWARD: Sentido Horario
BACKWARD: Sentido Antihorario
RELEASE: Detenido

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

46

LIBRERA AFMOTOR PARA MOTOR PASO A PASO


AF_Stepper nombre_obj(steps, stepper#): Crea el

objeto tipo Motor Stepper


steps: nmero de pasos

stepper#: puerto del motor 1, 2

setSpeed(rpm): Velocidad del motor

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

47

LIBRERA AFMOTOR PARA MOTOR PASO A PASO


step(#steps, direction, steptype)
#steps: nmero de pasos
direction

FORWARD

BACKWARD

steptype:

SINGLE

DOUBLE

INTERLEAVE

MICROSTEP

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

48

NOTA
Los materiales grficos distribuidos en el Curso de Robtica Educativa

son para uso exclusivo de los alumnos, queda terminantemente


prohibido copiar el material a terceros o publicarlos por cualquier
medio visual incluyendo la Internet. Queda tambin terminantemente
prohibido el uso de los materiales en otros cursos y talleres no
relacionados con TecBolivia.com bajo pena de no ser aceptados
nuevamente en futuros talleres y cursos organizados por TecBolivia.com

2016 WWW.TECBOLIVIA.COM

viernes, 26 de Febrero de 2016

49

Vous aimerez peut-être aussi