Introducción

Gears (también conocido como GearsBot) es un simulador de robótica 3D. Admite la programación en bloques (... usando Blockly), la conversión automática de bloques en código Python y la programación directa en Python (... Ev3dev y Pybricks). 

Gears intenta lograr una simulación lo más realista posible. Esto significa que, al igual que un robot real, un GearsBot experimentará resbalones en los neumáticos y otros efectos que evitarán que el robot se desplace en línea recta sin la ayuda de una línea o un giroscopio. Esto puede hacer que Gears sea un poco más difícil de usar para los principiantes, pero facilita que los estudiantes intermedios y avanzados aprendan a lidiar con tales imprecisiones en sus robots reales. Resumiendo es ideal para prepararnos para distintos certámenes.

Aquí les dejo un video introductorio a este programa. Iré sumando ejemplos acerca del uso de sensores y actuadores en breve.

Información complementaria aquí

Sensores

Esta sección describe los sensores y actuadores disponibles en Gears. La mayoría de los componentes se basan en piezas EV3, pero también hay algunos componentes virtuales que solo existen en el simulador.
Sensores que utiliza Gears:
  • Sensor de color
  • Sensor ultrasónico
  • Sensor de rango láser 
  • Sensor giroscópico
  • Sensor GPS 
  • Sensor táctil
  • Botones del concentrador

Sensor de color: Funciona simulando una cámara virtual en la ubicación del sensor, capturando una imagen y luego procesando los píxeles de la imagen para determinar los valores RGB promedio. Este enfoque permite que el sensor detecte colores y texturas en cualquier objeto en el simulador, incluso si hay varios objetos en el campo de visión simultáneamente. Al capturar la imagen para el sensor de color, todas las luces se desactivan temporalmente, por lo que el resultado no se ve afectado por las sombras o el ángulo de iluminación.

Nombres y números de colores

Al leer "color", el sensor devolverá un número que representa el color. Por ejemplo, el número 5 representa el rojo. La lista de números y colores correspondientes es la siguiente...

  • 1: NEGRO
  • 2: AZUL
  • 3: VERDE
  • 4: AMARILLO
  • 5: ROJO
  • 6: BLANCO
  • 7: MARRÓN

Estos son los mismos valores utilizados por el EV3, pero a diferencia del EV3 real, el sensor de color de Gears nunca devolverá un '0' (sin color).

Al leer "nombre del color", el sensor devolverá los valores (distingue entre mayúsculas y minúsculas)...

  • Negro
  • Azul
  • Verde
  • Amarillo
  • Rojo
  • Blanco
  • Marrón

Al programar en bloques, puede usar el bloque "<color> como color <número/nombre>" en comparaciones como esta...

...o simplemente puede escribir el nombre del número/color de esta manera.



Sensor Ultrasónico: Funciona enviando múltiples rayos (21 por defecto) en forma de abanico y verificando si alguno de ellos golpea objetos. Si más de un rayo golpea objetos, solo se utilizará la distancia más corta. Los rayos se ven así...

Un sensor real funciona detectando el eco devuelto y no es eficaz cuando el ángulo de incidencia es demasiado grande, ya que la mayor parte del sonido se reflejará fuera del sensor. El sensor simulado imita esto comprobando el ángulo de incidencia donde golpea un objeto e ignora aquellos en los que el ángulo de incidencia es mayor que un límite configurable.

Diferencias con un sensor real

  • Es posible que el sensor ultrasónico simulado no detecte un objeto que sea lo suficientemente pequeño como para caber entre los rayos. Esto no es del todo diferente a un sensor real, ya que un sensor real tiende a perder objetos pequeños.

  • El sensor simulado puede detectar incluso un objeto diminuto, siempre que uno de los rayos lo golpee. Un sensor real requiere que se devuelva suficiente eco y no detectará objetos muy pequeños.

  • Para un sensor real, la detección depende del eco devuelto. Por lo tanto, es posible que no se detecten los objetos blandos que absorben el sonido en lugar de reflejarlo. Dentro del simulador, no existe el concepto de objeto duro o blando, por lo que todos los objetos son igualmente detectables.


Sensor Giroscópico: Simula un sensor giroscópico, similar a los que se encuentran en un robot Lego EV3. Tenga en cuenta que el ángulo es acumulativo y puede ir más allá de los 360 grados. 

Diferencias con un sensor real

  • Un sensor real experimentará una cierta cantidad de deriva. El sensor simulado nunca se desviará.

  • Los modelos posteriores del giroscopio EV3 contienen un giroscopio de 3 ejes internamente y las lecturas de otros ejes se pueden obtener a través de ev3dev (... pero no a través de la API de Python). El sensor simulado solo tiene un solo eje.

Sensor Táctil:  A diferencia de los que se encuentran en un robot Lego EV3, no puede agregar componentes al botón, pero puede configurar su ancho y profundidad. Funciona detectando la colisión física con el botón rojo en la parte inferior del sensor. A diferencia del método de emisión de rayos utilizado por los sensores ultrasónicos y láser, el método de colisión física puede detectar la colisión con cualquier punto en el área del sensor, sin riesgo de que los obstáculos caigan entre los rayos.

Diferencias con un sensor real

  • No puede agregar componentes al botón.

  • Un sensor real está cargado por resorte y requiere que el botón esté lo suficientemente presionado para detectar una presión. El sensor simulado detectará un toque incluso en el más mínimo toque y no ejerce presión de resorte sobre el obstáculo.      

Después de ésta breve introducción les dejo un enlace a un Guía|tutorial que preparé

0 comments:

Post a Comment