机器人-2010年春-振华-第八次活动机器人-课程提纲

来自阳光百科
2013年4月19日 (五) 18:55小怀讨论的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索
机器人教案

File:Textbook.JPG

志愿者信息
备课人 frolasue
邮箱 frolasue(a)gmail.com
课程组

计算机

课程信息
上课日期 2010.5.29
上课时长 50分钟
授课对象 振华四、五六年级学生
学生信息 约10

授课目标[编辑 | 编辑源代码]

加深def和repeat概念理解,用少部分时间继续完成跨栏,思考用if等重写跨栏程序。

授课内容[编辑 | 编辑源代码]

1. 继续巩固def、repeat
2. 学习判断语句if,if…else,if…elif…else
3. 学习几个新语句:front_is_clear(), left_is_clear(), right_is_clear()
4. 思考用新语句写跨栏程序

授课提纲[编辑 | 编辑源代码]

零、复习
1.区别def和repeat的用法
2.继续完成爬台阶
一、 质疑导入 (5min)
上次课咱们有同学已经完成了爬台阶,请大家想一想,如果台阶高低不一样,长短也不一样,这个程序还能完成爬台阶的任务吗?如果机器人能够自己思考,知道不同的台阶怎么走是不是很棒?!
这节课咱们就来教机器人思考,让它变成智能机器人!
二、 使用地图hurdles1.wld讲解if,if…else,if…elif…else
2.1 写程序
def zou():
move()

repeat(zou,50)
turn_off()
让学生思考会出现什么结果,让学生实际运行一下,看是否和预想的结果一致
2.2 写程序
def zou():
if front_is_clear():
move()

repeat(zou,50)
turn_off()
让学生思考会出现什么结果,实际运行一下,看是否和预想的结果一致
2.3 写程序
def zou():
if front_is_clear():
move()
else:
turn_left()

repeat(zou,50)
turn_off()
让学生思考会出现什么结果,让学生实际运行一下,看是否和预想的结果一致
2.4 如何跨栏?
机器人if-else跨栏程序讲解过程

使用if-else完成机器人跨栏程序的分析过程(前面已经学习了if;if-else):
1、用一纸做的箭头在黑板上画出的图上模拟机器人跨栏动作,让学生观察规律;重复几次之后,学生总结出:机器人的右边靠着墙走就可以了。我在黑板上简写为“靠右走”
2、分析“靠右走”其实是两个方面,一是靠右,如果右边有空,得向右边的墙靠近;二是如果前面有空,得向前走。从而引出right_is_clear()和front_is_clear()
3、跨四个栏实际上只需要分析跨一个栏的动作即可,所以在把跨第一个栏的五个点按顺序标出来;现在我们要写一段程序,这段程序会让机器人无论处于哪个点都会做出正确的动作;那么我们一个一个点来分析,分析结合第2步的右边为空和前面为空这两种情况来进行
关键点 右边为空 前面为空 机器人下一步动作
① × √ 前进
②⑤ × × 左转
③④ √ √ 右转
那我们根据表格来写程序,首先要处理右边为空的情况(③④)(为什么要先处理右边为空的情况?因为要先靠右)
那我们根据表格来写程序,首先要处理右边为空的情况(③④)(为什么要先处理右边为空的情况?因为要先靠右)
如果 右边为空
右转
接下来要看右边不为空的情况,从表中可以看出右边不为空还有两种情况,前面为空和前面不为空,说明接下来要判断前面是否为空
如果 右边为空
右转
否则 如果 前面为空
前进
否则
左转


三、总结
这次课咱们让机器人学会了判断,并且也分析了怎样让机器人自己学会跨不同的栏,下次课咱们要学会把这些思路翻译成机器人能懂的程序语言,然后就可以亲自试试用同一个程序让机器人走不同的地图啦!你们课后也可以想想这几行怎么翻译。

教学环境、材料需求[编辑 | 编辑源代码]

电脑、投影

助教需求[编辑 | 编辑源代码]

≈5

参考页面[编辑 | 编辑源代码]

旧百科原始链接

Template:振华教案

你的看法