Está en la página 1de 14

ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA

 CURSO: SISTEMAS EXPERTOS Y ROBÓTICA


 DOCENTE: ING NOMBERA LOSSIO MARTIN
 TÍTULO: ROBÓTICA PARA EL CUIDADO DE PACIENTES
(BIOINGIENERÍA)
 INTEGRANTES:

 BENAVIDES MENDOZA GERSON ANDRES


 SÁNCHEZ MEDINA JOEL EDUARDO
 SERNA CAMPOS PERCY JOEL
 VASQUEZ PERALTA ANDERSON
 VIDAURRE SANTISTEBAN ROYER ROSSIEL

 CICLO: 2019-II
INDICE
ROBÓTICA PARA EL CUIDADO DE PACIENTES
(BIOINGIENERÍA)

1. INTRODUCCION
La Bioingeniería es una de las disciplinas más jóvenes de la ingeniería en la que
los principios y herramientas de la ingeniería, la ciencia y la tecnología se aplican
a los problemas presentados por la biología y la medicina.

La formación del Bioingeniero comprende una sólida base en ingeniería


conjugada con los conocimientos fundamentales de medicina y biología,
complementados con materias específicas de aplicación de tecnología:
electrónica, informática, robótica, óptica, etc., para satisfacer las demandas de
la medicina y la biología.

Esta carrera fue creada con el objetivo de dar soluciones a la problemática del
ámbito de la salud mediante la aplicación de modernos métodos tecnológicos.

La Bioingeniería hoy, en nuestro país, está creciendo y estableciéndose como


uno de los polos de mayor desarrollo, tanto en el mercado médico-tecnológico
como en el área de la investigación.

La fabricación, la importación y la exportación de nueva y compleja tecnología


médica, y la necesidad de normativas que rijan en todos los aspectos de la
misma, hacen que la demanda de Bioingenieros se haga cada vez más relevante
y que diferentes ámbitos prestadores de salud requieran de sus servicios.

Entre los más importantes campos que nuclea la Bioingeniería a nivel mundial
se pueden mencionar: Biomateriales; Ingeniería Biomédica; Ingeniería
Hospitalaria; Biomecánica; Bioóptica; Biosensores; Ingeniería Clínica y de
Procesamiento de Señales Biológicas; Telemedicina; y todo lo que concierne a
la Tecnología Médica.

2. ESTUDIOS DE LA ROBÓTICA PARA EL CUIDADO DE


PACIENTES
2.1ESTUDIO DEL FUNCIONAMIENTO DEL SENSOR KINECT Y
APLICACIONES PARA BIOINGENIERÍA

El Grupo Robótica y Sistemas Integrados de la Universidad Nacional de Córdoba


está llevando adelante un proyecto financiado por el Ministerio de Ciencia y
Tecnología de la provincia de Córdoba y la SeCyT-UNC de un brazo robótico
para Laparoscopía
Para las operaciones quirúrgicas mínimamente invasivas, es de gran ayuda
disponer de un brazo robótico que sostenga al endoscopio. Sin embargo,
también es de gran importancia que este brazo robótico afecte lo menos posible
a las operaciones que necesite realizar el cirujano. Por tal motivo, se propuso y
se inició el estudio de un sensor óptico que permita ubicar espacialmente a los
brazos del cirujano y, de esta manera, planificar la trayectoria del brazo robótico
a los efectos de evitar colisiones entre ellos.
El sensor Kinect se presenta como una excelente posibilidad dado que permite
adquirir las imágenes en el espectro visible y, con la información del espectro
infrarrojo, armar un plano tridimensional de los objetos. En este caso, se
desarrollaron dos aplicaciones que servirán como punto de inicio para el
proyecto del Brazo Robótico. La primera aplicación proporciona un entorno de
ensayos capaz de evaluar todos los componentes del sensor en tiempo real. La
segunda aplicación permite registrar y guardar trayectorias del cuerpo de una o
varias personas pudiendo reproducirlas luego en cualquier momento.
2.1.1. Introducción:
Desde el año 2007 se está desarrollando en el GRSI – Grupo Robótica y
Sistemas Integrados de la Universidad Nacional de Córdoba, el proyecto “Brazo
Robótico para
Laparoscopía” cuyo objetivo es el de asistir al cirujano en las operaciones
laparoscópicas. Este proyecto nace a raíz de un pedido del Servicio de Cirugía
Pediátrica - Hospital de Niños de la Santísima Trinidad de Córdoba.
Uno de los sub-proyectos consiste en incorporar al sistema Robótico un sensor
de imágenes que permita utilizar las mismas para planificar los desplazamientos
del brazo robótico de manera de evitar colisiones entre el brazo robot y los
brazos del cirujano. A tal efecto, se adquirió un sensor Kinect.
En el presente trabajo, se detallan las actividades realizadas con el sensor
Kinect orientadas a determinar las capacidades técnicas y de funcionamiento
del sensor de manera de poder diseñar luego aplicaciones para detectar
movimientos o superficies tridimensionales con el objetivo de asegurar la
correcta planificación de las trayectorias del Brazo Robótico de modo de no
colisionar con los brazos del cirujano.
Se desarrollaron dos aplicaciones necesarias para el proyecto general del brazo
de laparoscopía. La primera aplicación es un entorno de prueba capaz de
confirmar el buen funcionamiento del sensor y todos sus componentes internos.
La segunda aplicación, se entiende como una herramienta capaz de captar y
guardar todas las trayectorias que realice el cuerpo de una o varias personas,
pudiendo reproducirlas luego en cualquier momento.
Además de este proyecto general, también se prevé la utilización del sensor
Kinect para dirigir un robot móvil que tenga visión tridimensional
Sensor Kinect y su composición
El sensor de Kinect es un equipo alargado conectado a un pivote, diseñado para
estar en una posición horizontal. El dispositivo tiene
 una cámara RGB,
 un sensor de profundidad y
 un micrófono multi-array bidireccional
Que en conjunto, capturan imágenes y movimientos de los cuerpos en 3D,
además de ofrecer reconocimiento facial y aceptar comandos de voz.
Figura: Dimensiones del Sensor Kinect

El sensor de Kinect adquiere imágenes de video con un sensor CMOS de colores


a una frecuencia de 30 Hz, en colores RGB de 32-bits y resolución VGA de
640×480 pixeles. El canal de video monocromo CMOS es de 16-bit, resolución
QVGA de 320×240 pixeles con hasta 65,536 niveles de sensibilidad.
Para calcular distancias entre un cuerpo y el sensor, el sensor emite un haz láser
infrarrojo que proyecta un patrón de puntos sobre los cuerpos cuya distancia se
determina. Una cámara infrarroja capta este patrón y por hardware calcula la
profundidad de cada punto. El rango de profundidad del sensor de Kinect está
entre 0.4 y 4 mts.. Existen modos (Default y Near) para determinar distancias.
Se ha elegido el modo “Default” ya que permite medir hasta 4 metros de distancia
con respecto al sensor
El ángulo de vista (FOV) es de 58° horizontales y 45° verticales. Por otro lado el
pivote permite orientar en elevación, hacia arriba o hacia abajo incrementando
el FOV hasta en 27°.
El array del micrófono tiene cuatro cápsulas, y opera con cada canal procesando
en 16-bit de audio con un ratio de frecuencia de 16 kHz.
La cámara de Kinect funciona con hardware y software propios para el
reconocimiento de imagen.

Figura: Composición interna del sensor Kinect


La cámara tiene dos funciones principales:
 Generar un mapa en 3D de la imagen que tiene en su campo visual y
reconocer humanos en movimiento entre los objetos de la imagen a partir de
diferentes segmentos de las articulaciones del cuerpo y un esquema en escala
de grises

Figura: Rango de Distancias admitidas por el sensor Kinect Existen 2 modos ( Default y near )

En un amplio campo visual con objetos, la cámara Kinect trata de reconocer a


qué distancia están los distintos objetos, distinguiendo movimientos en tiempo
real.
El sensor Kinect puede llegar a distinguir la profundidad de cada objeto con una
resolución de 1 centímetro y las estimaciones de la altura y anchura con una
exactitud de aproximadamente 3 milímetros.
El hardware de Kinect está compuesto por la cámara y el proyector de luz
infrarroja, añadido al firmware y a un procesador que utiliza algoritmos para
procesar las imágenes tridimensionales.

Figura: Funcionamiento del sensor monocromático


El procesador es capaz de interpretar los movimientos que se registran de los
objetos capturados por la cámara de Kinect en “eventos con significado” que
aparecen en pantalla. Los movimientos buscados por el algoritmo son
contextualizados. Por ejemplo, si se está aplicando el sensor Kinect a un juego
como Kinect Adventures, donde una balsa desciende por la corriente del río,
dado que este juego requiere movimientos tales como agacharse o tumbarse,
el algoritmo buscará la identificación de estos movimientos en tiempo real para
producir eventos en pantalla. Si el usuario navega por el menú con interface
gráfica de Netflix entonces se buscarán movimientos con las manos
horizontales y verticales que serán registrados en los fenómenos de pantalla.
(GetLab)

2.1.2. Detección de Articulaciones Mediante el Sensor Kinect


Normalmente, el flujo de datos “crudos” que suministra el sensor Kinect
proporciona la información de 20 puntos de una persona cuando está dentro del
rango visual admisible. De esta manera, es posible obtener la información
posicional en tiempo real y en los 3 ejes cartesianos de estos 20 puntos por
persona. Cabe destacar que la información recolectada está en un formato
imagen de 640x480 pixeles tomada a una velocidad de 30 FPS (Frames per
Second o Cuadros por segundo).
Con el fin de obtener todas las trayectorias que realiza una persona, es
necesario registrar y archivar los 20 puntos que entrega el dispositivo. Cabe
destacar que esta es la f uncionalidad más importante que tiene el sensor para
la aplicación buscada, dado que otorga la posibilidad de tener la posición
tridimensional en cada instante de tiempo. Si se toma una sucesión dinámica de
estas entregas, se podrá obtener todas las trayectorias de todos las partes del
cuerpo de una persona.

2.1.3Elección del kit de desarrollo de software – SDK para programar el


Kinect

Antes de iniciar el desarrollo de la primera aplicación se realizó un estudio y


análisis de distintos kits de desarrollo con el objetivo de decidir con que SDK
(software development kit) programar las aplicaciones. Esta instancia es crucial
ya que una vez comenzado el desarrollo de las aplicaciones, hubiese sido un
gran problema tener que dar marcha atrás y cambiar la SDK si hubiese surgido
algún problema de compatibilidad con los equipos o bien con las aplicaciones a
realizar
Figura: Conjunto de 20 puntos detectados por el sensor Kinect

Entre las opciones, se encontraron dos posibles librerías: librerías libres o


librerías oficiales. Dentro de las primeras, la más conocida y la más utilizada es
la llamada OpenNi que guarda compatibilidad con las librerías de OpenKinect.
Para el desarrollo de la aplicación se seleccionó la librería OpenNi debido a su
mayor difusión en Internet y por lo tanto, existir más información con distintas
aplicaciones.
En cuanto a la oficial, Microsoft lanzó la SDK 1.0 para Kinect la cual cuenta con
una ordenada documentación y amplia información en la web.
A pesar de que las librerías OpenNi presentaban más ventajas, al haber mucha
más información por parte de la SDK oficial, se decidió utilizar la librería oficial
para desarrollar las primeras aplicaciones.
2.1.4. Desarrollo de la aplicación para ensayos del sensor TESKINECT
Primero se establecieron los requerimientos funcionales del proyecto y para esto
fue necesario diferenciar todos los dispositivos que existen dentro del sensor
Kinect.
 Cámara RGB
 Cámara Monocromática D con IR
 Motor
 Acelerómetros
 Micrófono ambiental
 LED
Se diseñó un software que captura las señales de un sensor Kinect conectado
a una entrada USB y los exhibe en una pantalla simple donde se puede observar
el funcionamiento de todos los dispositivos nombrados anteriormente. De esta
manera se logra asegurar que la conexión está lograda y el equipo está
funcionando correctamente.
Las librerías del SDK de Kinect están disponibles para los lenguajes C++ y C#.
Se eligió el segundo (C#) para desarrollar las aplicaciones.
Las imágenes de ambas cámaras del Kinect se obtuvieron mediante los
componentes WPF KinectColorViewer y KinectDepthViewer, que ofrece la SDK.
Para obtener los cuadros por segundo simplemente se calcula en función de las
imágenes captadas en cámara monocromática Depth. Se obtienen los tiempos
en cada instante y en función de éstos, se calcula la cantidad de cuadros en un
segundo. Por último se presenta el resultado como un dato en el cuadro de
visualización.
Para cambiar el ángulo utilizando el motor del sensor, se diseñó un simple
cuadro de texto en donde el usuario ingresa por teclado el ángulo deseado
respecto a la horizontal (no respecto a la base) y luego presionando en botón
SET con el mouse, se comanda el movimiento del motor cambiando el
parámetro ElevationAngle del objeto Sensor.
En cuanto al grabador y reproductor de audio, cuando el usuario oprime el botón
“grabar”, se activa una bandera la cual permite el ingreso a un bucle que toma
los datos entregados por el Audiosource del objeto Sensor y los guarda en un
simple array.
Este mismo bucle está dentro de otro bucle que permite determinar de dónde
proviene el sonido muestreado por el micrófono ambiental determinando el
parámetro BeamAngle.
Cuando el usuario presiona el botón “Reproducir”, simplemente, se abre el
archivo de sonido .MP3 guardado anteriormente.

Figura: Interface gráfica “TesKinect” diseñado

2.1.5. Desarrollo de la aplicación de grabado y reproducción de trayectorias


“IOSKELETON”
La otra aplicación desarrollada consiste en la realización de una aplicación
capaz de identificar los puntos más importantes del cuerpo humano (clase
Skeleton de SDK) grabándolos todo el tiempo que desee el usuario con la
opción de guardarlos en un archivo TXT. Esto es, grabar y guardar trayectorias
del cuerpo de una persona en un archivo común. Posteriormente, en la misma
aplicación, se tendrá la opción de cargar el archivo generado y reproducir las
trayectorias de manera gráfica.
Para lograr la generación de un archivo es necesario la creación de un protocolo
de archivo. Es decir, una forma de guardar los datos para que luego puedan ser
reproducidos respetando la forma. Es importante comprender el funcionamiento
y la forma de las señales captadas para luego entender el protocolo que se va
a crear detallado más adelante en este documento.
Esta aplicación es de gran importancia para el proyecto general ya que
conforma el “Input / Output” de archivos que representan la trayectoria de
personas. De esta forma, se podrá alojar en archivos todos los movimientos que
se registren para luego reproducirlos y analizarlos permitiendo manipular
sistemas robóticos en función de los puntos de las trayectorias captadas.
El guardado de datos se realiza mediante la escritura de la posición
tridimensional de todos los puntos en cada instante en un archivo TXT. Para
lograr este objetivo fue necesaria la elaboración de un protocolo de escritura y
lectura de datos.

Cada imagen será representada por una línea de texto de tipo String con el
siguiente formato:

 fps: primero se coloca el número de fps actual del cuadro escaneado.


 #: indica que comienza a describir los puntos de una persona (esqueleto)
 Id: id del esqueleto a grabar
 Sucesión de coordenadas x y z de cada punto en el siguiente orden:
 De esta manera, y siguiendo este protocolo, se logra la escritura y
lectura de todas las trayectorias que realiza una o varias personas en
frente del sensor Kinect. Por supuesto, la aplicación dispone de una
interface gráfica simple y amigable, para lograr una conexión segura
entre el usuario y el software.

Figura: Interfaz grafica de “ IOSkeleton”

Es de destacar que la aplicación ofrece dos posibilidades de grabado: manual


y automático. La primera brinda la posiblidad de iniciar y terminar la grabación
oprimiendo un simple botón. La segunda opción permite que el usuario
configure el tiempo de grabado en segudnos y al oprimir el botón de grabado,
la aplicación registra las trayectoras captados en ese periodo de tiempo.
2.1.6. Aplicaciones para Bioingeniería
Actualmente, el sensor Kinect es utilizado en múltiples campos tales como la
publicidad o el entretenimiento entre otros. La idea fundamental es incluir mayor
participación de dicho sensor en el campo de la salud mediante la inclusión del
sensor en dispositivos o desarrollos de bioingeniería.
Como se menciono anteriormente, las aplicaciones descriptas anteriormente se
encuentran dentro del marco de un proyecto mayor el cual consiste en la
construcción de un brazo de laparoscopia monitoreado con el sensor Kinect. A
grandes rasgos, el proyecto se basa en controlar el brazo de laparoscopia
utilizando el sensor Kinect, quien controla todas los movimientos alrededor del
brazo moviéndolo si es necesario. Evitando así, cualquier tipo de colisión que
pueda causar algún daño en el paciente.
Sin embargo, el proyecto anterior es solo uno de miles que se pueden realizar.
La idea principal es ir incluyendo paulatinamente el sensor Kinect a dispositivos
biomédicos. Otro proyecto en marcha actualmente en el cual se utilizan las
aplicaciones descriptas anteriormente, es un estudio de “fuerzas de la marcha”.
En el mismo, se hace caminar al paciente por una plataforma de fuerza
obteniendo el peso que se ejerce en cada instante de la marcha. Al mismo
tiempo, se escanea el paciente con dos sensores Kinect escaneando cada
trayectoria que realiza el paciente. Luego sincronizando los datos obtenidos
tanto por los sensores Kinect como por las celdas de carga de la plataforma de
fuerza, se obtienen los vectores de fuerza que realiza el paciente en cada
instante de la marcha permitiendo al profesional médico realizar algún tipo de
diagnostico en el caso de que el paciente presente alguna patología del marcha.
Como vemos, el sensor Kinect presenta un gran potencial en cualquier tipo de
aplicaciones. Por ello consideramos que es necesario aplicar este potencia al
campo de la medicina integrando el sensor a dispositivos biomédicos.

2.1.7 Conclusiones
Con este desarrollo se logró dar un gran paso en el proyecto general ya que se
estableció una forma de “Entrada / Salida” de archivos que contiene
trayectorias, lo cual hace tiempo se estuvo buscando.
Por otro lado, se adquirieron conocimientos de nivel avanzado acerca del
funcionamiento del sensor y la generación de aplicaciones en C# con el mismo
se adquirieron conocimientos acerca del funcionamiento general del Sensor
Kinect además de lasaplicaciones que se pueden llegar a desarrolar.
A partir del desarrollo de la aplicación de prueba “Test Kinect” se comenzó la
familiarización con el Sensor Kinect que permite evaluar el funcionamiento
general. Con el desarrollo de la aplicación “IOSkeleton”, se adquirieron los
conocimientos acerca del formato de las señales recibidas desde el sensor
además de crear un protocolo de entrada y salida de los mismos.
Respecto al aspecto técnicos se logró hacer funcionar el sensor Kinect
conectado a una PC obteniendo las señales captadas por todos los dispositivos
que posee el Kinect tales como la cámara VGA, cámara monocromática de
distancia, micrófono ambiental, motor vertical y acelerómetros.
Mediante el desarrollo del “Test Kinect” se logró una excelente aplicación de
ensayos que permite verificar el buen funcionamiento de todos los componentes
que integran el sensor y al mismo tiempo una herramienta muy útil para el
usuario en general. La otra aplicación desarrollada, el “IOSkeleton” registra los
puntos de una o varias personas en el espacio cartesiano tridimensional siendo
capaz de grabar las trayectorias del mismo, guardarlas y cargarlas en un archivo
de texto estándar. Esto representa un gran avance dado que permite usarlo
como punto de partida para construir otras aplicaciones.

3. LINKOGRAFÍA
 https://s3.amazonaws.com/academia.edu.documents/31853932/Especif
icaciones_Kinect.pdf?response-content-
disposition=inline%3B%20filename%3DEspecificaciones_Kinect.pdf&X-
Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-
Credential=AKIAIWOWYYGZ2Y53UL3A%2F20191029%2Fus-east-
1%2Fs3%2Faws4_request&X-Amz-Date=20191029T023750Z&X-Amz-
Expires=3600&X-Amz-SignedHeaders=host&X-Amz-
Signature=947e8b5a28e2815a7a786d37d9c0130fffa6ed11c19ced0a64
c3497ef914ea16
 https://www.vix.com/es/btg/curiosidades/2011/04/24/que-es-la-
bioingenieria

También podría gustarte