Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Profesor Asesor:
Ing. Julin Severiano Rodrguez Acevedo M.Sc.
AGRADECIMIENTOS
Agradezco a cada una de las personas que fueron parte de este importante
proceso en mi vida, principalmente a mi padre y mi madre que son y sern
siempre la base fundamental para todos mis proyectos, tambin un apartado
especial para mi hermano que siempre me ha apoyado en todas mis decisiones.
Agradezco especialmente a mi novia por siempre estar cuando ms lo he
necesitado.
Quiero dar un agradecimiento especial a dos profesores que fueron parte
fundamental de mi desarrollo acadmico, Julin Severiano Rodrguez Acevedo y
Hernando Evelio Leyton Vsquez, quienes me guiaron en el arduo camino de la
Ingeniera Mecatrnica y a los cuales aprecio enormemente.
JUAN SEBASTIN HUERTAS PIEDRAHITA
INFINITAS GRACIAS!
En primer lugar, quiero agradecer a Dios por haberme guiado y por darme una
familia tan maravillosa, que me ha ayudado a cumplir un logro importante en mi
vida. A mis padres por la educacin, que con ejemplo y amor me han inculcado
valores, ayudndome a hacer una mejor persona. A mis hermanas por el apoyo
constante en todo mi proceso de formacin, por las conversas y enseanzas
compartidas.
Por ultimo quiero agradecer a la Universidad de San Buenaventura (sede Bogot),
al grupo de Ingenieros de la Facultad de Ciencias Bsicas e Ingeniera, que a lo
largo de la carrera aportaron su conocimiento y profesionalismo, brindndome
muchas experiencias y momentos de aprendizaje. Tambin quiero agradecer
enormemente al Ingeniero Julin Severiano, por su dedicacin, paciencia, y
orientacin en todas las etapas de desarrollo de este proyecto y de mi profesin
como Ingeniero Mecatrnico.
A todos los que directa o indirectamente aportaron a la construccin de este
trabajo de grado.
Nota de aceptacin:
____________________________________
____________________________________
____________________________________
____________________________________
____________________________________
____________________________________
____________________________________
____________________________________
Firma jurado
____________________________________
Firma jurado
TABLA DE CONTENIDO
LISTA DE FIGURAS 1
LISTA DE TABLAS
LISTA DE ANEXOS 5
INTRODUCCIN
13
3. OBJETIVOS DE LA INVESTIGACIN
3.1 OBJETIVO GENERAL
14
14
14
14
4. MARCO REFERENCIAL
15
15
15
15
23
23
23
25
26
5.2.4 CONTORNOS 30
5.2.5 EXTRACCIN DE COORDENADAS CARTESIANAS DE LAS FIGURAS A
CLASIFICAR
32
38
37
39
40
44
57
65
71
90
7. CONCLUSIONES
92
BIBLIOGRAFIA
ANEXOS 97
94
57
LISTA DE FIGURAS
17
18
19
20
24
25
28
19
29
29
29
Figura 14. Ejemplo de resultados del detector de bordes de Canny para dos imgenes
distintas cuando los umbrales alto y bajo son 50 y 10
31
Figura 15. Ejemplo de resultados del detector de bordes de Canny para imagen capturada
por la cmara 31
Figura 16. Coordenadas cartesianas del objeto reconocido en la imagen capturada
Figura 17. Diagrama de flujo RGB y Binarizacion 34
Figura 18. Diagrama de flujo de formas de los objetos
35
36
40
1
38
32
44
45
45
47
51
51
52
55
56
56
57
66
67
69
2
68
70
71
72
75
80
83
(cero) 85
87
89
LISTA DE TABLAS
3
88
22
24
47
58
63
73
80
90
LISTA DE ANEXOS
ANEXO A. Datasheet cmara
97
4
99
100
101
103
INTRODUCCIN
El ser humano siempre ha buscado tener la capacidad de controlar las actividades
realizadas con mayor eficacia y facilidad en todos los medios que lo rodean. A
5
industrial se ha buscado controlar tareas por medio de cmaras para tener visin
del proceso en todo momento.
El proceso de generar visin por computadora, se llama visin artificial. La visin
artificial es una rama de la inteligencia artificial que permite la obtencin,
procesamiento y anlisis de cualquier tipo de informacin especial obtenidas a
travs de imgenes digitales [1]. Actualmente la visin artificial se emplea en reas
manufactureras para el control de calidad y produccin, ya que estos se pueden
llevar acabo por medio de algoritmos de conteo, posicin y reconocimiento de
objetos que pueden ser medidos por una sola cmara, en esto se basa la visin
artificial.
Por otra parte las empresas utilizan en su lnea de produccin brazos robticos o
robots para el movimiento de piezas, o para el ensamble. Estos dispositivos deben
estar previamente programados para su buen desempeo y deben tener una
rutina lgica programada. Por medio de la visin artificial se desea controlar estos
mecanismos para que el dispositivo tenga la capacidad de elegir cual es la
6
Este problema se piensa solucionar con visin artificial, la cual identificar 2 piezas
de una produccin, estas llegarn de una etapa anterior una por una, para que la
cmara pueda identificar la figura y se comunique con un brazo robtico el cual
ordenar las figuras en cubculos especiales, dos para cada figura (cada figura
tiene dos posibles colores), cada cubculo lo reconocer la cmara por medio de
coordenadas cartesianas.
Con la implementacin de la visin artificial se evitarn inconvenientes en la
organizacin de las piezas, ya que la cmara reconocer la pieza y la llevara a su
lugar respectivo, identificado previamente mediante coordenadas de la cmara.
1.1 ANTECEDENTES DE LA INVESTIGACIN
En Colombia y alrededor del mundo hay gran variedad de proyectos realizados
con el tema de visin artificial, las investigaciones ms relevantes en este tema y
que son fundamentales para el proyecto planteado se inician presentando
proyectos que ayudan al entendimiento de visin artificial y los pasos por los
cuales se adquiere una imagen.
A continuacin, se describen 13 proyectos realizados alrededor del mundo, de los
cuales se extrajeron las caractersticas ms importantes para la realizacin de
este proyecto, se enunciarn ttulos y breve descripcin dada por el autor de los
mismos.
Se presenta un proyecto en Quertaro, Mxico, en el cual, mediante la adquisicin
de imgenes con una cmara digital, se requiere orientar a un robot manipulador
KUKA de 6 grados de libertad para tareas de ensamblaje, este sistema es la base
para una celda de manufactura en la misma ciudad [3].
Luego de adquirir las imgenes necesarias en cualquier proyecto de visin artificial
se deben caracterizar dichas imgenes, en la Universidad Antonio Nario, sede
8
10
Para desarrollar este proyecto hay que tener en cuenta el control de un brazo
robtico, por ende el apoyo de un trabajo de maestra de la UNEXPO, Control de
Brazo Robtico, en el que se desarrolla la comparacin de controladores clsicos
PID con el modelo ideal obtenido de la dinmica de LaGrange, para realizar el
control ptimo de un brazo robtico de 4 grados de libertad, resulta esencial para
la optimizacin de este proyecto [9].
Otra de las caractersticas cambiantes de los proyectos realizados en visin
artificial y robtica es el mtodo para controlar el robot. Un ejemplo de esto es el
proyecto de investigacin Seguimiento Autnomo de la Posicin de un Objeto por
Visin y Control Neurodifuso en MATLAB este artculo presenta el desarrollo de
un sistema de visin artificial y control difuso, el cual tiene como objetivo principal
realizar el seguimiento, con una cmara web, de un objeto de manera automtica,
todo esto montado en un estructura con un motor paso a paso controlado. La
anterior implementacin es la primera etapa para realizar la navegacin autnoma
de un robot que pueda cumplir varias tareas [10].
Otros trabajos de investigacin abarcan el tema de visin artificial pero enlazado
con robtica mvil como por ejemplo el proyecto de investigacin Navegacin de
robot mvil usando Kinect, OpenCV y Arduino, este proyecto muestra los
resultados obtenidos de la investigacin realizada de visin artificial, para apoyo a
la navegacin, teniendo en cuenta imgenes de profundidad y reconocimiento de
objetos a travs del sistema de sensor Kinect de Microsoft y el sistema Arduino
[11].
El siguiente proyecto se relaciona con el antes mencionado ya que se desarrollan
con algoritmos de programacin para realizar el procesamiento de imgenes, el
cul es un proceso fundamental para el trabajo con cmaras.
En el artculo Control numrico de un brazo robtico, como respuesta a
algoritmos de procesamiento de imgenes y sistemas expertos, se desarrolla un
11
sistema de control para un brazo robtico de cinco grados de libertad, que tenga la
capacidad de desempearse en el juego Tic-Tac-Toe (triqui), el brazo robtico est
dotado de capacidad visual mediante una cmara para realizar los movimientos
necesarios del juego y posee un algoritmo de inteligencia artificial diseado para
tener capacidad de planificar jugadas para ganar, todo lo anterior fue desarrollado
en la plataforma de programacin LabVIEW [12].
Otro trabajo que abarca el mismo tema de control de brazo robtico es el del
Desarrollo de un instrumento virtual para el control remoto de un brazo
manipulador de uso educacional, en este proyecto se enuncian los resultados
obtenidos con respecto al diseo, desarrollo e implementacin de un programa de
computador, en el cual se obtenga el modelo cinemtico inverso y directo de un
brazo robtico de cinco grados de libertad, con el fin de que sea utilizado para
determinar lmites fsicos y de operacin para controlar de forma remota un brazo
robtico [13].
En el proyecto Desarrollo de un sistema de control para un brazo robtico
mediante adquisicin y procesamiento de imgenes [14], se presentan las fases
de diseo y construccin, para un sistema de control en lazo abierto, con
procesamiento de imgenes, para un brazo robtico que posea la capacidad de
transportar distintas piezas de un lugar determinado a otro igual y poder darle un
orden predeterminado a dichos elementos.
2. JUSTIFICACIN
Hoy en da la produccin es el punto de mira de todas las industrias, la calidad y la
elaboracin rpida de las etapas y/o procesos en la cadena de produccin de
cualquier producto o servicio que se ofrezca. Este proyecto propone una rpida
implementacin en cuanto a la seleccin y organizacin de las figuras,
presenta beneficios debido a que solo se necesitara una supervisin por parte de
un operario y no necesariamente para realizar una tarea, sino para estar pendiente
de que el trabajo realizado por el brazo robtico sea el adecuado.
3. OBJETIVOS DE LA INVESTIGACIN
3.1 OBJETIVO GENERAL
Disear y construir un brazo robtico orientado por visin artificial para clasificar 2
piezas de una produccin.
3.2 OBJETIVOS ESPECFICOS
3.3 LIMITACIONES
4. MARCO REFERENCIAL
En este captulo se enuncian y exponen los conocimientos conceptuales y
tericos, los cuales son la base principal para el desarrollo total del proyecto de
investigacin.
4.1 MARCO CONCEPTUAL
4.1.1 VISIN ARTIFICIAL:
Es un campo de la Inteligencia Artificial en el cual se extrae
informacin y caractersticas esenciales, de una imagen digitalizada,
utilizando tcnicas de procesamiento y anlisis, con el fin de imitar la
percepcin que poseen los humanos [1].
14
sistema embebido conectado al computador para enviar una seal para que
realice la accin.
4.2.2 Caractersticas y clasificacin de manipuladores robticos
Los manipuladores robticos estn constituidos por un grupo de
elementos
rgidos
denominados
eslabones,
que
se
encuentran
Figura 4.
Articulaciones rotacionales [15].
17
18
19
Cilndricos: poseen mnimo tres eslabones, uno para movimiento rotacional que
est anclado a una base y los otros eslabones poseen movimientos lineales.
Polar: posee tres articulaciones, dos rotacionales y una lineal.
Esfrico (brazo articulado): consta de tres articulaciones rotacionales.
Mixto: es una combinacin de cualquiera de las anteriores configuraciones.
Otras formas de clasificar los manipuladores robticos son segn sus grados de
libertad (movimientos en planos de coordenadas independientes), espacio de
trabajo, capacidad de posicionamiento del punto terminal, capacidad de carga y
velocidad.
En la Tabla 1 se pueden observar los distintos tipos de caracterizacin que tienen
los manipuladores robticos.
Configuracin
geomtrica
cartesianos
Estructura
cinemtica
Espacio de
trabajo
tipo cantilever
tipo prtico
20
Ejemplo
cilndrico
polar
esfrico
SCARA
paralelo
21
5. DISEO INGENIERIL
5.1 SOFTWARE Y LIBRERAS
El software utilizado para este proyecto es QT CREATOR, el cual es un ambiente
de desarrollo integrado multiplataforma creado por Trolltech de uso libre para
desarrollar aplicaciones con el uso de las bibliotecas Qt, la programacin en QT
CREATOR se realiza en el lenguaje de programacin C++ [16].
Las libreras de Open CV son bibliotecas de uso libre para aplicaciones de Visin
Artificial desarrolladas en su origen por Intel y contiene ms de 500 funciones con
respecto a temas de Visin Artificial. Estas abarcan muchas reas en visin,
incluyendo inspecciones de produccin en empresas, aplicaciones mdicas,
seguridad, interfaz de usuario, calibracin de cmara, visin estreo y robtica
[17].
La librera est escrita en C y C++ y funciona en los sistemas operativos de Linux,
Windows y Mac OS X. Actualmente se desarrolla en interfaces para Python, Ruby,
Matlab y otros lenguajes. Fue diseada para eficiencia computacional y con un
fuerte enfoque en aplicaciones en tiempo real [17].
Una de las metas de Open CV es proporcionar infraestructura de visin por
computadora fcil de usar, que ayude a las personas a disear aplicaciones de
visin rpidamente [17].
5.2 VISIN ARTIFICIAL
22
Fuente: http://www.logitech.com/es-roam/product/hd-webcam-c270
Esta cmara fue escogida teniendo en cuenta varias opciones y se decidi usar la
cmara Logitech HD Webcam C270 por su bajo costo, a continuacin se ilustra
una comparacin entre la cmara escogida y otra cmara que se encuentra en el
mercado.
Logitech HD Webcam C270
Camara Hd Genius Facecam 2020
Videoconferencias HD (1280 x 720
Interfaz: USB.
pxeles)
con
el
sistema
Resolucin: 1280 x 720.
recomendado
Sensor: CMOS.
Captura de vdeo: Hasta 1280 x 720
Velocidad de captura de
pxeles
vdeo: 15 fotogramas por
Tecnologa Logitech Fluid Crystal
segundo.
Fotos: Hasta 3.0 megapxeles
Resolucin: 2 megapxeles.
(mejora por software)
Micrfono integrado con reduccin
de ruido
Certificacin USB 2.0 de alta
velocidad (se recomienda)
Clip universal para monitores LCD,
23
CRT o porttiles
Velocidad mxima de cuadro 30
fotogramas por segundo
$70.000
$86.600
24
5.2.3 UMBRALIZACIN
Para llegar al objetivo de reconocer las formas finales, se requiere umbralizar la
imagen, esto es, representarla en dos colores (blanco y negro), para esto el primer
paso es convertir la imagen original en colores a escala de grises, lo que se
consigue eliminando la informacin de tono y saturacin pero conservando la
luminancia [18].
Uno de los mtodos para utilizar un valor umbral de manera automtica es
conocido como el mtodo de Otsu [19]. Este mtodo utiliza tcnicas estadsticas
para conocer la varianza, midiendo la dispersin de los niveles de gris que se
presentan en la imagen.
El mtodo consiste en que haya la menor dispersin posible dentro de cada
segmento, pero que a su vez haya la mayor dispersin posible entre segmentos
diferentes, hallando automticamente un valor umbral ptimo en el cual el cociente
entre ambas varianzas sea el mximo y por lo tanto, separando los objetos de
nuestro inters del resto en una misma imagen.
Para el desarrollo del mtodo de otsu es necesario partir de una imagen en escala
de gris con N pixeles y L niveles diferentes.
25
Pi =
fi
N
i=1,2, , L .
y [ t+1, t+ 2, , L
C1 :
P1
Pt
,.,
1 (t )
1 (t )
C2 :
Pt +1
P
PL
, . , t +2 , . ,
2 (t)
2 ( t )
2 ( t )
Dnde:
t
1 ( t )= Pi
i=1
2 ( t )= P i
i=t +1
26
respectivamente
1=
i=1
i Pi
1 (t )
2=
i=t +1
i Pi
2 (t )
1 + 2=1
B= 1 ( 1T ) +2 ( 2T )
es el siguiente:
t =Max { B (t )}
Donde:
1 t L
27
28
Fuente: Autores
5.2.4 CONTORNOS
Luego de realizar un filtro al finalizar la binarizacin de la imagen para eliminar los
defectos que esta pueda tener, se utiliza un algoritmo conocido como el detector
de bordes de Canny, el cual sirve para detectar los mismos mediante un umbral,
dejando nicamente estos de color blanco y la parte interna del objeto del mismo
color del fondo (negro).
Al utilizar el algoritmo de Canny se obtiene una variable que almacena el nmero
de bordes, mediante los cuales se pueden identificar las figuras a clasificar. Este
mtodo, a diferencia del algoritmo de Laplace, calcula en x y y las primeras
derivadas, que luego son combinadas dentro de cuatro derivadas direccionales.
Estas direcciones son calculadas de la siguiente manera:
G= G2x +G2y
Donde:
Gx = derivada en la direccin vertical
G y = derivada en la direccin horizontal
29
=arctan=
Gy
Gx
Los puntos en donde estas derivadas tienen el valor mximo son los pixeles que
se unirn para formar los bordes. Los contornos son formados al aplicar un umbral
de histresis a los pixeles mencionados anteriormente. Esto significa que se tienen
dos umbrales, uno alto y uno bajo. Si un pixel tiene un gradiente mayor que el
umbral ms alto, entonces es tomado como un pixel de borde; de lo contrario, si
un pixel se encuentra por debajo que el umbral ms bajo, entonces es rechazado.
Si el gradiente de un pixel se encuentra entre los dos umbrales, entonces este
solo ser aceptado si est conectado a un pixel que se encuentre por encima del
umbral ms alto [17]. (Ver Figura 14 y Figura 15).
Figura 14. Ejemplo de resultados del detector de bordes de Canny para dos imgenes distintas
cuando los umbrales alto y bajo son 50 y 10 [17].
30
Figura 15. Ejemplo de resultados del detector de bordes de Canny para imagen capturada por la
cmara.
Fuente: Autores
5.2.5 EXTRACCIN
DE
COORDENADAS
CARTESIANAS
DE
LAS
FIGURAS A CLASIFICAR
Para realizar el proceso de extraccin de coordenadas cartesianas de la posicin
en la cual se encuentran las figuras a clasificar dentro del plano, se tuvo en cuenta
que al capturar una imagen con la cmara, se encontrarn varios objetos en la
misma. Estos objetos deben ser reconocidos mediante tcnicas de visin artificial,
los objetos visibles en la imagen tomada corresponden a los cubculos donde se
depositarn las piezas, las piezas a clasificar y el punto terminal del manipulador
robtico. Al reconocer estos objetos, tambin es necesario determinar en qu
posicin del plano se encuentran. En la Figura 16 se pueden observar tanto las
coordenadas reales del centro del objeto, como las coordenadas calculadas del
centro del objeto (texto al final de la imagen).
31
El primer paso para realizar una aplicacin de visin artificial consiste en utilizar un
umbral para determinar cul de los colores RGB se haba detectado, la figura 17
explica el proceso con el que se realiz el algoritmo. Posteriormente se binariz la
imagen con el fin de convertir los pixeles del color detectado en blanco y los
dems en negro. Luego de la binarizacin se recorren las matrices de izquierda a
derecha empezando del punto (0,0) hasta finalizar en el punto (0,480), de all se
procede a recorrer la segunda fila comenzando en el punto (1,0) y se vuelve a
recorrer de izquierda a derecha terminando en el punto (1,480), este proceso se
repite hasta llegar al punto (640,480) que es el tamao completo de la imagen y se
cuenta el primer y ltimo pixel de color blanco, estos valores se promedian para
obtener las coordenadas del centro de la figura capturada. Finalmente mediante el
contorno de la imagen se detecta el nmero de bordes para determinar que figura
es, teniendo en cuenta que si el nmero de bordes es igual a 4 es un cuadrado o
si es mayor a 4 es un crculo (Ver Figura 20).
Las funciones de extraccin de coordenadas cartesianas de las figuras a clasificar
y deteccin de formas estn detallados en los diagramas de flujo correspondientes
a las Figuras 18 y 19 respectivamente.
32
33
34
Figura 19.
objetos.
Fuente:
Autores
mtodos:
redes
neuronales,
mtodos
numricos,
iterativos
geomtricos [21].
5.3.2 Cinemtica Inversa
La cinemtica inversa es un problema no lineal que relaciona los ngulos de las
articulaciones en funcin de las coordenadas cartesianas y la orientacin en la que
se encuentra el extremo final del manipulador robtico [21].
Este modelo implica combinar las coordenadas extradas con la cmara respecto
al objeto que se va a clasificar, y los ngulos que requiere el manipulador para
posicionar el efector final en el centro del objeto.
Para obtener el modelo cinemtico inverso se pueden utilizar los siguientes
mtodos:
mtodos
geomtricos,
matrices
de
transformacin
homognea,
38
Descripcin
e
M1
M2
R
Rx
Ry
1
'
Primer Eslabn
ngulo entre la Magnitud del vector de la posicin del objeto y el eje x
Para hallar los ngulos de las articulaciones se realizaron los siguientes clculos,
esto debido a que es necesario conocer el valor numrico de los ngulos
a =b +c 2 bc cos A
40
R =R x + R y =M 1 + M 2 +2 M 1 M 2 cos (2 )
Despejando el ngulo
2=co s
R x 2+ R y2 M 21M 22
2M1M2
Luego de hallar
Al conocer:
180 2
=
M2
R
=
sin() sin(2)
M 2 sin()
R
2=sin 1
'=tan 1
( RyRx )
41
Se reemplaza en la ecuacin de
articulacin.
1=2 + '
La trayectoria que debe poseer el manipulador robtico queda definida por los
ngulos
y
2
articulacin y
resta del
2 , siendo
es la
24.
2 .
Fuente: Autores
Para poder comprobar que los ngulos que arrojan las ecuaciones son los
necesarios para llegar a un punto deseado en el plano, se realiz un programa en
Matlab para simular la obtencin de los mismos y el posicionamiento del
manipulador (ver seccin 5.4.1).
42
44
45
Las cargas que soportar el manipulador robtico son: los rodamientos que se
encuentran en las dos articulaciones, los servo motores, el electro imn ubicado
en el efector final y la pieza que se va a clasificar que ser cargada por el electro
imn, por lo anterior se relaciona la siguiente tabla.
ELEMENTO
Base del manipulador
Primer Eslabn
Segundo Eslabn
Primer Rodamiento*
Segundo Rodamiento*
Servo 1
Servo 2
Electro Imn
TOTAL
PESO (grs)
200
150
149
250
200
55
55
500
1.559
FUERZA (N)
1.96
1.47
1.46
2.45
1.96
0.54
0.54
4.9
15.28
A continuacin, se muestra el anlisis realizado en Solid Edge para los dos puntos
crticos del manipulador.
46
47
48
Por otro lado, en la simulacin del anlisis de desplazamiento (Ver Figura 33, 34 y
35), se puede observar que el manipulador robtico responde satisfactoriamente a
las cargas aplicadas, ya que la mxima deformacin del manipulador es 0.0423
mm, lo cual no influye en la labor a cumplir por parte del manipulador.
49
primer y segundo eslabn, la fuerza que se puede observar en efector final del
manipulador robtico corresponde al electroimn (no se suma la de la carga
debido a que es pequea con respecto al peso del electroimn), tambin se puede
observar el punto fijo del manipulador el cual es la base del mismo, los puntos que
s que se encuentran en la parte inicial del manipulador corresponden a las
restricciones articulares que poseen estos eslabones debido a los rodamientos los
cuales permiten movimientos de 360 pero no permiten movimientos sobre los
ejes (el movimiento de los rodamientos est restringido por los servo motores los
cuales hacen giros de 180), por ltimo la flecha grande que se puede observar en
la Figura 36 corresponde a la gravedad.
Para todos los anlisis se realiz una malla tetradrica debido a la forma que
posee el manipulador robtico y los anlisis se le realizaron al manipulador
contemplando el material el cual es ABS de alto impacto.
51
tensin que soporta el manipulador es 0,358 Mpa, siendo el lmite elstico 31 Mpa,
por ende el diseo es el indicado.
52
53
Para poder realizar una buena simulacin con respecto a los movimientos que
posee el manipulador, es necesario realizar un modelo para verificar estos
movimientos dependiendo de los pares de fuerzas que se emplearn. Por lo
anterior es necesario calcular, por cada articulacin, las ecuaciones de movimiento
[21].
El modelo dinmico se soluciona mediante la formulacin de Lagrange.
5.3.4.1
55
Descripcin
Distancia desde la primera articulacin hasta el centro masa
del eslabn 1
Distancia desde la segunda articulacin hasta el centro
masa del eslabn 2
m1
m2
m3
Masa electroimn
m4
Masa rodamiento
I1
I2
I3
Inercia electroimn
I4
Inercia rodamiento
x1
x2
x3
x4
y1
y2
y3
y4
56
2= 2 L1 cos 1+ L2 cos 2
x 2=x A + L2 cos
y 2= y A + L2 sin 2=2 L1 sin 1 + L2 sin 2
x 4=2 L1 cos 1
y 4 =2 L1 sin 1
x4=2 L1 1 sin 1
y 4 =2 L1 1 cos 1
2
2
2
2 2
2
2 2
2
2 2
2
2 2
2= x 2+ y 2=4 L1 1 sin 1+ 4 L1 L2 1 2 sin 1 sin 2 + L2 2 sin 2+ 4 L1 1 cos 1+ 4 L1 L2 1 2 cos 1 cos 2+ L2 2 c
23= x 23 + y 23=4 L21 21 sin 2 1+ 4 L1 L2 1 2 ( sin 1 sin 2 ) + 4 L22 22 sin 2 2 +4 L21 21 cos2 1 +4 L1 L2 1 2 ( cos 1 cos 2 ) + 4
23=4 L21 21 + 4 L22 22 + 4 L1 L2 1 2 ( sin 1 sin 2 +cos 1 cos 2 )
23=4 L21 21 + 4 L22 22 + 4 L1 L2 1 2 cos ( 12 )
2
2
2
2 2
2
2 2
2
4= x 4 + y 4=4 L1 1 sin 1 + 4 L1 1 cos 1
24=4 L21 21
58
1
1
1
1
T = m1 L21 21+2 m2 L21 21 +2 m2 L1 L2 1 2 cos(12 )+ m2 L22 22 + I 1 21 + I 2 22 +2 m3 L21 21+ 2m 3 L22 22 +2 m3 L1
2
2
2
2
Lagrangiano (L)
L=T V
L=
1
1
m1 L21+ 4 m 2 L21 + I 1+ 4 m 3 L21 + 4 m4 L21+ I 4 ) 21+ ( m2 L22 + I 2+ 4 m3 L22 + I 3 ) 22 +2 m2 L1 L2 1 2 cos(12 )+ 2 m
(
2
2
{ }
L
L
+ 1 1= 1
1
1
L
=( m1 L21 +4 m2 L21+ I 1 +4 m3 L21+ 4 m4 L21 + I 4 ) 1 +2 m2 L1 L2 2 cos(1 2)+2 m3 L1 L2 2 cos( 12 )
1
59
{ }(
L
= m 1 L21 +4 m2 L21 + I 1 + 4 m3 L21 +4 m 4 L21 + I 4 ) 1 +2 m2 L1 L2 2 cos( 12 )2 m2 L1 L2 2 sin ( 12 ) +2 m3 L1
L
=2 m2 L1 L2 1 2 sin
1
2
2
2
2
{ }
L
L
+ 2 2= 2
2
2
L
=( m 2 L22 + I 2 + 4 m 3 L22 + I 3 ) 2+ 2 m2 L1 L2 1 cos (1 2)+2 m3 L1 L2 1 cos (12)
2
60
(1 2 )
( 1 2)2m3 L1 L2 1 sin
( 1 2)+2 m3 L1 L2 1 cos
( 1 2)2m2 L1 L2 1 sin
L
2
=( m2 L2 + I 2+ 4 m3 L22+ I 3 ) 2 +2 m2 L1 L2 1 cos
2
{ }
L
=2m2 L1 L2 1 2 sin
2
61
(1 2 )+2 m2 L1 L2 1 2 sin
( 1 2 )2 m3 L1 L2 1 sin
( 1 2 )+2 m3 L1 L2 1 cos
( 1 2 )2 m2 L1 L2 1 sin
2
2
2=( m2 L2 + I 2+ 4 m3 L2+ I 3 ) 2 +2 m2 L1 L2 1 cos
62
60
m
1= 2=
=428.57
0.08 m=0.5984
0.14 s
s 180
s
Esta es la velocidad del servomotor a 6V, tomada del datasheet (Ver Anexo C).
Para hallar la aceleracin se divide la velocidad en 1.2 segundos el cual es el
tiempo que transcurre desde la posicin inicial del servo hasta llegar a velocidad
constante.
1= 2=
m
s
0.5984
1.2 s
=0.4987
m
2
s
L1=L2=0.08 m
Las inercias
I1 , I2 , I 4
I 4=0.012 kg m2
Variable
M ele
Descripcin
Masa del electroimn
V ele
mat
b
63
kg
=0.4239 kg
m3
1
1
M ele ( b2 +h2 ) + M ele d= 0.4239 kg ( ( 0.06 m )2 + ( 0.03 m )2) + 0.4239 kg ( 0.32 m )2 =0.0435 kg m2
12
12
Los valores de
1 y 2
valores estndar altos para realizar la solucin de este mtodo con los valores
ms altos, con lo cual se obtiene como resultado el mayor torque posible.
1= 2=0.003
N m s
rad
64
24.7 kgcm x
1m
m
x 9.81 2 =2.42 Nm
100 cm
s
65
66
67
convierta los pixeles positivos a negativos, esto se logr restando 320 al nmero
de pixeles que arrojaba la imagen siempre y cuando estos fueran mayores a 320.
A continuacin se muestran dos ejemplos, en los cuales se le ingresaron datos
reales al programa realizado en Matlab y este arroj los valores de los ngulos
1
deseada.
Para el primer ejemplo se tomaron las siguientes coordenadas en donde se debe
posicionar el manipulador robtico, el resultado se ilustra en la Figura 48:
x deseado = 30 cm
y deseado = 10 cm
Donde:
1=27.2412
2=9.6287
69
Donde:
1=170.3713
2=152.7588
Luego de tener el programa realizado y probado en Matlab se procedi a adquirir
las coordenadas de los cubculos, los cuales siempre estarn en la misma
posicin por ende con una sola captura basta para procesar dicha posicin y
programar para que el brazo luego de ubicarse y recoger la pieza, proceda a
clasificarla (ver Figura 50).
70
Descripcin
Distancia desde la articulacin hasta el centro masa del
eslabn
m1
m2
Masa electroimn
I1
I2
Inercia electroimn
ngulo de la articulacin
ks
x1
x2
y1
y2
72
kp
ka , kb
Ra
Vi
x 2=2 L1 cos 1
y 2=2 L1 sin 1
x 2=2 L1 1 sin 1
y 2=2 L1 1 cos 1
73
2
2
2
2 2
2
2 2
2
2 2
1= x 1+ y 1=L1 1 sin 1 + L1 1 cos 1=L1 1
2
2
2
2 2
2
2 2
2
2 2
2= x 2+ y 2=4 L1 1 sin 1+ 4 L1 1 cos 1 =4 L1 1
Energa Cintica
1
2 1
2 1
2 1
2
T = m1 1+ I 1 1+ m2 2+ I 2 1
2
2
2
2
1
2 2 1
2
2 2 1
2
T = m1 L1 1+ I 1 1 + 2 m2 L1 1+ I 2 1
2
2
2
Energa Potencial
V =m1 g L1 sin 1+ 2m 2 g L1 sin 1
Lagrangiano
L=T V
L=
1
m1 L21+ I 1 +4 m2 L21+ I 2 ) 21sin 1(m1 g L1 +2 m2 g L1)
(
2
L
L R1
+
= 1
1 1 1
{ }
L
=( m 1 L21 + I 1 + 4 m 2 L21 + I 2) 1
1
74
{ }
L
= ( m 1 L21 + I 1+ 4 m2 L21 + I 2 ) 1
1
L
=cos 1(m1 g L1 +2 m2 g L1)
1
R1
= 1 1
1
75
V a=La
dia
dia
+ Ra ia+ ea=L a
+ R a ia+k b m
dt
dt
m =Kia=k 1 k 2 ia=k a ia
Reemplazando se obtiene:
76
o =J m m + Bm m
o =k a ia
Despejando
ia=
ia
o
ka
V a=
La
R
o + a o + k b m
ka
ka
V a=
La
R
(J m m + Bm m )+ a o +k b m
ka
ka
Despejamos o
o=
(B m La m + J m La m +k a (k b m V a ))
Ra
77
1
La=0 , y reemplazando m =
n
(teniendo en
Se reemplaza el voltaje Va
V a= A k s k p 1 k p 2 V i A k s p
A k a k s k p 1 k p 2 V i( A k a k s p ) k a k b
Ra
( k k 1n + R ) s+( R m g L +2 R m g L + A k k p )] ( s )=( A k k k
( Ra m1 L21 + Ra I 1 +4 Ra m2 L21+ R a I 2 ) s2 +
Considerando que
G ( s )=
(s )
=
V i ( s)
A ka k s k p
( k k 1n + R ) s+( R m g L +2 R m g L + A k k p)
( Ra m1 L21 + Ra I 1 + 4 Ra m2 L21 + Ra I 2 ) s2 +
L1=0.08 m
La inercia del eslabn fue tomada del diseo realizado en Solid Edge teniendo en
cuenta el material (ABS).
I 1 =0.007 kg m2
La inercia del electroimn fue tomada del clculo hallado en la seccin 5.3.3.1.
I 2 =0.0435 kg m2
79
p1
N m
A
k b =0.04
V s
rad
Ra=1.6
A=10
k s=6
k p =1
p=1
80
n=
No 4 No 5 No 6 No 8 62 12 48 42
x
x
x
= x
x
x =20 :1
No 3 No 1 No 2 No 7 10 48 10 16
siguiente manera:
G ( s )=
(s )
=
V i ( s)
A k a ks k p
( k k 1n ) s +( R m g L +2 R m g L + A k k p )
( Ra m1 L21 + Ra I 1 + 4 Ra m2 L21 + Ra I 2 ) s2 +
G ( s )=
(s )
21
=
2
V i ( s ) 0.088439 s + 0.287 s+ 21.562
ts=
4
n
n=4
Mp=100 e
1 2
=0.59
4
n= =6.76
d=n 1 2=5.45
Los polos de diseo son:
z 1,2=e (
n i d ) Ts
=0.573874 0.347909i
82
s=
2
T
Donde
10n=
Donde
2
T
n=6.76
Por consiguiente
T=
es igual a:
2
=0.092536
10 n
Se procedi a tomar
T =0.1
G(z)=
1.602 z+1.403
z +1.309 z +0.7286
2
GPI
T
KiT 2 Kp
Kp+ Ki )z+
(
2
KiT +2 Kp
( z )=
=K
z1
PI
z +a
z1
Condicin de fase:
GPI ( z )+ G ( z )=180
z +a
1.602 z +1.403
+
=180
z1 z 2 +1.309 z+ 0.7286
z+ a
( z +a) ( z1)+
85
Luego de despejar
z+ a
ngulos correspondientes
(z +a)=180+ 144.770213.4954+26.8543
(z +a)=334.1291
Como el valor de
(z +a)
Fuente: Autores
0.347909
a0.573874
(cero)
0.487733 a0.279897=0.347909
a=
0.347909+ 0.279897
= a=1.2874
0.347909
K PI
Para obtener
0.550087
1.89214
|K PI|
1
=4.34479
K PI
K PI =0.2303
Por lo tanto el controlador PI discreto es:
GPI ( z )=K PI
z+ a
z1
GPI ( z )=0.2303
z+ 1.2874
z1
87
de
diseo
estipuladas,
las
cuales
son
el
tiempo
de
GPI ( z )=0.2303
z+ 1.2874
z1
T
[ e( kT )+e ((k 1)T ) ]
2
Kp
ganancia que multiplica cada muestra de la seal del error. Por ende la ecuacin
que se utiliza para realizar el algoritmo en Arduino para el control PI es la
siguiente:
m ( kT ) =( Kp e )+ m ( k1 ) T +
T
[ e (kT )+ e ( (k1)T ) ]
2
Para poder programar esta ecuacin en el Arduino es necesarios seguir los pasos
explicados en la Figura 59.
89
90
91
6. RESULTADOS
Se realizaron pruebas de reconocimiento de 30 cuadrados y 30 crculos, de los
cuales existan 15 de cada color para cada una de las formas. Respecto al
reconocimiento de colores, como se tienen tambin 30 figuras de cada color, se
obtuvo la matriz de confusin de la Tabla 9.
Rojo
Verde
Azul
Rojo
28
4
2
Verde
2
25
4
Azul
0
1
24
Cuadrad
92
Circulo
Cuadrad
o
25
o
Circulo
10
20
Las pruebas realizadas con respecto a las organizacin de las piezas se realizaron
con 45 cuadrados y 45 crculos, de los cuales 15 eran de color rojo,15 de color
azul y 15 de color verde, en estas pruebas se tuvo en cuenta que reconociera bien
el color, la forma, que llegara a la pieza correspondiente y que la clasificara en su
debido cubculo, a continuacin se describen los resultados.
BIBLIOGRAFA
95
[1] Conceptos bsicos de Visin Artificial. Consultado en Octubre del 2015. Visin
Artificial, Aplicacin prctica de la Visin Artificial en el control de procesos
industriales, Febrero 2012, Gobierno de Espaa Ministerio de Educacin
Disponible
en:
http://visionartificial.fpcat.cat/wp-
content/uploads/UD_1_didac_Conceptos_previos.pdf
[2] Platero Dueas Carlos. (2011). Universidad Politcnica de Madrid, Dpto.
96
98
1 GHz
512 MB de RAM o ms
Conexin a Internet
2 GB de RAM
Informacin de garanta
Dos aos de garanta de hardware limitada
Esta caja contiene
99
Especificaciones:
o Videoconferencias HD (1280 x 720 pxeles) con el sistema
recomendado
o Captura de vdeo: Hasta 1280 x 720 pxeles
o Tecnologa Logitech Fluid Crystal
o Fotos: Hasta 3.0 megapxeles (mejora por software)
o Micrfono integrado con reduccin de ruido
o Certificacin USB 2.0 de alta velocidad (se recomienda)
o Clip universal para monitores LCD, CRT o porttiles
Fuente: http://www.logitech.com/es-roam/product/hd-webcam-c270
Basic Information
Modulation:
Analog
4.8V:
275.0 oz-in (19.80 kg-cm)
Torque:
6.0V:
343.0 oz-in (24.70 kg-cm)
4.8V:
0.19 sec/60
Speed:
6.0V:
0.14 sec/60
dWeight:
5.36 oz (152.0 g)
Length:
2.60 in (66.0 mm)
Width:
Dimensions:
1.18 in (30.0 mm)
Height:
2.27 in (57.7 mm)
Motor Type:
3-pole
Gear Type:
Plastic
Rotation/Support:
Dual Bearings
Fuente: http://www.servodatabase.com/servo/hitec/hs-805bb
ANEXO C. Datasheet rodamiento KML 6010
101
Fuente: http://www.kml-bearing.com/wp-content/uploads/2015/09/KML-BallBearings-C2013.pdf
ANEXO D. Datasheet rodamiento 6008 Z
102
Fuente: https://eshop.ntn-snr.com/es/6008-Z-646713.html
ANEXO
E. Datasheet electroimn
103
104
Fuente: http://dictator.es/wp-content/uploads/2014/01/807-Es131122_Electroimanes_rectangulares1.pdf
105
106
Fuente: https://www.arduino.cc/en/Main/ArduinoBoardMega
107