Este tutorial demostrará cómo se puede iniciar una simulación en VPL. Para ello se creará un proyecto en VPL que permitirá conducir un robot a través de un mundo simulado.
Este tutorial se encuentra en la carpeta de instalación de MSRDS bajo la subcarpeta “Samples\VPLTutorials\Tutorial4”.
Para empezar, cree un nuevo proyecto seleccionando “New” del menú “File”. A continuación, inserte (arrastrar o doble clic) un servicio “XInput Controller” desde la caja de herramientas de servicios. Ahora inserte un servicio “Generic Differential Drive” y conéctele el pin de salida de notificación del “XImput Controller”. En la ventana de diálogo de conexiones, seleccione de la lista de “From:” el valor “TriggersChange” y de la lista “To:” el valor “SetDrivePower”. En la ventana de diálogo de datos de las conexiones, introduzca los valores indicados en la siguiente figura:
Figura 81: Datos de la conexión entre el “XInput Controler” y el “Generic Differential Drive"
Fíjese que cuando se quiere girar a la derecha, esto se convierte en avanzar con el motor izquierdo y viceversa. Al utilizar el servicio XInput Controler se supone que tendrá un joystick configurado y funcionando con el que podrá manejar el robot (Puede servir un mando de la vídeo consola [7] Xbox 360) y el diagrama queda muy sencillo. En el tutrorial de este documento “Drive-By-Wire” se puede observar un diagrama que realiza funciones parecidas a este servicio pero en lugar de utilizar un joystick, se simulará este a través de una ventana con flechas para mover el robot.
Figura 82: Diagrama final del tutorial de simulación en VPL.
Para realizar una simulación de este diagrama, sólo se debe asociar el fichero del manifiesto (“manifest”) apropiado sobre el servicio “Generic Differential Drive”. Si hubiese varios servicios iguales, sólo es necesario configurar en uno de ellos. Haga clic con el botón derecho sobre este servicio y seleccione de la lista desplegable el valor “Use a manifest”. Presione el botón que aparecerá para importar un manifest y busque y seleccione uno de los siguientes manifiestos: