Crear un Robot de recoger y colocar
Diseñar, construir y programar un sistema robótico capaz de recoger un objeto en un punto y dejarlo en otro.
Unidad didáctica
Preparar
- Lea este material para el profesor.
- Si lo considera necesario, prepare una lección con el material de primeros pasos que hay en la Aplicación de programación EV3 o el Software de Laboratorio EV3. Así, los alumnos pueden ir familiarizándose con LEGO® MINDSTORMS® Education EV3.
Despertar el interés (30 min.)
- Aproveche las ideas de la sección Debate abierto para animar a los alumnos a hablar sobre temas relacionados con este proyecto.
- Explique el proyecto.
- Ponga a los alumnos por parejas.
- Deles tiempo para que digan todas las ideas que se les ocurran.
Explorar (30 min.)
- Pida a los alumnos que creen varios prototipos.
- Anímeles a explorar tanto el montaje como la programación.
- Haga que cada pareja de alumnos monte y pruebe dos soluciones.
- Deles una hoja grande de papel cuadriculado y lápices de colores o rotuladores.
Explicar (60 min.)
- Pida a los alumnos que prueben sus soluciones y elijan la mejor.
- Asegúrese de que son capaces de crear sus propias tablas de prueba.
- Deje tiempo para que cada equipo termine su proyecto y reúna datos para documentar su trabajo.
Desarrollar (60 min.)
- Dé a los alumnos tiempo para que preparen sus informes finales.
- Organice una sesión en la que cada equipo presente sus resultados.
Evaluar
- Valore el trabajo que ha hecho cada alumno.
- Puede usar las rúbricas de evaluación facilitadas para simplificar el proceso.
Debate abierto
Los robots de recoger y colocar son un tipo de robots industriales que pueden mover objetos entre puntos predefinidos. Según la forma, el peso y la fragilidad de los objetos, se pueden usar diferentes clases de pinzas para, de forma segura y precisa, coger los objetos y volverlos a soltar.
Anime a los alumnos a hacer una lluvia de ideas.
Pídales que se planteen estas preguntas:
- ¿Qué es un robot de recoger y colocar y dónde se usa?
- ¿Qué tipo de mecanismo motorizado puede usarse para recoger el objeto?
- ¿Cómo puede el robot mover el objeto?
- ¿Cómo puede el robot colocar el objeto en otro punto con cuidado y precisión?
Anime a los alumnos a que documenten sus ideas iniciales y expliquen por qué han elegido la solución que van a usar para su primer prototipo. Pídales que describan cómo van a evaluar sus ideas durante el proyecto. Así, mientras revisan y comprueban su trabajo, tendrán información específica que pueden usar para evaluar su solución y decidir si es o no efectiva.
Extensiones
Extensiones de lengua castellana
Para incluir el desarrollo de habilidades en lengua castellana, anime a los alumnos a:
Opción 1
- Usar su trabajo escrito, bocetos o fotos para resumir su proceso de diseño y crear un informe final.
- Crear un vídeo que muestre su proceso de diseño, desde sus ideas iniciales hasta su proyecto final.
- Crear una presentación de su programa.
- Hacer una presentación que relacione su proyecto con aplicaciones reales de sistemas similares y describa nuevos inventos que podrían realizarse tomando como base lo que han creado.
Opción 2
Para incluir el desarrollo de habilidades en lengua castellana, anime a los alumnos a:
Investigar diferentes máquinas de preparación de medicamentos y vacunas y, a continuación, elaborar un relato relacionado con el trabajo en un laboratorio automatizado para la creación de medicamentos, poniendo de relieve una ventaja y un punto débil de la fabricación automatizada de medicamentos
Desde el punto de vista de la protección de datos, debatir acerca de las preocupaciones en materia de propiedad intelectual de potenciales «recetas» de fármacos valoradas en cifras milmillonarias y almacenadas en un sistema online, teniendo en cuenta:
Las posibles consecuencias de que una empresa pierda los datos de sus fármacos
Las ventajas de almacenar información sensible en sistemas online
Actividades adicionales de matemáticas
En esta lección, los alumnos han creado un robot de recoger y colocar. Al igual que en muchos sistemas automatizados, la evaluación y mejora del rendimiento es vital. El aprendizaje automático es el proceso mediante el cual los robots de recoger y colocar pueden medir su propio rendimiento y realizar modificaciones para mantener o mejorar tal rendimiento.
Para incorporar el desarrollo de habilidades matemáticas y explorar el aprendizaje automático, anime a los alumnos a:
- Definir los términos «exactitud» y «precisión» y aplicar tales definiciones a sus proyectos de robótica
- Identificar las variables relacionadas con la exactitud y la precisión en sus sistemas (por ejemplo, la velocidad de su robot puede ejercer un impacto en la exactitud, en la precisión o en ambas)
- Organizar pequeños experimentos para comprobar si las variables escogidas tienen impacto en la exactitud, en la precisión o en ambas
Consejos de montaje
Ideas de montaje
Dé a los alumnos la opción de montar algunos ejemplos que encontrarán en los siguientes enlaces. Anímeles a explorar cómo funcionan estos sistemas y a hacer una lluvia de ideas sobre cómo estos sistemas podrían inspirarles una solución que puedan desarrollar en la Presentación del diseño.
Consejos para realizar pruebas
Anime a los alumnos a diseñar su propia configuración y procedimiento de prueba para elegir la mejor solución. Estos consejos pueden ayudar a los alumnos a la hora de preparar las pruebas:
- Marcar la posición de la máquina en el papel cuadriculado para cerciorarse de que la colocan en el mismo punto en cada prueba que hagan.
- Usar cuadrículas para identificar cuadrados de 1 cm x 1 cm que sirvan de ayuda para anotar los resultados de cada prueba realizada.
- Usar lápices de colores o rotuladores para marcar el punto donde se espera que el robot coloque el objeto y el punto donde realmente lo deja.
- Crear tablas de prueba para anotar las observaciones.
- Evaluar la precisión del robot comparando los resultados esperados con los reales.
- Repetir la prueba un mínimo de tres veces.
Solución de muestra
Esta es una solución de muestra que cumple los criterios de Presentación del diseño:
Consejos de programación
Programa de muestra MicroPython EV3
#!/usr/bin/env pybricks-micropython
from pybricks import ev3brick as brick
from pybricks.ev3devices import Motor, TouchSensor, ColorSensor
from pybricks.parameters import (Port, Stop, Direction, Button,
ImageFile, SoundFile)
from pybricks.tools import wait
# Configure the gripper motor with default settings.
gripper_motor = Motor(Port.A)
# Configure the elbow motor. It has an 8-tooth and a 40-tooth gear
# connected to it. Set the motor direction to counterclockwise, so
# that positive speed values make the arm move upward.
elbow_motor = Motor(Port.B, Direction.COUNTERCLOCKWISE, [8, 40])
# Configure the motor that rotates the base. It has a 12-tooth and a
# 36-tooth gear connected to it. Set the motor direction to
# counterclockwise, so that positive speed values make the arm move
# away from the Touch Sensor.
base_motor = Motor(Port.C, Direction.COUNTERCLOCKWISE, [12, 36])
# Limit the elbow and base accelerations. This results in very smooth
# motion, like that of an industrial robot.
elbow_motor.set_run_settings(60, 120)
base_motor.set_run_settings(60, 120)
# Set up the Touch Sensor. It is used to detect when the base has
# moved to its starting position.
touch_sensor = TouchSensor(Port.S1)
# Set up the Color Sensor. It is used in Reflected Light Intensity
# Mode to detect the white beam when the elbow is in its starting
# position.
color_sensor = ColorSensor(Port.S3)
# Initialize the elbow. This is done by first moving down for 1 second
# and then slowly moving up until the Color Sensor detects the white
# beam. Then the motor stops, holds its position, and resets the angle
# to "0." This means that when it rotates backward to "0" later on, it
# returns to this starting position.
elbow_motor.run_time(-30, 1000)
elbow_motor.run(15)
while color_sensor.reflection() < 30:
wait(10)
elbow_motor.stop(Stop.HOLD)
elbow_motor.reset_angle(0)
# Initialize the base. This is done by first running the base motor
# counterclockwise until the Touch Sensor is pressed. Then the motor
# stops, holds its position, and resets the angle to "0." This means
# that when it rotates backward to "0" later on, it returns to this
# starting position.
base_motor.run(-60)
while not touch_sensor.pressed():
wait(10)
base_motor.stop(Stop.HOLD)
base_motor.reset_angle(0)
# Initialize the gripper. This is done by running the motor forward
# until it stalls. This means that it cannot move any further. From
# this closed gripper position, the motor rotates backward by 90
# degrees, so the gripper opens up. This is the starting position.
gripper_motor.run_until_stalled(200, Stop.COAST, 50)
gripper_motor.reset_angle(0)
gripper_motor.run_target(200, -90)
def robot_pick(position):
# This function rotates the base to the pick up position. There,
# it lowers the arm, closes the gripper, and raises the arm to pick
# up the wheel stack.
base_motor.run_target(60, position, Stop.HOLD)
elbow_motor.run_target(60, -45)
gripper_motor.run_until_stalled(200, Stop.HOLD, 50)
elbow_motor.run_target(60, 0, Stop.HOLD)
def robot_release(position):
# This function rotates the base to the drop-off position. There,
# it lowers the arm, opens the gripper to release the wheel stack,
# and raises the arm again.
base_motor.run_target(60, position, Stop.HOLD)
elbow_motor.run_target(60, -45)
gripper_motor.run_target(200, -90)
elbow_motor.run_target(60, 0, Stop.HOLD)
# Define the 3 destinations for picking up and dropping off the wheel
# stacks.
LEFT = 200
CENTER = 100
RIGHT = 0
# Rotate the base to the center.
base_motor.run_target(60, CENTER, Stop.HOLD)
# This is the main part of the program. It is a loop that repeats
# endlessly.
#
# First, the robot waits until the Up or Down Button is pressed.
# Second, the robot waits until the Center Button is pressed.
# Finally, the robot picks up the wheel stack and drops it off in the
# center.
#
# Then the process starts over, so the robot can pick up another wheel
# stack.
while True:
# Display a question mark to indicate that the robot should await
# instructions.
brick.display.image(ImageFile.QUESTION_MARK)
# Wait until the Up or Down Button is pressed.
while True:
# First, wait until any button is pressed.
while not any(brick.buttons()):
wait(10)
# Then store which button was pressed.
button = brick.buttons()[0]
# If the Up or Down Button was pressed, break out of the loop.
if button in (Button.UP, Button.DOWN):
break
# Play a sound and display an arrow to show where the arm will move.
brick.sound.file(SoundFile.AIR_RELEASE)
if button == Button.UP:
brick.display.image(ImageFile.FORWARD)
elif button == Button.DOWN:
brick.display.image(ImageFile.BACKWARD)
# Wait until the Center Button is pressed, then display a check
# mark to indicate that the instruction has been accepted.
while not Button.CENTER in brick.buttons():
wait(10)
brick.display.image(ImageFile.ACCEPT)
# Pick up the wheel stack. Depending on which button was pressed,
# move left or right.
if button == Button.UP:
robot_pick(RIGHT)
elif button == Button.DOWN:
robot_pick(LEFT)
# Drop off the wheel stack in the center.
robot_release(CENTER)
Vínculos con carreras profesionales
Es posible que a los alumnos que han disfrutado con la lección les interese explorar estas carreras profesionales:
- Tecnología de la información (programación informática)
- Fabricación e Ingeniería (tecnología mecánica)
Opciones de evaluación
Lista de comprobación de la observación del profesor
Cree una escala que se ajuste a sus necesidades, por ejemplo:
- Parcialmente superado
- Totalmente superado
- Superado con creces
Use estos criterios de logro de resultados para evaluar el progreso de los alumnos:
- Los alumnos son capaces de evaluar soluciones de diseño rivales basándose en criterios priorizados y soluciones de compromiso.
- Los alumnos son autónomos a la hora de desarrollar una solución creativa que funciona.
- Los alumnos son capaces de expresar sus ideas con claridad.
Autoevaluación
Cuando los alumnos hayan reunido varios datos sobre el funcionamiento, deles tiempo para que analicen sus soluciones. Ayúdeles planteando preguntas como:
- ¿Cumple tu solución los criterios de Presentación del diseño?
- ¿Puedes hacer que los movimientos del robot sean más precisos?
- ¿Cómo han resuelto otros este problema?
Pida a los alumnos que hagan una lluvia de ideas y documenten dos formas de mejorar sus soluciones.
Comentarios de los compañeros
Facilite un proceso de revisión con los compañeros en el que cada grupo tenga que evaluar sus propios proyectos y los de otros. Este proceso de revisión puede ayudar a los alumnos a desarrollar habilidades de crítica constructiva y mejorar sus habilidades de análisis y capacidad de usar datos objetivos para justificar un argumento.
Soporte para el profesor
Los alumnos van a:
- Usar el proceso de diseño para resolver un problema del mundo real
Set principal LEGO® MINDSTORMS® Education EV3
Hoja grande de papel cuadriculado o papel con cuadrículas
Lápices de colores o rotuladores
ANEXO I Materias del bloque de asignaturas troncales
Ciencias Aplicadas a la Actividad Profesional. 4º ESO
- Bloque 3. Investigación, Desarrollo e Innovación (I+D+i), pg.57
- Bloque 4. Proyecto de investigación, pg.58
Física y Química. 2º, 3º y 4º ESO, 1º y 2º Bachillerato
- Bloque 1. La actividad científica, pg.90, 95, 100 y 105
- Bloque 4. El movimiento y las fuerzas, pg.93 y 98
Lengua Castellana y Literatura. 4º ESO, 1º y 2º Bachillerato
- Bloque 1. Comunicación oral: escuchar y hablar, pg.197, 203 y 207
- Bloque 2. Comunicación escrita: leer y escribir, pg.199, 204 y 208
Matemáticas orientadas a las enseñanzas académicas y aplicadas. 3º y 4º ESO
- Bloque 1. Procesos, métodos y actitudes en matemáticas, pg.223, 227, 231 y 236
- Bloque 3. Geometría, pg.225, 229 y 234
- Bloque 4. Funciones, pg.226, 229, 234 y 238
Matemáticas I. y II. 1º y 2º Bachillerato
- Bloque 1. Procesos, métodos y actitudes en matemáticas, pg.246 y 251
- Bloque 4. Geometría, pg.249 y 253
Tecnología. 4º ESO
- Bloque 1. Tecnologías de la información y de la comunicación, pg.284
- Bloque 3. Electrónica, pg.285
- Bloque 4. Control y robótica, pg.285
- Bloque 6. Tecnología y sociedad, pg.285
ANEXO II Materias del bloque de asignaturas específicas
Tecnología Industrial I. 1º Bachillerato
- Bloque 1. Productos tecnológicos: diseño, producción y comercialización, pg.359
- Bloque 3. Máquinas y sistemas, pg.360
Tecnología Industrial II. 2º Bachillerato
- Bloque 2. Principios de máquinas, pg.360
- Bloque 3. Máquinas y sistemas, pg.360
- Bloque 3. Sistemas automáticos, pg.361
- Bloque 4. Circuitos y sistemas lógicos, pg.361
- Bloque 5. Control y programación de sistemas automáticos, pg.361
Tecnologías de la Información y la Comunicación. 4º ESO
- Bloque 3. Organización, diseño y producción de información digital, pg.364
- Bloque 5. Publicación y difusión de contenidos, pg.364
Tecnologías de la Información y la Comunicación I. 1º Bachillerato
- Bloque 3. Software para sistemas informáticos, pg.365
- Bloque 5. Programación, pg.365
Tecnologías de la Información y la Comunicación II. 2º Bachillerato
- Bloque 1. Programación, pg.366
- Bloque 2. Publicación y difusión de contenidos, pg.366
Material del alumno
Hoja de trabajo para el estudiante
Descarga, ve o comparte como una página HTML en línea o un PDF imprimible.