Você está na página 1de 20

Simulador de Entrenamiento de Armas Largas (SEAL-14)

(que después terminó en una 9mm)


SISTEMA DE TIRO VIRTUAL INTERACTIVO

INTRODUCCION AL PROYECTO POLIGONO VIRTUAL

Por Ing. Jairo Uparella


BSc.Computer Science

Escuela Naval de Suboficiales ARC Barranquilla

Barranquilla ATL, Marzo de 2004


Resumen

La construcción del sistema de tiro virtual que en este proyecto se describe, permitirá dar apoyo a
la instrucción que en armas largas se imparte al personal de grumetes de la Escuela Naval de
Suboficiales ARC Barranquilla. Su alcance debe ir más allá de una simple relación de tiro de
proyectil, parabólico o choque. En él se debe tratar de plasmar cada una de las reglas o normas
que para tiro se tienen y que son evaluadas por los expertos. Además, permitir evaluar el
comportamiento del entrenado en cuanto a sus capacidades de disparo o puntería.

Para el desarrollo de este sistema se deben centrar todos los esfuerzos y capacidades en la
adquisición de la imagen y el punto láser por parte de la cámara. Esto define al cien por ciento, si
realmente es factible la hipótesis de cámara-video beam para el montaje final. El resto del proyecto
es cuestión de arte y táctica.
Objetivo General

Diseñar un simulador de tiro como un sistema de apoyo a la instrucción de armas largas.

Objetivos Específicos

 Diseñar un programa con el cual, a través de una cámara de vídeo, se lea un punto láser
proyectado en la pared.

 Diseñar un ambiente virtual el cual es proyectado en la pared con el uso de un Vídeo Beam.

 Elaborar un programa, el cual debe relacionar el punto láser con los objetos virtuales del
ambiente.

 Implementar un dispositivo láser en un fusil M-14 el cual debe ser integrado a través de un
dispositivo electrónico con la computadora principal, para registro del disparo.

 Adaptar un dispositivo neumático para simular el retroceso de un fusil M-14.

 Construir un sistema de plataforma hidromecánica o neumática que simule el estado del mar
Estado del Arte
Se presenta a continuación un documento como aporte al estado del arte debido a que en nuestro
país no tenemos una fuente local acerca del desarrollo de un sistema como el presente.

TIRO
Disparos virtuales
El simulador de tiro, una nueva alternativa de entrenamiento que convoca adeptos de todas las disciplinas y
edades.

© Copyright 2002 Editorial Perfil S.A. Todos los derechos reservados

Los polígonos de tiro en pleno microcentro no son nuevos; pero éste es distinto, porque es virtual o, mejor
dicho, porque se trata de un simulador de tiro. Es decir, imitación de las condiciones reales de pedana, pero
en un salón de 8 x 6 metros, ubicado en un tercer piso. Según Horacio Buccello –fundador y socio gerente de
la entidad–, Main Shoot es por ahora el único en su tipo abierto al público que existe en la Argentina y en
Latinoamérica. “Aunque –aclara– la Policía Federal y la Armada Argentina cuentan con estos simuladores
desde hace tiempo para instruir a sus efectivos, desde ya que con otros programas específicos; al igual que el
FBI, y las policías de Nueva York y Atlanta.”

Básicamente, se trata de dispararle a blancos que se presentan en una pantalla de 3 x 2,5 metros. Y las
ventajas saltan a la vista: alta capacidad de entrenamiento a bajo costo, comparado con munición real. Se
usan armas verdaderas, con mecanismos y peso originales (pistolas Sig Sauer P-226, P-228, Browning,
escopetas, etc.), que tienen retroceso y cuyos disparos hacen ruido. Pero no hay balas ni –por consiguiente–
humo, olor a pólvora o contaminación ambiental. El sistema funciona mediante un láser pasivo (invisible) que
hace las veces de proyectil, y el retroceso está dado por una manguera conectada a la placa base del
cargador, por donde circula aire comprimido que le permite a la corredera abrirse y cerrarse, simulando el
retroceso normal. Todo el sistema funciona mediante una computadora central dirigida por un instructor de
tiro/operador, quien desde un teclado puede modificar tanto el retroceso como la cantidad de disparos
alojados en el cargador, el volumen de la explosión, y la distancia, forma y disposición de los blancos.

Entre el tirador y la pantalla no hay más de cinco metros, lo que no implica que no se pueda tirar a más, o a
menos. La variación del tamaño del blanco es lo que determina la distancia hasta el tirador; cuanto más cerca,
más grande, y viceversa. Hay blancos de todo tipo: concéntricos, bruselas, con figuras, fijos, en movimiento,
que desaparecen a intervalos determinados, etc. Y situaciones de todo orden, ya que desde la consola de
comando se pueden alterar las condiciones de tiro e incorporar: viento, nieve, lluvia, niebla, oscuridad...

El sistema cuenta con decenas de “pantallas” almacenadas (técnicamente denominadas: líneas de polígonos),
y con películas grabadas en DVD, específicas para cada entrenamiento y curso. Además, permite crear
escenas y escenarios a la medida de cada gusto o necesidad específica.
Para ingresar en Main Shoot no hay restricciones; de hecho concurren familias con hijos a iniciarse en el tiro
deportivo. Es posible tomar cursos (hay más de 35 con certificados de validez internacional), como ir a
practicar de manera libre. En ambos casos, se efectúa el seguimiento del tirador con un profesor instructor
especializado (Renar ITA), a fin de corregirlo en las falencias que pueda presentar, tanto en lo referente a
seguridad como a puntería. A modo de complemento, se dictan prácticas exclusivas. La de este mes estará a
cargo de Robert Thomas, director de la Asociación Internacional de Tiro Policial;

Simunition (munición no letal).

Como referencia, en media hora un tirador que se inicia puede llegar a disparar entre 200 y 300 tiros, y uno
avanzado superar los 800. Todo depende del nivel individual, del grado de dificultad del ejercicio, y de la
resistencia física de la persona. Más allá de la posibilidad de disparar en cantidad, y del entrenamiento por
variedad de situaciones, otra de las ventajas del simulador es que permite efectuar el análisis de cada disparo,
y así corregir la puntería. En la memoria del sistema quedan registrados los movimientos efectuados con el
arma mientras se apunta, cuando se presiona la cola del disparador, y una vez realizado el disparo. Líneas
verdes, violetas y celestes dibujan en la pantalla los respectivos recorridos, cuya interpretación facilita
comprender los errores, y corregirlos. Sumado a ello, van el promedio de impactos, el puntaje, la cadencia, la
cantidad de tiros, y la medida del grupo, entre otros factores.

Según Buccello: “La persona que tenga buen desempeño en el simulador, sin duda va a tener igual actuación
en un polígono real; no en vano 40 países entrenan a sus fuerzas de seguridad y armadas con equipos de
estas características. Es más, en los Estados Unidos, la International Hunter Education Association y The
National Bowhunter Education Foundation apoyan la utilización de los simuladores entre los cazadores
deportivos, pues consideran que contribuyen a evitar la caza indiscriminada y ayudan a conservar la fauna”. Al
respecto, Main Shoot cuenta con escopetas Remington 870 para la práctica sobre blancos tradicionales y, a
partir del mes próximo, para ser utilizadas sobre escenarios de hélice, platillo, paloma, perdiz y liebre. Con el
correr del año se sumarán a ellas arco y flecha virtual, y fusiles sobre blancos fijos, y sobre presas en
movimiento, como ciervos y jabalíes.

La actividad es útil tanto para la defensa personal o del hogar, como para el entrenamiento deportivo. En el
primer caso, pueden solicitarse los cursos especiales creados en video, donde se utiliza el poder de disuasión
de la propia voz y de armas no letales para evitar el enfrentamiento o actuar en consecuencia. En la faceta
deportiva, dadas las actuales condiciones de mercado, donde las municiones están más cerca de la estantería
que de la pedana, entrenar en simulador es una completa alternativa para mantenerse en forma, ya que los
1.000 disparos no superan el costo de una caja de 50 balas calibre 9 mm de primera marca.
Comparativamente, algo así como el 95 por ciento menos
Metodología

Para la realización del proyecto se han establecido tres etapas de investigación y elaboración:

1. Montaje de prototipo Inicial

La prueba inicial del simulador está centrada en la adquisición de una video cámara, tarjeta
capturadora, tarjeta renderizadora y un dispositivo láser a bajo costo, siendo estos los materiales
de investigación. A partir de este etapa se adquirirán los elementos propios y se desarrollarán los
programas necesarios.

2. Lectura de imagen y registro del punto láser

Considerada como la etapa fundamental del proyecto, establece el desarrollo de un programa de


captura de vídeo independiente de software comercial alguno, el cual entregará una imagen a la
computadora principal. La imagen debe ser decodificada con el fin de obtener las coordenadas de
memoria donde se aloja el punto rojo.

3. Diseño del escenario virtual y programación de modelos y eventos

Elaboración de los modelos tridimensionales, ambiente y estructuras de relación entre las


coordenadas de colisión del disparo y dichos modelos.

4. Implementación láser, retroceso del M-14 y Plataforma móvil

El dispositivo láser se coloca como un cartucho dentro del cañón alineado con éste para su
máxima precisión. La electrónica de un interruptor que registra el momento del disparo, activa unas
milésimas de segundo después la cámara, capturando la imagen en pantalla.

Un sistema neumático es conectado al fusil M-14, el cual hace que se sienta un ligero golpe una
vez se haya disparado el láser. Este sistema consta de un compresor de aire, una manguera y una
boquilla conectada al fusil, la cual se abre electrónicamente expulsando aire comprimido con el fin
de levantarlo, simulando un retroceso real.
La plataforma móvil consiste en una superficie adaptada a mínimo tres sistemas hidráulicos que
permitan el ladeo y cabeceo de la misma, cuyo movimiento es sincronizado por una interface
electrónica conectada a la salida paralela de la computadora principal.

1. Montaje del prototipo Inicial

Al acoplar la tarjeta capturadora y renderizadora en los slots apropiados de la computadora, se


conectará el cable S-VIDEO DIN 4 a la cámara. Luego se desarrolla el software de captura de
video obteniéndose así el primer programa esencial. La primera prueba se hace disparando el
láser en la pared de color blanco, hacia donde la cámara está dirigida. No importando ajustes ni
coordenadas, el programa estará en condiciones de ubicar en memoria el punto capturado. Más
adelante se explica el proceso en un modelo de software de captura de coordenadas.
2. Lectura de imagen y registro del punto láser

Composición básica del sistema principal

Esencialmente y resumiendo, el sistema está compuesto de tres elementos básicos:

 El vídeo beam, el cual proyecta las imágenes del escenario virtual a la pared, acompañado de
una tarjeta aceleradora AGP y renderizadora de vídeo (G-Force nVidia), donde se acopla el
vídeo beam. Esto simplifica el uso de un monitor.

 La cámara de vídeo, la cual hace de escáner a lo proyectado en busca del punto. Esta viene
acompañada de una tarjeta capturadora de vídeo (frame grabber) adaptada al slot PCI de la
PC.

 Por último el sistema de rayo láser, el cual deberá ser acoplado a un M-14 o a una 9mm.

Para la captura del punto, un programa permite recorrer la memoria de video, en busca de una
referencia RGB. Las imágenes deben carecer en lo máximo, de color rojo, es decir, un grupo de
pixeles a proporción cercana a 255, 0 , 0, (100% rojo). Esto permitirá buscar dicha referencia de
forma exacta. Obtenidas las coordenadas XY del punto, el programa debe ser capaz de buscar la
referencia dentro del ambiente virtual y comparar con el objeto en dicha posición.

Software de diseño a utilizar

DierctX de Microsoft ofrece una serie de APIs en C++, las cuales permiten editar
imágenes compuestas obviamente de pixeles entre otras prestaciones.
DirectShow es una arquitectura de canales para Windows, la cual permite la
reproducción de vídeo de alta calidad y proporciona un conjunto de interfaces
ampliables sobre las cuales se pueden construir herramientas y aplicaciones
multimedia. Permite reproducir entre otros formatos, MPEG, AVI y sonidos WAV. Al estar integrado
con la tecnología Microsoft DirectX, automáticamente se aprovecha de cualquier aceleración en el
hardware de vídeo y sonido para obtener el mayor rendimiento posible.

El modelo de controlador Win32 (WDM) es un modelo de controlador unificado para Windows 98 y


Windows NT. Los beneficios de WDM son los siguientes:

Reduce la complejidad, al tener un controlador tanto para Win98 como para Win NT.
Ejemplifica nuevos desarrollos de controladores

WDM permite que los nuevos dispositivos tengan un único controlador para ambos sistemas
operativos. WDM ha sido desarrollado añadiendo servicios seleccionados del núcleo de NT en
Win98, a través de un controlador especial de dispositivos virtuales (NTKERN.VXD). Esto permite
que Win98 mantenga una compatibilidad completa con el legado de controladores de dispositivos,
a la vez que añade soporte a nuevos dispositivos WDM. Win98 amplía el soporte a los dispositivos
y buses WDM incluyendo:

Dispositivos humanos de entrada – Teclados, mouse, apuntadores, Joysticks y mandos de


juegos.

Dispositivos de Comunicaciones – Modems

Dispositivo de captura de imágenes – Scanner, cámara de foto fija y vídeo cámaras.

Otros dispositivos –DVD, Altavoces, amplificadores y otros.

Buses – Bus USB e IEEE 1394 Firewire

OpenGL Library de Silicon Graphics - se define como una especificación


de bibliotecas de bajo-nivel para gráficos la cual proporciona al programador
un conjunto de primitivas y bitmaps y la posibilidad de interactuar con estos objetos. También se
define como una interface de software (APIS, Application Programming Interface, más de 200
comandos diferentes) para Hardware gráfico, con el fin de renderizar una imagen dentro del frame
buffer. Fue diseñado originalmente para ser utilizado con C y C++ pero actualmente opera bajo
lenguajes de programación como Java, TCL, Ada y FORTRAN. OpenGL es independiente del
sistema operativo y de un sistema de ventanas y los programas pueden ser ejecutados en una
máquina y sistema o plataformas diferentes a la que fue utilizada para la creación de los mismos.

OpenGL es el estándar de facto en generación de gráficos 3D interactivos, siendo la interface de


programación de gráficos en modo inmediato adoptada por la mayor parte de fabricantes de
hardware y software tales como Cray Research, DEC, Evans & Sutherland, Harris Computer,
Hitachi, IBM, Intel, Intergraph, Kendall Square Research, Kubota Pacific, Media Vision, Microsoft,
NEC, Samsung, Sony y SIlicon Graphics. Varias compañías disponen de implementaciones de
OpenGL para Sun y Hewlett-Packard, incluyendo Du Pont Pixel y Portable Graphics. OpenGL es
descendiente directo de la IRIS Graphics Library, desarrollada en 1982 para ser utilizados con los
aceleradores gráficos de Silicon Graphics. Existen más de 1500 aplicaciones desarrolladas con
esta interface de programación. OpenGL proporciona un amplio rango de características gráficas
que van desde la creación de puntos, líneas o polígonos a las funciones más sofisticadas en
iluminación y aplicación de texturas.

Aspectos técnicos a considerar

Tipos de Videos
Video Tuner
Video Composite Composite video connector (BNC)

S-Video Imagen de alta calidad S-video color input connector (4-pin DIN)

Video RGB
ideo YRYBY
Video Serial Digital
Video Parallel Digital
Video SCSI
Video AUX
Video 1394
Video USB
Video Decoder
Video Encoder

Capturadora de vídeo 640 x 480, NTSC, S-Video, WDM compliant driver

En la siguiente figura se aprecia la interface entre el programa o aplicación y la tarjeta capturadora


de vídeo. Se seleccionó trabajar con tarjetas de este estilo por la resolución de operación que
soportan 640 x 480 o sup, NTSC, S-Video, con WDM compliant driver - Win32 Driver Model para
captura de vídeo. Las cámaras USB “WebCam” no son de alta resolución. Por otro lado 1394 o
Firewire es un standard de alternativa que bien puede ser tomada en cuenta.
Un aspecto de la función del estado de la cámara sería:

void defaultCamState(CamState *state)


{
state->frame_rate = FRAMERATE_15;
state->auto_exposure = 128;
state->brightness = 128;
state->gain = 12;
state->gamma = 128;
state->hue = 128;
state->saturation = 128;
state->sharpness = 32;
state->shutter = 2542; // equals 1/500 second;
state->white_balance = 524416;
state->white_balance_auto = false;
state->shutter_auto = false;
state->gain_auto = false;
state->trigger_mode_on = true;
}
Formatos de Video IN Formatos de Video OUT

RS170 mono RS170


CCIR mono CCIR
RS330 RS330
RS422 RS422
NTSC color NTSC
Y/C Y/C
RGB RGB
PAL PAL
SVGA
VGA

Frame Grabbers

Los Frame grabbers (freim grebers) son tarjetas de


procesamiento de imágenes las cuales capturan y almacena
datos de imágenes para aplicaciones industriales tales como
control de calidad. Los Frame grabbers pueden operar en mono
o color.

Para frame grabbers que pueden manejar salidas de cámara en


un formato análogo, las especificaciones de la cámara deben
ser consideradas. La profundidad del pixel de entrada se refiere
al número de bits en cada pixel, lo que al incrementarse, permite
incrementar también la cantidad de detalles que serán
reproducidas. Los formatos incluyen RS170, CCIR, RS330, RS422, NTSC, Y/C, PAL, y RGB.

Para frame grabbers que pueden manejar salidas de cámara en formato digital la profundidad de
adquisición del pixel es importante a considerar.

Las salidas para los frame grabbers incluyen RS170, CCIR, RS330, RS422, NTSC, Y/C, RGB,
PAL, SVGA, and VGA.
Computer bus interface choices for frame grabbers include, PCSI bus, ISA / EISA bus, VESA /
Local bus, PC card / PCMCIA, Mac-Nubus, Mac-PCI, Sun-Sbus, STD bus, Multibus, VME, and VXI
/ MXI.

Fuente: http://video-equipment.globalspec.com/SpecSearch/ SearchForm/Video_Imaging_Equipment/


Machine_Vision_Inspection

Captura de primera imagen

Dos puntos cruciales para la elaboración de este proyecto se hallan relacionados con la captura de
imagen. Como se dijo, la cámara debe capturar la imagen virtual proyectada por el vídeo beam y el
punto de impacto del láser. Por otro lado el programa principal debe separar uno de lo otro para
obtener las coordenadas respectivas del punto.

Determinación de las proporciones Horizontal y Vertical

En primera instancia se determina para su configuración, las coordenadas de ajuste entre el vídeo
beam y la cámara, buscando el porcentaje de error de distorsión que se presenta una vez iniciado
el sistema. Esto se hace interpolando los puntos previamente proyectados y disparando el láser
con el fin de indicar cada uno de los cuatro vértices en que se representa el ambiente virtual.

Parámetro de proyección

 = P/Q donde P es la diferencia de dos disparos


Q es la diferencia entre puntos fijos proyectados

luego X’ = X P/Q donde X’ = X punto real de impacto, X punto ideal.

Se deben hacer cuatro disparos en cada cruz con el fin de configurar inicialmente el sistema. La
siguiente figura muestra los primeros puntos y coordenadas proyectadas para el ajuste entre
cámara y vídeo beam:
3 20

Determinación del porcentaje de error

Para un ajuste exacto, la computadora arroja el valor de distorsión de la cuadrícula previamente


configurada. El usuario determina si el porcentaje es aceptable o no.

Si  > 1, E = ( - 1 )*100 Si  < 1, E = (1 -  )*100

Suponiendo que se hace un disparo en X1 = 2 (siendo 3), y X2 = 21 (siendo 20), y los puntos fijos
son 3 y 20, entonces

P = 21 – 2 = 19 ,  = 1.1176
Q = 20 – 3 = 17

Porcentaje de error 11%, 9/17 11/17 14/17 16/17 17/17 18/17 19/17 21/17

Si dispara en X = 15, el valor real es X’ = 16.76, ajustándose a la imagen, lo que ocurre también
para la coordenada Y.
Adquisición de coordenadas de disparo

Una vez la imagen compuesta de objetos virtuales y el punto rojo del láser es capturada por la
cámara (justo momento posterior al disparo) el programa revisa el frame o imagen de ese momento
y a manera de scanner,
almacenando el valor de las
coordenadas X y Y cuando detecta
que el píxel leído, corresponde al
rojo.

Para esto se diseñó un pequeño


programa donde la misma
computadora asigna al azar el punto
de impacto de la bala, una vez se
presiona el botón “shoot” o
“disparar”. Al presionar el botón
“Obtener Coordenadas”, el programa
muestra las coordenadas exactas
donde se impactó. El siguiente botón
torna el punto rojo de azul.

3. Diseño del escenario virtual y programación de modelos

Relación Objeto – Disparo

Las coordenadas XY del disparo, se comparan con las


coordenadas del ambiente virtual, las que se encuentran en
proporción directa. Si las coordenadas son iguales o están
dentro de un rango preestablecido, donde un objeto está
definido, este objeto virtualmente es impactado. Cada objeto
tendrá divisiones o campos de impacto, con el fin de determinar
el ”daño” causado. Por ejemplo, una silueta de un enemigo
tendrá definido por lo menos tres campos de impacto como lo
indica la figura.
En el ejemplo anterior, la diana estaba limitada a 200 x 200 puntos y su relación de movimiento con
el espacio virtual es cero. Como el practicante de guardia si se mueve virtualmente con relación a
la imagen, obviamente que todos los objetos se mueven también en relación a él. Entonces el
programa debería analizar la relación de movimientos para ambos y al disparar el láser debe ser
capaz de determinar la trayectoria e introducción de la bala virtual en el ambiente sintético, como lo
muestra la siguiente figura.

La relación de coordenadas XYZ de la posición virtual del objeto y las coordenadas X = X’, Y=0 de
cómo se ve en la pared, deben coincidir, sin tener en cuenta la profundidad de esta, con el fin de
que a lo que se apunta se le da. Para esto se elaborará un escenario y objetos en 2D a manera de
película, renderizados del campo tridimensional. Esto sería hacer un doble trabajo, pero se evita
tener que hacer cálculos de relaciones de ángulos y transformaciones de coordenadas. Una
explicación a esto se resume en el hecho de que “el arma no hace parte de los objetos virtuales, es
casi real”.

Animación y efectos

A diferencia de un ambiente virtual, en el video renderizaado las situaciones de clima y sus efectos
ya están dadas. Se puede crear una biblioteca de fondos diurnos, nocturnos, con lluvia, con niebla,
etc. Pero el verdadero efecto de la animación está en los objetos que se mueven y trasladan.
Para esto se ha programado un evento de filmación real, con actores reales, cuya película servirá
de soprte a los objetos que aparecerán en el escenario de forma ramdómica o al azar. Los efectos
de explosiones y sonidos ya han sido seleccionados y dispuestos para ser introducidos en el
ambiente.
La figura muestra una reproducción de explosión, lo cual es activado por un disparo en caso de
pegar en un tanque de combustible por ejemplo.

La computadora emitirá los sonidos necesarios de ambientación que darán más realismo a los
eventos programados, siendo el principal el que simula un disparo de un M-14. A continuación una
lista de sonido de disparos de armas de todo calibre y de otros efectos. Cada movimiento ou objeto
tiene asociado un sonido.

4. Implementación láser, retroceso del M-14 y Plataforma móvil

Este punto no está sujeto al desarrollo de los anteriores, pero depende de lo anterior en gran
medida para el montaje global del sistema.
Tiempo del proyecto

El tiempo del proyecto se estipuló así:

 3 meses Investigación
 a un año (9 meses) desarrollo del software,

A partir de la orden de inicio del mismo.

Ningún programa, diseño o imagen será de carácter comercial, lo que lo hace un producto
exclusivo y de uso privativo de la Armada Nacional y su reproducción obedecerá a los tratamientos
que para sobre derechos de autor, material e intelectual estipula la ley.

Jairo Uparella
Diseñador Escenarios Virtuales
Cel 315 7342855
Cartagena-Colombia

Você também pode gostar