Skip to main content

Icono de la caja de herramientas del profesor Caja de herramientas para maestros : el propósito de esta actividad

La programación con condicionales se puede realizar utilizando un bloque [If then] o [If then else] dentro de un proyecto. Esta actividad presentará a los estudiantes el uso de un bloque [If then] para que el robot avance a menos que se presione la pantalla. La última parte de la actividad les pide que refinen el proyecto utilizando un bloque [If then else] en lugar del bloque [If then ].

Dos bloques VEXcode V5 uno al lado del otro: el bloque If a la izquierda y el bloque If else a la derecha.

Para obtener más información sobre los bloques [If then] y [If then else] u otros utilizados en esta actividad, visite la información de ayuda dentro de VEXcode V5. Para obtener más información sobre esta herramienta de ayuda integrada, haga clic aquí.

El siguiente es un resumen de lo que sus estudiantes harán en esta actividad:

  • Vea el video tutorial If Then Else Blocks y luego use la plantilla Clawbot (Drivetrain 2-motor, No Gyro) para crear el proyecto Creating a Stop Button que se muestra y predecir lo que hace el proyecto.
  • Refine el proyecto de ejemplo Crear un botón de parada utilizando un bloque [If then else] con el comportamiento "else" configurado para avanzar.
  • Amplíe su aprendizaje: agregue un botón a la pantalla del cerebro que se presiona para detener la conducción del robot.
Materiales requeridos:
Cantidad Materiales necesarios
1

Kit de inicio VEX V5 Classroom (con firmware actualizado)

1

VEXcode V5 (última versión, Windows, macOS, Chromebook)

1

Cuaderno de ingeniería

1

Plantilla Clawbot (transmisión de 2 motores, sin giroscopio)

Icono de la caja de herramientas del profesor Teacher Toolbox

¡Para obtener sugerencias sobre estrategias de enseñanza para esta sección, revise la columna Entrega de la Guía de ritmo para hacer o no hacer! (Google Doc / .docx / .pdf)

¡El Clawbot está listo para tomar decisiones!

Esta actividad te dará las herramientas para programar tu robot con comportamientos condicionales.
Los bloques [If then] y [If then else] son el foco principal dentro de la actividad, pero también se utilizan los bloques Operators y Sensing.

Se muestran cuatro bloques VEXcode. En el sentido de las agujas del reloj desde la parte superior izquierda son: Bloque hexagonal presionado en la pantalla; no bloque del operador; Si entonces bloque C; y Si entonces si no bloque C.

Puede utilizar la información de ayuda dentro de VEXcode V5 para obtener información sobre los bloques. Para obtener orientación sobre el uso de la función de ayuda, consulte el tutorial Uso de la ayuda.

Barra de herramientas VEXcode V5 con el icono de tutoriales resaltado con una flecha roja, a la derecha del menú Archivo.

 

Icono de consejos del profesor Consejos para profesores

Si esta es la primera vez que el estudiante usa VEXcode V5, también puede ver los tutoriales en la barra de herramientas para aprender otras habilidades básicas.

Barra de herramientas VEXcode V5 con tutoriales resaltados en un cuadro rojo. La barra de herramientas muestra, de izquierda a derecha, el logotipo de V5, un icono de globo terráqueo, Archivo y Tutoriales. A la derecha de los tutoriales hay iconos y funcionalidades adicionales.

Paso 1: Comencemos con una comprensión de las declaraciones condicionales 

Antes de comenzar a programar con condicionales, primero mire el video tutorial If-Then-Else a continuación. También se puede encontrar como vídeo tutorial en VEXcode V5.

 

Paso 2: Comencemos a programar con declaraciones condicionales 

Abra el proyecto de ejemplo de plantilla Clawbot (transmisión de 2 motores, sin giroscopio).

El icono de la plantilla del proyecto dice Clawbot (transmisión de 2 motores, sin giroscopio) en la parte inferior con un diagrama de robot gris arriba.

Construye el proyecto a continuación.

El proyecto VEXcode V5 comienza con un bloque when started seguido de un bucle forever. Dentro del bucle, hay un bloque de avance seguido de un bloque if then. El bloque if then lee If screen pressed then stop driving, wait until not screen pressed.

Haga lo siguiente en su cuaderno de ingeniería:

  1. Explica qué hace el Clawbot en el proyecto. Tendrá que explicar más que el hecho de que crea un botón de parada. Explica qué bloques hacen que el Clawbot haga qué.
  2. Escribe un resumen de una oración que capture lo que hace el proyecto.

El cuadro de diálogo Nombre del proyecto en VEXcode V5 lee Crear un botón de parada. En la ranura izquierda se selecciona 1, y a la derecha se lee Guardado en la barra de herramientas.

  • Pruebe para ver si su predicción de lo que el proyecto tiene que hacer el Clawbot es correcta.
  • Guarde y descargue el proyecto como Crear un botón de parada para la ranura 1 en el Clawbot, y luego ejecútelo.
  • Para obtener ayuda para descargar un proyecto, consulte el tutorial en VEXcode V5 que explica cómo descargar y ejecutar un proyecto.
  • Revisa tus explicaciones del proyecto y añade notas para corregirlas según sea necesario.

Icono de la caja de herramientas del profesor Caja de herramientas para maestros - Respuestas

La creación de un proyecto de botón de parada se muestra con etiquetas para la funcionalidad de cada bloque en la pila. El bloque Forever está etiquetado como "Forever drives and checks". La rama If del bloque If then está etiquetada como "Checks if condition is True (Comprueba si la condición es verdadera): se pulsa la pantalla." El bloque Detener conducción está etiquetado como "Ejecuta este bloque si es Verdadero - entonces deje de conducir porque es Verdadero. La espera hasta que no se pulse la pantalla está etiquetada como controles para la velocidad de procesamiento.

  • Este proyecto hace que el robot avance continuamente, pero se detenga si se pulsa la pantalla. Lo hace mediante el uso de un bloque [Forever] para conducir y verificar continuamente. Si se pulsa la pantalla (TRUE), el Clawbot deja de conducir. No se espera que los

    estudiantes entiendan por qué se utiliza el bloque [Esperar hasta]. Explique que el bloque [Esperar hasta] es necesario debido a la velocidad del flujo del programa del robot. Si no estuviera allí, los motores del Clawbot se comportarían como si el usuario estuviera presionando la pantalla una y otra vez a medida que recorre el proyecto. En su lugar, el bloque [Wait until] detiene el flujo del programa y no hace que el proyecto inicie el bucle [Forever] nuevamente hasta que el usuario deje de presionar la pantalla.
  • La línea de pseudocódigo podría ser tan simple como: Avanzar hasta pulsar la pantalla.

Los cuadernos de ingeniería de los estudiantes se pueden mantener y calificar individualmente (Google Doc / .docx / .pdf) o en equipo (Google Doc / .docx / .pdf). Los enlaces anteriores proporcionan una rúbrica diferente para cada enfoque. Siempre que se incluya una rúbrica en la planificación educativa, es una buena práctica explicar la rúbrica o al menos dar copias a los estudiantes antes de que comience la actividad.

Paso 3: Comprender la espera hasta el bloqueo

Observe que si se pulsa la pantalla de Brain, el flujo del proyecto se mueve tan rápido que el proyecto pasará al siguiente bloque, que es el bloque [Stop driving].

Por lo tanto, el proyecto necesita un bloque [Esperar hasta] que le diga al robot que permanezca detenido hasta que se libere la pantalla del cerebro. De lo contrario, el bloque [Forever] haría que el proyecto comenzara de nuevo con el bloque [Drive].

Espere hasta que el bloque tenga una condición anidada. El bloque pulsado en la pantalla está anidado en el operador not, por lo que todo el bloque lee wait until not screen pressed.

El bloque [Esperar hasta] es necesario debido a la velocidad del flujo del proyecto. Si no estaba allí, el proyecto pasaría al siguiente bloque antes de que el robot tuviera tiempo de responder

 

Paso 4: Cambiar el proyecto

Nuestro siguiente paso es cambiar el bloque [If then] a un bloque [If then else ].

Bloques VEXcode uno al lado del otro: a la izquierda está el proyecto del botón Crear una parada. A la derecha hay un bloque If then else de la Caja de herramientas.

  • Comience guardando Crear un botón de parada como el nuevo proyecto, StopOrDrive.
  • Si necesita ayuda para guardar un proyecto, consulte el tutorial Nombrar y guardar su proyecto en VEXcode V5.
  • A continuación, cree el  proyecto StopOrDrive que se muestra a continuación.

El proyecto VEXcode V5 comienza con un bloque when started con un bloque forever adjunto. Dentro del bloque Forever hay un bloque if then else. La rama if lee si se pulsa la pantalla, luego deja de conducir, espera hasta que no se pulse la pantalla. La rama else contiene un bloque drive forward.

  • Descarga StopOrDrive a la ranura 2 en tu Clawbot.
  • Para obtener ayuda para descargar un proyecto, consulte el tutorial en VEXcode V5 que explica cómo descargar y ejecutar un proyecto.
  • Pruebe la creación de un botón de parada (ranura 1) y luego pruebe StopOrDrive (ranura 2) y compárelos para ver si hay alguna diferencia en el comportamiento del robot. Tenga en cuenta cualquier diferencia en su cuaderno de ingeniería.

Icono de consejos del profesor Consejos para profesores

Las instrucciones dirigen a los estudiantes a videos tutoriales dentro de VEXcode V5 según sea necesario para guardar y descargar proyectos. Para obtener más ayuda, consulte la Base de conocimientos de robótica de VEX para obtener artículos de ayuda complementarios.

Icono de la caja de herramientas del profesor Caja de herramientas para maestros - Respuesta

Con respecto al comportamiento del robot, no debe haber diferencia entre los proyectos Creating a Stop Button  y StopOrDrive.

Los dos proyectos hacen que el Clawbot se comporte de la misma manera. La única diferencia es el uso del bloque [If then else] en el  proyecto StopOrDrive.

El uso del bloque [If then else] le permitirá añadir botones adicionales a la pantalla en las próximas actividades.

Amplía tu icono de aprendizaje Amplíe su aprendizaje

A medida que avance este Laboratorio STEM, los estudiantes desarrollarán proyectos que permitan que la pantalla del Clawbot funcione como una interfaz de usuario. En preparación para eso, desafíe a los estudiantes a descubrir cómo dibujar un rectángulo de color en la pantalla que funcione como un botón. Debido a que pulsar en cualquier parte de la pantalla es actualmente la condición, el botón debe ocupar toda la pantalla. Los estudiantes deben hacer que el proyecto transmita un evento para dibujar el botón cuando comience.
Haga que los estudiantes usen la función de Ayuda en VEXcode V5 para obtener información sobre los bloques de Eventos y Aspectos. Indique a los estudiantes que primero aprendan cómo se organiza la pantalla del cerebro en un sistema de coordenadas en la información del bloque [Draw rectangle]. Tendrán que entender esto para establecer parámetros dentro de ese bloque. Las coordenadas utilizadas corresponden al número de píxeles, no al número de la columna o fila. Este es el diseño de la pantalla:

La cuadrícula de píxeles de la pantalla V5 Brain muestra 12 filas numeradas a lo largo del lado izquierdo, con la fila superior etiquetada como Fila 1 y la inferior como Fila 12. En la parte superior hay 48 columnas numeradas, con la Columna 1 etiquetada en el extremo izquierdo y la Columna 48 etiquetada en el extremo derecho. Las medidas totales de píxeles son de 480 px de ancho por 240 px de alto.

Los estudiantes deben planificar, probar y perfeccionar estos cambios en el proyecto mientras lo documentan en sus cuadernos de ingeniería. Para la rúbrica del cuaderno de ingeniería individual, haga clic en uno de estos enlaces (Google Doc / .docx / .pdf), o haga clic en uno de los siguientes enlaces para los cuadernos del equipo (Google Doc / .docx / .pdf).

Aquí hay un ejemplo de solución:

Proyecto VEXcode V5 para dibujar en la pantalla Brain. Hay dos pilas de bloques. La pila de la izquierda comienza con un bloque Cuando se inició seguido de un bloque de Botón de Dibujo de difusión. Lo siguiente es un bloque Forever con un bloque if then else dentro para impulsar el robot hacia adelante hasta que se presione la pantalla. A la derecha hay una pila que comienza con un bloque de sombrero de botón Cuando recibo Draw, con dos bloques adjuntos que dicen establecer el color de relleno en rojo en Brain y dibujar el rectángulo 0, 0, 480, 240 en Brain.

Como puede ver, el botón se dibuja para ocupar toda la pantalla comenzando en el origen (0, 0) y llenando los 480 píxeles horizontales (eje x) y los 240 píxeles verticales (eje y).