Elkin Rojas / Mbed 2 deprecated BrazoM

Dependencies:   mbed

BrazoRobot222

Implementación de sensor de color y joysticks para brazo de almacenamiento robotico

Integrantes:

Morales Mateo, Moreno Bryan, Rojas Elkin

Sistemas Embebidos - Corte 2

Universidad ECCI

Introducción.

En el siguiente documento se describe el ensamblaje y programación inicial del brazo que se utilizará para la clasificación y almacenamiento de cajas de colores. Dicho robot se moverá por medio de servomotores y a partir del programa generado se podrá controlar por medio de tele-comandos y/o Joysticks a las posiciones del robot en cada una de las celdas y además cada uno de los motores individualmente. Adicionalmente, habrá un sensor capaz de reconocer cada uno de los cuatro colores de las cajas a utilizar.

Ensamble estructura.

El diseño y ensamble del brazo robótico se realizó a partir de uno ya propuesto en diferentes páginas, el PocketSized RobotArm Versión 4. Los planos fueron modificados para utilizar servo motores más robustos, referencia MG 995. Todo el instructivo correspondiente a ensamble, planos de corte y materiales se encuentran en el enlace a continuación: https://www.instructables.com/id/Pocket-Sized-Robot-Arm-meArm-V04/

/media/uploads/BryanMoreno14/plano_brazo.jpg

Materiales.

4 Servo-motores MG 995

/media/uploads/BryanMoreno14/servo-mg995.jpg

-Voltaje de operación: 4.8v-7.2v -Torque: 11kg/cm (6V) -Velocidad de operación: 0.16 seg/60 grados (6v sin carga) -Temperatura de trabajo: -30°C - 60°C Son los actuadores que realizan los movimientos en los ejes x, y, z junto con el movimiento de cierre de pinza.

1 Tarjeta STM32

/media/uploads/BryanMoreno14/stm.jpg

Es la tarjeta de desarrollo que se trabajara para el control del brazo teniendo en cuenta programación en C++ y donde serán conectados los periféricos como el sensor de color, los joysticks y los actuadores. La tarjeta se conecta al PC con el cable USB y por medio de COOLTERM se realizan las diferentes configuraciones de comandos para interactuar con el robot

2 Joystick

/media/uploads/BryanMoreno14/joystick.jpg

Es el periferico que utilizara el robot para ser controlado de manera manual a través de un primer telecomnado de configuración. Cada Joystick tiene como función controlar dos motores junto con el cierre y la apertura de pinza.

1 Sensor óptico TCS 3200

/media/uploads/BryanMoreno14/sensor_color.jpg

Es el sensor que sera programado y calibrado para el reconocimiento de 4 diferentes colores que llevaran las cajas finales para el sistema de almacenamiento, estos colores son el rojo, el verde, el azul y el blanco, la finalidad con este sensor es obtener el movimiento preciso de almacenamiento al identificar el color inicial.

Diagrama de Conexión

En esta etapa se observarán los diferentes diagramas de conexión de los periféricos de control del robot.

SERVOS y STM

/media/uploads/BryanMoreno14/servos_y_stm.jpeg

La alimentación de los servomotores se hace con una fuente externa y se acoplan las tierras tanto de la fuente, los servos y la tarjeta STM.

SENSOR y STM

/media/uploads/BryanMoreno14/sensor_y_stm.jpeg

La configuración y calibración del sensor se realizan con base al datasheet y la intensidad de colores (espectro de luz visible) que se estén utilizando.

/media/uploads/BryanMoreno14/espectro_de_luz.jpg

Para obtener el valor mas aproximado al color utilizado, se utiliza la interfaz de COOLTERM para mapear el valor sensado y con ayuda del código de colores y la siguiente tabla que se mostrara, se puede identificar el rango de aceptación del color requerido .

/media/uploads/BryanMoreno14/tabla_sensor.jpg

JOYSTICK y STM

/media/uploads/BryanMoreno14/joystick_y_stm.jpeg

Para la configuración y calibración de los joysticks es importante tener en cuenta el valor del voltaje de referencia para el movimiento, ya que el valor varia deacuerdo al voltaje de referencia de entrada al joystick, para este caso se utilizó el voltaje de referencia de 3.3 V, que es el pin de salia de la tarjeta STM y junto con el mapeo de valores de la interfaz en COOLTERM que es posible identificar el rango de la salida análoga de los potenciometros. El valor de la salida análoga se establece en la programación para poder mover los motores.

Programación

Para programar el robot se utilizó una tarjeta núcleo STM32RC-P y los comandos correspondientes para el funcionamiento del robot son ingresados a través del programa CoolTerm.

El código de programación se realizó asignando puertos PWM a cada uno de los servomotores, variables de entrada con las cuales inicializa el programa y la comunicación serial. Se crean funciones en las cuales están guardados los parámetros a ejecutar por el software el principal dependiendo del valor de entrada.

/media/uploads/BryanMoreno14/tabla_de_angulos_telecomandos.jpeg

Los valores de entrada de los tele comandos están definidos en lenguaje hexadecimal y estos son ingresados a través de CoolTerm así:

/media/uploads/BryanMoreno14/telecomandos.jpeg

CONCLUSIONES

1. La calibración tanto del sensor como de los Joysticks se basan más en el análisis e identificación del sistema con el que se quiere trabajar, es importante guiarse del datasheet y sus características para dicha calibración.

2. los movimientos por tele comandos pueden ser un poco confusos pero el rendimiento en términos de líneas de código para la programación y la accesibilidad para interactuar con el sistema y la maquina es mucho mejor.


All wikipages