设计和搭建一个机器人系统,并对其进行编程,使其绘制图案、准确执行任务并重复任务。
课前准备
- 通读教师教学材料。
- 可根据教学需要使用 EV3 Lab 软件或 EV3 机器人编程 App 应用程序中的入门教学材料来设计课程。这将有助于学生熟悉乐高教育® MINDSTORMS® 头脑风暴 EV3 机器人套装。
参与(30 分钟)
- 结合下文发起一次讨论部分的提示,组织学生围绕本项目展开讨论。
- 解释项目。
- 将整个班级按两人一组方式进行分组。
- 为学生预留头脑风暴的时间。
探究(30 分钟)
- 让学生创建多个原型。
- 鼓励学生探索搭建和编程。
- 让每组学生搭建并测试两种方案。
- 为他们提供一张大的坐标纸和彩色铅笔或马克笔。
解释(60 分钟)
- 要求学生测试自己的方案,并选出最优的一个。
- 确保学生能够创建自己的测试表。
- 为每个团队留些时间来完成项目,并收集他们的工作记录材料。
拓展(60 分钟)
- 给学生一些时间,让他们完成自己的最终报告。
- 组织一次分享会,让每个团队展示他们的成果。
评估
- 为每位学生的课堂表现提供反馈。
- 可借助所提供的评价量表来简化此环节。
计算机数控 (CNC) 机器能够借助预编程指令,沿一个或多个轴高精度控制刀具。此类设备通常用于计算机集成制造,将计算机上的数字设计转化为实体产品。
引入头脑风暴环节。
要求学生思考下列问题:
鼓励学生记录最初想法,并解释第一个原型选用此方案的原因。要求学生描述:如何在整个项目进行过程中评估自己的想法。通过这种方式,他们在审核和修改过程中将会拥有评估自身方案的具体信息,并可籍此来决定方案是否有效。
语言艺术拓展
为了引入语言艺术能力培养环节,让学生:
选项 1
选项 2
在本节课中,学生将创建一台 CNC 数控绘图机。CNC 数控机器使用人工生成的计算机辅助设计 (CAD) 模型生产部件、产品和原型。这些 CAD 模型均由通过计算机存储在本地网络或云中的数据展现。
数学拓展
在本节课中,学生将创建一台绘图机器。但是,如果他们的目标是创建一台能够绘制特定几何形状的机器,该怎么办?如果他们希望自己的机器在绘制特定形状方面越来越出色,该怎么办?实现这个目的的一种方法是使用一种被称为“机器学习”的人工智能。为了使用机器学习,必须向系统提供样本数据,以“教授”它什么是形状,以及如何确定自身是否精确绘制了特定形状。
为了提高数学技能,并将这些技能应用于机器学习,即使用样本数据,应要求学生:
为进一步将数学概念和技能与本主题联系起来,请提出下列问题:
搭建创意
允许学生搭建下面链接中的示例。鼓励他们探索这些系统的工作原理,并进行头脑风暴,讨论如何通过这些系统获得“设计任务”的解决方案。
测试要诀
鼓励学生设计自己的测试装置和流程,从而选择最佳方案。下列提示可以帮助学生建立他们的测试体系:
示例方案
以下是符合“设计任务”标准的示例方案:
EV3 MicroPython 示例程序
#!/usr/bin/env pybricks-micropython
from pybricks import ev3brick as brick
from pybricks.ev3devices import (Motor, TouchSensor, ColorSensor,
GyroSensor)
from pybricks.parameters import Port, Stop, Direction, Color, ImageFile
from pybricks.tools import wait
# Configure the turntable motor, which rotates the arm. It has a
# 20-tooth, a 12-tooth, and a 28-tooth gear connected to it.
turntable_motor = Motor(Port.B, Direction.CLOCKWISE, [20, 12, 28])
# Configure the seesaw motor with default settings. This motor raises
# and lowers the Pen Holder.
seesaw_motor = Motor(Port.C)
# Set up the Gyro Sensor. It is used to measure the angle of the arm.
# Keep the Gyro Sensor and EV3 steady when connecting the cable and
# during start-up of the EV3.
gyro_sensor = GyroSensor(Port.S2)
# Set up the Color Sensor. It is used to detect whether there is white
# paper under the drawing machine.
color_sensor = ColorSensor(Port.S3)
# Set up the Touch Sensor. It is used to detect when it is pressed,
# telling it to start drawing the pattern.
touch_sensor = TouchSensor(Port.S4)
def pen_holder_raise():
# This function raises the Pen Holder.
seesaw_motor.run_target(50, 25, Stop.HOLD)
wait(1000)
def pen_holder_lower():
# This function lowers the Pen Holder.
seesaw_motor.run_target(50, 0, Stop.HOLD)
wait(1000)
def pen_holder_turn_to(target_angle):
# This function turns the arm to the specified target angle.
# Run the turntable motor until the arm reaches the target angle.
if target_angle > gyro_sensor.angle():
# If the target angle is greater than the current Gyro Sensor
# angle, run clockwise at a positive speed.
turntable_motor.run(70)
while gyro_sensor.angle() < target_angle:
pass
elif target_angle < gyro_sensor.angle():
# If the target angle is less than the current Gyro Sensor
# angle, run counterclockwise at a negative speed.
turntable_motor.run(-70)
while gyro_sensor.angle() > target_angle:
pass
# Stop the motor when the target angle is reached.
turntable_motor.stop(Stop.BRAKE)
# Initialize the seesaw. This raises the Pen Holder.
pen_holder_raise()
# This is the main part of the program. It is a loop that repeats
# endlessly.
#
# First, it waits until the Color Sensor detects white paper or a blue
# mark on the paper.
# Second, it waits for the Touch Sensor to be pressed before starting
# to draw the pattern.
# Finally, it draws the pattern and returns to the starting position.
#
# Then the process starts over, so it can draw the pattern again.
while True:
# Set the Brick Status Light to red, and display "thumbs down" to
# indicate that the machine is not ready.
brick.light(Color.RED)
brick.display.image(ImageFile.THUMBS_DOWN)
# Wait until the Color Sensor detects blue or white paper. When it
# does, set the Brick Status Light to green and display "thumbs up."
while color_sensor.color() not in (Color.BLUE, Color.WHITE):
wait(10)
brick.light(Color.GREEN)
brick.display.image(ImageFile.THUMBS_UP)
# Wait until the Touch Sensor is pressed to reset the Gyro Sensor
# angle and start drawing the pattern.
while not touch_sensor.pressed():
wait(10)
# Draw the pattern.
gyro_sensor.reset_angle(0)
pen_holder_turn_to(15)
pen_holder_lower()
pen_holder_turn_to(30)
pen_holder_raise()
pen_holder_turn_to(45)
pen_holder_lower()
pen_holder_turn_to(60)
# Raise the Pen Holder and return to the starting position.
pen_holder_raise()
pen_holder_turn_to(0)
喜欢这节课的学生可能会对以下相关行业产生兴趣:
教师观察清单
可根据教学需要设定等级,例如:
1.部分完成
2.全部完成
3.超额完成
请使用下列成功完成任务的标准来评估学生的进度:
自我评估
当学生收集到所需的性能数据后,给他们一些时间反思自己的方案。通过提出如下问题来帮助他们:
要求学生进行头脑风暴,并记录两种能够改进他们方案的方法。
同伴反馈
推动学生进行同伴审核,由每个小组负责评价自己及其他小组的项目。此审核过程能够培养学生提供建设性反馈的能力,提升他们的分析能力和使用客观数据支持论点的能力。
学生将会:
乐高教育® MINDSTORMS® 头脑风暴 EV3 机器人核心套装
一张大的坐标纸或预先印有网格线的纸张
彩色铅笔或马克笔
www.moe.gov.cn/srcsite/A26/s8001/201801/t20180115_324647.html
高中信息技术课程标准
开源硬件项目设计模块
6.4 根据设计方案,选择恰当的开源硬件,搜索相关的使用说明资料,审查与优化作品设计方案。
6.5 了解作品制作过程中各种设备与组件的安全使用规则和方法,根据设计方案,利用开源硬件、相关组件与材料,完成作品制作。
6.6 根据设计方案,利用开源硬件的设计工具或编程语言,实现作品的各种功能模块。
下载、查看或分享在线 HTML 页面或可打印的 PDF 文件。
哆哆女性网童姓男孩取名起名大全什么叫公共关系教师信息管理系统孩子起名2021女孩辛福请你等等我放贷人起名字大全男生打分测免费一个色农夫网上开店起个什么名好奔驰俱乐部属鼠孙姓男孩起名煮面条用韩子对女孩起名5any.com属鼠男孩的起名大全于越微博民生声名鹊起电击小子10我的贴身校花无弹窗gouride感人的句子沁园蛋糕妖精的尾巴第三季的方姓男孩起名字男孩十二星座时间额外奖励31省新增确诊2例均为境外输入起名大全男孩打分测免费沈阳市卫生局闫石6月5日是什么日淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻不负春光新的一天从800个哈欠开始有个姐真把千机伞做出来了国产伟哥去年销售近13亿充个话费竟沦为间接洗钱工具重庆警方辟谣“男子杀人焚尸”男子给前妻转账 现任妻子起诉要回春分繁花正当时呼北高速交通事故已致14人死亡杨洋拄拐现身医院月嫂回应掌掴婴儿是在赶虫子男孩疑遭霸凌 家长讨说法被踢出群因自嘲式简历走红的教授更新简介网友建议重庆地铁不准乘客携带菜筐清明节放假3天调休1天郑州一火锅店爆改成麻辣烫店19岁小伙救下5人后溺亡 多方发声两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#青海通报栏杆断裂小学生跌落住进ICU代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了当地回应沈阳致3死车祸车主疑毒驾武汉大学樱花即将进入盛花期张立群任西安交通大学校长为江西彩礼“减负”的“试婚人”网友洛杉矶偶遇贾玲倪萍分享减重40斤方法男孩8年未见母亲被告知被遗忘小米汽车超级工厂正式揭幕周杰伦一审败诉网易特朗普谈“凯特王妃P图照”考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼恒大被罚41.75亿到底怎么缴男子持台球杆殴打2名女店员被抓校方回应护栏损坏小学生课间坠楼外国人感慨凌晨的中国很安全火箭最近9战8胜1负王树国3次鞠躬告别西交大师生房客欠租失踪 房东直发愁萧美琴窜访捷克 外交部回应山西省委原副书记商黎光被逮捕阿根廷将发行1万与2万面值的纸币英国王室又一合照被质疑P图男子被猫抓伤后确诊“猫抓病”