Despues de diseñar el robot y exportarlo con la estensión "ldr" podrás programar tu robot y usarlo en este simulador. 

Virtual Robotics Toolkit (VRT) 

Virtual Robotics Toolkit (VRT) es un software de Cogmation Robotics. 
Es un simulador virtual de un robot MINDSTORMS en vivo, utiliza la física precisa que permite que el robot en el mundo virtual se comporte exactamente como uno físico en la vida real. 
Puedes diseñar tu propio robot utilizando LEGO Digital Designer (LDD), importarlo al software y luego controlarlo dentro del software. 
Puedes programar el robot virtual utilizando los mismos entornos de programación LEGO Mindstorms (EV3-G, NXT-G) 
VRT ofrece una gran cantidad de desafíos (seguimiento de líneas, limpieza, sumo de robots) que le permiten perfeccionar sus habilidades de robótica virtual.
 ¡Incluso incluyen modelos precisos de las tablas de competición FLL y WRO!


El software es excelente porque elimina la necesidad de un robot físico.
Cada paso del proceso de creación de prototipos del robot se puede realizar dentro del software. 
¡Ahora, cada estudiante puede construir su propio robot virtual y experimentar por sí mismo! 

Además es un software que permite realizar competencias virtuales, como por el desafío ROBOT VIRTUAL GAMES cuyo enlace les dejo   sitio de Robot Virtual Games .



 Al comenzar con VRT nos muestra la siguiente interface 



✔Si ponemos el mouse en la parte superior tendremos algunas opciones de uso

✔Pero si apretamos VRT tendremos acceso al modo avanzado

✔Seguidamente F12 y tendremos las opciones más avanzadas para trabajar



Algunas teclas para considerar
  • Con el Botón derecho del ratón podemos mover el plano desde nuestro punto de vista
  • Si combinamos Alt + Botón Derecho del ratón podemos rotar rotar el plano
  • Si combinamos Crl + Botón Derecho del ratón podemos mover el plano hacia los lados
Otras opciones del menú de VRT:


✔El botón del Menú que se ve en la imagen anterior permite ver el tablero desde distintas perspectivas.
Los botones del reproductor permiten ejecutar o detener la simulación. Otras opciones son la que se muestran a continuación

✔La mano se encuentra junto a los botones de reproducción y al usar el botón de la mano no podremos seleccionar objetos del tablero/ plano.

✔En cambio si hacemos click en el botón que está junto a la mano y que muestra unas coordenadas, nos permitirá seleccionar los objetos, como se muestra a continuación.



✔El botón de las flechas rotando nos permiten girar los objetos

✔La Lupa nos permite centrar la vista en el objeto

✔El botón con el valor 04 nos permite usar el cronómetro para la competencia

✔El botón resaltado abajo muestra los elementos que conforman el tapiz


✔El botón que se muestra resaltado abajo muestra las propiedades del objeto seleccionado


✔Podemos ver el Brick haciendo click en el botón que muestra la imagen.

✔Desde el menú podremos acceder a las herramientas del LEGO Mindstorms






✔Antes de salir de las opciones básicas de Virtual Robotics Toolkit es necesario sumar una herramienta más que está en en la barra de menú, en la opción HELP como se muestra la imagen


✔Hay que instalar Patch LEGO Digital Designer y tendremos todo listo para iniciar nuestro proyecto.

VRT se complementa con LEGO de Mindstorms EV3, este software es el que nos permitirá ver a nuestro ROBOT EN ACCION!


Así que empezaremos por conocer el sofware de programación de LEGO de Mindstorms EV3

Bloques de programación de LEGO de Mindstorms
Para programar los robots de LEGO se utiliza un entorno de programación gráfico llamado NXT, basado en la colocación de bloques configurables. Cada bloque tiene una función distinta. A continuación observaremos a profundidad a cada uno de estos bloques.


Bloques de acción
Los bloques de acción controlan las acciones del programa. Controlan las rotaciones de los motores, así como las imágenes o textos en pantalla, los sonidos y las luces de estado. Los bloques de acción son:
  • Bloque Motor mediano (Figura 1): Puede encender y apagar el motor, controlar el nivel de potencia o encender el motor ya sea por una cantidad especifica de tiempo o rotaciones.
  • Bloque Motor grande (Figura 2): Controla un motor grande y actúa de la misma forma que bloque motor mediano.
  • Bloque Mover dirección (Figura 3): Puede impulsar el robot hacia adelante, hacia atrás, hacerlo girar o detenerse, por lo tanto, puede hacer que se mueva en dirección recta, gire en arcos o haga giros cerrados. Use este bloque para vehículos robots que tengan dos motores grandes. Use este bloque para vehículos robots que tengan dos motores grandes (uno para derecha y otro para la izquierda)
  • Bloque Mover Tanque (Figura 4): Es muy similar al bloque mover dirección, pero tiene una forma distinta de controlar los giros.
  • Bloque Pantalla (Figura 5): Puede mostrar textos o gráficos en la pantalla del Bloque EV3
  • Bloque de Sonido (Figura 6): Reproduce un sonido con el parlante que esta adentro del Bloque EV3. Puede reproducir archivos de sonidos grabados previamente o puede especificar una nota o un tono musical.
  • Bloque Luz de estado EV3 (Figura 7): Controla la luz de estado del Bloque EV3, puede encender la luz de estado del Bloque EV3 en verde, naranja o rojo, apagarla o hacer que se encienda o apague intermitente mente



Bloques de control de flujo
Los bloques de flujo controlan el flujo del programa. Todos los programas se comienzan por el bloque de inicio.
  • El Bloque de inicio (Figura 8): marca el inicio de una frecuencia de bloques de programación en el programa. Todas la secuencias con un Bloque de inicio iniciaran automáticamente cuando se ejecuta el programa y las secuencias ejecutaran al mismo tiempo
  • Bloque Esperar (Figura 9): Hace que su programa espere a que suceda algo antes de continuar con el siguiente bloque de la secuencia.
  • Bloque de Bucle (Figura 10): Es un contenedor que puede mantener una secuencia de bloques de programación. Ara que la secuencia de bloques dentro de el se repita.
  • Bloque interruptor (Figura 11): Es un contenedor que puede contener dos o mas secuencias de bloques de programación. Cada secuencia se llama caso.
  • Bloque interrupción del Bucle (Figura 12): Hace que un bloque bucle termine. No se ejecutaran mas bloques en la secuencia del bucle y el programa continuara con los bloques que estén después del bucle

Bloques de control de sensor

Los bloques de sensores permiten a tu programa leer los datos proporcionados por el sensor de color, el sensor IR y el sensor táctil, y hacer otras muchas cosas.
  • Bloque Giro Sensor: Obtiene datos del Giro Sensor. Puede medir la razón de rotación o el ángulo de rotación y obtener una salida numérica
  • Bloque Sensor de Color (Figura 14): Obtiene datos del Sensor de Color. Puede medir el color o la intensidad de la luz y obtener una salida numérica.
  • Bloque Rotación de Motor (Figura 16): Obtiene los datos del Sensor de Rotación del motor que esta incorporado en los motores medianos, grandes y NXT. Puede medir cuanto giro un motor en grados o rotaciones.
  • Bloque Sensor Táctil (Figura 18): Obtiene datos del Sensor Táctil. Puede comprobar si el sensor táctil esta presionada, no presionado o en contacto, y obtener una salida lógica (verdadera o falsa)
  • Bloque Temporizador (Figura 17):  Obtiene tiempo del Temporizador interno del Bloque EV3. Puede medir el intervalo del tiempo en segundos y obtener una salida numérica
  • Bloque Botones del Bloque EV3 (Figura 13): Obtiene datos de los botones del Bloque EV3, que son los 5 botones (izquierda, centro, derecha, arriba y abajo) en el frente del bloque EV3



Bloques de datos

Los bloques de operaciones de datos te permiten leer y escribir variables, comparar valores y hacer otras muchas cosas.
  • Bloque Variable (Figura 19): Le permite leer o escribir una variable en su programa. También puede crear una nueva variable y ponerle un nombre
  • Bloque Constante (Figura 20): Le permite ingresar un valor que puede utilizar en varias ubicaciones diferentes en su programa. Si cambia el valor de la constante, todas las ubicaciones donde utiliza la constante obtendrá el valor actualizado
  • Bloque Operaciones Secuenciales (Figura 21): Puede crear una secuencia, agregar elementos, leer y escribir elementos individuales y obtener la longitud de una secuencia.
  • Bloque Operaciones Lógicas (Figura 22): Realiza una operación lógica en sus entradas y muestra el resultado. Una operación lógica toma entrada que son verdaderas o falsas y produce un salida verdadera/falsa.
  • Bloque Matemática (Figura 23): Realiza un calculo matemático en sus entradas y muestra el resultado. Puede hacer una operación matemática sencilla con una o dos entradas.
  • Bloque Redondear (Figura 24): Redonda un numero decimal a un valor entero. Puede redondear un numero hacia arriba, abajo o al entero mas cercano.
  • Bloque Comparar (Figura 25): Compara dos numero para averiguar si son iguales o para saber que numero es mayor. El resultado es verdadero o falso.
  • Bloque Alcance (Figura 26): Comprueba si un numero esta dentro o fuera de una conjunto numérico especifico. El resultado es verdadero o falso
  • Bloque Texto (Figura 27): Puede combinar hasta tres cadenas de texto en una sola cadena.
  • Bloque Aleatorio (Figura 28): Puede mostrar un valor numérico o lógico aleatorio. Puede utilizar el resultado del Bloque Aleatorio para hacer que el robot elija de manera aleatoria diferentes acciones



Bloques Avanzados

Los bloques avanzados te permiten administrar archivos, establecer conexiones Bluetooth y hacer otras muchas cosas.
  • Bloque Acceso al Archivo (Figura 29): Le permite leer y escribir datos en archivos desde archivos en su bloque EV3
  • Bloque Mandar Mensaje (Figura 30): Se utiliza para enviar mensajes Bluetooth entre bloques EV3. Para enviar o recibir un mensaje los bloques EV3 deben estar conectados a través del menú Blutooth
  • Bloque Conexión de Bluetooth (Figura 31): Se utiliza el bloque conexión Bluetooth para encender o apagar el Bluetooth, conectarse a otro dispositivo Bluetooth, o para cerrar la conexión con otro dispositivo Bluetooth
  • Bloque Comentario (Figura 37): Le permite escribir comentarios dentro de un programa. Este bloque no es un bloque de programación lo que significa que no hay ninguna acción programable asociada a el
  • Bloque Mantener Activo (Figura 32): Reinicia el temporizador de suspensión del bloque EV3
  • Bloque  Valor de Sensor Sin Procesar (Figura 33): muestra la lectura del lector sin procesar, que es un valor entre 0 y 1023, este solo tiene un modo
  • Bloque Detener (Figura 36): Finaliza de inmediato cualquier secuencia de bloques de programación y termina el programa 
  • Bloque Invertir el Motor (Figura 35): Cambia la dirección del motor, cuando invierte la dirección de un motor o un bloque de programación que normalmente hace que el motor gire en sentido horario
  • Bloque Motor Sin Regular (Figura 34): Controla tanto los motores medianos como los grandes. Puede encender un motor y cambiar su nivel de potencia.
Ejercitación

Hacer un programa que haga que el robot se impulse hacia adelante a una velocidad/potencia de 10 (constante) y, luego, compruebe si el sensor táctil está presionado (repitiendo esto 3 veces). Si es así se ejecutará el caso Verdadero y el robot girará a la derecha (dirección 50) a una velocidad 10 y mostrará en la pantalla “OSCURO”. Si no está presionado el sensor táctil, se ejecutará el caso Falso y el robot girará a la izquierda (dirección -50) a una velocidad de 10 y que a continuación se encienda la luz de estado amarilla cuando el sensor de color detecta una intensidad de luz ambiental mayor que 20, que espere 3 segundos y luego compruebe si el sensor táctil está presionado. Si es así se ejecutará el caso Verdadero y el robot mostrará en pantalla “TODO OK”. Si no está presionado el sensor táctil, se ejecutará el caso Falso y el robot mostrará en pantalla “NO ESTÁ OK”. Después de repetir el primer interruptor 3 veces el robot avanzará en línea recta a una velocidad constante de 10 hasta que se presione el botón centro, luego el robot se detiene.




Utilizamos los bloques:
  • Bloque mover la dirección 
  • Bloque pantalla
  • Bloque luz de estado
  • Bloque iniciar
  • Bloque esperar
  • Bloque bucle
  • Bloque interruptor
  • Bloque botones del bloque EV3
  • Sensor de color
  • Sensor táctil
  • Bloque constante


0 comments:

Post a Comment