Documentos de Académico
Documentos de Profesional
Documentos de Cultura
507-2019
OP C I Ó N D E
T I T U L A C I O N:
PROYECTO DE DESARROLLO
T E M A :
DESARROLLO DE UN SISTEMA DE LOCALIZACIÓN
DE OBJETOS MEDIANTE UN BRAZO ROBÓTICO
CONTROLADO POR COMANDOS DE VOZ Y VISIÓN
ARTIFICIAL EN EL CONTEXTO DE LA INDUSTRIA 4.0
AUTOR:
WILMAN GIOVANNY SALAZAR PATIN
DIRECTOR:
GUAYAQUIL–ECUADOR
2022
Autor:
Wilman Giovanny Salazar Patin
Ingeniero Electrónico.
Candidato a Magíster en Electrónica y Automatización,
Mención en Informática Industrial por la Universidad
Politécnica Salesiana - Sede Guayaquil.
wsalazar@est.ups.edu.ec
Dirigido por:
DERECHOS RESERVADOS
©2022 Universidad Politécnica Salesiana.
GUAYAQUIL – ECUADOR – SUDAMÉRICA
WILMAN GIOVANNY SALAZAR PATIN
Índice de Figuras V
Resumen IX
Abstract IX
1. Introducción 1
1.1. Descripción general del problema . . . . . . . . . . . . . . . . 2
1.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1. Objetivo general . . . . . . . . . . . . . . . . . . . . . 4
1.2.2. Objetivos específicos . . . . . . . . . . . . . . . . . . . 4
1.3. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4. Organización del manuscrito . . . . . . . . . . . . . . . . . . . 5
III
ÍNDICE GENERAL IV
3. Marco metodológico 25
3.1. Diseño del experimento . . . . . . . . . . . . . . . . . . . . . . 27
3.1.1. Delimitación del área de trabajo . . . . . . . . . . . . 27
3.1.2. Cinemática del robot LewanSoul . . . . . . . . . . . . 27
3.1.3. Aplicación de los Parámetros de Denavit-Hartenberg . 27
3.1.4. Cinemática Directa . . . . . . . . . . . . . . . . . . . . 28
3.1.5. Cinemática Inversa . . . . . . . . . . . . . . . . . . . . 33
3.2. Desarrollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2.1. Control del robot LewanSoul . . . . . . . . . . . . . . 35
3.2.2. Control mediante Matlab . . . . . . . . . . . . . . . . 36
3.2.3. Control mediante comandos de voz . . . . . . . . . . . 39
3.2.4. Control mediante reconocimiento de color . . . . . . . 44
3.3. Resultados y Discusión . . . . . . . . . . . . . . . . . . . . . . 48
3.3.1. Pruebas de la Cinemática Directa . . . . . . . . . . . . 48
3.3.2. Pruebas de la Cinemática Inversa . . . . . . . . . . . . 48
4. Conclusiones 54
5. Recomendaciones 56
6. Anexos 57
Índice de Figuras
V
ÍNDICE DE FIGURAS VI
VIII
Resumen
IX
Abstract
X
Capítulo 1
Introducción
1
1.1. DESCRIPCIÓN GENERAL DEL PROBLEMA 2
1.2. Objetivos
1.2.1. Objetivo general
Desarrollar un sistema de localización de objetos mediante un brazo
robótico controlado por comandos de voz y visión artificial en el contexto de
la Industria 4.0.
1.3. Contribuciones
La contribución a la industria en el presente trabajo se enfocó en el
área de manipulación de objetos, los cuales son procesos repetitivos. Dichos
procesos pueden ser elaborados por robots manipuladores que se asemejan
a la morfología de un brazo humano, es decir, cuentan con brazo, codo,
antebrazo, muñeca, etc. Además, se ha incursionado en la utilización de visión
artificial, la cuál puede ayudar a reconocer objetos de acuerdo a su color de
forma autmática. Finalmente, el presente trabajo cuenta con comandos de
voz para que el usuario comande el brazo robótico utilizando un algoritmo
de reconocimiento de palabras proporcionado por Google. En conclusión, se
consigue unir todas estas tecnologías para que trabajen de forma conjunta y
recnozcan y clasifiquen objetos marcados con colores primarios.
6
2.1. ESTADO DEL ARTE 7
Para el control del brazo debemos realizar el diseño de bloques en una app,
como se puede observar en la Figura 2.7, donde se puede desarrollar cualquier
aplicación para poder enviar señales que sean captadas por el arduino [Javier
and Esteban Escaño, 2018].
Enfoque: aparato que ayuda enfocar una imagen a una distancia corta.
2.1. ESTADO DEL ARTE 16
2.1.15. Android
Android es un sistema operativo que fue desarrollado para dispositivos
móviles, tablets, televisores y relojes los cuales en su mayoría constan de
pantallas táctiles, fue implementado por Google, Linux y otros softwares
libres que ofrecen un sin número de aplicaciones [Aveda, 2022].
2.1.18. Matlab
Matlab es un software donde se puede programar mediante códigos
de programación, el cual realiza procesos de diseños y análisis iterativos,
consta de Live Editor para crear scripts que combinan códigos, salidas
2.2. DEFINICIONES PREVIAS 18
C1 C2 −S1 −C1 S2 −q3 C1 S2
S1 C2 C1 −S1 S2 −q3 C1 S2
T =
S2
(2.1)
0 C2 q3 C2 + l1
0 0 0 1
Marco metodológico
25
Cap 3. Marco metodológico 26
(X5, Y5, Z5) de la pinza) a partir de los valores conocidos de las articulaciones
rotacionales (θ1, θ2, θ3, θ4, θ5) con respecto al sistema de referencia fijo (X0,
Y0, Z0).
Una de las formas de obtener la posición y la orientación del efector final
del brazo robot es el método de las matrices de transformación homogénea.
Con este método se puede encontrar una matriz de transformación
homogénea total (T) al multiplicar secuencialmente las matrices de
transformación homogénea de cada articulación del brazo robot. Cabe
recalcar que hay otros métodos matemáticos para encontrar la posición y
orientación del efector final, pero en el presente trabajo se utilizó el método
de la transformación homogénea por su simplicidad computacional.
La matriz total de transformación homogénea (T) se puede observar
expresada en la matriz de la ecuación 2-2. Para obtener la matriz T, se
realizaron las multiplicaciones secuenciales de las matrices de transformación
homogénea de cada articulación (Ai) expresada en la Ecuación 3.1. La
Ecuación 3.2 por otro lado permite calcular la matriz total (T) haciendo
multiplicaciones progresivas de cada articulación (Ai).
cosθi −cosαi senθi senαi senθi ai cosθi
senθi cosαi cosθi −senαi cosθi ai senθi
Ai−1
i = 0
(3.1)
senαi cosαi di
0 0 0 1
1 0 0 0
0 1 0 0
A01 = (3.7)
0 0 1 13,5
0 0 0 1
0 0 1 23,5
0 −1 0 0
T = 1 0
(3.8)
0 17
0 0 0 1
Figura 3.7: Posición y orientación del efector final (X5, Y5, Z5) con respecto
al sistema de referencia fijo (X0, Y0, Z0).
3.2. Desarrollo
3.2.1. Control del robot LewanSoul
El control aplicado en este trabajo combina las técnicas de guiado
mediante una interfaz gráfica realizada en una computadora y comandos de
voz mediante un dispositivo móvil inteligente. A estas técnicas se las combinó
con procesos de visión por computador con la finalidad de crear un sistema
automático de localización de objetos de colores.
La interfaz fue realizada en MATLAB utilizando las herramientas que
este software provee para crear una interfaz gráfica de usuario (GUI por
sus siglas en ingles). Para integrar el control mediante comandos de voz se
utilizó las herramientas gratuitas de Google en una aplicación creada para
un dispositivo de Android. Para el reconocimiento de objetos de color se
utilizó las herramientas que provee MATLAB para crear procesos de visión
artificial. Todas estas técnicas fueron combinadas y codificadas en MATLAB.
3.2. DESARROLLO 36
el área donde se debe colocar los objetos. Por otra parte, si por error el
usuario intentara mover el brazo con los pulsadores deslizantes el software le
notificará que no tiene activado el controlador.
Por otro lado, en la Figura 3.9 también se observa una ventana de amarillo
transparente en la cual se muestran los mensajes que el programa devuelve al
usuario ante su interacción con los controles de la pantalla. Esta parte sirve
de ayuda visual para notificar al usuario sobre las acciones que el software va
realizando. También se debe aclarar que para acceder a esta ventana gráfica
de control primero se debe acceder por una primera ventana de inicio que
tiene la forma que se observa en la Figura 3.10.
En cuanto a la lógica de programación se puede decir que no presenta
mucha complejidad ya que su finalidad es solo mover el brazo robot mediante
controles deslizantes y observar la posición del efector final a través de la
cámara web. Con este preámbulo se puede observar el proceso que se siguió
3.2. DESARROLLO 38
Figura 3.11: Diagrama de flujo del algoritmo creado para controlar el brazo
robótico.
Robot reposo
En la lista anterior se observa en negrilla una “N” y una “G”, dichas letras
muestran la posición donde se debe dictar los valores numéricos del motor y
de los grados respectivamente que se desea mover. Por ejemplo, para mover
la articulación número 1 en sentido de las manecillas del reloj 30 grados, el
usuario debe dictar el comando “robot motor 1 derecha 30 grados”. En este
caso el usuario debe estar ubicado frente a la pantalla de la interfaz de control
del robot para referirse a su derecha ya que el motor 1 mueve el efector final
del robot de forma horizontal. En otro ejemplo, con el comando “robot motor
2 arriba 30 grados” se mueve el efector final del robot hacia arriba 30 grados.
Los otros comandos están destinados a dar órdenes para que el brazo robot
recoja un objeto de un color seleccionado utilizando visión artificial o que
realice una acción específica, tal como ir a su posición de reposo, abrir pinza
o cerrar pinza. Cabe recalcar que para que el comando sea escuchado y se
3.2. DESARROLLO 42
Figura 3.18: Reconocimiento de color amarillo (A), rojo (B) y azul (C) desde
arriba hacia abajo respectivamente.
Verde
H = 0.2 - 0.3
S = 0.45 - 0.85
V = 0.5 - 0.95
Rojo
H = 0 - 0.1
S = 0.7 - 1
V = 0.5 - 0.8
Tabla 3.3: Cálculo del porcentaje de error de la posición del efector final con
la cinemática directa.
PORCENTAJE DE ERROR
error X ( %) error Y ( %) error Z ( %)
2,13 0,00 0,59
0,43 1,96 0,00
0,24 2,70 1,57
1,29 2,24 1,32
2,91 1,73 2,53
1,96 3,02 1,89
0,90 1,29 1,89
1,93 0,00 1,69
1,19 1,19 1,54
0,37 0,00 0,00
izquierda de la misma.
Las pruebas se realizaron escribiendo 10 valores diferentes en la aplicación
de MATLAB para que el robot traslade las piezas a las posiciones designadas.
En cada iteración se anotó el valor teórico y el valor real tomado con
flexómetro, así como se puede observar en las siguientes tablas Tabla 3.4,
Tabla 3.6 y Tabla 3.8.
Luego de haber registrado las coordenadas obtenidas mediante la fórmula
de la cinemática inversa en la tabla, procedemos a calcular el error
experimental con los valores anotados en la Tabla 3.5.
Analizando la Tabla 3.5 de los objetos de color rojo se tiene un error en X
de 0,60 % en promedio y un máximo de 1,33 %, para Y con error de 0,75 %
en promedio y un máximo 1,40 % los cuales son mínimos frente al 5 % que es
considerado como máximo de tolerancia de error según [Alonzo Villegas et al.,
2014]. Estos resultados demuestran que el robot funciona de una manera
correcta al tener un error mínimo.
De la misma manera se procedió para el color amarillo y el color azul.
Las diferencias entre las medidas teóricas y las medidas reales se pueden
observar en las Tabla 3.6 y Tabla 3.8. Y los errores experimentales de los
colores amarillo y azul se pueden ver en las tablas Tabla 3.7 y Tabla 3.9
respectivamente.
Analizando la Tabla 3.7 de los objetos de color amarillo se tiene un error en
X de 0,51 % en promedio y un máximo de 1,25 %, para Y con error de 0,57 %
3.3. RESULTADOS Y DISCUSIÓN 51
Tabla 3.5: Cálculo del porcentaje de error de la posición del efector final con
la cinemática inversa con el color rojo.
PORCENTAJE DE ERROR
error X ( %) error Y ( %) error Z ( %)
0,47 0,73 0,00
1,10 0,20 0,00
1,33 0,50 0,00
0,14 0,40 0,00
0,69 1,11 0,00
0,17 0,80 0,00
1,11 0,70 0,00
0,92 0,63 0,00
0,48 1,00 0,00
0,47 1,40 0,00
Tabla 3.7: Cálculo del porcentaje de error de la posición del efector final con
la cinemática inversa.
PORCENTAJE DE ERROR
error X ( %) error Y ( %) error Z ( %)
0,07 0,60 0,00
0,50 0,88 0,00
0,42 0,23 0,00
1,11 0,64 0,00
1,25 0,20 0,00
0,48 1,43 0,00
0,26 0,30 0,00
0,03 0,25 0,00
0,88 0,50 0,00
0,13 0,67 0,00
Tabla 3.9: Cálculo del porcentaje de error de la posición del efector final con
la cinemática inversa.
PORCENTAJE DE ERROR
error X ( %) error Y ( %) error Z ( %)
0,08 0,79 0,00
0,33 0,53 0,00
0,89 0,29 0,00
1,33 0,43 0,00
0,73 0,09 0,00
0,53 1,67 0,00
1,50 0,19 0,00
1,07 1,43 0,00
0,16 0,63 0,00
0,25 0,57 0,00
Capítulo 4
Conclusiones
54
Cap 4. Conclusiones 55
Recomendaciones
56
Capítulo 6
Anexos
Figura 6.1: Anexo A: Vista superior del espacio de trabajo del proyecto.
57
Cap 6. Anexos 58
Figura 6.2: Anexo B: Ubicación de las lámparas Leds y la cámara web sobre
el espacio de trabajo.
E. Candy-ho. Kit armar brazo robotico lewansoul xarm 6dof full metal pc,
2022.
P. clic. Matlab robot toolbox 4-cinemática inversa del brazo robótico, 2022.
59
BIBLIOGRAFÍA 60
D. Revuelta Hoz et al. Extensión de una app para transportistas con servicio
de voz y reconocimiento de actividad. 2020.
TECNIT. Webcam camara web full hd 1080p logitech c920 de 15mp con
microfono incorporado. 2022.