Saltar al contenido principal

Nueva altura

Crea un sistema de coordenadas en el Campo de Habilidades Virtuales de Volumen Completo con la posición del punto rojo como origen (0, 0) y la posición inicial del Centro del Robot Héroe ubicada en las coordenadas (0, 36). Usa los bloques [Conducir para], [Girar hacia la dirección], [Girar para posicionarse] y [Girar para] para programar al Robot Héroe para que recoja cada uno de los cuatro Bloques Morados resaltados y los introduzca en la Meta III. Crea un algoritmo que dirija al robot a una posición específica para soltar el Bloque y hacer que el Objetivo tenga el Nivel de Relleno 3.

  • Seleccione VIQRC Virtual Skills - Full Volume Playground.
  • Programa al Robot Héroe para que recoja un Bloque Morado resaltado y lo introduzca en la Portería III. 
    • Crea un algoritmo para que el robot recorra una cierta distancia y realice un seguimiento de sus coordenadas X e Y. Utilice el algoritmo para dirigir el robot hacia el bloque morado resaltado.
    • Programa al robot para que recoja el bloque.
    • Crea un algoritmo para guiar al robot hasta una posición específica. Utilice el algoritmo para dirigir el robot a las coordenadas (-70, 1270) y girarlo hacia una dirección de -45 grados.
    • Programa el robot para que suelte el bloque.
  • Programa al Robot Héroe para que recoja el segundo Bloque Morado resaltado y lo introduzca en la Meta III en la misma posición y orientación que cuando introdujo el primer Bloque Morado. 
  • Programa al Robot Héroe para que recoja el tercer Bloque Morado resaltado y lo introduzca en la Meta III en la misma posición y orientación que cuando introdujo el primer Bloque Morado. 
  • Programa al Robot Héroe para que recoja el cuarto Bloque Morado resaltado y lo introduzca en la Meta III en la misma posición y orientación que cuando introdujo el primer Bloque Morado. 

Consejos útiles

  • Utilice las coordenadas del robot (x1,y1), las coordenadas de la posición objetivo (x2,y2) y la función atan para encontrar la dirección de avance.
    • Calcula el ángulo theta θ de la línea que conecta estos dos puntos. Diagrama de dos expresiones matemáticas. La primera expresión dice 'theta es igual a atan((y2 - y1) / (x2 - x1))'. La segunda expresión dice que 'menos pi / 2 es menor que theta, que es menor que pi / 2'. El diagrama de arriba hacia abajo muestra el robot en la coordenada (X1, Y1) y una línea que apunta hacia la coordenada (X2, Y2). La distancia se representa con la variable d, y el ángulo con la variable theta. La distancia horizontal entre los puntos se representa como 'x2 - x1', y la distancia vertical se representa como 'y2 - y1'.
    • Ejemplo de pseudocódigo para una expresión matemática:

      Si x1 es igual a x2:
      	Si y2 > y1:
      		rumbo = 0 grados
      	Si no:
      		rumbo = 180 grados
      Si no:
      	Si x2 > x1:
      		rumbo = 90 grados - theta
      	Si no:
      		rumbo = 270 grados - theta
    • Convierta el ángulo theta θ para controlar el rumbo.  El diagrama de arriba hacia abajo, etiquetado como 'robot heading' muestra el robot con un círculo a su alrededor con etiquetas que marcan los 360 grados del círculo.
  • Utilice las coordenadas del robot (x1,y1), las coordenadas de la posición objetivo (x2,y2) y el teorema de Pitágoras para calcular la distancia de desplazamiento. La expresión matemática se lee 'd = sqrt((X2 - X1) ^ 2 + (Y2 - Y1) ^ 2)' El mismo diagrama de arriba hacia abajo que antes, que muestra la diferencia entre dos coordenadas. El robot se encuentra en la coordenada (X1, Y1) y una línea apunta hacia la coordenada (X2, Y2). La distancia se representa con la variable d, y el ángulo con la variable theta. La distancia horizontal entre los puntos se representa como 'x2 - x1', y la distancia vertical se representa como 'y2 - y1'.

 

  • Utilice el bloque de función de la categoría Operadores para expresar una función tangente para calcular el ángulo theta θ. Bloque de función VEXcode que contiene bloques de operadores, que en conjunto leen 'atan de ((Y2 - Y1) / (X2 - X1))'.
    • Comando Python coincidente: 

      math.atan((Y2 - Y1) / (X2 - X1)) / math.pi * 180
  • Utilice el bloque función de la categoría Operadores para expresar el teorema de Pitágoras y calcular la distancia recorrida. VEXcode Establece un bloque de variables que contiene bloques de funciones y operadores, que en conjunto leen 'establece driveDistance a la raíz cuadrada de ((X2 - X1) * (X2 - X1) + (Y2 - Y1) * (Y2 - Y1))'.
    • Comando Python coincidente: 

      driveDistance = math.sqrt((X2 - X1) * (X2 - X1) + (Y2 - Y1) * (Y2 - Y1))