Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2
f =
2
y
x
2
+
2
y
x
2
ec. 1
Como en el caso del gradiente, la ecuacin 1 se puede implementar en forma
digital en varias formas, por ejemplo:
2
f = 4z
5
(z
2
+z
4
+ z
6
+z
8
) ec. 2
En donde los coeficientes z hacen parte de una imagen 3X3 como se muestra a
continuacin
[
z
1
z
2
z
3
z
4
z
5
z
6
z
7
z
8
z
9
]
Siendo la laplaciana un operador de segunda derivada, el requisito bsico para
poder definirla apropiadamente, es que tanto los coeficientes asociados con el
pxel central como los coeficientes asociados con el resto de pixeles sean
negativos, pues como este operador es una derivada, la suma de los
coeficientes tendr que ser de una valor igual a cero, siempre y cuando el punto
en cuestin y sus vecinos tengan el mismo valor (Pajares & De la cruz, 2003).
Existen diferentes mtodos de aproximacin del operador laplaciano, como el
empleo de mscaras laplacianas (figura 10), las cuales se caracterizan por ser
simtricas rotacionalmente, a diferencia de las mscaras de primera derivada,
por lo que son capaces de detectar bordes en todas las direcciones espaciales.
Dichas aproximaciones pueden ser aplicadas efectuando una operacin de
convolucin entre una mscara y la imagen en cuestin, del resultado de la
convolucin posteriormente se analiza el signo del resultado (positivo o
negativo), esto con el fin de examinar el lado del borde que es ms o menos
oscuro e informacin relacionada con la direccin.
43
Figura 10. Implementacin digital de
operadores Laplaciana.
Fuente: Gonzalo Pajares Martinsanz, Jess M.de la Cruz Garcia. Vision por
computador. 2 Edicin Alfaomega Mxico
En la figura 12 (a), se puede apreciar el resultado de aplicar la primer mascara
(figura 10 (a)), a la imagen original (figura 11). Dependiendo del coeficiente
central que se escoja, se obtendrn imgenes con diferentes tipos de escalas
de grises, debido a las operaciones de convolucin que se realizan sobre cada
pixel. Por ejemplo, en la figura 12 (b), se muestra el resultado de hacer la
convolucin de la imagen original y la mscara de la figura 12 (a), con la
diferencia de que el coeficiente central de dicha mascara es ahora 5.
Ahora, si se escogen valores mayores para este pixel central, la imagen cambia
considerablemente, como puede apreciarse en la figura 12 (c) y (d), en donde
se tom la misma mascara de la figura 10 (a) y se cambiaron los valores
centrales a 10 y 20 respectivamente (Pajares & De la cruz, 2003).
Figura 11.Imagen Original para el
procesamiento.
Fuente: Gonzalo Pajares Martinsanz, Jess M.de la Cruz Garcia. Visin por
computador. 2 Edicin Alfaomega Mxico
44
Figura 12. Resultado de aplicar el operador
de la figura 10 a la imagen original de la
figura 11 (a); (b), (c), (d) son resultados de
aplicar el mismo operador pero con su valor
central 5,10 y 20 respectivamente.
Fuente: Gonzalo Pajares Martinsanz, Jess M.de la Cruz Garcia. Visin por
computador. 2 Edicin Alfaomega Mxico
7.3.6.2 Operador Laplaciana de la gaussiana
El empleo del operador Laplaciana de la Gaussiana (LG), se justifica por
estudios realizados acerca de la organizacin espacial de los campos
receptivos de las clulas retnales, asociado a la estructura simtrica circular
que involucra una regin excitatoria central y una regin inhibidora envolviendo
a la primera (Pajares & De la cruz, 2003).
Marr-Hildreth (1982, 1985), en este estudio aplica el concepto de la LG en su
teora computacional, examinando la existencia de tres fases para llegar a una
representacin 3D a partir de la 2D, para esto contempla la deteccin de los
cambios de intensidad de la imagen, examinando tanto la medida de los
gradientes de intensidad en diferentes escalas, como la medida de precisin de
la localizacin de esos cambios, esto con el fin de emplearlos en filtros de
suavizado que permitan seleccionar la informacin de la intensidad de los
45
niveles de gris en diferentes escalas y elegir un tipo de filtro capaz de optimizar
tanto frecuencia espacial como localizacin posicional.
Posteriormente, Marr-Poggio (1979) sugiere el empleo de la teora de la
deteccin de bordes de Marr-Hildreth (1980) para hacer convolucin imgenes
con funciones LG (Pajares & De la cruz, 2003); por tal motivo, se tiene que:
2
G(x, y) = K(2
x
2
+y
2
2
)e
(
x
2
+y
2
2
2
)
ec.3
Donde
G(x, y) =
1
2
e
(
x
2
+y
2
2
2
)
ec. 4
2
es el operador Laplaciana definido en ec 1, k es una constante de escalado,
que se introduce de forma adicional una vez obtenida ec 3. a partir de ec 4
para determinar el rango de valores de la LG .
En la figura 13 (a) se representa el operador dado en ec. 3 con y=0, es decir en
el caso unidimensional, mientras que en la figura 13 (b) se muestra el operador
bidimensional. En los dos casos con K=0,5.
Figura 13.Representacion del operador LG.
a.Unidimensional, b.Bidimensional.
Fuente: Gonzalo Pajares Martinsanz, Jess M.de la Cruz Garcia. Visin por
computador. 2 Edicin Alfaomega Mxico
46
Para la implementacin digital del operador dado en la ec. 3,se puede seguir los
siguientes pasos:
1. Fijar y determinar los valores del operador para las diferentes
posiciones, comenzando en el centro del operador, esto es, x =
0,1, e y = 0,1. Debido a la simetra del operador esto solo se
necesita calcular en su cuadrante.
2. Escalar los valores del operador mediante K.
3. Calcular los valores mediante la ecuacin ec. 3 y redondearlos al
entero ms prximo.
4. Extender el ancho de la mscara de forma que contenga todos los
valores distintos de cero.
5. Ajustar de forma simtrica los valores, mediante la adicin o
substraccin de valores pequeos hasta conseguir que todos los
valores de la mscara sumen cero.
En la tabla 1, se puede observar la correspondiente mscara asociada a este
tipo de operador (Pajares & De la cruz, 2003).
Tabla 1. Cuadrante superior izquierdo para una
mscara de la LG.
Con dimensiones 15x15, con k=256 = 2.0
Fuente: Gonzalo Pajares Martinsanz, Jess M.de la Cruz Garcia. Visin por
computador. 2 Edicin Alfaomega Mxico
47
El filtro dado por la ecuacin 3 resulta bastante costoso en tiempo de
computacin, debido a las dimensiones de las mscaras que son relativamente
grandes para obtener resultados satisfactorios, no obstante presenta las
siguientes propiedades:
a. Es un operador segunda derivada, reduce el efecto del ruido al suavizar
la imagen por el efecto Gaussiano.
b. Es un operador istropo capaz de detectar bordes en todas las
orientaciones posibles.
c. Es un operador capaz, de trabajar a diferentes escalas con la simple
variacin de la desviacin estndar (), ya que, el rango de frecuencia
(espaciales) varia con como se desprende del anlisis de su funcin de
transferencia.
G(u, v) = (u
2
+v
2
)exp[
(u
2
+v
2
)
2
]
En la figura 14 se representa la funcin de transferencia unidimensional.
Ahora, examinemos la influencia de , sobre el anlisis de la respuesta en
frecuencia espacial, en donde se pone de manifiesto que cuanto mayor es ,
ms estrecho es el ancho de banda del filtro y en consecuencia, en este ltimo
caso, habr un menor nmero de pasos por cero. El menor nmero de pasos
por cero, la presencia de una realidad fsica, es decir de un borde real no
originado por ruido u otros fenmenos espurios, lo que la convierte en una base
de anlisis para diferentes escalas.
48
Figura 14.Respuesta en frecuencia
unidimensional del operador LG.
Fuente: Gonzalo Pajares Martinsanz, Jess M.de la Cruz Garcia. Vision por
computador. 2 Edicin Alfaomega Mxico
El efecto producido por el hecho de utilizar diferentes valores de se muestran
en la figura 15 (b) y (c), cuanto mayor sea , habr ms atenuacin de los
bordes y en consecuencia menor densidad de ceros.
En la figura 16 (a) se observa el resultado de la convolucin con la mscara
dada en la tabla I. En este resultado, el negro representa los valores ms
negativos, y el blanco los valores ms positivos, por tanto los valores de gris
intermedios representan los ceros.
La figura 16 (b) muestra una imagen binaria creada poniendo todos los valores
negativos en 16 (a) a negro y todos los valores positivos a blanco (Pajares & De
la cruz, 2003). Por tal motivo, a partir de esta imagen, se facilita realizar la
deteccin de bordes si cambiamos los valores intermedios de gris a un lmite
(ya sea negro o blanco), o simplemente eliminando los valores que representan
los ceros.
49
Figura 15. (a) Resultado de la convolucin
con la mscara dada en la figura de la
imagen de la figura.
(b) imagen binaria para simplificar el
proceso de deteccin de ceros. (c). Imagen
de ceros.
Fuente: Gonzalo Pajares Martinsanz, Jess M.de la Cruz Garcia. Visin por
computador. 2 Edicin Alfaomega Mxico
Figura 16. (a) Imagen Original.
(b) Ceros obtenidos con t=400 y = 2.0
Fuente: Gonzalo Pajares Martinsanz, Jess
M.de la Cruz Garcia. Visin por
computador. 2 Edicin Alfaomega Mxico.
50
7.3.7 Sistema de adquisicin de datos
Un sistema de adquisicin de datos es un instrumento que permite obtener
datos de un proceso, tomando la seal medida y convirtindola en una seal
elctrica. El sistema de adquisicin de datos tiene las siguientes etapas:
a. Conversin de la magnitud fsica en una seal elctrica a travs de
sensores o transductores.
b. Acondicionamiento de seal que incluye aislamiento, filtrado, conversin
y amplificacin de la seal.
c. Sistema de tratamiento que va a transformar la informacin digital en
informacin til para el usuario.
d. Sistema de visualizacin para el usuario final.
Figura 17. Sistema de adquisicin de datos.
Fuente: Los Autores
7.3.8 Protocolos de comunicacin
7.3.8.1 Comunicaciones Seriales
La comunicacin serial es un protocolo para comunicacin entre dispositivos. El
puerto serial enva y recibe bytes de informacin un bit a la vez. Aunque la
comunicacin en serie es ms lenta que la comunicacin en paralelo, que
permite la transmisin de una cantidad determinada de informacin de forma
simultnea, este mtodo de comunicacin es ms sencillo y puede alcanzar
grandes distancias a velocidades elevadas (Mateus et al., 2010).
Tpicamente, la comunicacin serial se utiliza para transmitir datos en formato
ASCII (American Standard Code for Information Interchange). Para realizar la
comunicacin se utilizan 3 lneas de transmisin: (1) Tierra (o referencia), (2)
Transmisin, (3) Recepcin. Debido a que la transmisin es asincrnica, es
posible enviar datos por una lnea mientras se reciben datos por otra. Las
caractersticas ms importantes de la comunicacin serial son la velocidad de
51
transmisin, los bits de datos, los bits de parada, y la paridad. Para que dos
puertos se puedan comunicar, es necesario que las caractersticas sean iguales.
7.3.8.2 Estndar RS-232
(Estndar ANSI/EIA-232) es el conector serial hallado en las PCs IBM y
compatibles. Es utilizado para una gran variedad de propsitos, como conectar
un ratn, impresora o modem, as como instrumentacin industrial. Gracias a las
mejoras que se han ido desarrollando en las lneas de transmisin y en los
cables, existen aplicaciones en las que se aumenta el desempeo de RS-232 en
lo que respecta a la distancia y velocidad del estndar (Mateus et al., 2010). RS-
232 est limitado a comunicaciones de punto a punto entre los dispositivos y el
puerto serial del computador. El hardware de RS-232 se puede utilizar para
comunicaciones seriales en distancias de hasta 50 pies.
1
7.3.8.3 Protocolos de Red
Ethernet
Ethernet es un conjunto de tecnologas de red y mtodos de acceso a medios
especificados para las redes LAN. Ha sido desarrollado para permitir a las
computadoras comunicarse a travs de cortas distancias a travs de un medio
fsico. Ethernet ha evolucionado como la tecnologa ms extendida para las LAN
cableadas. La mayora de las redes Ethernet utilizan cables de par trenzado en
sus subredes y las fibras pticas y cables coaxiales en la red troncal. Las
especificaciones de Ethernet y las normas son tambin conocidas como
IEEE802.3.
2
El protocolo Ethernet, se caracteriza por tener una topologa bus, lo que permite
tener una mayor velocidad, sin embargo, el consumo de ancho de banda es alto
debido a que todos los datos dentro de la LAN deben pasar por el mismo bus y
se pueden presentar colisiones que retrasen los datos. Es por esto que esta
1
www.itescam.edu.mx
2
http://www.acm.org/elementk
52
topologa es muy til por su velocidad pero, siempre y cuando, la LAN no sea
muy extensa, es decir, posea pocos host y que estos no mantengan intercambio
de datos permanentemente o exista difusin o broadcast de forma continua, lo
que mejorar el ancho de banda y reducir las colisiones.
Para mejorar este desempeo existen protocolos internos del 802.3 como el
CSMA y CSMA/CD que se encargan de reducir y detectar colisiones, este
mtodo es muy comnmente usado y efectivamente disminuye el consumo de
ancho de banda reduciendo la cantidad de colisiones.
Otra forma de evitar este alto consumo de ancho de banda es usar este tipo de
arquitecturas en LAN con pocos host, y que los host que hagan parte de ella no
requieran de un intercambio de datos continuo, de esta forma sern mnimas las
colisiones y el consumo de ancho de banda. Es por esta razn que es el ms
popular a nivel mundial, pues en todas las casas y pequeas empresas es la
arquitectura ms econmica y funcional debido a la poca cantidad de host
usados y al poco flujo de datos a travs de la lnea de transmisin (Mateus et al.,
2010).
3
7.3.9 Instrumentacin virtual
El concepto de instrumentacin virtual nace a partir del uso del computador
personal (PC) como "instrumento" de medicin de tales seales como
temperatura, presin, caudal, etc. Es decir, el PC comienza a ser utilizado para
realizar mediciones de fenmenos fsicos representados en seales de
corriente y/o voltaje. Sin embargo, el concepto de "instrumentacin virtual"
tambin involucra el procesamiento, anlisis, almacenamiento, distribucin y
despliegue de los datos e informacin relacionados con la medicin de una o
varias seales especficas; involucrando la interfaz hombre-mquina, las
funciones de anlisis y procesamiento de seales, las rutinas de
almacenamiento de datos y la comunicacin con otros equipos (Mateus et al.,
2010). El instrumento virtual es definido entonces como una capa de software y
hardware que se le agrega a un PC en tal forma que permite a los usuarios
interactuar con la computadora como si estuviesen utilizando su propio
3
http://www.acm.org/elementk
53
instrumento electrnico diseado de acuerdo con requerimientos especficos.
Para construir un instrumento virtual, slo se requiere de un PC, una tarjeta de
adquisicin de datos con acondicionamiento de seales (PCMCIA, ISA, XT,
PCI, etc.) y el software apropiado, los tres (3) elementos clave en la
conformacin de un instrumento virtual, teniendo un chasis de
acondicionamiento de seales como elemento opcional.
4
8. DISEO DESARROLLO Y RESULTADOS
En este apartado del documento se detalla el proceso de desarrollo del diseo
de la interfaz de usuario y se explica detalladamente el proceso de
implementacin e incorporacin de todo el sistema etapa por etapa, detallando
aspectos relevantes al Kinect, en cuando a la obtencin de imgenes y mapas
de profundidad se refiere, diseo y caractersticas de la interfaz grfica de
usuario diseada en LabVIEW e incorporacin del sistema inalmbrico
bidireccional (Mateus et al., 2010).
La Interfaz De Monitoreo Con Visin Artificial Usando Kinect Aplicado A
Procesos Industriales, en la Universidad Santo Toms seccional Tunja, se
desarrolla de acuerdo con el diagrama de bloques de la figura 18, el cual
plantea el diseo de un prototipo de interfaz de usuario que emplea el
tratamiento digital de imgenes, buscando brindar un soporte a empresas y
fbricas que requieran sistemas de identificacin y manipulacin basados en
procesamiento de imgenes, capaces de interactuar directamente con una
planta sin contacto, brindando una interfaz sencilla, amigable y confiable a
cualquier usuario.
4
http://digital.ni.com/worldwide/latam.nsf/
54
Figura 18. Diagrama de bloques.
Fuente: Autores.
A grandes rasgos, el sistema se puede describir en el siguiente esquema:
Figura 19. Diagrama esquemtico de las etapas
del proyecto.
Fuente: Autores.
55
Asimismo, se puede observar la estructura del desarrollo del proyecto en el
diagrama esquemtico de la figura 20, que muestra de forma grfica la relacin
entre todos los diferentes dispositivos empleados, desde la adquisicin de
imgenes por medio del sensor Kinect, pasando por la interfaz de usuario, los
mdulos de comunicacin inalmbrica, la interconexin hacia los protocolos
seriales a Ethernet, hasta llegar a las subestaciones caracterizadas por ser
sistemas microcontrolados que obtienen datos de la planta y actan a la vez
sobre la misma.
Figura 20. Diagrama esquemtico.
Fuente: Autores.
56
8.1 ADQUISICIN DE LA IMAGEN
El bloque inicial del sistema se encuentra constituido por la etapa de adquisicin
de imgenes constituida por el sensor Kinect, su ubicacin en el diagrama se
detalla en la figura 21.
Figura 21. Adquisicin de la imagen en el
diagrama de bloques.
Fuente: Autores
El dispositivo asocia mltiples sensores muy poderosos para profundidad,
generacin de esqueleto, y entradas de video y audio, ocasionando gran
impacto a nivel mundial en reas del conocimiento como en la ciencia, la
ingeniera y la medicina, a continuacin se detallar el principio de
funcionamiento, caractersticas del sensor y ventajas frente a otros sistemas de
captura.
Los mapas de profundidad se pueden clasificar dependiendo de la tcnica de
medida de profundidad que se emplee, como se puede observar en el siguiente
esquema:
57
Figura 22. Clasificacin de las tcnicas de
medida para el mapa de profundidad.
Fuente: Castaneda Victor, Navad Nassir. Kinect Programming for Computer
Vision. Technische Universitt Mnchen.2012
El mtodo Time-of-Flight (tiempo de vuelo) describe una variedad de mtodos
que miden el tiempo que le toma a un objeto, partcula o acstica,
electromagntica o de otro tipo de onda que viaja una distancia a travs de un
medio (Castaneda & Navab, 2011). Las cmaras que aprovechan este efecto se
denominan time-of-flight camera (cmara de tiempo de vuelo) y es un sistema
que toma una gama de imgenes con el fin de resolver el valor de distancia,
basndose en la velocidad conocida de la luz, midiendo el tiempo de vuelo de
una seal de luz entre la cmara y el objeto en cada punto de la imagen. Las
imgenes de Time of Flying (ToF), se basan en el principio de Medir la distancia
a un objeto 3D, midiendo el tiempo absoluto que necesita un pulso de luz para
viajar desde una fuente en la escena 3D y regresar (figura 23).
Figura 23. Modulacin Pulso.
Fuente: Castaneda Victor, Navad Nassir. Kinect Programming for Computer
Visin. Technische Universitt Mnchen.2012
58
Esta tcnica se caracteriza por realizar una captura directa de la medida del
tiempo de vuelo, asocia pulsos de alta energa que influencia una iluminacin
de fondo, entre otras; por otro lado, presenta las desventajas de requerir una
alta precisin en la medida de los tiempos de pulso y la medida de la luz de
pulso de retorno es inexacta debido a la dispersin de luz ocasionada por la luz
externa, a raz de esto se empezaron a trabajar sistemas que proporcionaban
seales continuas oscilantes y se registraba los cambios de fase, pero aun as
la luz externa afectaba en los datos recibidos del sistema.
La tcnica de la luz estructurada por otro lado se caracteriza por proyectar un
patrn de luz conocido en la escena 3D, visto por la cmara (s) y examina
directamente la distorsin del patrn de luz, lo que permite calcular la estructura
3D. Asociado a la luz estructurada existen diferentes tipos de imgenes, como:
- Multiplexacin en el tiempo.
- Codificacin directa.
- Barrido espacial.
Esta codificacin tiene que ser nica por cada posicin, esto con el fin de
reconocer cada punto en el patrn; por tal motivo, el Kinect utiliza un patrn
pseudoaleatorio ms centrado en el tipo de imagen de barrido espacial
(Castaneda & Navab, 2011).
8.2 PRINCIPIO DE FUNCIONAMIENTO
Lo que convierte al dispositivo en un elemento simple y sencillo que incorpora
todos los elementos necesarios para examinar los patrones de luz sin
problemas de interferencia de luz externa, es la forma en que aprovecha la
interaccin entre el proyector de infrarrojos y la cmara IR CMOS. A
continuacin se detalla una breve explicacin de cmo funciona este dispositivo
en la figura 24.
59
Figura 24. Principios de Kinect.
Fuente: Castaneda Victor, Navad Nassir. Kinect Programming for Computer
Vision. Technische Universitt Mnchen.2012
En primer lugar se proyecta un patrn conocido (en forma de motas o puntos)
sobre un entorno u objeto(s) cercano disponiendo una escena, luego la cmara
de IR CMOS se encarga de observar la escena proyectada; la proyeccin es
generada por un difusor y un elemento difractor de luz infrarroja. Finalmente,
para poder efectuar esta operacin es necesario que el proyector y la cmara
estn calibrados adecuadamente (Castaneda & Navab, 2011).
Figura 25.Barrido espacial.
Fuente: Castaneda Vctor, Navad Nassir. Kinect Programming for Computer
Vision. Technische Universitt Mnchen.2012
60
8.2.1 Reconocimiento (Mapa de Profundidad)
El segundo bloque caracterstico del sistema se encuentra constituido por la
etapa de reconocimiento del mapa de profundidad proporcionado por el sensor,
su ubicacin en el diagrama se detalla en la figura 26.
Figura 26. Reconocimiento (mapa de
profundidad) en el Diagrama de bloques
Fuente: Autores
- Datos de Profundidad
Para el clculo de los datos de profundidad, el sensor efecta una triangulacin
de cada punto, entre una imagen virtual (patrn) y el patrn observado. Cada
punto o mancha tiene asociado un correspondiente punto o mancha dentro del
sensor, esto gracias que Kinect (vase marco conceptual_ Kinect) incorpora
diferentes patrones de imgenes y de sonido de diferentes personas
almacenadas en un procesador dentro del dispositivo, facilitando la captacin
por parte del sensor.
61
Figura 27. Triangulacin de cada punto, entre
una imagen patrn y la imagen capturada.
Fuente: Castaneda Victor, Navad Nassir. Kinect Programming for Computer
Vision. Technische Universitt Mnchen.2012
Una vez se tenga calibrado el punto patrn, se calcula el mapa 3D del cuadro (o
frame) inicial y la direccin x asociada a los cambios del punto observado, esto
con el fin de renovar el mapa 3D. La calibracin del dispositivo se lleva a cabo
en el momento de la fabricacin del mismo, al igual que el conjunto de
imgenes de referencia que fueron tomadas en diferentes lugares y
posteriormente almacenadas en memoria.
Figura 28. Influencia de la distancia y
orientacin del sensor en la deteccin de la
imagen.
Fuente: Castaneda Victor, Navad Nassir. Kinect Programming for Computer
Vision. Technische Universitt Mnchen.2012
62
El tamao y forma de los puntos o manchas, depender mucho de la distancia y
orientacin propia del sensor, adems de que el dispositivo utiliza 3 diferentes
tamaos de puntos o manchas sobre 3 regiones a diferentes distancias; por tal
motivo entre ms cerca este el objeto habr una mayor exactitud y entre ms
lejos se encuentre habr una menor exactitud, como se puede observar en la
figura 29, en donde tanto el difusor como el elemento difractor, se encargan de
generar los patrones de puntos sobre tres regiones concretas.
Figura 29.Regiones de captura de imagen
Fuente: Castaneda Victor, Navad Nassir. Kinect Programming for Computer
Vision. Technische Universitt Mnchen.2012
Acorde a la regin en donde se encuentre el objeto de anlisis, el patrn de
puntos ser diferente, por lo cual:
- La Regin 1, permite obtener una superficie de profundidad de alta precisin
para objetos ubicados a una distancia aproximada de 0,8 a 1,2 m del sensor.
- La Regin 2, permite obtener una superficie de profundidad de precisin
media para objetos ubicados a una distancia aproximada de 1,2 a 2 m del
sensor.
- La Regin 3, permite obtener una superficie de profundidad de baja precisin
para objetos ubicados a una distancia aproximada de 2 a 3,5 m del sensor.
63
Por requerimientos y facilidades del proyecto, se opt por trabajar en un rango
comprendido entre la regin 1 y la regin 2, con el fin de obtener patrones
adecuados para la posterior etapa de descripcin de contornos (ms adelante
ser detallada).
- Obtencin del mapa de profundidad
Verificacin y reconocimiento del dispositivo Kinect en LabVIEW.
Para poder capturar el mapa de profundidad, se hizo uso del entorno de trabajo
LabVIEW debido a que constituye un revolucionario sistema de programacin
grfica para aplicaciones que involucren adquisicin, control, anlisis y
presentacin de datos; adems de que facilita la integracin con el sistema de
monitoreo y control remoto de acceso inalmbrico bidireccional con aplicabilidad
a procesos industriales, mencionado en el objetivo general del proyecto
propuesto.
Para poder trabajar Kinect y LabVIEW, se hace necesario adquirir los
drivers del sensor para que pueda ser reconocido por el equipo, En la Figura 30
y la tabla 2, se detallan los drivers necesarios para instalar el dispositivo:
Figura 30. Drivers Sensor Kinect.
Fuente: Autor
64
Drivers Dispositivo
Xbox_NUI_Audio Audio
Xbox_NUI_Camera Video
Xbox_NUI_Motor Motor
(Kinect)
Tabla 2. Drivers de Instalacin
Fuente: Autores.
Posteriormente, es necesario los subVIS que permiten adquirir los datos
proporcionados por el Kinect en LabVIEW, a continuacin en las Figuras 31
a la 34, se detallan los Vis ms importantes del proyecto:
Figura 31. SubVI de adquisicin de imagen
RGB.
Fuente: Autor
Get_image_imaq, proporciona la imagen RGB entregada por el Kinect
adems de un arreglo de datos de la imagen adquirida.
Figura 32.SubVI de adquisicin de imagen de
profundidad.
Fuente: Autor
Get_depth_imaq, proporciona un mapa de profundidad en donde se detalla los
objetos ms cercanos y lejanos al sensor.
65
Figura 33. SubVI de configuracin de ngulo
de vista del Kinect.
Fuente: Autor
Set tilt degs, permite ajustar el ngulo del servomotor que permite posicionar al
Kinect al gusto del usuario.
Figura 34. SubVI de parada de datos.
Fuente: Autor
Stop, permite detener la ejecucin de cada uno de los subVIs empleados
anteriormente.
Para poder verificar el funcionamiento de cada uno se los subVIs, se dise un
programa (titulado Point Cloud) caracterizado por adquirir y visualizar todos
los datos que puede entregar el Kinect, el cual se detalla en la siguiente figura:
Figura 35. Programa de verificacin y prueba
del Kinect.
Fuente: Autor.
66
Este programa proporciona tanto la imagen RGB como el mapa de profundidad
que se requiere para el proyecto, adems de otras funciones como el control del
Angulo del Kinect, las caractersticas del acelermetro que incorpora el
sensor, entre otras; En la Figura 36 se detalla la Imagen RGB y la de
profundidad:
Figura 36. Imgenes (RGB y Depth)
proporcionada por el Kinect.
Fuente: Autor.
8.2.2 Seleccin de rango de trabajo (Distancias de Adquisicin).
El tercer bloque caracterstico del sistema se encuentra constituido por la etapa
de seleccin de rango de trabajo, dispuesto con el fin de trabajar sobre partes
delimitadas del mapa de profundidad, su ubicacin en el diagrama se detalla en
la figura 37.
67
Figura 37. Rango de trabajo en el diagrama de
bloques.
Fuente: Autores.
Teniendo el mapa de profundidad, se aprovecha el arreglo de datos (Raw Data
Out), generado por el SubVI de profundidad (get_depth_imaq_raw.vi), para
determinar los elementos ms cercanos y ms lejanos de la imagen, con el fin
de trabajar en un rango comprendido entre la regin 1 y la regin 2.
En la figura 38, se puede detallar en una grfica el comportamiento del sistema
de rango propuesto, en donde solo los objetos que se encuentren dentro de la
banda de paso sern detectados en esta etapa (eliminando toda la informacin
que se encuentre fuera de esta), garantizando que el sistema detecte
determinada cantidad de informacin sobre todo el mapa de profundidad.
68
Figura 38.Rango de trabajo para la adquisicin
de imagen.
Fuente: https://lc.fie.umich.mx/~jfelix/InstruII/FPB/FPB_ba.html
Como se puede observar en la anterior figura, el rango de trabajo acta como
un filtro pasa banda, lo que indica que asocia una distancia mxima y una
distancia mnima de captura; por tal motivo, es necesario conocer los rangos de
distancias en donde el sensor obtiene un mejor patrn de puntos con una
exactitud apropiada al sistema (Sean, Kean, Jonathan, 2011). Para poder
determinar dichas distancias, se efectuaron diferentes pruebas sobre los mapas
de profundidad obtenidos, examinando las distancias en donde el sensor
realizaba una mejor deteccin (figura 39).
Figura 39. Whiteboard
Fuente: Autores.
Whiteboard basada en la teora e informacin suministrada en la pgina de
Ryan Gordon (https://github.com/RyanGordon/libfree), autores: Kevin Smith and
Bryce Perry,
En la figura 39, se puede observar el desarrollo de una aplicacin que acta
como una especie de pizarra (whiteboard), en donde el usuario puede di bujar
todo tipo de figuras sobre una pizarra en el aire que es proyectada en la
69
pantalla del ordenador. El sistema capta todos los objetos que se encuentren a
una distancia comprendida de 0,8m y una distancia mxima (definida por el
usuario), todos los objetos comprendidos en ese rango sern cubiertos por una
capa de color azul en la pantalla del ordenador.
Figura 40. Evaluacin de profundidad en la
whiteboard. (Distancia de dibujo)
Seccin encargada de evaluar la profundidad en el programa whiteboard, para
determinar si el usuario se encuentra a la distancia apropiada para poder
dibujar.
Fuente: Autores
Haciendo uso de este programa y efectuando comparaciones con el mapa de
profundidad proporcionado por el subvi Get_depth_imaq_raw.vi, se logra
examinar las distancias en donde el sensor efectuaba mejores capturas,
detallando la forma y el detalle de la capa de color sobre un objeto a diferentes
distancias. Como el rango de profundidad de medicin del sensor se encuentra
entre 1,2 m y 3,5 m (lo que implica un valor numrico de salida de 10000 y
70000 en el terminal Raw Data Out del subvi get_depth_imaq_raw.vi), se opt
por seleccionar las distancias y valores numricos, contempladas en la tabla .
Distancia
Min. Del
Rango
Distancia
Max. Del
Rango
Valor Min.
De
Profundidad.
Valor Max.
De
Profundidad.
1,5 m. 2,0 m. 20000 25000
Tabla 3. Valores de distancia y valor
numrico en el programa para la
profundidad en el rango de trabajo.
Fuente: Autores
70
Para los objetos que se encuentren fuera dicho rango se mostraran de color
blanco en la pantalla y los que estn dentro de color negro, como se puede
contemplar en la figura 41:
Figura 41.Rango de trabajo funcional.
Fuente: Autor
Para la construccin del programa que permite realizar la seleccin de rango,
se efectuaron una serie de operaciones comparativas sobre los datos
proporcionados por el subvi get_depth_imaq_raw.vi, a continuacin se detallan
dichas configuraciones:
Figura 42. Determinacin del rango del filtro.
Fuente: Autores.
71
De la figura 42, puntualmente en la regin sealada en rojo, se encuentra el
sistema que permite seleccionar el rango de trabajo mencionado, estableciendo
una etapa de comparacin en donde se consideran los lmites mximos y
mnimos de distancia, contemplados por el usuario (el cual puede seleccionar
los valor mnimo y mximo a travs de dos perillas que se encuentran en el
panel frontal, figura 43). Una vez ambas condiciones se cumplan, se dispone
una etapa de conversin de elementos booleanos a valores de unos y ceros, los
cuales se multiplican por un valor 16777215 (el cual representa el mximo valor
numrico correspondiente a un color negro, esto con el fin de que todos los
datos que se contemplen dentro del rango se visualicen de dicho color);
posteriormente se realiza una conversin de los datos de un valor numrico a
un valor de 32 bits sin signo, esto con el fin de disponer un arreglo de 2-D para
la siguiente etapa que consta de un subvi encargado crear una imagen a color a
partir de dicho arreglo; finalmente se dispone un subvi para realizar una
transformacin de la imagen respecto a su simetra, esto con el fin de evitar el
efecto de espejo.
Figura 43. Perillas de control del rango del filtro
Fuente: Autores
8.2.3 Filtrado de datos
El cuarto bloque del sistema, contempla la etapa de filtrado en donde se realzan
los bordes de la imagen obtenida en la etapa anterior, con el fin de facilitar la
posterior etapa de deteccin, su ubicacin en el diagrama se detalla en la figura
44.
72
Figura 44. Filtrado de datos en el Diagrama de
bloques
Fuente: Autores.
La imagen obtenida de la etapa anterior, es procesada en esta etapa por la
herramienta de Vision Assistant de LabVIEW, el cual crea, edita y corre
algoritmos de visin; esto con el fin de poder efectuar cambios en la etapa de
filtrado y deteccin, con poca intervencin por parte del programador, pues esta
herramienta permite auto configurar los caminos y los bloques en LabVIEW
a los cambios que se realizan dentro del Vision Assistant. Esta herramienta se
encuentra dentro del mdulo de Vision and Motion dentro de Vision Express
(figura 45).
73
Figura 45. Seleccin de Vision Assistant
Fuente: Autores.
El primer paso, antes de incorporar esta herramienta al programa principal, es
tomar una imagen de muestra del mapa de profundidad obtenido (figura 46) y
realizar el filtrado correspondiente; posteriormente se incorpora el filtro como tal
en la seccin Grayscale (escala de grises), que se encuentra dentro de las
funciones de procesamiento del Vision Assistant.
Figura 46. Imagen en Vision Assistant
Fuente: Autores
Posteriormente, se configura el filtro acorde a las necesidades de la posterior
etapa, la cual requiere efectuar una deteccin de crculos, en donde se
descarten todos los dems crculos y figuras diferentes al objeto a evaluar; por
tal motivo, se opt por emplear filtros centrados en la deteccin de borde, pues
permiten evaluar el mejor circulo de todo el mapa y facilitan el seguimiento y
deteccin de dicho crculo. Luego de efectuar varias pruebas sobre los distintos
74
tipos de filtros que proporciona Visi on Assistant, se selecciona un filtro de
deteccin de borde de tipo laplaciano (figura 47).
Figura 47. Seleccin del filtro.
Fuente: Autores.
Este tipo de filtro se caracteriza por ser una funcin 2D f(x,y), siendo un
operador de segunda derivada, a continuacin se explica este mtodo de
deteccin de bordes. Este filtro examina el contraste del borde tomando la
diferencia mnima en escala de grises entre el fondo y el borde, el cual vara por
condiciones de iluminacin o por diferencias en las caractersticas de la escala
de grises (Pajares & De la cruz, 2003). La deteccin de bordes se realiza a
travs del empleo de derivadas de primer y segundo orden sobre la imagen
como se muestra en la figura 48.
75
Figura 48. Deteccin de bordes por derivacin
Fuente: Pardo Beainy Camilo Ernesto. Distribucin Binomial Aplicada a un
Sistema de Clasificacin de Piezas Utilizando Tratamiento Digital de Imgenes.
REVISTA ITECKNE volumen X.
La magnitud de la primera derivada se usa para determinar la presencia de un
borde en un punto de la imagen, es decir determinar si el punto se encuentra en
la rampa. De la misma manera la segunda derivada se usa para determinar si el
pxel se encuentra en el lado oscuro o claro del borde. Por lo cual, la principal
caracterstica de dicho operador es que destaca las regiones donde hay
cambios bruscos de intensidad, de ah viene su uso en la deteccin de bordes
(Ernesto & Andrs, 2011).
8.2.4 Descripcin de contornos (crculos)
El quinto bloque del sistema, contempla la etapa de deteccin, en donde se
buscan figuras geomtricas sobre toda la imagen, similares a las de un crculo,
su ubicacin en el diagrama se detalla en la figura 49.
76
Figura 49. Filtrado de datos en el diagrama de
bloques
Fuente: Autores.
El siguiente paso a seguir, contempla la deteccin de crculos, por lo cual en
Vision Assistant, existe una herramienta denominada shape detection, dentro
de la pestaa de Machine Vision que se encuentra dentro de las funciones de
procesamiento (figura 50). Esta herramienta permite detectar crculos, elipses,
rectngulos y lneas, sobre una parte o la totalidad de la imagen que se est
procesando.
Figura 50. Deteccin de formas vision assistant
Fuente: Autores
77
La herramienta de deteccin de formas, permite configurar los parmetros de
las figuras que se desean detectar, como por ejemplo: si se requiere una
deteccin de crculos, se puede especificar los rangos mnimos y mximos del
radio de los crculos a detectar, parmetros de longitud, rangos de rotacin de
la figura, parmetros de curva y hasta incorpora una opcin para configurar el
tamao del filtro, indicando que se asocia una etapa de filtrado adicional en esta
herramienta (figura 51).
Figura 51. Deteccin de crculos.
Fuente: Autores.
En la deteccin, se opt por realizar deteccin de crculos pues, despus de
efectuarse varias pruebas sobre la imagen, concluimos que las elipses son ms
fciles de encontrar en el entorno de la imagen, en comparacin con los
crculos; ocasionando que el sistema fuera ms selectivo a la hora de
despreciar con mayor facilidad las otras posibles figuras de forma circular.
Tabla 4.Datos de los crculos detectados por
Vision Assistant.
En la tabla anterior se pueden observar los resultados, generados por Vision
Assistant, en donde se detectaron cuatro crculos en toda la imagen, dos
ubicados en la mano del usuario y otras dos en la cabeza del mismo (figura 51);
en la tabla se detallan las caractersticas de cada uno de los crculos (radio de
los crculos y coordenadas en X y en Y ), adems de una casilla en donde se
asigna una puntuacin a cada circulo; la figura que tenga asignada la
78
puntuacin ms alta, ser la figura seleccionada por defecto por la herramienta
shape detection.
Figura 52. Vision Assistant y LabVIEW.
Fuente: Autores
Habiendo finalizado cada una de las etapas de filtrado y deteccin en Vision
Assistant, LabVIEW se encarga de generar y definir todos los parmetros
necesarios para ejecutar correctamente Vision Assistant acorde a los
parmetros definidos en la etapa cuatro y cinco (figura 49).
En la figura 52, se puede detallar las configuraciones generadas por
LabVIEW sobre el bloque de Vision Assistant, adems de que se dispuso
una etapa de conversin sobre los datos de salida, pues el bloque proporciona
todos los datos en forma de arreglo, por lo que se dispone un convesor de array
to cluster y posteriormente se separan todos los datos mediante un unbundle,
con el fin de poder examinar cada uno de los elementos individuales del arreglo.
8.2.5 Fragmentacin y segmentacin de la imagen (cuadrantes).
El sexto bloque del sistema, contempla la etapa de fragmentacin de la imagen,
dispuesto con el fin de dividir la imagen total en cuatro cuadrantes concretos, de
tal forma que, dependiendo de dnde se situ el circulo detectado, se activen
cuatro indicadores asociados a los cuatro cuadrantes de la imagen (superior
izquierda, superior derecha, inferior izquierda, inferior derecha), su ubicacin en
el diagrama se detalla en la figura 53.
79
Figura 53. Fragmentacin y segmentacin de la
imagen en el diagrama de bloques.
Fuente: Autores.
En la figura 54, se puede detallar el programa encargado de extraer la posicin
del circulo detectado en Vision Assistant y el radio del mismo; el objetivo de
esta parte del programa es generar un valor numrico acorde a la posicin en
donde se site el circulo (sealado en rojo), por ejemplo: si el usuario dispone el
circulo en la regin superior derecha de la imagen, a la salida de este sistema
aparecer un valor numrico de 1. Por otro lado, tambin proporciona
informacin adicional relacionada con el tamao de los crculos, ya sean
pequeos o grandes (sealado en verde).
80
Figura 54. Extraccin de la posicin del crculo.
Fuente: Autores.
En primer lugar, teniendo presente que en la etapa anterior se haba dispuesto
un vi de tipo unbundle para conocer los elementos individuales del arreglo
obtenido a la salida de Vision Assistant, en esta etapa se dispuso un vi de tipo
unbundle by name en donde se detallan la posicin y tamao del circulo
detectado.
8.2.5.1 Posicin del objeto detectado.
La seccin de programa sealada en rojo en la figura anterior; se caracteriza
por extraer la coordenada X y la coordenada Y, del circulo detectado, por lo cual
se dispone un vi unbundle by name, del cual, en primer lugar, se realiza una
serie de conversiones con el fin de construir un arreglo que permita visualizar
en un mapa XY Graph la posicin del crculo, como se puede detallar en la
figura 55.
81
Figura 55. Sistema coordenado de la deteccin
del crculo.
Fuente: Autores.
En segundo lugar, se dispuso una etapa de comparaciones en donde se
examina entre que valores de coordenadas de la pantalla se encuentra el
objeto, teniendo presente que es una imagen de 640x480 pixeles, examinando
si se encuentran por encima o por debajo de la mitad de la cantidad total de
pixeles, de esta manera se construye el sistema coordenado. Por ejemplo: si el
objeto se sita por debajo de 240 y por debajo de 640, se puede inferir que el
objeto se sita en la regin inferior izquierda del mapa (Pajares & De la cruz,
2003).
Un aspecto importante a considerar a la hora de construir el sistema
coordenado cartesiano, es el valor por default que debe adquirir la pantalla
cuando no se est detectando ningn crculo, ya que el valor de cero
corresponde a la regin superior izquierda, por tal motivo se opt por establecer
un valor default de cuatro, en caso de que no se detecte ningn circulo en el
mapa. A continuacin se detallan los valores numricos asociados a cada
regin del sistema coordenado cartesiano:
Un valor numrico de cero corresponder a la regin Superior Izquierda.
Un valor numrico de uno corresponder a la regin Superior Derecha.
Un valor numrico de dos corresponder a la regin Inferior Izquierda.
Un valor numrico de tres corresponder a la regin Inferior Derecha.
82
8.2.5.2 Tamao del objeto detectado.
La seccin de programa sealada en verde en la figura 54; se caracteriza por
proporcionar informacin mediante indicadores de los crculos pequeos y
crculos grandes que son detectados en el mapa. La sintaxis de esta parte del
programa es similar a la sintaxis del sistema de posicin, pues realiza una serie
de comparaciones para determinar si el crculo cumple con ciertas
caractersticas de tamao (ser de un radio mayor a 40 pixeles); dependiendo
del resultado se encendern una serie de indicadores, dispuestos por medio de
variables locales dentro de una estructura case, para indicar si el objeto
detectado es un circulo pequeo o de lo contrario es grande.
Adicional a la seccin de posicin y tamao del crculo, tambin se dispuso una
parte encargada de construir una tabla de datos y de inspecciones, en donde se
puede observar en un registro los datos obtenidos de posicin y tamao.
8.2.6 Comparacin y envi de datos
El sptimo bloque del sistema, contempla la etapa de comparacin y
transmisin de los datos, dispuesto con el fin de efectuar todas las
comparaciones y decisiones necesarias para poder interactuar directamente
con el sistema inalmbrico bidireccional medi ante datos booleanos definidos; el
objetivo que se busca en este bloque es definir una interfaz principal y tres
interfaces secundarias a las cuales el usuario pueda acceder, habilitando una
funcin de retorno a la interfaz principal, utilizando los datos proporcionados por
la etapa de segmentacin, su ubicacin en el diagrama se detalla en la figura
56.
83
Figura 56. Comparacin y envi de datos en el
Diagrama de bloques.
Fuente: Autores.
Teniendo un valor numrico asignado a cada regin del sistema coordenado, el
siguiente paso ser construir una interfaz en donde el usuario pueda
seleccionar tres procesos diferentes, una vez seleccionado una de las cuatro
regiones del sistema coordenado, aparecer otra ventana que detalla las
caractersticas del proceso seleccionado, brindando una opcin de retorno a la
interfaz principal.
Estado Actual Estado Siguiente Salida
X=0 X=1 X=0 X=1
ABCD ABCD ABCD Y Y
Interfaz Principal
0000 0100 0101 0 1
0001 0100 0110 0 1
0010 0100 0111 0 1
0011 0100 0011 0 1
Condicin Default
0100 0100 0100 1 0
Interfaces Secundarias
0101 0100 0101 0 1
0110 0100 0110 0 1
0111 0100 0111 0 1
1000 0100 0011 0 1
Tabla 5. Tabla de estados de la interfaz de
usuario.
Fuente: Autores.
84
Para poder construir dicha interfaz, primero se debe contemplar una etapa de
comparacin, la cual debe construirse basndose en una tabla de estados que
garantice el funcionamiento ptimo de la interfaz principal con las interfaces
secundarias, tomando como referencia el valor numrico obtenido del sistema
coordenado en la etapa anterior.
En la tabla 5, se puede detallar la tabla de estados de la interfaz, en donde los
valores 0000, 0001, 0010 y 0011 corresponden a las regiones Superior
Izquierda, Superior Derecha, Inferior Izquierda e Inferior Derecha,
respectivamente; al igual que 0101, 0110, 0111 y 1000 hacen referencia a las
regiones Superior Izquierda, Superior Derecha, Inferior Izquierda e Inferior
Derecha, respectivamente, pero de las interfaces secundarias relacionadas con
cada proceso. El valor correspondiente a 0100 es el valor por default, que se
emplea en caso de que ningn crculo sea detectado, evitando que se comande
cualquier dato. La condicin de retorno asocia los valores de 0011 y 1000, en
donde el estado siguiente contempla el mismo dato, esto con el fin de tener un
mismo valor de retorno para todos los procesos y la interfaz principal.
A continuacin se describe dicha etapa de comparacin:
Figura 57. Subsistema de comparaciones.
Entrada al ciclo de un valor 0
Fuente: Autores.
En la figura 57, se contempla la primera etapa del subsistema de
comparaciones, en donde se disponen cuatro indicadores que relacionan las
cuatro regiones que se estn evaluando; a travs de estructuras case, se
85
evalan dichos valores numricos, dependiendo el caso; se activa o desactiva
cada indicador por medio de variables locales, por ejemplo, como se puede
observar en la figura 57, si el valor numrico que llega al ciclo de comparacin
es cero (correspondiente a la regin Superior Izquierda), se activara el indicador
SI con una constante TRUE, mientras que las dems constantes se
desactivaran para dicho caso con una constante FALSE.
De la figura 57, se puede detallar que la interfaz principal est dada por la
estructura case ms grande, la cual contiene tres estructuras case internas que
corresponden a los tres procesos a los cuales puede acceder el usuario; cada
uno de estos tres procesos asocia cuatro indicadores cada uno (sd,si,id,ii)
(Figura 58), con el fin de evaluar adecuadamente cada regin en cada proceso,
a travs de indicadores booleanos.
Figura 58. Segunda etapa de comparaciones.
Fuente: Autores.
En la figura 58, se dispuso la segunda parte de la seccin de comparaciones
que es el eje principal de la mquina de estados descrita al comienzo de esta
seccin. Esta seccin de comparaciones hace uso de otro conjunto de cuatro
indicadores que asocian una serie de condiciones, los cuales garantizan que
mientras una de las interfaces este activa, manipulando cada una de las
regiones del sistema coordenado, las dems estn desactivadas, de esta forma
se garantiza que no hallan problemas con los datos que se enviarn
posteriormente.
86
Figura 59. Tercera etapa de comparaciones.
Fuente: Autores.
La figura 59, detalla la tercera parte del bloque de comparaciones, en donde se
hace uso de nodos de propiedad y una serie de condiciones dispuestas con el
fin de que cuando el usuario est en la interfaz principal y accede a uno de los
procesos, la interfaz principal desaparece, brindando al usuario solo la
visibilidad del proceso en el cual esta interactuando, como se muestra en la
figura, en el lado izquierdo el usuario a elegido entrar al segundo proceso por lo
cual los dems mens se ocultan y en la imagen de la derecha ha entrado al
tercero sin observarse las interfaces anteriores.
Figura 60. Seleccin de proceso en el panel
frontal.
Fuente: Autores
87
8.2.7 Interfaz de monitoreo y control
El octavo bloque del sistema, contempla la interfaz principal en donde el usuario
podr interactuar directamente con cada proceso, utilizando los datos
proporcionados por la etapa de comparacin y envi de datos, su ubicacin en
el diagrama se detalla en la figura 61.
Figura 61. Interfaz de Monitoreo y Control en el
diagrama de bloques.
Fuente: Autores
En la figura 62, la regin sealada en rojo indica el valor numrico de posicin
obtenida en la etapa anterior (que por default al no detectar ningn crculo es de
un valor numrico de 4) y tres indicadores que sealan los que en ese momento
estn activos, al estar todas desactivadas, indica que ningn proceso se est
atendiendo.
88
Figura 62. Panel frontal
Fuente: Autores
La regin sealada en color naranja, son los indicadores que sealan la
posicin del crculo en cada regin; hay cuatro indicadores para cada interfaz:
1. Los indicadores Psd, Psi, Pid, Pii relacionan las cuatro regiones en la
interfaz principal.
2. Los indicadores Ssd, Ssi, Sid, Sii relacionan las cuatro regiones del
proceso nmero 1.
3. Los indicadores Tsd, Tsi, Tid, Tii relacionan las cuatro regiones del
proceso nmero 2.
4. Los indicadores Csd, Csi, Cid, Cii relacionan las cuatro regiones del
proceso nmero 3.
Dichos indicadores sern empleados en la etapa de envi de datos y en la
interfaz de usuario como tal. Los indicadores Sid, Tid y Cid estn encendidos,
ya que indican la funcin de retorno a la interfaz principal.
Finalmente, la regin sealada en azul destaca la interfaz en donde el usuario
examina la posicin del crculo en la imagen, a travs de los indicadores, y el
proceso en el cual se est interactuando. A continuacin se detalla la interfaz de
usuario final en donde se detallan cada uno de los procesos especficamente,
89
siendo el proceso uno temperatura, el proceso dos nivel y el tercer proceso
control de velocidad; la regin inferior derecha representa en todos los casos
una funcin de retorno, hasta para la funcin principal, en caso de presentarse
problemas sobre el sistema o en caso de que se presenten problemas sobre el
mismo proceso, de esta manera se garantiza un punto en donde el sistema
quede completamente deshabilitado de cualquier funcin.
Figura 63 Panel del proceso a controlar.
Fuente: Autores.
Por otro lado, en la figura 63, el usuario conoce el proceso al cual se hace
referencia, por medio de la imagen ubicada en la parte superior izquierda; en la
pantalla ubicada en la regin superior derecha aparece el usuario como tal, esto
con el fin de disponer una imagen de referencia en donde el usuario se pueda
situar en un campo visible en la deteccin; dependiendo de la ubicacin, el
mismo usuario puede controlar los valores del filtro de rango, ubicados con
forma de perillas en la regin inferior izquierda; finalmente los indicadores de la
regin inferior derecha indican en donde est situado el objeto de anlisis
(crculo) en la pantalla, esto con el fin de usar dicho esquema como referencia
para acceder a cada aplicacin. En la figura 63, se encuentra la interfaz de
usuario funcionando correctamente, en donde se puede observar como a travs
de la interfaz accede al proceso requerido:
90
Figura 64. Interfaz de usuario principal
Fuente: Autores.
Figura 65. Interfaz de usuario secundaria.
Fuente: Autores.
Teniendo los datos de salida booleanos (sealados en la regin naranja de la
figura 62), se disponen al programa principal sistema inalmbrico bidireccional
para l envi de datos (figura 66).
91
Figura 66. Vinculacin de los VIs de
comunicacin.
Fuente: Autores.
Para l envi de datos, se tomaron los datos de salida booleanos provenientes
de la interfaz principal y de los tres procesos evaluados; cada uno dispone de
una etapa de comparacin en donde se evala si la opcin de retorno (regin
inferior derecha) se cumple en cada interfaz, ya que la cantidad de datos que se
pueden enviar est limitada a solo ocho entradas digitales, por lo tanto solo se
pueden enviar los cuatro datos asociados a la interfaz que se encuentre activa.
Si la condicin de retorno esta activa, indica que el proceso asociado a dicha
condicin est no est operando (detallado en esta seccin), por lo tanto, al
tomar esta condicin, y utilizando la funcin compound arithmetic, se examina
cul de todas las interfaces cumple todas las condiciones y de esta forma se
envan los datos.
En la figura anterior, la regin sealada en rojo indica los subvis que habilitan la
comunicacin inalmbrica bidireccional con la planta y se detallar a
continuacin.
92
8.2.8 Incorporacin sistema inalmbrico bidireccional, conversin de protocolo y
acceso a la red
En el noveno y ltimo bloque, se incorpora el sistema inalmbrico bidireccional
con el fin de establecer la comunicacin con la planta (simulador de procesos
industriales para fluidos), que incluye todos los procesos mencionados en la
etapa anterior, su ubicacin en el diagrama se detalla en la figura 67.
Figura 67. Sistema de control y comunicacin
dentro de diagrama de bloques.
Fuente: Autores
La incorporacin del proyecto de especializacin titulado Sistema de Monitoreo
y Control Remoto con Acceso Inalmbrico Bidireccional a Procesos
Industriales, tiene como objetivo vincular diferentes tipos de protocolos de
comunicacin a procesos industriales (Mateus et al., 2010), por tal motivo, se
opt por incorporar dicho sistema a este proyecto, con el fin de poder operar
con la interfaz sobre una aplicacin concreta, adems de dar continuacin y uso
a este proyecto, al igual que la planta Modulo Simulador De Procesos
Industriales Para Fluidos (Cortes & Caro, 2008).
93
En esta etapa, se detalla de forma generalizada las caractersticas del Sistema
Inalmbrico Bidireccional mencionado anteriormente, en donde se precisan las
caractersticas de cada uno de los dispositivos empleados, desde la adquisicin
y envi de datos, a travs de los microcontroladores, pasando por los mdulos
de comunicacin inalmbrica, conversores seriales a RS485 y su interconexin
a travs de un switch con los dos tipos de conversores de protocolo serial a
Ethernet, hasta llegar a la interfaz de usuario final de monitoreo. En la figura 20,
se puede detallar un diagrama esquemtico funcional del sistema.
De la figura 20, se incorpora a la interfaz desarrollada el sistema inalmbrico y
la comunicacin va Ethernet, adems de los subvis incluidos con el sistema
inalmbrico bidireccional (figura 66). El diagrama esquemtico especifica cada
etapa del sistema inalmbrico bidireccional, por lo cual se empieza detallando el
proceso de comunicacin con la planta desde el ordenador de forma
inalmbrica, la cual se seala de color naranja en la figura 68.
Figura 68. Diagrama esquemtico de
comunicacin.
Fuente: Autores
94
8.2.8.1 Comunicacin inalmbrica.
El proceso de comunicacin con la planta, contempla una etapa de conversin
de protocolo y acceso a la red, en donde se realiza la transformacin de un
formato de datos a otro de caractersticas diferentes, con el fin de acoplar
sistemas o dispositivos con una finalidad especfica por medio de circuitos
electrnicos asociados con un firmware
5
especializado, especficamente una
conversin de protocolo de RS232 o UART a TCP/IP Ethernet, la cual se hace
mediante los mdulos conversores de Tibbo (Mateus et al., 2010).
-Conversor DS100 de Tibbo
El conversor DS100 de Tibbo, es un dispositivo servidor serial de conexin
externa para integrar equipos seriales RS232 a una red Ethernet (TCP/IP); este
dispositivo presenta un diseo compacto y estilizado, funciona bajo una fuente
de alimentacin externa de 12 VDC, y posee 4 Leds indicadores de estado, este
conversor es presentado en dos versiones: DS100R de puerto serial RS232 y el
DS100B con puerto serial universal RS232/422/485, en la figura 69 se observa el
dispositivo conversor DS100.
Figura 69. DS 100
Fuente: Autores.
5
Firmware o programacin en firme, es un bloque de programacin especializado para una
aplicacin especfica, que es almacenado en una memoria interna de tipo no voltil, controlando
circuitos elctricos de cualquier tipo.
95
En la figura 69 a la izquierda se puede apreciar las caractersticas fsicas del
mdulo DS100 y a la derecha el conexionado del mdulo. Este dispositivo se
utiliz para adaptar el sistema maestro de la comunicacin inalmbrica
bidireccional a una red de rea local. Para la comunicacin inalmbrica se hace
uso de la tarjeta de desarrollo de MaxStream (inicialmente), esto con el fin de
probar la comunicacin del sistema, adems de que nicamente es necesario
utilizar un conector de extensin del puerto que sirve como acople fsico entre la
tarjeta y el dispositivo servidor serial (Mateus et al., 2010).
Figura 70.DS 100 y MaxStream.
Fuente: Autores.
Posteriormente, se cambiaron las tarjetas Maxtream por mdulos XBee PRO
S1, que presentan mejores caractersticas, en lo que respecta a alcance y
frecuencia, en comparacin con las tarjetas. (Figura 71).
Figura 71. Conexin Ds100 y XBee
Fuente: Autores.
96
La siguiente etapa a detallar en el proceso de comunicacin con la planta es la
forma en que interacta la estacin principal con cada sub estacin, la cual se
seala de color rojo en la figura 68.
Teniendo en cuenta que en algunos procesos puede dificultarse el acceso a las
variables por sistemas cableados, se adiciona una comunicacin inalmbrica al
protocolo serial previamente establecido, empleando los mdulos de radio
frecuencia XBee PRO S1. La conexin usual para conectar dos dispositivos o
host se observa en la figura 72.
Figura 72. Esquema conexin mdulo XBee y
microcontrolador.
Fuente: http://ftp1.digi.com/support/documentation/90000982_A.pdf
Para la interconexin con el conversor serial a Ethernet, el kit de desarrollo de
XBee incluye un mdulo de interfaz RS-232 y un mdulo USB; estas tarjetas se
encargan de convertir los niveles TTL a los niveles del protocolo serial RS232
con un conector DB9, permitiendo su conexin con otro dispositivo que maneje
el mismo estndar como un computador.
97
Figura 73. Mdulo de interfaz RS232.
Fuente: http://ftp1.digi.com/support/documentation/90000982_A.pdf
El sistema de comunicacin inalmbrica bidireccional punto multipunto se
observa en la figura 74, en donde el direccionamiento y control se realiza a
travs de una trama de comunicacin la cual se puede examinar con ms
detalle en la tesis Sistema de Monitoreo y Control Remoto con Acceso
Inalmbrico Bidireccional a Procesos Industriales.
Figura 74.Esquema comunicacin punto multi-
punto.
Fuente:Autores
La velocidad de transmisin en la comunicacin inalmbrica es de 57600
baudios.
98
8.2.9 Conversin de protocolo y acceso a la red.
La siguiente etapa a detallar en el proceso de comunicacin con la planta, es l
envi de datos de forma almbrica, la cual se seala de color purpura en la
figura 68.
- Conversor PT203 de Tibbo
El sistema contempla la posibilidad de comunicarse con los sistemas
microcontrolados, por medio de protocolos de red mediante el empleo de
conversores PT203 de Tibbo. El conversor PT203 de Tibbo es un dispositivo de
hardware, compuesto por dos Boards que posibilita la gestin y control de
dispositivos perifricos que soportan su comunicacin en el estndar serial,
sobre facilidades de conectividad LAN Ethernet con conector RJ45. Este es un
mdulo a diferencia del DS100 es para instalacin sobre tarjeta impresa
(Board). En la figura 75, se puede observar el dispositivo.
Figura 75. Conversor PT203 de Tibbo.
Fuente: Autores.
Para la comunicacin entre un dispositivo que tenga entradas y salidas TTL,
como el sistema microcontrolado, o con cualquier aplicacin de la cual se pueda
garantizar que es TTL, se puede realizar conexin directa a los pines del
mdulo como se muestra en la figura 76.
99
Figura 76. . Conversor PT203 de Tibbo
Fuente: Autores.
Debido a que la separacin entre los pines del dispositivo PT203 es de 1,27
mm, diferente a la separacin de los pines del microcontrolador, ya que este
siendo un dispositivo que asocia encapsulado tipo PDIP para conexin en
tarjetas de prueba (separacin entre pines de 2,54 mm) , es necesario disponer
un circuito impreso que adapte a los dispositivos. En la figura 77 se puede
detallar el circuito impreso para adaptar la separacin de caminos figura 77 (a) y
el circuito impreso de adaptacin (figura 77 (b)) incorporado con el circuito
impreso de separacin.
Figura 77. Circuito diseado para adaptar el
PT203.
Fuente: Autores
100
El usuario puede especificar manualmente el modo de comunicacin que desee
emplear, simplemente cambiando de lugar un cable de conexin al sistema
microcontrolado, como se puede detallar en la figura 78:
Figura 78. Sistema microcontrolado.
a. Conexin inalmbrica. b. Conexin almbrica
Fuente: Autores.
La ltima etapa de detallar de la comunicacin con la planta, est dada por las
caractersticas de los sistemas microcontrolados, la cual se seala de color
verde en la figura 68.
Cada uno de estos sistemas microcontrolados, tendr la oportunidad de
interactuar directamente con el proceso a monitorear o controlar. Para
interactuar con la planta, se hace uso de dos microcontroladores.
El primero de ellos, denominado Microcontrolador Principal, cumple una serie
de funciones de Adquisicin de Datos anlogos o digitales, con 8 puertos
habilitados para cada caso, Comunicacin Serial (Sincrnica o Asincrnica),
Procesamiento y Enrutamiento de la informacin.
- Adquisicin de datos
El proceso de Adquisicin de datos es comandado por el microcontrolador
principal y el circuito implementado para este sistema utiliza como elemento
primordial el microcontrolador de Freescale MC68HC908GP32. En este proceso
de adquisicin de datos, se contemplan seales de naturaleza anloga y digital.
En el esquema de la figura 78, se muestra el circuito del sistema
microcontrolado principal, en donde se encuentran los terminales de conexin
para las entradas anlogas, entradas y salidas digitales, y los sistemas de
101
interconexin sincrnicos y asincrnicos; as como el mtodo de asignacin de
direccin del mdulo a travs de un Dipswitch.
Figura 79. Simulacin en ISIS del sistema
microcontrolado.
Fuente: Autores.
A continuacin se detalla un poco acerca de la forma en que opera los sistemas
microcontrolados. La comunicacin entre el PC Maestro y los procesos
asociados a los sistemas microcontrolados, es comandada por el
Microcontrolador principal (Mateus et al., 2010).
Como primera medida, el microcontrolador realiza un proceso de configuracin,
dentro de este proceso se tiene en cuenta la asignacin de la direccin del
mdulo, leyendo el dato presente en el dipswitch del sistema. Asimismo, se
configura la velocidad de comunicacin y el sistema microcontrolado entra a un
proceso de espera de recepcin de informacin, enviada desde el PC Maestro,
en caso de que no se d esta comunicacin, se activar una alerta luminosa,
indicando que existe un error en la comunicacin con el PC.
102
Una vez realizada la comunicacin, el sistema pasa a verifi car el tipo de trama
que est ingresando (ya sea de supervisin o de control) y verifica que las
cabeceras sean correctas y que la trama se encuentre alineada (Tabla 6 y 7).
Tabla 6. Formato de la Trama de
Supervisin
Fuente: Mateus Tatiana, Rodriguez Manuel, Pardo Camilo, Sistema de
Monitoreo y Control Remoto con Acceso Inalmbrico Bidireccional a Procesos
Industriales.
Tabla 7. Formato de la Trama de Control
Fuente: Mateus Tatiana, Rodriguez Manuel, Pardo Camilo, Sistema de
Monitoreo y Control Remoto con Acceso Inalmbrico Bidireccional a Procesos
Industriales.
Posteriormente, el sistema microcontrolado realiza una rutina de deteccin de
errores siguiendo el procedimiento de sumas de comprobacin; s la trama se
encuentra desalineada, no coinciden las cabeceras o se detecta algn error en
los datos transmitidos, se activar una alerta luminosa, indicando que exi ste un
error en la comunicacin con el PC.
Finalmente, una de las condiciones para el desarrollo del proyecto,
contemplaba la implementacin y disposicin de los circuitos impresos del
sistema inalmbrico bidireccional, incluyendo tres estaciones que disponen una
fuente de alimentacin cada una; a continuacin se detallan dichos circuitos
debidamente implementados.
103
Figura 80.Microcontrolador principal.
Fuente: Autores.
Figura 81. Base mdulo XBee.
Figura 82. Base mdulo PT203.
104
Figura 83.Sistema implementado.
Fuente: Autores.
8.3 INCORPORACION DE LA PLANTA DE FLUIDOS AL SISTEMA
Retomando el esquema de la figura 19, el siguiente y ltimo paso a considerar
en el desarrollo del proyecto, es la incorporacin de una aplicacin concreta al
mismo, como se haba mencionado anteriormente, el sistema est abierto para
manipular o interactuar sobre cualquier aplicacin, y dado que la interfaz
inalmbrica bidireccional tiene un enfoque sobre procesos industriales, se opt
por incorporar como planta la tesis titulada Modulo Simulador De Procesos
Industriales Para Fluidos, la cual se encuentra ubicada en el laboratorio D del
cuarto piso de la Universidad Santo Tomas, seccional Tunja (Cortes & Caro,
2008).
105
Figura 84.Esquema dimensional de la Planta.
Fuente: Autores.
La figura 84, presenta un esquema general de dimensiones de la planta, la cual
se presenta como como un circuito cerrado de dos tanques, conectados por
tuberas, que garantiza una circulacin de lquido con el suficiente tiempo de
trabajo para poder analizar diferentes variables asociadas al transporte de
lquido en la misma.
La planta presenta un tanque en la parte superior y otro en la inferior; debido a
que la gravedad ocasiona que el fluido se desplace sin ningn problema hacia
el tanque de abajo, pero el recorrido inverso no sera posible sin ningn
elemento externo que realizara el empuje del lquido; por lo que asocia una
motobomba denotada con M en la figura 84. Adems, existe una va de
realimentacin luego de la motobomba para tener una seleccin de la cantidad
de agua expulsada hacia el tanque superior y la cantidad que vuelve al mismo
tanque (Cortes & Caro, 2008).
El fluido empleado es agua, ya que dentro del sistema no se contempla
caractersticas especficas, adems de que el agua, es el fluido de ms fcil
consecucin. La tubera se caracteriza de ser de la cual se ajusta a los
requerimientos y facilita la incorporacin de sensores o acoples para la misma.
106
Figura 85 Esquema de ubicacin de sensores y
actuadores.
Fuente: Autores.
La figura 85, especifica la ubicacin de cada uno de los sensores y actuadores
que pueden ser dispuestos sobre la planta, incluyendo desde sensores de nivel
proporcional (Por ultrasonidos o Resistencia) hasta electrovlvulas
proporcionales. En el proyecto se trabaja puntualmente sobre la Motobomba
(controlando velocidad), Sensor de Temperatura y Sensor de Nivel
Proporcional, tal y como se describe en la etapa 8 en donde se contempla la
interfaz de monitoreo y control con Kinect. En la figura 86, se puede detallar la
constitucin de la planta como tal:
107
Figura 86 Planta a controlar.
Fuente: Autor.
A continuacin se detallan los circuitos de acondicionamiento y control para las
tres variables que se trabajaron con la interfaz y el proyecto.
8.3.1 Temperatura
La temperatura que se est evaluando, es la que est presente en el taque
superior del sistema, la temperatura ser captada por medio de un sensor de
temperatura PT100 y acondicionada a travs de un amplificador de
instrumentacin en conjunto con un puente de wheathstone.
Para el acondicionamiento del sensor de temperatura (PT 100), se dise un
puente de Wheatstone en el cual se conecta la salida del sensor de
temperatura, ya que como se indica en las especificaciones tcnicas, el sensor
a su salida entrega un valor de resistencia acorde a la temperatura a la que es
sometido, la siguiente etapa est compuesta por un amplificador de
instrumentacin utilizado para amplificar la seal del puente; luego, la salida del
amplificador es llevada a un comparador, en el cual se confronta el voltaje de
salida con un voltaje previamente establecido, que describe la temperatura que
se desea mantener en el tanque superior.
108
Entonces se tiene que cuando el voltaje entregado por el amplificador de
instrumentacin es menor a el voltaje establecido en el comparador (es decir la
temperatura a la cual est el tanque es menor a la temperatura que se ha
establecido para este), se activar un rel que conmutar para poder
proporcionar la energa necesaria a las resistencias trmicas para poder elevar
la temperatura en el tanque hasta llegar a la temperatura establecida (dicho
comando de activacin es proporcionado a travs de la interfaz de usuario).
Ahora, en el caso contrario cuando el voltaje entregado por el amplificador de
instrumentacin es superior al voltaje establecido en el comparador (es decir la
temperatura del tanque es superior a la establecida), el comparador produce un
cero lgico a su salida, haciendo que las resistencias trmicas se apaguen, de
esta forma en un tiempo determinado, la temperatura del tanque disminuir
hasta llegar de nuevo a la temperatura establecida y empezando todo el
proceso de nuevo.
Este proceso se repite una y otra vez, conforme el comparador evala el voltaje
sobre y debajo del nivel establecido, buscndose as una temperatura estable
en el tanque, la cual es especificada por el usuario. En la siguiente imagen se
muestra el circuito diseado para tal fin.
Figura 87. Circuito control de temperatura
Fuente: Autores.
109
Figura 88. Implementacin del circuito de
instrumentacin y puente de Wheatstone.
Fuente: Autores.
8.3.2 Nivel
Para poder sensar el nivel y mantener estable el agua dentro del tanque
superior (figura 89), se utiliza un sensor de posicin que est constituido por un
potencimetro de 1 K el cual sujeta una varilla que va a un flotador, de esta
forma cuando el flotador suba o baje, por el efecto del agua que se encuentra
en el tanque, la resistencia que se mide sobre el potencimetro varia y al estar
alimentado el potencimetro a un voltaje de 5V, se entrega una seal anloga
de voltaje a la salida del mismo, conforme la resistencia del potencimetro
varia.
Figura 89. Nivel de agua propuesto y
visualizacin de la ranura del potencimetro.
Fuente: Autores.
Esta seal anloga es llevada al sistema microcontrolado para observar el nivel
en la interfaz de usuario, adems de disponer una serie de comparadores que
tienen ya un voltaje establecido para indicar un nivel bajo, medio y alto, de esta
forma, cuando el voltaje que entrega el sensor de posicin coincida con uno de
110
los voltajes establecidos en los comparadores, estos comparadores encienden
indicadores leds asociados a cada nivel.
8.3.3 Velocidad Electrobomba
La velocidad de la electrobomba es controlada por seales de PWM, en donde
se ha diseado un programa sobre un microcontrolador pic16f84a, el cual
evala tres estados lgicos de entrada (proporcionados por la interfaz de
monitoreo) para generar diferentes seales de PWM; en este orden de ideas,
cuando el nivel del tanque es muy bajo la velocidad de llenado es mxima,
cuando el nivel del tanque es medio la velocidad de llenado es media y cuando
el nivel del tanque es mximo la electrobomba se apagara. Por lo cual:
- Para una velocidad baja, en el programa se definen un tiempo alto de un 25%
del ciclo til y un tiempo bajo de 75% del ciclo til total.
- Para una velocidad media, en el programa se define un tiempo alto del 50% y
un tiempo bajo de un 50% del ciclo til.
- Para una velocidad mxima, en el programa se definen un tiempo alto de un
75% del ciclo til y un tiempo bajo de 25% del ciclo til total.
El circuito que se caracteriza por interpretar estos pulsos y controlar la
velocidad de la electrobomba, es el MOC3041 el cual permite aislar la etapa de
control de la de potencia y conmutar la carga para que actu conforme varia la
seal de pulsos empleando un interruptor de AC (un triac). A continuacin se
detalla el circuito empleado para controlar la velocidad de la motobomba y
adquirir la seal proveniente del sensor de nivel:
111
Figura 90. Circuito control de nivel de tanque
Fuente: Autores.
Figura 91. Implementacin circuito
microcontrolado para la velocidad de la
electrobomba.
Fuente: Autores.
112
9. APORTES DEL TRABAJO
Desde un inicio, el desarrollo del proyecto se contempl como una herramienta
de apoyo a la docencia, dado que puede dar soporte a las prcticas de
laboratorio de los ltimos semestres de la Facultad de Ingeniera Electrnica de
la Universidad Santo Toms Seccional Tunja.
Como aportes derivados del trabajo se encuentran:
Presentacin de un Clasificador de piezas utilizando tratamiento digital de
imgenes (con el cual se obtuvo el primer lugar en el Torneo Nacional de
Robtica Vex Robotics Competition, en la modalidad de proyectos de
investigacin y que se desarroll en la ciudad de Bogot, los das 2 y 3 de marzo
de 2012).
Proyectos desarrollados a lo largo de los ltimos semestres como: Estimacin de
Caudal y flujo msico en una caldera industrial y Medicin de temperatura y
presin con Arduino y LabVIEW.
Artculos redactados para ser presentados en eventos internacionales como en
el 3 Congreso Internacional de Instrumentacin Control y Telecomunicaciones
(CIICT 2013) de la Universidad Santo Tomas Sede Tunja, en el cual fue
aceptado como ponencia, eventos nacionales en la Red Colombiana de
Semilleros de Investigacin (REDCOLSI), a nivel tanto Regional como Nacional
en los aos 2012 y 2013, en la modalidad de ponencia, y el prximo ao se
socializar para aprobacin en la Reunin de Otoo de Potencia, Electrnica y
Computacin ( ROPEC) para el ao 2014, que ha de realizarse en Mxico, de
igual forma el proyecto fue socializado ante el centro de Investigaciones de la
Universidad Santo Toms CIUSTA. Asimismo se han generado artculos para
ser presentados en revistas institucionales.
113
10. CONCLUSIONES
Se logr disear una interfaz caracterizada por emplear el tratamiento digital de
seales, haciendo uso del sensor Microsoft Kinect para poder efectuar un
control por medio de imgenes sobre una planta.
Se efectu todo el diseo e implementacin de la interfaz necesaria que permite
adquirir la imagen y enviar los comandos correspondientes de cada imagen, a
la etapa de control, realizando el mapeo de profundidad con el sensor Kinect.
Se incorpor una etapa de filtrado para poder definir los rangos en que se est
captando la imagen, una etapa de Fragmentacin de imagen, en donde se
obtienen escalas ms pequeas de imagen para facilitar la adquisicin y una
etapa de interpretacin de datos en donde se efecta filtrado de datos,
deteccin de objetos y series de comparaciones, para ejecutar cada tarea en el
proceso que se desea controlar.
Uno de los avances tecnolgicos ms importantes de los ltimos tiempos, es el
empleo del tratamiento digital de imgenes en diferentes reas (como la
medicina, la instrumentacin Industrial, etc.), en pro del desarrollo tecnolgico y
apuntando a interfaces ms sencillas y cmodas al usuario, por lo que la
interfaz diseada, brinda la facilidad de interactuar con uno o varios procesos
haciendo uso de la visin artificial, en donde el sistema detecta objetos con
formas circulares en un espacio determinado de la pantalla con el fin de emular
una especie de cursor que seleccione cada proceso.
Una de las ventajas ms notorias del dispositivo Kinect, a la hora de adquirir
imgenes y mapas de profundidad; es la poca interferencia que genera la luz
externa en el dispositivo, pues en un comienzo se dispuso desde carteleras
hasta afiches para que la luz no interfiriere en la adquisicin de imgenes y del
mapa de profundidad, posteriormente se comprendi que la interferencia es
mnima gracias a las caractersticas de luz estructurada del sensor, que
aprovecha la interaccin entre el proyector de infrarrojos y la cmara IR CMOS.
Por otro lado, tambin se incorporaron un sistema de monitoreo y control
remoto de acceso inalmbrico bidireccional con aplicabilidad a procesos
industriales, a procesos de monitoreo, supervisin y control, efectuando
conversin de protocolos seriales a protocolos de red, de tal forma que sea
114
posible acceder a la informacin desde cualquier punto de una red de rea local
y una Planta Simuladora de Procesos Industriales para Fluidos.
A partir del desarrollo del programa de aplicacin de prueba Point Cloud se dio
inicio al proceso de familiarizacin con el Sensor Kinect con el fin de lograr
evaluar el funcionamiento general del mismo, para obtener la imagen RGB, el
mapa de profundidad, el ngulo de control del sensor, entre otros aspectos.
Las propiedades y caractersticas del sensor, facilitaron el procesamiento en el
desarrollo del programa, la adquisicin de imgenes en tiempos relativamente
pequeos y la manipulacin de cada una de las aplicaciones.
El sistema permite la adquisicin de seales anlogas y digitales provenientes
de distintos tipos de procesos, permitiendo seleccionar el nmero de entradas
de cada tipo y los puertos por los cuales se desea adquirir las seales.
Entre algunas de las ventajas ms notorias con el desarrollo del sistema, se
encuentran el poder manipular aplicaciones por medio de visin artificial
sustituyendo las interfaces convencionales, vincular nuevos sensores y
dispositivos de tecnologas convergentes a procesos de nivel industrial y
manipular varios procesos a travs de una interfaz sencilla, cmoda y dinmica
para el usuario.
El empleo de variables locales y nodos de propiedad, facilito el proceso de
creacin y desarrollo del programa, permitiendo visualizar en pantalla solo
aspectos que le competen al usuario y evaluar valores lgicos en diferentes
partes del programa, simultneamente.
El sistema present muchos inconvenientes a la hora de adquirir el mapa de
profundidad, proporcionado por el sensor Kinect, pues al adquirir el
dispositivo, se observ que los drivers asociados al mismo, en conjunto con los
SubVIs para adquirir el mapa en LabVIEW, no funcionaban de forma
apropiada, lo que oblig a contactar con estudiantes de la universidad de
California a travs de un blog, en donde se proporcionaron tanto los drivers
como los SubVIs para poder adquirir tanto las imgenes, los mapas y los datos
proporcionados por el sensor.
La recoleccin bibliogrfica acerca de mapas de profundidad, deteccin de
bordes y filtros; desempeo un papel importante en el desarrollo del proyecto,
115
ya que recolectando informacin y empleando informacin bibliogrfica
proporcionada por el tutor, se logr comprender como funciona el dispositivo
Kinect, los mapas de profundidad, los filtros en el tratamiento digital de
imgenes y la deteccin de bordes.
En el presente proyecto, se puede observar que las tareas y la programacin
que ha de realizar el usuario final es relativamente sencilla (a pesar de la
complejidad de los procesos que se estn monitoreando y controlando), lo que
permite que el sistema pueda ser utilizado por un mayor nmero de usuarios,
sin requerir de un proceso arduo de capacitacin.
116
RECOMENDACIONES
Procurar hacer un uso adecuado del dispositivo Kinect, en cuanto a
instalacin y manejo se refiere, pues a pesar de ser un elemento robusto que
dispone de muchas herramientas para poder realizar adquisiciones de imagen,
es muy sensible a golpes y factores ambientales como temperatura y humedad.
Debido a que el presente trabajo se presenta como un aporte que puede ser
vinculado a los procesos acadmicos de la Facultad de Ingeniera Electrnica
de la Universidad Santo Toms Seccional Tunja, se recomienda hacer uso de
una gua descriptiva en donde se presente un adecuado protocolo de
disposicin, uso y puesta en marcha del sistema, adems de desarrollar
posibles prcticas en donde se contemple las diferentes aplicaciones a las
cuales se puede acceder por medio de la interfaz y se pueda sacar el mayor
provecho de los equipos expuestos en el presente sistema por parte de los
estudiantes.
Procurar dar continuidad al proyecto vinculando ms procesos a la interfaz,
aprovechando la comunicacin multipunto y la propiedad del sistema para
realizar conversin de protocolos de red, adems de aprovechar las
caractersticas que tienen los SubVIs que permiten interactuar con el sensor
Kinect.
Establecer un dilogo constante con grupos de investigacin de todo el mundo
y del pas, que se encuentren desarrollando aplicaciones en el rea, pues en el
campo investigativo con una sola solicitud se puede salir de un gran aprieto.
Adems de complementar los procesos de investigacin, por medio de un
intercambio de experiencias, que lleven al crecimiento de la ciencia, la
tecnologa y la economa nacional y mundial.
Procurar velar por el mejoramiento de la tecnologa, a partir del
aprovechamiento de recursos locales, contribuyendo as, al surgimiento de las
regiones, del pas y del campo de la ingeniera.
Antes de ejecutar el sistema con el Kinect conectado, se recomienda definir
los valores mnimos y mximos del rango de trabajo del dispositivo y conectar
inicialmente indicadores tipo led a la salida de la interfaz inalmbrica
bidireccional para evaluar la concordancia entre los datos adquiridos por el
sensor y los proporcionados a la salida del sistema.
Asociado a la interfaz con la planta, se debe realizar y conocer la configuracin
de las direcciones IP correspondientes a cada mdulo conversor de protocolo
(DS100 o PT203), segn el rango de direcciones especificado en la hoja
117
tcnica, (superior a 192.168.100.40), para que coincida con el rango de
direcciones en la configuracin en LabVIEW.
Procurar no instalar el dispositivo Kinect con los drivers proporcionados por
Microsoft, debido a que dichos drivers operan adecuadamente sobre OpenCV y
Proccessing, pero al ejecutar estos drivers con LabVIEW, se presentan
bastantes inconvenientes en la adquisicin de la imagen.
Cuando se vayan a efectuar cambios sobre el programa en LabVIEW,
asegurarse de que el sensor Kinect no se encuentre conectado, ya que una
vez se vuelva a ejecutar el programa, el ordenador se bloquear
completamente, debido al procesador que tiene incorporado el dispositivo que
entra en conflicto con el ordenador cuando se ejecutan tareas a las que el
dispositivo no se ha adaptado.
Examinar previamente las caractersticas del ordenador en donde se ejecuten
los vis para la adquisicin de imgenes por parte del dispositivo Kinect, ya
que el procesamiento del ordenador se ve en ocasiones limitado al ejecutar el
sistema con el Kinect conectado.
Es recomendable que de hacerse cambios sobre el sistema inalmbrico
bidireccional, se consulte con antelacin al docente o el tutor designado, con el
fin de evitar problemas de conexionado o disposicin.
Para realizar la conexin entre los mdulos conversores de protocolo (DS100 o
PT203) y el switch o computador terminal, se debe utilizar cable UTP directo tal
como lo especifican las normas de cableado estructurado EIA/TIA 568A y
EIA/TIA 568B.
El dispositivo Kinect tiene asociado un cable adaptador para la conexin al
ordenador, debido a que requiere de una alimentacin externa que provee la
cantidad de potencia necesaria para que el dispositivo funcione
adecuadamente, pues el puerto USB no proporciona la suficiente potencia.
El sensor asocia una rotula (ubicada entre la base y la barra horizontal),
conectada con un servomotor, que en conjunto permiten controlar el ngulo de
captura del Kinect y permiten movilizarlo de arriba hacia abajo; se recomienda
que si se desea cambiar dicho ngulo de captura, se haga mediante el
programa y no forzarlo manualmente, ya que dicha rotula asocia un juego de
piones, que se puede ver daado debido al forcejeo.
118
BIBLIOGRAFIA
Abramov, A., Pauwels, K., Papon, J., Florentin, W., Institut, I. I. I. P., & Rob, I. D.
(2010). Depth-supported real-time video segmentation with the Kinect.
Bhutada, S., Shetty, S., Malye, R., Sharma, V., Menon, S., & Ramamoorthy, R.
(2005). Implementation of a fully automated greenhouse using SCADA tool
like LabVIEW. Proceedings, 2005 IEEE/ASME International Conference on
Advanced Intelligent Mechatronics., 741-746. Ieee.
doi:10.1109/AIM.2005.1511071
Castaneda, V., & Navab, N. (2011). Time-of-Flight and Kinect Imaging. Computer.
Cortes, S., & Caro, W. (2008). Modulo Simulador de Procesos Industriales para
Fluidos. Design, 1-12.
Ernesto, P., & Andrs, G. (2011). Distribucin Binomial Aplicada a un Sistema de
Clasificacin de Piezas Utilizando Tratamiento Digital de Imgenes.
George, B. (2009). James Clerk Maxwell His Life and His Faith.
Guemez Sandoval Erendira. (2008). Hermann von Helmholtz y el oftalmoscopio.
Medicina, 82(1), 62-64.
Huang, C. T., Huang, C. J., & Wang, W. L. (2007). Construction of an automatic
inspection system with capability of identifying color characteristics of
product. 2007 IEEE International Conference on Industrial Engineering and
Engineering Management, 1930-1934. Ieee.
doi:10.1109/IEEM.2007.4419528
Mateus, T. D. P., Pardo, C., & Rodriguez, M. (2010). Remote monitoring system
with wireless access to industrial processes. 2010 Ieee Andescon, 1-5. Ieee.
doi:10.1109/ANDESCON.2010.5631567
Oyarce, A. (2010). Gua del Usuario_ XBEE Series1. Ingenieri MCI LTDA., 1-72.
Pajares, G., & De la cruz, J. (2003). VISION POR COMPUTADOR, Imagenes
digitales y aplicaciones. Alfaomega_ Rama (Vol. 2).
Rakprayoon, P., Ruchanurucks, M., & Coundoul, A. (2011). Kinect-based
Obstacle Detection for Manipulator, 68-73.
Sean, Kean, Jonathan, H. (2011). Structured Light Projection. Apress.
Shampo, M. a, & Kyle, R. a. (1983). Heinrich Rudolf Hertz. JAMA: the journal of
the American Medical Association, 249(7), 920. Retrieved from
http://www.ncbi.nlm.ni h.gov/pubmed/6337276
Tirso, S. (2005). tecnologias convergentes, 1-17.
Um, D., Ryu, D., & Kal, M. (2011). Multiple Intensity Differentiation for 3-D Surface
Reconstruction With Mono-Vision Infrared, 11(12), 3352-3358.
119
Wei, C.-huang, & Wu, C.-hsing. (2004). A Simulator of Winding Machine
Controller using LabView Environment, (December).
Yeonsooo, K. S. L. (2011). Background Elimination Technique in the Structured
Light System for Dynamic Environment. 15th International Conference on
Advance Robotics., 42-47.
Zeng, W., & Zhang, Z. (2012). Multimedia at Work Microsoft Kinect Sensor and Its
Effect, 4-10.
120
INFOGRAFIA
http://www.acm.org/elementk
http://digital.ni.com/worldwide/latam.nsf/
http://www.ni.com/labview/esa/
http://ryangordon.net/2010/12/26/kinect-for-labview-part-1/
http://roboticlabview.blogspot.com.br/
121
ANEXOS
A. Artculo Interfaz de Manipulacin de Aplicaciones con Kinect a
procesos industriales.
B. Archivos .DLL para ejecutar los programas.
C. Drivers Kinect.
D. Programa Point Cloud.
E. Programa Whiteboard
F. Programas finales
G. SubVis
H. Toolkit LabView Kinect
I. Hoja Tcnica Adaptador Serial - Ethernet DS-100
J. Manual de usuario Kinect.
K. Tutorial configuracin XBee.
L. Manual XBee
M. Manual Configuration & Test Utility Software X-CTU
N. Gua Rpida Mdulo Conversor Serial - Ethernet PT203
O. Hoja Tcnica LM358
P. Hoja Tcnica Microcontrolador MC68HC908GP32.
Q. Hoja Tcnica pic16f84A