Herramientas de usuario

Herramientas del sitio


guias:control_de_motores

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
guias:control_de_motores [2017/04/27 08:17]
Sergio Alvariño [TB6612FNG]
guias:control_de_motores [2018/05/11 11:28] (actual)
Félix Sánchez-Tembleque
Línea 90: Línea 90:
   * L297D   * L297D
   * TB6612FNG   * TB6612FNG
 +  * DRV8835
  
 Si el motor una vez conectado no gira en el sentido deseado podemos cambiarlo muy fácilmente tanto en el hardware (intermabiando los cables del motor o del driver) como en el software (cambiando los pines en la programación). Si el motor una vez conectado no gira en el sentido deseado podemos cambiarlo muy fácilmente tanto en el hardware (intermabiando los cables del motor o del driver) como en el software (cambiando los pines en la programación).
Línea 105: Línea 106:
   * Dos de alimentación desde las pilas o baterías (VCC, GND).   * Dos de alimentación desde las pilas o baterías (VCC, GND).
  
-La conexión ya la hemos visto para un Arduino Pro Micro+La conexión ya la hemos visto para un Arduino Pro Micro. Para un cualquier otro es similar, buscando siempre 4 pines PWM.
  
-{{:​old:​archivo:​sapoconcho_fritzing_800.jpg?​400}}+{{:​old:​archivo:​sapoconcho_fritzing_800.jpg?​500}}
  
 La lógica de operación de la placa para cada uno de los motores es la siguiente (la tabla indica la señal en cada pin para el motor A). La lógica de operación de la placa para cada uno de los motores es la siguiente (la tabla indica la señal en cada pin para el motor A).
Línea 115: Línea 116:
 |AI-B|0|pwm|0| |AI-B|0|pwm|0|
  
-Librerías de funcionaminto para L9110: en este enlace de [[https://​github.com/​fstdp/​sapoconcho|Github]] puedes descargar los archivos L9110.cpp y L9110.h. Deberás instalarlos en la carpeta de librerías de Arduino. En ese mismo enlace puedes descargar varios ejemplos de programas para tu robot y ver la sintaxis para llamar a las funciones de movimiento.+Librerías de funcionaminto para L9110: en este enlace de [[https://​github.com/​felixstdp/​sapoconcho|Github]] puedes descargar los archivos L9110.cpp y L9110.h. Deberás instalarlos en la carpeta de librerías de Arduino. En ese mismo enlace puedes descargar varios ejemplos de programas para tu robot y ver la sintaxis para llamar a las funciones de movimiento.
  
 Una vez conectado el driver e instaladas las librerías deberás elegir un nombre para tu robot, y decirle en qué pines has conectado el driver (en el ejemplo los pines 3, 5, 6 y 9), y para eso comenzar tus programas de este modo: Una vez conectado el driver e instaladas las librerías deberás elegir un nombre para tu robot, y decirle en qué pines has conectado el driver (en el ejemplo los pines 3, 5, 6 y 9), y para eso comenzar tus programas de este modo:
Línea 144: Línea 145:
 |ENA|pwm|pwm|0| |ENA|pwm|pwm|0|
  
-Librerías de funcionaminto para L298N: en este enlace de [[https://​github.com/​fstdp/​drivers/​tree/​master/​L298N|Github]] puedes descargar los archivos L298N.cpp y L298N.h. Deberás como siempre instalarlos en la carpeta de librerías de Arduino y empezar los programas con este código.+Esquema de conexión con Arduino UNO 
 + 
 +{{:​guias:​guias:​drivers:​driver_298_arduino_uno.png?​500|}} 
 + 
 +Librerías de funcionaminto para L298N: en este enlace de [[https://​github.com/​felixstdp/​drivers/​tree/​master/​L298N|Github]] puedes descargar los archivos L298N.cpp y L298N.h. Deberás como siempre instalarlos en la carpeta de librerías de Arduino y empezar los programas con este código.
  
 <​code>​ <​code>​
Línea 159: Línea 164:
 {{:​guias:​guias:​drivers:​ardumoto_shield_hookup_guide-02.jpg?​400|}} {{:​guias:​guias:​drivers:​ardumoto_shield_hookup_guide-02.jpg?​400|}}
  
-La lógica de funcionamiento es la misma y las librerías de programación puedes encontrarlas [[https://​github.com/​fstdp/​drivers/​tree/​master/​ardumoto|aquí]]. Ahora no hay que indicar los pines de conexión porque están fijados, por lo que la cabecera del programa es más simple.+La lógica de funcionamiento es la misma y las librerías de programación puedes encontrarlas [[https://​github.com/​felixstdp/​drivers/​tree/​master/​ardumoto|aquí]]. Ahora no hay que indicar los pines de conexión porque están fijados, por lo que la cabecera del programa es más simple.
  
 <​code>​ <​code>​
Línea 188: Línea 193:
 Este driver de Toshiba es pequeño pero matón. Puede controlar dos motores entre 4.5 y 13.5 voltios y con un consumo máximo de 1 A sontenido, admitiendo picos de 3.2 A por canal. Tiene además integrada una protección térmica para que no podamos quemarlo. Es el que usamos en el proyecto [[https://​bricolabs.cc/​wiki/​proyectos/​raptor|Raptor]] y allí hay instrucciones detalladas para conectarlo. Este driver de Toshiba es pequeño pero matón. Puede controlar dos motores entre 4.5 y 13.5 voltios y con un consumo máximo de 1 A sontenido, admitiendo picos de 3.2 A por canal. Tiene además integrada una protección térmica para que no podamos quemarlo. Es el que usamos en el proyecto [[https://​bricolabs.cc/​wiki/​proyectos/​raptor|Raptor]] y allí hay instrucciones detalladas para conectarlo.
  
-Utiliza una lógica similar a la de los L298D y L293D, pero con un séptimo pin de control que permite poner toda la placa en stand-by parando los dos motores a la vez. Las conexiones entre un Arduino ​Micro y el driver pueden verse aquí.+Utiliza una lógica similar a la de los L298D y L293D, pero con un séptimo pin de control que permite poner toda la placa en stand-by parando los dos motores a la vez. Las conexiones entre un Arduino ​UNO y el driver pueden verse aquí.
  
-{{:guias:tb6612_b.png?500|}}+{{:guias:driver_6612_arduino_uno.png?500|}}
  
 Una característica especial de este driver, como el L293D, es que tiene dos entradas de alimentación. Una para los motores, con la tensión de estos (4.5 a 13.5 voltios, etiquetada como VM) y otra para el propio driver, que puede tomarse del propio pin de 5 voltios de Arduino (VCC). Una característica especial de este driver, como el L293D, es que tiene dos entradas de alimentación. Una para los motores, con la tensión de estos (4.5 a 13.5 voltios, etiquetada como VM) y otra para el propio driver, que puede tomarse del propio pin de 5 voltios de Arduino (VCC).
Línea 196: Línea 201:
 === Redbot === === Redbot ===
  
-El driver TB6612FNG también es el que integra la [[https://​www.sparkfun.com/​products/​12097|placa Redbot]] de SparkFun, para la que creamos la librería [[https://​github.com/​fstdp/​mobilerobot.ino|RobotMovil]].+El driver TB6612FNG también es el que integra la [[https://​www.sparkfun.com/​products/​12097|placa Redbot]] de SparkFun, para la que creamos la librería [[https://​github.com/​felixstdp/​mobilerobot.ino|RobotMovil]].
  
 {{:​proyectos:​redbot:​redbot_4.jpg?​400|}} {{:​proyectos:​redbot:​redbot_4.jpg?​400|}}
Línea 202: Línea 207:
 La documentación de esta librería y un curso completo para hacer robots con esta placa está en el proyecto [[https://​bricolabs.cc/​wiki/​proyectos/​redbot|RedBot]]. La documentación de esta librería y un curso completo para hacer robots con esta placa está en el proyecto [[https://​bricolabs.cc/​wiki/​proyectos/​redbot|RedBot]].
  
-===== El Anillo Único =====+==== DRV8835 ​====
  
-También hemos creado una librería ​capaz de cotrolar cualquiera ​de estos driversSu código quizás sea algo más complejo ​para interpretar ​modificar por no programadores,​ pero es muy práctica.+Este pequeño driver tiene un uso similar al L9110 con cuatro pines PWM y es capaz de dar 1.2A (puntas ​de 1.5A) a dos motores con tensiones hasta 11V. Tiene una entrada de alimentación ​para el propio driver que puede usar los 5v de Arduino. 
 + 
 +Es el driver que integra la shield [[https://​www.pololu.com/​product/​2510|Zumo]] de Pololu ​para él hemos escrito la [[https://​github.com/​brico-labs/​ArduinoDCmotorDrivers/​tree/​master/​PololuSumo|librería]]. 
 + 
 +===== El Anillo Único =====
  
-Aquí puedes encontrarla.+También hemos creado una [[https://​github.com/​brico-labs/​ArduinoDCmotorDrivers/​tree/​master/​mobilerobot|librería]] capaz de cotrolar cualquiera de estos drivers. Su código quizás sea algo más complejo para interpretar y modificar por no programadores,​ pero es muy práctica.
  
 ===== Equipo ===== ===== Equipo =====
Línea 217: Línea 226:
 ===== Enlaces ===== ===== Enlaces =====
  
-  * [[https://​github.com/​fstdp/​drivers|Repositorio de todo el proyecto en Github (Bricolabs)]]+  * [[https://​github.com/​felixstdp/​drivers|Repositorio de todo el proyecto en Github (Bricolabs)]]
   * [[http://​www.luisllamas.es/​2016/​08/​arduino-motor-dc-tb6612fng/​|Utilización del TB6612 (por Luis Llamas)]]   * [[http://​www.luisllamas.es/​2016/​08/​arduino-motor-dc-tb6612fng/​|Utilización del TB6612 (por Luis Llamas)]]
- 
guias/control_de_motores.1493281021.txt.gz · Última modificación: 2018/01/24 21:59 (editor externo)