Caja de herramientas para profesores - El propósito de esta actividad
En la página anterior, el estudiante estaba programando el brazo para que girara usando el botón Brain Up. Esta página se basará en el proyecto anterior para programar también el brazo para que gire hacia abajo usando el botón Brain Down.
Esta actividad presentará a los estudiantes la programación con [If then else] bloques, así como el uso de bloques de detección y operador para que el robot verifique si los botones Brain Up o Down están presionados. Si se presiona el botón Brain Up, el brazo del Clawbot se levantará. Si se presiona el botón Brain Down, el brazo del Clawbot bajará. Esto se basa en la actividad anterior y también sentará las bases para el Desafío de la interfaz de usuario en la sección Repensar.
Para el Desafío de interfaz de usuario, los estudiantes deberán programar su Clawbot para levantar el brazo, bajar el brazo, abrir la garra y cerrar la garra, todo usando los botones del IQ Robot Brain.
Para obtener más información sobre los bloques [Si entonces], [Si entonces], <Botón cerebral presionado>, o [Girar] , visita la información de ayuda dentro de VEXcode IQ. Para obtener más información sobre esta herramienta de ayuda integrada, haga clic en aquí.
El siguiente es un resumen de lo que harán sus estudiantes en esta actividad:
-
Utilice el ArmUp2 existente para construir el proyecto ArmUpDown proporcionado y predecir qué hará el proyecto.
-
Vea un diagrama de flujo para ayudar a explicar el flujo de los bloques en el proyecto.
-
Perfeccione sus explicaciones sobre lo que hace el proyecto ArmUpDown .
-
Mire el video tutorial If Then Else Blocks .
-
Edite su proyecto usando [If then else] bloques.
-
Deténgase y discuta: Los estudiantes reflexionarán sobre sus predicciones sobre lo que el proyecto hará que Clawbot haga en comparación con sus observaciones reales.
-
Programe la garra usando el mismo esquema del proyecto de programación del brazo.
Cantidad | Materiales necesitados |
---|---|
1 |
Súper kit VEX IQ |
1 |
Código VEX IQ |
1 |
Cuaderno de ingeniería |
1 |
Plantilla de Clawbot (tren motriz) |
¡El brazo Clawbot está listo para moverse hacia arriba y hacia abajo!
Esta actividad le brindará las herramientas para programar su robot con comportamientos condicionales.
El bloque [Si, entonces, si no] es el enfoque principal dentro de la actividad, pero también se utilizan otros bloques de Detección, Control y Operador.
Puede utilizar la información de ayuda dentro de VEXcode IQ para obtener información sobre los bloques. Para obtener orientación sobre el uso de la función Ayuda , consulte el tutorial Uso de la Ayuda.
Consejos para profesores
Si es la primera vez que el estudiante usa VEXcode IQ, también puede ver los Tutoriales en la barra de herramientas para aprender otras habilidades básicas.
Paso 1: Programación para bajar el brazo.
En la página anterior, programaste el brazo del Clawbot para que girara cuando se presionaba el botón Brain Up. Pero, ¿qué tal también bajar el brazo? Primero revisemos el proyecto ArmUp2 anterior.
¿Sería posible usar el mismo bloque [Si entonces] para girar el brazo hacia arriba y también hacia abajo? ¡Vamos a intentarlo! Construya el proyecto a continuación editando su proyecto ArmUp2 ya existente.
-
Guarde el proyecto como ArmUpDown. Si los estudiantes necesitan ayuda para guardar el proyecto, consulte el tutorial Nombrar y guardar.
-
Verifique que el nombre del proyecto ArmUpDown esté ahora en la ventana en el centro de la barra de herramientas.
-
Predice qué hará el proyecto Clawbot en tu cuaderno de ingeniería. Explique los comportamientos tanto del usuario como del Clawbot.
-
Pruebe para ver si su predicción de lo que el proyecto le pide al Clawbot que haga es correcta.
-
Descargue el proyecto en Slot 3 en Clawbot y luego ejecútelo.
-
Para obtener ayuda para descargar y ejecutar un proyecto, consulte el tutorial en VEXcode IQ que explica cómo descargar y ejecutar un proyecto.
-
-
Revise sus explicaciones del proyecto y agregue notas para corregirlas según sea necesario.
Caja de herramientas para profesores
El proyecto que los estudiantes construyen arriba funcionará. Cuando se presiona el botón Brain Up, el brazo girará hacia arriba y cuando se presiona el botón Brain Down, el brazo girará hacia abajo. Aunque el proyecto funciona tal como está, no está escrito de manera óptima. Podría haber un caso en el que ambas condiciones puedan ser ciertas al mismo tiempo. Además, observe que dado que la condición de que se presione el botón Brain Up es primero, si se mantiene presionado el botón Brain Up y luego también se presiona Brain Down, el brazo continuará girando hacia arriba. Esa acción no se detendrá hasta que se suelte el botón Brain Up. Por lo tanto, el proyecto se reescribirá en el siguiente paso para incluir un bloque [If then else] para evitar estos posibles problemas.
Caja de herramientas para docentes - Parar y discutir
Ahora que los estudiantes han probado el proyecto, pregúnteles cómo se comparan sus predicciones con sus observaciones. Facilite la discusión haciendo las siguientes preguntas:
-
¿Tu predicción fue la misma que tu observación?
-
¿Qué parece estar pasando en el proyecto?
-
¿Se verifican las condiciones de presionar los botones Arriba y Abajo solo una vez?
-
¿Cree que el proyecto podría reorganizarse para funcionar de manera más eficiente?
Paso 2: Comprender el flujo del proyecto.
En el paso anterior, el proyecto sí subió y bajó el brazo. Sin embargo, dado que la condición de que se presione el botón Brain Up es primero, si se mantiene presionado el botón Brain Up y luego también se presiona Brain Down, el brazo continuará girando hacia arriba ya que esa acción no se detendrá hasta que se presione el botón Brain Up. en lanzamiento. Vea el siguiente diagrama de flujo que explica el flujo del proyecto.
Por lo tanto, el proyecto puede reemplazar los bloques [If then] con [If then else] bloques para que solo una instancia pueda ser verdadera en cualquier momento.
Vea el siguiente video tutorial sobre [If then else] bloques:
Comience viendo el video tutorial If-Then-Else en VEXcode IQ.
El uso de bloques [If then else] también eliminará la necesidad de los bloques [Wait Until] porque el brazo seguirá girando hasta que se suelte el botón Brain Up. Esto ocurre porque la parte "else" de [If then else] nunca se alcanza hasta que la condición del botón Brain Up sea falsa (se suelte).
El bloque [Forever] permite comprobar continuamente la primera condición.
Exploremos cómo cambiar el proyecto agregando [If then else] bloques. El motor del brazo ahora continuará girando hasta que ya no se presione (suelte) el botón Brain Up. Debido al bloque [Forever] , esta condición seguirá comprobándose hasta que sea falsa.
Una vez que la condición del botón Brain Up sea falsa, el proyecto continuará con el siguiente bloque, que consiste en verificar la condición si se presiona el botón Brain Down. Si la condición de presionar el botón Brain Down es verdadera, entonces el brazo girará hacia arriba. Nuevamente, debido al bloque [Forever] , esta condición continuará comprobándose hasta que sea falsa.
Una vez que la condición del botón Brain Up sea falsa, el proyecto continuará con el siguiente bloque, que es el bloque [Detener motor] . Por lo tanto, el motor del brazo solo se detendrá cuando ambas condiciones sean falsas (ningún botón esté presionado).
Motivar la discusión
P: ¿Cuál es la progresión del flujo del proyecto si la condición del botón Brain Up que se presiona es FALSA (liberado)?
A: Si la condición es falsa, el flujo del proyecto continuará verificando la condición del botón Brain Down que se presiona.
P: ¿Cuál es el propósito de los bloques [If then else] en el proyecto anterior?
R: El uso de los bloques [If then else] permite que solo una instancia sea verdadera a la vez. Por lo tanto, los botones Brain Up y Brain Down no pueden ser verdaderos al mismo tiempo usando los bloques [If then else] , ya que la segunda condición del botón Brain Down presionado ni siquiera sería una opción a menos que se cumpla la primera condición del botón Brain Down. El botón Brain Up presionado era falso. El otro propósito es mejorar la eficiencia de la programación.
P: ¿Cuál es la progresión del flujo del proyecto si ambas condiciones de presionar los botones Arriba y Abajo son falsas?
A: Si ambas condiciones son falsas, el flujo del proyecto continuará hasta el bloque [Detener motor] antes de regresar a la parte superior de la pila, repitiéndose para siempre.
Paso 3: Programación con [Si entonces si no] bloques.
Usemos los bloques [If then else] :
-
Agregue los bloques [If then else] a su proyecto ArmUpDown para que su proyecto se vea como el siguiente:
-
Guarde el proyecto como ArmUpDown2. Si los estudiantes necesitan ayuda para guardar el proyecto, consulte el tutorial Nombrar y guardar.
-
Descargue el proyecto en Slot 4 en Clawbot y luego ejecútelo.
-
Para obtener ayuda para descargar y ejecutar un proyecto, consulte el tutorial en VEXcode IQ que explica descargar y ejecutar un proyecto.
-
Pruebe para ver si el brazo ahora girará hacia arriba cuando se presione el botón Brain Up y hacia abajo cuando se presione el botón Brain Down.
-
Verifique que cuando no se presionan (soltan) los botones Brain Up y Down, el motor del brazo se detiene.
-
Escribe tus observaciones de cómo se comportó el Clawbot antes y después de agregar los bloques if then else a tu proyecto en tu cuaderno de ingeniería.
Caja de herramientas para docentes - Parar y discutir
Después de que los estudiantes hayan probado el proyecto antes y después de agregar el bloque [If then else] , analice con los estudiantes cómo esto permite que el brazo continúe girando hasta que se suelte el botón Brain Up. Pida a los estudiantes que compartan sus observaciones de sus cuadernos de ingeniería. Facilite una discusión haciendo las siguientes preguntas:
-
¿Ves que Clawbot se comporta de manera diferente al usar los bloques [If then else] en comparación con solo los bloques [If then] ?
-
¿Por qué cree que la eficiencia del programa es importante?
-
¿La condición del botón Brain Up solo se verifica una vez en el proyecto?
Los cuadernos de ingeniería de los estudiantes se pueden mantener y calificar individualmente (Google ) o en equipo (Google ). Los enlaces anteriores proporcionan una rúbrica diferente para cada enfoque. Siempre que se incluye una rúbrica en la planificación educativa, es una buena práctica explicarla o al menos entregar copias a los estudiantes antes de que comience la actividad.
Caja de herramientas para profesores
Es posible que los estudiantes no vean mucha diferencia en cómo se comporta su Clawbot entre el uso de los bloques [If then else] y los bloques [If then] . Si los estudiantes no pueden ver físicamente una gran diferencia, facilite una discusión sobre la eficiencia de la programación y cómo simplificar un proyecto puede llevar a usar menos bloques. Usar menos bloques en un proyecto puede reducir la cantidad de errores potenciales.
Paso 4: Programando la Garra.
En el paso anterior, el proyecto se optimizó para ejecutarse de manera más eficiente usando [If then else] bloques. En el ejemplo anterior, el brazo se manipuló usando los botones Brain Up y Down.
Utilizando exactamente el mismo esquema del proyecto, también se puede manipular la Garra.
-
Revise el proyecto ArmUpDown2 y cambie los bloques [Spin] a ClawMotor en lugar de ArmMotor usando el menú desplegable.
Asegúrese de que el botón Brain Up haga girar la garra para "abrir" y que el botón Brain Down haga girar la garra para "cerrarla" mediante el uso de los menús desplegables.
-
Guarde el proyecto como ClawUpDown. Si los estudiantes necesitan ayuda para guardar el proyecto, consulte el tutorial Nombrar y guardar.
-
Descargue el proyecto en Slot 1 en Clawbot y luego ejecútelo.
-
Para obtener ayuda para descargar y ejecutar un proyecto, consulte el tutorial en VEXcode IQ que explica descargar y ejecutar un proyecto.
-
Pruebe para ver si la Garra ahora se abrirá cuando se presione el botón Brain Up y se cerrará cuando se presione el botón Brain Down.
-
Verifique que cuando no se presionan (soltan) los botones Brain Up y Down, el motor de la garra se detiene.
-
Escribe tus observaciones de cómo se comportó el Clawbot antes y después de agregar los bloques if then else a tu proyecto en tu cuaderno de ingeniería.
Caja de herramientas para profesores
Ahora que los estudiantes tienen las habilidades para manipular el brazo y la garra usando botones, pídales que piensen en cómo pueden realizar las cuatro acciones en el mismo proyecto (brazo arriba, brazo abajo, garra abierta y garra cerrada).
Los estudiantes utilizarán otro bloque [if then else] en la sección de repensar para permitir que su robot realice las cuatro acciones.
Amplíe su aprendizaje - juego de bloque de parada del motor
Si los estudiantes programan su robot para subir y bajar el brazo, el peso de la Garra podría hacer que el brazo se deslice hacia abajo.
En este caso se puede utilizar el bloque [Establecer parada motor] para que el brazo no caiga por la gravedad y el peso de la garra. Este bloque se puede utilizar al comienzo del proyecto y se aplicará a todos los bloques de motor futuros durante el resto del proyecto.
El bloque de parada del motor configurado tiene tres configuraciones:
-
Freno hace que el motor se detenga inmediatamente.
-
Inercia permite que el motor gire gradualmente hasta detenerse.
-
Mantener hace que el motor se detenga inmediatamente y lo devuelva a su posición de parada si se mueve.