Post on 06-Aug-2021
29
CAPÍTULO 3: SISTEMA VICON MX
El sistema Vicon MX es el sistema óptico más avanzado de captura de
movimientos disponibles. Los principales componentes de un sistema Vicon son las
cámaras, el módulo de hardware de control, el software (para analizar y presentar los
datos) y el equipo para ejecutar el software. MX ofrece una mayor precisión, mayor
rendimiento y mayor funcionalidad que sus versiones precedentes.
El sistema Vicon MX ha sido diseñado para ser flexible, ampliable y fácil de
integrar en el entorno de trabajo. Con una combinación de los componentes del sistema
se puede crear sistemas de cualquier tamaño y enlazar fácilmente a los dispositivos
externos que desee utilizar.
Cada sistema Vicon MX incluye al menos un MX Giganet para proporcionar
energía y comunicación de datos con hasta 10 cámaras y otros dispositivos. El MX
Giganet también gestiona el flujo de datos a la computadora que ejecuta el software que
se utilizará para analizar los datos. Si el sistema tiene más de diez cámaras necesitará
otra Giganet por cada diez cámaras adicionales.
Figura 16: Arquitectura de sistema Vicon
El sistema Vicon MX usado para este proyecto está conpuesto por 20 cámaras
Vicon T20, 2 MX giganet y un ordenador donde se ejecuta el software que analizará los
30
datos captados por las cámaras. En el anexo b) se detallan las características técnicas de
los equipos usados.
3.1. Software
El software con el cual se analizan los datos captados por las cámaras está
albergado en un PC, que se conecta al MX Giganet a través de un puerto gigabyte.
Según la necesidad de la aplicación se usará un software u otro. En este caso se usarán
los programas Tracker y Nexus para la necesidad de seguimiento en vuelo de
quadrotors.
3.1.1. Tracker
Vicon Tracker es una potente solución de seguimiento de objetos que
proporcionan una exactitud sin precedentes para la integración de datos en aplicaciones
3D. Tracker ha sido diseñado para aplicaciones tan diversas como: el seguimiento de
robots, ingeniería de factores humanos, la optimización del método de diseño,
ingeniería virtual y previsualización.
Puede seguir fácilmente 50 objetos únicos de forma simultánea, lo cual nos
facilita poder volar varios quadrotors simultáneamente sin ningún tipo de problema.
Reconoce los cuerpos rígidos en 2D, por lo tanto sus datos continuarán incluso si los
marcadores se hacen visibles a una sola cámara. Esto se traduce en menos lagunas y
datos más confiables.
En la figura 17 se presenta la interfaz de Tracker donde vemos que se divide en
dos partes. La parte de la derecha es la dedicada a la configuración de las cámaras, al
calibrado y manejo de objetos. En la parte de la izquierda se representa la imagen que
capturan las cámaras.
31
Figura 17: Interfaz de Tracker
Tracker tiene una latencia de 2,5 milisegundos, lo que es hasta 5 veces menos
que otros sistemas. Esto reduce los problemas de retroalimentación y así se pueden
rastrear objetos en movimiento a gran velocidad.
Sea cual sea la aplicación, Tracker puede rápidamente captar la secuencia de
datos en tiempo real y se puede agregar fácilmente el software Tracker para el sistema
óptico de captura existentes. No sólo funciona con Vicon MX3, serie F, serie T y
cámaras Bonita, también es compatible con el sistema Vicon virtual, lo que permitirá
integraciones prototipo en software sin ningún tipo de hardware.
Para poder usar Tracker se necesita previamente hacer una serie de pasos para
garantizar el buen funcionamiento. En primer lugar cuando abrimos Tracker y tras una
previa inicialización automática de las cámaras hay que comprobar que todas las
cámaras están operativas (figura 18).
32
Figura 18: Vicon Cámaras
En la figura 19 se muestran las opciones que posee Tracker para la realización
del calibrado y que pasaremos a explicar a continuación cada uno de ellos.
Figura 19: Calibrado del sistema
33
Antes de realizar el calibrado es necesario enmascarar todos los reflejos (figura
20) que el sistema identifique como marcas pero que realmente no lo son y puede causar
interferencias.
Figura 20: Máscara al reflejo en una columna del banco de pruebas
Una vez que en el entorno no tenemos reflejos indeseados procedemos al
calibrado. El calibrador (figura 21) es un objeto con forma de “T” con cinco marcadores
que el sistema conoce sus dimensiones exactas.
Figura 21: Calibrador
Para realizar el calibrado debemos mover el calibrador en el entorno de trabajo
para que Tracker vaya captando datos sobre el calibrador con las distintas cámaras.
Cuando tengamos los datos necesarios para realizar el calibrado se parará esta acción y
Tracker automáticamente realizará el calibrado con los datos obtenidos.
Cuando ya tenemos el sistema calibrado debemos situar el origen de
coordenadas del sistema mediante el calibrador. El calibrador se colocará en el suelo en
el lugar donde queremos que se sitúe el origen de coordenadas y se pulsa el botón “SET
VOLUME ORIGIN”.
34
En este momento ya tenemos el sistema Vicon MX listo para usar y por lo tanto
ya podremos colocar objetos y poder identificarlos (figura 22).
Figura 22: Opciones de los objetos
Para ello introducimos un quadrotor en el sistema y procedemos a la creación del
objeto en Tracker para que identifique las marcas que lo forman como un único objeto.
Señalamos todas las marcas que queremos que formen el nuevo objeto y pulsamos el
botón “Create” y ya tenemos un nuevo objeto con el nombre indicado.
35
La figura 23 muestra gráficamente cada uno de los estados en la creación de un
objeto. La imagén central representa las marcas captadas por las cámaras antes de
indicarles que ese conjunto de marcas forman un objeto. La imagen inferior representa
el objeto ya creado.
Figura 23: Crear un objeto
También es necesario poner los ejes del objeto correctamente (figura 24) para
que las medidas sean las que queremos en nuestro sistema de referencia. Es tan fácil
como mover eje a la posición y orientación que deseamos.
36
Figura 24: Configuración de los ejes del objeto
Ya tenemos un objeto listo para poder obtener los datos en posición y actitud y
así poder controlarlo. En la figura 25 comprobamos la visión del sistema Vicon sobre un
objeto situado en el suelo.
Figura 25: Vista general del escenario
37
3.1.2. Nexus
Vicon Nexus es el primer software de captura de movimiento en el mercado. Es
fácil de aprender a usar y ofrece una interfaz muy intuitiva puesto que tiene los botones,
menús y controles donde se espera encontrarlos (figure 26). Nexus ha sido diseñado de
acuerdo con los principios modernos de interfaz de usuario.
Figura 26: Interfaz de Nexus
Nexus es un programa en tiempo real para que poder ver todos los datos en
mismo en el que están sucediendo. Si se agrega una cámara nueva al sistema, no es
necesario hacer nada en Nexus puesto que automáticamente la detecta. Después de la
captura, no se tienen sorpresas desagradables con Nexus ya que se puede comprobar la
calidad de sus datos, almacenar los datos obtenidos y luego se pueden reproducir para
comprobarlos. La figura 27 muestra los datos almacenados en diferentes secciones.
Figura 27: Datos Almacenados por Nexus
38
Es la primera aplicación de software en el mercado para integrar vídeo digital de
referencia, de manera que mejora significativamente su facilidad de uso y proceso de
análisis. También es capaz de superponer la información 3D de la imagen de vídeo. Se
puede elegir entre una variedad de cámaras de vídeo digital, utilizando los estándares
DV y DCAM.
Nexus contiene una gran variedad de utilidades para adaptarse a cada una de las
necesidades. Por ejemplo se puede empezar a almacenar automáticamente los datos a
partir que se alcance algún valor determinado, esto es útil para que sólo grabe los datos
cuando el quadrotor está en vuelo. También se pueden observar las graficas de los
valores obtenidos en tiempo real o a posteriori.
Al igual que en Tracker hay que realizar el proceso de calibrado y creación de
cada objeto. El procedimiento en similar en Nexus por lo tanto omitimos la explicación
para no ser redundante.
3.2. Integración software del sistema Vicon
Tanto Tracker como Nexus poseen un flujo de datos que permiten tanto
conexiones TCP unicast como conexiones multicast UDP. Puedes crear un sistema
integrado para la adquisición y el intercambio de datos con dispositivos terceros.
Para esta comunicación tenemos las funciones pertenecientes a la librería
Client.h creada por los desarrolladores de Vicon. De este conjunto de funciones sólo
usaremos las necesarias para nuestra aplicación que son:
- Connect
- GetFrame
- GetSegmentGlobalTranslation
- GetSegmentGlobalRotationEulerXYZ
Connect será la encargada de conectar el PC con el sistema Vicon y así poder
comunicarnos con él. Una vez conectados obtendremos una trama con GetFrame. A
partir de esta trama conseguimos los datos de posición y actitud de cada quadrotor con
39
GetSegmentGlobalTranslation y GetSegmentGlobalRotationEulerXYZ
respectivamente.
A continuación mostramos el diagrama de flujo (figura 28) del programa que se
encarga de de la conexión y adquisición de los datos en posición y actitud de cada uno
de los quadrotor. Para ver con más detalle como se ha hecho la integración en el anexo
h) puedes ver el código.
40
Figura 28: Diagrama de flujo Sistema Vicon
41
3.3. Banco de pruebas
El sistema Vicon será integrado en un banco de pruebas de dimensiones
18x18x6 metros, uno de los banco de pruebas de este tipo más grandes del mundo. Está
construido con una estructura del tipo truss (figura 29) usada principalmente para el
montaje de escenarios.
Figura 29: Estructura truss
Las 20 cámaras que forman el sistema Vicon estarán situadas por el banco de
pruebas de tal forma que visualicen la mayor parte del volumen del banco de pruebas. A
pesar de tener un número de cámaras considerables aparecen zonas muertas en el banco
de pruebas, donde el quadrotor al entrar en alguna de ellas el sistema Vicon pierde su
visibilidad. Estas zonas muertas están situadas principalmente en la parte inferior y
superior de cada una de las columnas que forman el banco de pruebas.
42
Figura 30: Imagen del banco de pruebas
Será recubierto por redes para evitar que un quadrotor descontrolado pueda salir
del banco de pruebas y provocar un incidente.