Control Velocidad y Sentido de Motor Dc

Embed Size (px)

Citation preview

  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    1/20

    Notice: Undefined index: result in /mnt/webb/e1/18/53884418/htdocs/wp-content/plugins/simple-share-buttons-adder/inc/ssba_buttons.php on line 431

    CONTROL VELOCIDAD Y SENTIDO DE MOTORDC

    (26/11/13)

    En este tutorial vamos a controlar la velocidad y el sentido de un motor DC a travs de un potencimetro desde

    INICIO ARDUINO RASPBERRY PI ELECTRNICA PROYECTOS ROBOTS BLOG EQUIPO DIY

    CONTACTO

    Convertido de web en PDFconhttp://www htmlapdf com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://diymakers.es/contacto/http://diymakers.es/quienes-somos/http://diymakers.es/blog/http://diymakers.es/proyectos-robots/http://diymakers.es/electronica/http://diymakers.es/raspberry-pi/http://diymakers.es/arduino/http://diymakers.es/https://www.youtube.com/user/DIYMakerselectronicshttp://google.com/+DiymakersEshttp://www.twitter.com/diymakershttps://www.facebook.com/diymakers
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    2/20

    http://www htmlapdf com!

    Arduino.

    Material-Arduino Uno

    -Motor DC

    -Potencimetro

    -L293D (driver motores)

    -Fuente alimentacin externa

    Motor DCUn motor de corriente continua convierte la energa elctrica en mecnica. Se compone de dos partes: el estator y el rotor.

    El estator es la parte mecnica del motor donde estn los polos del imn.

    El rotor es la parte mvil del motor con devanado y un ncleo, al que llega la corriente a travs de las escobillas.

    Cuando la corriente elctrica circula por el devanado del rotor, se crea un campo electromagntico. Este interacta con el campomagntico del imn del estator. Esto deriva en un rechazo entre los polos del imn del estator y del rotor creando un par de fuerzadonde el rotor gira en un sentido de forma permanente.

    Si queremos cambiar el sentido de giro del rotor, tenemos que cambiar el sentido de la corriente que le proporcionamos al rotor; bastacon invertir la polaridad de la pila o batera.

    Convertido de web en PDFconhttp://www htmlapdf com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    3/20

    L293DPara controlar un motor DC desde Arduino, tendremos que usar un driver para motores para proporcionarle ms corriente al motor yaque las salidas del Arduino slo dan 40mA. De esta manera, con el driver podemos alimentar el motor con una fuente de alimentacin

    externa.El L293D es un integrado para controlar motores DC que usa el sistema puente en H. Qu es el puente en H? Es un sistema paracontrolar el sentido de giro de un motor DC usando cuatro transistores. En la imagen vemos que los transistores se comportan comointerruptores y dependiendo que transistores conducen y cules no cambia la polarizacin del motor, y con esto el sentido de giro.

    Convertido de web en PDFconhttp://www htmlapdf com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    4/20

    Convertido de web en PDFconhttp://www htmlapdf com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    5/20

    El L293D tiene dos puentes H y proporciona 600mA al motor y soporta un voltaje entre 4,5V y 36V tal y cmo pone en el datasheet.

    En el datasheet tambin hay el esquema que vamos a usar.

    Convertido de web en PDFconhttp://www htmlapdf com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://pdf.datasheetcatalog.com/datasheet/texasinstruments/l293d.pdf
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    6/20

    Nosotros usaremos la parte de la izquierda (los diodos externos en el L293D estn dentro). Cmo se aprecia en la imagen, los pins 3 y 6son las salidas y se conectan a los bornes del motor. Y los pins 2 y 7 son las entradas donde conectaremos las salidas del Arduino.Dependiendo que valor ponemos entre los pins 2 y 7 el motor girar en un sentido o en otro.

    Control velocidad a travs de PWM

    Hasta este punto sabemos cmo controlar el sentido de giro del motor DC a travs del L293D. Pero y la velocidad de giro? En esteproyecto lo que haremos es controlar la velocidad y el giro del motor con un solo potencimetro.

    Convertido de web en PDFconhttp://www htmlapdf com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    7/20

    Para hacerlo utilizaremos el PWM (vase PWM). Sabemos que hay que atacar los pins 2 y 7 del L293D desde dos salidas del Arduino. Enestas dos salidas habr un PWM a cada una. Pero tenemos que invertir un PWM. Qu quiere decir invertir? Pues que cuando en unPWM tengamos un pulso a un valor alto, en el otro PWM el mismo pulso sea valor bajo. En la imagen lo entenderemos de una manerams grfica.

    Convertido de web en PDFconhttp://www htmlapdf com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://diymakers.es/pwm/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    8/20Convertido de web en PDFcon

    http://www htmlapdf com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    9/20

    MONTAJE

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    10/20

    -Pins 4,5,12,13 del L293D a masa.

    -Juntar las masas del Arduino y de la fuente de alimentacin externa.

    -Pin 8 del L293D a 9V de la fuente de alimentacin externa. Es el voltaje que proporciona al motor.

    -Pin 16 del L293D a 5V. Es la alimentacin del L293D, pude alimentarse directamente desde la alimentacin que proporciona el

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    11/20

    Arduino.

    -El potencimetro pude ser de cualquier valor.

    PROGRAMA123

    456789

    10111213141516

    17181920212223242526272829

    30313233343536373839

    /* www.diymakers.es by A.Garca

    Control velocidad y sentido motor DCTutorial en: http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/*/intpin2=9; //Entrada 2 del L293Dintpin7=10; //Entrada 7 del L293Dintpote=A0; //Potencimetrointvalorpote; //Variable que recoge el valor del potencimetrointpwm1; //Variable del PWM 1intpwm2; //Variable del PWM 2voidsetup()

    { //Inicializamos los pins de salida pinMode(pin2,OUTPUT); pinMode(pin7, OUTPUT);}voidloop(){//Almacenamos el valor del potencimetro en la variable

    valorpote=analogRead(pote);//Como la entrada analgica del Arduino es de 10 bits, el rango va de 0 a 1023.

    //En cambio, la salidas del Arduio son de 8 bits, quiere decir, rango entre 0 a 255. //Por esta razn tenemos que mapear el nmero de un rango a otro usando este cdigo. pwm1 = map(valorpote, 0, 1023, 0, 255); pwm2 = map(valorpote, 0, 1023, 255, 0); //El PWM 2 esta invertido respecto al PWM 1//Sacamos el PWM de las dos salidas usando analogWrite(pin,valor)

    analogWrite(pin2,pwm1); analogWrite(pin7,pwm2);}

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    12/20

    0 1 0 0

    27 comentarios en Control velocidad y sentido motor de DC

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/mailto:?subject=Control%20velocidad%20y%20sentido%20motor%20de%20DC&body=%20http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/http://www.linkedin.com/shareArticle?mini=true&url=http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/https://plus.google.com/share?url=http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/http://twitter.com/share?url=http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/&text=Control+velocidad+y+sentido+motor+de+DC+http://www.facebook.com/sharer.php?u=http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    13/20

    Eduardo28 agosto, 2014 at 18:04

    En vez de conectar un potenciometro, se puede hacer a travs de una salida pwm de arduino que haga de potenciometro

    Responder

    DIYMakers28 agosto, 2014 at 18:08

    S, se puede hacer.

    Responder

    orge Rodriguez 18 junio, 2015 at 05:43

    No estoy muy seguro, se reemplazaria la entrada de referencia en A0 para colocar alli la entrada de PWM, y asireemplazar el potenciometro, la pregunta es que en el codigo tendria que tener los valores medidos enosciloscopio del pwm de control para asignar las condiciones para los pwm de salida?

    Responder

    Irving Delgado Rivera2 octubre, 2014 at 07:02si requiero conectar un motor de 12V solo debo cambiar la fuente o hay algn cambio en el circuito??

    Responder

    DIYMakers3 octubre, 2014 at 19:07

    Si el motor aguanta 9V ningn problema.

    Responder

    Hector Bonilla Muoz 5 octubre, 2014 at 05:54

    Que tal buenas noches, estoy trabajando con un arduino alejandro, esta no tiene ss/pwm, pin 10 del arduino,(uni el pin 7del l239d con la entrada 10 pwm) monte el mismo codigo mostrado en la pagina, al girar el potenciometro solo gira elmotor en uno solo sentido, en cualquier sentido que gire el potenciometro solo gira el motor para un solo lado. Que puedohacer???, agradeceria su apoyo.

    Responder

    Emanuel Chvez19 octubre, 2014 at 17:49

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/https://www.facebook.com/mariiooemanueel.chaveezduaarteehttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=162#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=160#respondhttp://diymakers.es/http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=158#respondhttps://www.facebook.com/irving.delgadoriverahttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=345#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=111#respondhttp://diymakers.es/http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=110#respondhttp://enviciado.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    14/20

    hola.es justo lo que necesito pero con dos motores.mira quisiera tener dos potenciometros para controlar cada motor,pero lo puedo hacer con un l293D..conectando el otro motor a los mismos pines del otro y pues obvio conectando maspines al arduino que serian dos mas?????

    Responder

    uanjo Pedrajas 23 octubre, 2014 at 00:19

    Hola, tengo una duda sobre el L293D. Cuando dices proporciona 600mA al motor y soporta un voltaje entre 4,5V y 36V

    significa que el integrado se puede alimentar de 4,5V a 36V y proporciona al motor el mismo voltaje que le proporcionaarduino pero con mayor intensidad?

    Responder

    Francisco 11 noviembre, 2014 at 14:38

    Hola, mi duda es el L239D tiene diodos protectores integrados para que cuando cambie el sentido de giro no queme elarduino?

    Responder

    David Guillermino Acevedo Cardenas13 noviembre, 2014 at 16:25si tiene el l239 sin la d no tiene

    Responder

    Pingback: Tema 3 Conceptos bsicos de microcontroladores y electrnica (3) | Aprendiendo Arduino

    Ivan 18 marzo, 2015 at 15:55

    Saludos.

    Mis conocimientos en electronica son bastante buenos, aunque no de ingeniera, pero soy nuevo en esto de arduino y mequedo un poco corto con la programacin, mi idea es tomando el modelo de motor dc, aadir un segundo potenciometroque me marque la posicin. Haba pensado que quizs la opcin seria que el sistema calculase la posicin segn (pot2-pot1), donde pot1 es el que controla el giro y pot2 el que determina la posicin del elemento que gira, esto quiere decirque si tengo 2V en pot1 y 2V en pot2 (2-2= 0V), el motor girar y parar al llegar pot2 a 4,5V (2,5v de diferencial) y as concualquier valor de pot1. Esto a su vez me genera otro problema y es que, cuando tenga pot1 4V y pot2 1V (diferencial 1-4=-3V) no se como lo tomara, tericamente sera solo un valor calculado y no real, pero no se si habra que hacer algunacorreccin.

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/https://aprendiendoarduino.wordpress.com/2014/11/21/tema-3-conceptos-basicos-de-microcontroladores-y-electronica-3/http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=204#respondhttps://www.facebook.com/davidguillerminofunk.acevedocardenashttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=200#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=181#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=179#respond
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    15/20

    Teniendo en cuenta el cdigo que tienes expuesto, he realizado algunas modificaciones, las cuales aunque el software nome da error no se si estn bien para el calculo.

    /*http://www.diymakers.esby A.GarcaControl velocidad y sentido motor DCTutorial en: http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/

    */int pin2=9; //Entrada 2 del L293Dint pin7=10; //Entrada 7 del L293Dint pote1=A0; //Potencimetro mandoint pote2=A1; //Potenciometro controlint pote=(A1-A0); //Diferencial de giro

    int valorpote1; //Variable que recoge el valor del potencimetro mandoint valorpote2; //Variable que recoge el valor del potenciometro controlint valorpote; //Variable control giro diferencialint pwm1; //Variable del PWM 1int pwm2; //Variable del PWM 2

    void setup(){//Inicializamos los pins de salidapinMode(pin2,OUTPUT);pinMode(pin7, OUTPUT);}

    void loop(){

    //Almacenamos el valor del potencimetro en la variablevalorpote1=analogRead(pote1);valorpote2=analogRead(pote2);valorpote=(pote2-pote1);

    //Como la entrada analgica del Arduino es de 10 bits, el rango va de 0 a 1023.

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.diymakers.es/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    16/20

    //En cambio, la salidas del Arduio son de 8 bits, quiere decir, rango entre 0 a 255.//Por esta razn tenemos que mapear el nmero de un rango a otro usando este cdigo.pwm1 = map(valorpote, 0, 1023, 0, 255);pwm2 = map(valorpote, 0, 1023, 255, 0); //El PWM 2 esta invertido respecto al PWM 1

    //Sacamos el PWM de las dos salidas usando analogWrite(pin,valor)analogWrite(pin2,pwm1);analogWrite(pin7,pwm2);

    }

    No se si he duplicado acciones, si las he colocado correctamente, etc. Espero puedan ayudarme.

    Gracias.

    Responder

    Ignacio 31 marzo, 2015 at 12:50

    Deberan dejar un valor en 0 y el otro con pwm, dependiendo para qu lado debe girar.adems hay que darle un margen de seguridad al punto medio del potencimetro

    ReadedVal = analogRead(PotPin1); // reads the value of the potentiometer (value between 0 and 1023)OutFwdVal = 0;OutRevVal = 0;

    if (ReadedVal >= 528){OutFwdVal = map(ReadedVal, 520, 1023, 0, 255); // scale it}if (ReadedVal

  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    17/20

    Luis Ra 12 abril, 2015 at 02:34

    Se puede controlar todo por modulo Bluetooth

    Responder

    ohnny 27 mayo, 2015 at 21:13

    Se puede restringir el numero de vueltas del motor dc. Es que quiero que gire ghasta un cierto numero de vueltas yse detenga, sera posible

    Responder

    Pingback: Tema 5 Taller de Proyectos con Arduino | Aprendiendo Arduino

    Luis Eduardo 25 mayo, 2015 at 03:01

    Se Puede controlar el motor con una fotoresistencia en vez de un potenciometro?

    Responder

    Irving-kira Light Yagamy31 mayo, 2015 at 07:41

    disculpa, yo estoy ocupando 4 motores de cd y por lo tanto uso 4 puentes h para invertir el giro, lo que quiero saber escomo declaro los pines 2 y 7 de los dems puentes h al igual que los pot

    Responder

    Carlos Aguilar 31 mayo, 2015 at 17:20

    si quisiera indicarle al Motor la velocidad que quiero por medio del teclado, es decir en vez de usar el potenciometro,cambiar la velocidad de giro del motor indicando con los numeros del teclado la velocidad que quiero (obviamenteajustando las velocidades de acuerdo al numero tecleado) se podria hacer ???

    Responder

    Raul 2 junio, 2015 at 20:11

    Desde el Monitor serial, ingresaras el valor que deseas. Esto hara la funcion del potenciometro !

    Responder

    Raul 2 junio, 2015 at 20:02

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=341#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=339#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=338#respondhttps://www.facebook.com/app_scoped_user_id/977361188983153/http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=332#respondhttps://aprendiendoarduino.wordpress.com/2015/04/16/tema-5-taller-de-proyectos-con-arduino/http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=334#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=295#respond
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    18/20

    por que declaras las salidas como analogWrite? No son salidas digitales?

    Responder

    martin 14 agosto, 2015 at 20:38

    se puede poner en lugar del potenciometro el lm35?

    Responder

    manuel 4 septiembre, 2015 at 21:36buenas tardes mi pregunta es que si es cualquier valor de potencimetro para poder girar a los dos sentido lo que pasaes que solo me gira de un sentido estoy haciendo exactamente lo mismo

    Responder

    FernandoMonzon 16 septiembre, 2015 at 18:13

    Estos motores de C.D. se pueden utilizar en maquinas CNC caseras?

    Responder

    DIego 24 octubre, 2015 at 11:27

    buenos dias, quiero realizar el mismo proyecto pero solo tengo un l293b, donde irian puestos los diodos y cuales desdeya muchas gracias!!

    Responder

    Marcelo 30 octubre, 2015 at 20:11

    Hola, llego 2 aos despues a su articulo, no s si este post sigue con vida, igual van mis 2 preguntas, cmo hacer en elcaso qu quiera utilizar dos motores y cada uno de ellos con su respectivo potencimetro ?, en mi caso lo utilizaria con

    motores de mayor potencia , 4 amperes de consumo, recomienda algn puente H con Mosfet en especial ?, dado questuve leyendo sobre el tema y hay algunas complicaciones si dichos puentes se cosntruyen con Mosfetcomplementarios o en su defecto de canal N, gracias por su atencin.

    Responder

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=434#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=423#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=394#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=388#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=377#respondhttp://diymakers.es/control-velocidad-y-sentido-de-motor-dc/?replytocom=340#respond
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    19/20

    Deja un comentario

    Convertido de web en PDFcon http://www.htmlapdf.com!

    http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/http://www.htmlapdf.com/
  • 7/24/2019 Control Velocidad y Sentido de Motor Dc

    20/20

    All rights reserved. | Design by OpenCodez

    Introduce tu comentario aqu...

    Buscar Buscar

    http://www.opencodez.com/http://creativecommons.org/licenses/by-nc-sa/4.0/