资料简介
--
---
(参考教案)第一课 走进机器人的世界
一[教学目标]
1、 知识与技能
知道什么是机器人,了解机器人的发展情况,对即将要学习的机器人有
一个感性的认识。
2、 过程与方法
让学生自己动手通过上网查询机器人的定义,以及机器人的发展概况。
再通过讨论把自己的所见所闻讲述出来,教师归纳总结。再以丰富的视频资料帮
助学生对教学机器人建立一个感性的认识。
3、 情感、态度、价值观
让学生体会自主学习所带来的成功感,培养学生发现问题、解决问题的
能力。
二[教学重点]
了解机器人的基本知识,特别是现在普遍使用的教学机器人。
三[教学难点]
如何让学生对机器人有一个生动形象的认识,从而激发学生的学习兴趣。
四[课前准备]
计算机机房、互联网、机器人器材
五[教学步
骤]
教师活动 学生活动 教学目的
1、播放影片剪
辑
《终结者 2》片段
1、观看影片 1、引起学生的注意
2、提出问题:影片中的
主角是人还是机器人?
2、展开思考作答
机器人
2、引导学生进入主
题
3、提出问题:什么是机器人?请同学们通
过网络寻找答案
3、学生开始通过搜
索引擎去寻找答案
3、让学生通过自主
学习去解决问题
4、 巡视整个机房,了解学生
完成情况,并对部分学生给予提示。
4、学生通过操作,
对机器人的定义有
了初步认识
4、让学生体会成功
感
5、请部分学生讲述他所发现的关于机器人
的描述
5、学生各自表达自
己的观点
5、通过发言的方式
让学生增强自信心
6、总结发言:各位同学对机器人的描述都
是大同小异的,应该说都是正确的,我们
国家的科学家对机器人是这样理解
的。。。。。。
6、关注教材中对机
器人所下的定义
6、让学生明白机器
人实际上是一个开
放性的话题
7、提出任务:同学们接下来继续通过搜索
引擎去网上下载机器人的图片,等一下拿
出来大家交流一下,看看谁下的不同种类
的机器人最多?
7、学生开始通过搜
索引擎去下载图片
7、继续渗透自主学
习
--
---
8、巡视机房掌握学生完成
情况
8、将下载下来的图片保存
在硬盘中
8、了解学生的操作情况,
为开展下一步教学作准备
9、请同学来展示自己下载
的机器人图片并提出问题:
你能给你下载的机器人进
行一个简单的归类吗?
9、学生凭自己的想象力进
行归纳
9、为讲解机器人的分类作
一个铺垫
10、归纳总结:其实机器人
分类的方法很多,现在还没
有一个统一的标准,按目前
一般的方式可分为。。。。。
(结合课本对这些分类作
简单解释)
10、关注教材中对机器人
的分类
10、让学生对机器人有一
个框架上的认识
11、结合课本引入教学机器
人的介绍,重点说明教学机
器人在我国的发展情况,以
及在现实中的具体应用,配
合讲解出示目前使用比较
普遍的机器人器材
11、学生认真听讲,并观
察机器人器材实物
11、通过实物展示,提高
学生的感性认识,为即将
学习的内容提升兴趣
12、播放收集整理的关于教
学机器人的使用和比赛片
段,结合视频作一定的补充
说明(比如近年来发生在身
边的青少年智能机器人大
赛等等)
12、观看视频 12、让机器人从一个抽象
的概念变得较为形象,为
下步学习作一个铺垫
13、出示一个已经制作好的
机器人实物,结合这个机器
人来讲解机器人的基本组
成
13、通过听讲和观察,去
理解机器人的组成部分
13、出示实物让学生能够
把教师所讲的组成部分很
容易和实际联系起来,加
深理解
14、提出思考问题:用自己
的方式表达,你心目中未来
的机器人是什么样的?
14、学生思考回答 14、培养学生的想象力
六[课后反思]
1、 对于前面机器人定义和分类的学习,是采用自主探索和互动的形
式完成的,其目的是提高学生的学习兴趣,但要注意时间的把握,避免冲淡本节
内容主题-教学机器人的介绍。
2、 教学中所采用的视频要精简,能够迅速切入主题,达到深人浅出
的效果。
3、 上机指导时要注意观察学生的完成情况,特别要留意那些完成情
况具有代表性的学生,尽量抽他们起来回答问题。比如:图片的下载,就要关注
那些学生图片下载的较全,分类较多,这样便于讲解。
(参考教案)第二课机器人的编程系统
--
---
一、[教学目标]
1、知识与能力 知道人与机器人是怎样进行交流的,认识纳英特和
乐高机器人的编程平台
2、过程与方法 以形象生动的讲解和演示操作相结合,辅以任务驱
动的方式完成授课
3、情感、态度和价值观 通过对本节知识的学习,着重培养学
生的观察能力、理解能力和模仿能力。
二、[重、难点分析]
1、重点:认识机器人的编程平台,知道人与机器人是如何通讯的
2、难点:学生如何能够熟练的完成打开编程软件---录入指令----下载
程序到机器人
三、[课前准备]
网络教室、乐高纳英特编程软件、机器人核心部件(机器人的大脑)
四、[课时安排] 1 课时
五、[教学步骤]
1、课前引入
师:人与人之间的交流主要是通过语言完成的,比如我叫大家打开电脑,
你们马上就可以完成这个动作。那么人与机器人之间的交流是怎样完成的呢?
生:认真思考
师:其实机器人并非人类因此它也不能听懂人类的语言,既然如此那么
我们到底通过什么手段和机器人交流呢?这是我们这节课所要学习的。
2、新课教学
师:首先我们进行一个简单的设想,机器人首先还是一台机器,我们把
它能听懂的话叫做机器语言,人要与机器人进行沟通就需要一个翻译,把人类的
语言翻译为机器语言,这样机器人就能听懂我们说的话了。那谁来充当我们的翻
译呢,这就是编程软件了,我们把我们要说的话先组织好,写在编程软件里,再
由它告诉机器人。接下来我们就来具体学习怎样使用我们的翻译,让它把我们的
要求告诉机器人。
师:首先给大家介绍两个翻译家认识,一个叫做纳英特、一个叫做乐
高,这是两个不同地方的翻译家,一个来自杭州、一个来自北京,但是他们要做
的工作是一样的,为我们和机器人充当翻译。首先我们来看看纳英特编程软件怎
么使用?
纳英特使用步骤:
步骤一 使用前首先要把这个软件装入电脑。装好以后可以看到桌面上
的 nstrobot 图标。
步骤二 双击该图标,就可以看到纳英特积木式机器人图形化编程平台
了。
--
---
步骤三 下面我们随便输入一些想要给机器人说的话,比如让机器人动
起来(机器人的行动主要靠马达来完成)。
1、从左边的执行器模块库中拖一个启动电机模块到程序中如图,注:
这里的拖动和我们平时拖动文件到某个地方是一样的
2、在右边的启动电机模块上双击或者点右键,点模块属性,如下图,
把马达的功率设置为 100。
--
---
步骤四 好,接下来我们就要让翻译把这句转达给机器人了,在转达之间
我们还要把机器人和我们的翻译联在一起,翻译是装在什么地方的?对,计算机
里面的。那我们只需要把机器人和计算机连接在一起就可以了 1、先把
机器人通讯线的一头和电脑的一个串口连接,连接方法见下图
2、通讯线的另一端和机器人相连,见下图。
--
---
步骤五 下面我们就开始让翻译把我们的指令传达给机器人
在下载前我们用 1 个手把机器人提起,防止马达的转动使机器人从高
处摔下损坏,然后向右打开开关。点“编译下载”,选择好与电脑连接的串口,
点“下载应用程序”,如果下载失败,请检查串口是否搞错,通信线有没有连接,
机器人电源有没有打开等情况。有时候什么也没有改变,关开一下电源,重新下
载,也可能会取得成功。
下载成功后把电源拨到中间,关闭机器人,然后在把电源拨到右侧打开
机器人,这时你就可以看到机器人按我们的意思动起来了
--
---
任务一
下面各位同学马上把刚才学习到的体验一下吧,有什么问题请举手
师:下面我再给大家介绍另一位翻译看看它又是怎样把我们的语言翻译
给机器人的
乐高的使用步骤
步骤 安装好的软件在桌面有一个快捷方式 ,双击该快捷方式即
可进入如图所示的 ROBOLAB 的主菜单界面。
1、 单击“管理员”按钮即可进入管理者界面
2、 将红外发射器与电脑相连,做好下载前的准备(红外发射器和刚
才使用的通讯线作用是一样的,负责把程序传给机器人。
--
---
3、RCX 电源打开,并将 RCX 红外发射的地方(前面黑色部分)对准红外
发射塔 的红外发射部分,如下图:
3、 下面我们点击“下载固件”按钮,将固件下载到机器人里面。
为什么需要下载固件?
就象我们使用计算机首先要装操作系统一样,固件也可以想象成是机器
人大脑的操作系统。 有了它,机器人才可以识别翻译传达来的信息。
为什么刚才使用的纳英特不需要固件?
纳英特的固件实际上在出厂前已经固化在机器人的大脑里了,所以不需
要再次安装。
(参考教案)第三课制作能行走的机器人
一、 教学目标:
1、知识目标:学习使用 ROBOLAB 软件编制程序,会搭建具体的机器人
2、能力目标:通过实践培养学生的观察能力、动手能力、创造能力,具
体要达到:
①、能够使用乐高编程软件;练习用电脑控制机器人,启动机器人;
②、学会简单的搭建技术
3、情感目标:培养学生对待知识的科学态度和辩证唯物主义观点。培养
学生探索机器人的兴趣和科学精神。培养良好的生活习惯、与人的沟通与合作、
对他人的尊重、面对困难的毅志力与自信心的树立及时间的合理分配和利用。
二、 教学重点、难点:
重点:编程软件的使用。
难点:编写程序的逻辑思想。
三、 教学方法: 以学生直接体验为主,并辅以教师启发、引导。
四、 教学准备: 乐高机器人套装、电脑、网络教室。
五、 教学过程:
1、 引入:通过前面的学习,我们已经知道了怎样跟机器人交流。今
天,我们具体搭建一个机器人,让它按我们的要求工作。
--
---
2、新课:首先我们还是要再次熟悉一下今天我们要使用的翻译家“乐高
编程软件”。
步骤一 介绍基本图标功能
从电脑桌面双击其快捷方式 ,即可进入 robolab 的编程主界面。(图
一)
主界面上有三个菜单项:管理员、编程者级别和 研究者级别,以及三个
按钮:帮助、退出和说明。点击编程者级别菜单项进入其界面(图二),它的界
面菜单分为导航者与发明家两大级别,每一级下有三个小项:水平、主题和程序。
一般编程分为三个步骤:
1、根据模型从功能板上选择所需的图标
2、在编程窗口里合理布置图标,并进行连线
3、 程序的下载
--
---
a、当功能和工具模块不在编程窗口显示时,可通过点击菜单栏里的
Windows,分别选取 show tools palette(显示工具面板)和 show functions
palette(显示功能面板)来使它们出现
b、工具模块中主要用到的几个说明: 1--操纵工具(operating
tool): 2--定位工具(postioning tool):可选取、移动物件 3--
标示工具(labeling tool):编辑注解或文字输入 4--连线工具(wiring
tool):连接图示区内各结点 5--弹出工具(object popup) 6--滚动工
具(scrolling tool) 7—断点工具(set/clear breakpoint) 8—探针
工具(probe data) 9—颜色工具(get color) 10-着色工具(set
color) 注:图标的选取一般选用定位工具;连线使用连线工具
c、图标的抓取及连线说明: 把光标移到功能模块上,选取所需的图标点
击一下,然后把鼠标移到适合的位置再点击一下鼠标,则完成了图标的抓取过程;
把鼠标移到工具模块上,在连线图标点一下,便可进行连线。当把鼠标移到将要
进行连线的图标上,图标会不停的闪烁并出现黄色的端口提示,在所要进行连线
的端口点一下,然后移到另一端口再点下,即可完成连线过程,连线正确为一条
粉红色的粗线,不正确为黑色的细虚线。
步骤二: 搭建一个任务机器人
现在我们以一个简单的例子来说明:目的:制作一辆直线竞速车,要
跑得顺、跑得好, 车子不能一跑就散了。
1.我们用两个马达控制车轮
--
---
2. 左图中使用了一个 L 型的积木,它的作用是什么?
3、小车轱辘擦边如何解决?
--
---
4.想想图中各部分结构的作用?
步骤三、 演示图标对机器人的控制
下面我们给机器人编写一个往返跑的程序
注意观察两个程序有什么不同?
--
---
答:刚才我们说过连线正确为一条粉红色的粗线,不正确为黑色的细虚
线。因此,只有第二个程序能够正确执行。
3、课堂体验:让他们从具体的搭建过程中感受力学知识;从控制马达的
转动中体验电学知识;从电脑控制机器人运作 体验信息技术知识。并在动手做
的过程中观察、体验、思考:我学会了什么?我怎样才能做得更好?这与我们的
生活有什么联系?
六、 布置课后探索思考:
(1) 我们能为这个机器人设计更多、更好的动作吗?
(2)今天学的机器人同我们自己家的电器有什么关系?
(参考教案)第四课 让机器人送餐
一、 教学目标
1、知识目标:
①、了解马达的运转带动齿轮及机器的运转原理。
②、知道通过马达控制机器人运动的基本原理。
2、能力目标:通过实践培养学生的观察能力、动手能力、创造能力,具
体要达到:
①、通过编辑程序控制机器人前进、转向等动作。
②、学会按需组装简单机器人,例如:齿轮连接、马达的连接等;
③、观察机器人的运作原理,思考是否能改进,使它运作得更好一些。
3、情感目标:
①、培养良好的生活习惯、与人的沟通与合作、对他人的尊重、面对困
难的毅志力与自信心的树立及时间的合理分配和利用。
②、培养学生对待知识的科学态度和辩证唯物主义观点。
③、培养学生探索机器人的兴趣和科学精神。
二、教学重点、难点
重点:正确完成通过编辑程序控制机器人前进、后退、转向、上下移动
等动作。
难点:
①、用电脑编辑控制程序,控制机器人完成任务规定动作;
②、按需组装好能完成规定任务的机器人;
--
---
③、控制好机器人完成任务的动作距离。
三、教学方法
以学生直接实践体验为主,辅以教师演示、启发、引导。
四、教学准备
纳英特机器人套装若干套,乐高机器人套装若干套,电脑,积木、导线
等若干工具。
五、教学过程
教学
环节 教师活动 学生活动
复习
旧知
识
前两次课我们学习过“让机器人动起来”、“能行走的
机器人”,现在我们来回忆一下机器人怎样前进的。
板书:
Motor 0,50
Motor 1,50
Sleep 2
问题一:请一位同学来说说上面这段代码是什么意思。
问题二:如果是乐高机器人又是怎么样实现上面的功
能。
学生回顾旧知识,
回答:三行代码分
别是让 0 号马达按
转速 50 正转;1 号
马达按转速 50 正
转;两个马达转动
的时间为 2 秒。
导入
新任
务
情景演示:一个机器人按正方形的路径进行;一个机器
人进行“送餐”表演。
今天我们不光要让机器人前进,我们还要让它按照我们
的设定的程序前进。
学生观察、思考,
激发学生兴趣
新
课
一、教纳英特机器人走正方形
要让纳英特机器人完成走正方形,实际上就是让机器人
重复完成四次“前进→转弯”的动作。
我们先来看看,机器人是怎样实现“前进→转弯”的:
首先启动电机,让机器人以一定的速度向前一段路程,
再以左轮(或右轮)为中心转动 90°,最后停止。这
样就走完了正方形的一个边。BASIC 程序设计可参考教
材图 4-1。
二、让乐高机器人去送餐
任务分析:机器人运动的同时,还需要有一只机械手托
起餐盘。另外,机器人必须准确地到达目的,并能准确
地将餐盘放在餐桌上,后退回出发点时不可以将餐盘打
翻。由于餐桌上的空位不在出发区的正前方,机器人必
须做转弯运动。
解决策略:用两个马达驱动机器人的运动,一个马达控
制机械手,完成送餐任务。机器人行进路线和动作行为:
前进——右转——前进——放餐盘——后退——左转
——后退。用时间控制机器人前进、转弯、后退的距离。
学生观察、分析机
器人是如何通过程
序实现“转变”。
学生分析总任务、
解决策略,思考如
何在程序设计里实
现左右转、后退、
放餐盘等具体动作
指导
实验
动手
体验
第一个任务:让机器人走正方形
这个任务由纳英特机器人机器人来完成,刚才我们讲了
正方形一个边的程序,想一想:要让机器人走正方形,
该如何修改程序?如果要让机器人与运动员一样绕正
同学们参考图 4-2
进行程序设计与修
--
---
方形场地跑三圈,又该如何修改程序?参与程序如图
4-2 所示。
用通讯下载线将机器人与计算机连接,打开下载运行开
关;单击编译下载按钮,编译下载程序,试运行,观察
机器人运动情况,修改程序。
第二个任务:让机器人送餐
要完成这个任务,首先要搭建可以实现送餐的机器人,
图 4-5A 是马达驱动机器人运动的参考搭建,这里采用
的是齿轮传动,主动轮 24 齿,从动轮 40 齿。完成这个
任务有两种方法。
方法 1、时间控制法。
乐高机器人送餐重点要解决几个关键动作:前进——右
转——前进——放餐盘——后退——左转——后退,这
几个动作的控制距离还要通过同学们实践反复调试。
调试时机器人如果没能按你的要求动作,请仔细检查机
器人的连线是否正确,如果马达的转动方向不是你希望
的,可以改变导线的连接方向。
方法 2、角度传感器控制法。
角度传感器的 RCX 和乐高轴的连接方式可以参考图
4-7。当马达工作时,带动乐高轴转动,套在轴上的角
度传感器开始记数。同时,由于角度传感器与 RCX 的输
入端口相连,计数器的值随时反馈给 RCX,以便机器人
做出判断和决策。
在程序设计时,要清楚角度传感器的计数器与它的初始
位置有关。当初始化角度传感器时,它的计数值被设置
为 0,为确保数据的准确,角度传感器在重新计数前,
最好对其清零。
这个程序也要完成前进——右转——前进——
放餐盘——后退——左转——后退几个动作,程序基本
和方法一相同,只是在控制机器人转动时使用的程序不
一样。
改实现机器人跑正
方形三圈
根据图 4-6 程序的
提示进行设计程
序,重点是反复调
试,直到完成相应
任务为止。
根据图 4-7 程序的
提示进行设计程
序,重点是反复调
试,直到完成相应
任务为止。
评价
激励,
成果
分享
让每个小组发表见解,大家参与评价、分享。
对实验成功的学生给予表扬,并鼓励改进实验的方法;
对实验失败的学生要帮助分析原因,重树他们的自信
心;
不论成功还是失败,每个小组都会发现一些问题,以及
对这些问题的分析和议论,或是对实验有创意的想法和
设计。
学生发表见解畅谈
实验过程中的感
想。
布置
课后
探索
思考
1、图 4-6 所示的程序中,机器人是怎样实现右转的?
请补充机器人送餐后,返回出发区的程序。
2、同样是指挥机器人前进和转弯,纳英特机器人和乐
高机器人在编程思想和方式上,有哪些地方相同,哪些
地方不同?
--
---
3、对机器人来说,角度传感器是输入信息还是输出信
息?它是怎样工作的?使用角度传感器控制机器人运
动的距离与电池的电量有关吗?为什么?
课后
反思
(参考教案)第五课计算机程序与 QBASIC 语言
一、教学目标
1、知识目标:
①、了解计算机语言、计算机程序的基础知识。
②、了解 BASIC 语言的基本运用规则。
③、了解 BASIC 的函数和变量。
2、能力目标:
①、能准确运用 QBASIC 语句的格式
②、能编辑简单的 QBASIC 程序。
3、情感目标:
①、培养良好的生活习惯、与人的沟通与合作、对他人的尊重、面对困
难的毅志力与自信心的树立及时间的合理分配和利用。
②、培养学生信息素养,培养学生的程序员基本道德操守。
③、培养学生编写程序的兴趣。
二、教学重点、难点
重点:
①、计算机语言的基础知识。
②、编写简单 QBASIC 程序语句。
难点:
①、正确理解程序语言 QABSIC 的常量、变量与函数的定义与作用;
②、正确理解程序语言 QBASIC 的变量的数据类型;
③、如何编写 QBASIC 的循环语句。
三、教学方法
教师讲解、演示、启发;学生上机实践体验;教师个别辅导。
四、教学过程
第一板块 计算机程序与计算机语言介绍。
1、计算机程序
在上节课“教机器人走正方形”的任务中,我们知道,让机器人执行程
序后就能完成“前进——转弯”的动作。如果让计算机执行图 5-1 所示的程序 2,
它就能沿着正方形轨迹运动。
电脑每做的一次动作,一个步骤,都是按照以经用计算机语言编好的程
序来执行的,程序是计算机要执行的指令的集合,而程序全部都是用我们所掌握
的语言来编写的。所以人们要控制计算机一定要通过计算机语言向计算机发出命
令。把解决问题的方法、步骤,用计算机能听懂的语言,编成一条条指挥计算机
动作的指令集,就叫做计算机程序,简称程序。如果由机器人的“大脑”执行一
段程序,它就能完成相应的任务。
2、计算机语言
--
---
计算机语言通常是一个能完整、准确和规则地表达人们的意图,并用以指
挥或控制计算机工作的“符号系统”。
①、机器语言 机器语言是用二进制代码表示的计算机能直接识别和执行
的一种机器指令的集合。它是计算机的设计者通过计算机的硬件结构赋予计算机
的操作功能。机器语言具有灵活、直接执行和速度快等特点。
机器语言编出的程序全是些 0 和 1 的指令代码,直观性差,还容易出错。现在,
除了计算机生产厂家的专业人员外,绝大多数程序员已经不再去学习机器语言
了。
②、汇编语言 为了克服机器语言难读、难编、难记和易出错的缺点,
人们就用与代码指令实际含义相近的英文缩写词、字母和数字等符号来取代指令
代码(如用 ADD 表示运算符号“+”的机器代码),于是就产生了汇编语言。所以
说,汇编语言是一种用助记符表示的仍然面向机器的计算机语言。汇编语言亦称
符号语言。汇编语言由
③、高级语言
不论是机器语言还是汇编语言都是面向硬件的具体操作的,语言对机器的过分
依赖,要求使用者必须对硬件结构及其工作原理都十分熟悉,这对非计算机专业
人员是难以做到的,对于计算机的推广应用是不利的。计算机事业的发展,促使人
们去寻求一些与人类自然语言相接近且能为计算机所接受的语意确定、规则明
确、自然直观和通用易学的计算机语言。这种与自然语言相近并为计算机所接受
和执行的计算机语言称高级语言。高级语言是面向用户的语言。无论何种机型的
计算机,只要配备上相应的高级语言的编译或解释程序,则用该高级语言编写的
程序就可以通用。
随着计算机硬件的发展,近年来又出现了图形化编程语言,它具有直观
易学的特点。如 ROBOLAB 语言就是一种图形化编程语言。
我们必须清楚,计算机本身是不能直接识别高级语言的,必须将高级语
言的程序翻译成计算机能识别的机器指令,计算机才能执行。这个翻译的工作是
由“编译系统”软件来完成的。不同类型的计算机上使用的翻译软件也不尽相
同。
3、程序结构
程序结构
顺序程序结构 循环程序结构 分支程序结构等。
执行程序 1,机器人先前进 2 秒,然后再左转 0.6 秒,最后停止。机器
人从程序开始依次执行命令,直到程序结束,这样的程序结构叫顺序程序结构;
而程序 2,我们用了 for i=1 to 4 step 1……next I 语句,使机器人执行了四
次“前进、左转”命令,这样的程序结构叫循环程序结构,以后我们还会学到条
件循环和无条件循环程序结构以及分支程序结构等。
--
---
第二板块 QBASIC 语言简介。
所有计算机语言中,高级程序语言是适合人们学习的编程工具,高级语
言有:C 语言、BIASC 语言、FOXBASE、JAVA 等,在众多的高级语言中,QBASIC
语言是比较适用青少年学生学习和使用的高级语言,它具有简单、适用、易学的
优点。是比尔•盖茨发明的。
1、QBASIC 程序的组成
①、一个 QBASIC 程序由若干行组成,程序按照语句排列顺序执行。每一
行称为一个语句行,一行中可以包含一个语句,也可以包含多个语句,若一行中
包含多个语句,语句间应用“:” 分开。注意由于纳英特机器人的微电脑比我
们使用的普通电脑处理能力差,在它的 QBASIC 子系统中规定,一行中只能有一
个语句。
②、每个语句都以一个语句定义符开始,如程序中的 stop、dim for 等
都是语句定义符。语句定义符用来标识语句的性质,告诉 QBASIC 执行什么样的
功能,语句定义符后面一般还跟有语句体,表示语句执行的对象。如 dim i as int
说明变量 i 是一个整数型变量
③、一个 QBASIC 程序一般以“END”语句结束。程序执行到“END”语句
时即停止执行。一个程序中可以有多个“END”语句,在程序执行时遇到任何第
一个“END”语句都会停止执行。如果程序中只有一个“END”,“END”语句应
放在整个程序的最后。但在纳英特机器人 QBASIC 子系统中,没有 END 命令,我
们用 STOP 来停止机器人动作。
„一个程序可以只包括主程序,也可以包括一个主程序及若干个子程序或
函数。
2、 QBASIC 常量、变量、函数介绍
板书:
整数:-32767 到 32767 之间的整数;单精度浮点数:可以精确到小数点
后 7 位;双精度浮点数:可以精确掉小数点后 15 位;字符串:是一个不超过 32767
--
---
个字符的序列。
函数相当于数理化中的计算公式。在 QBASIC 中,开发人员把一些常用的
算法编成一个个标准程序放在解释程序中,称为标准函数。我们编写程序时,只
要按约定写出函数名及它的自变量就可以随时调用了。如图 5-1 程序中的 motor,
sleep 就是函数名,而其后的数字则是自变量的值。如
motor 0,50 表示 0 号马达以 50 转速前进;
motor 0,-50 表示 0 号马达以 50 转速反转;
sleep 2.0 表示延时 2 秒。
本节注意点:
①、 字符串需要用引号引起来
②、 变量的数据类型必须在使用前定义
3、QBASIC 语言的语句格式
QBASIC 的基本语句一般格式为: 语句定义符 语句体
①、变量说明语句
格式:dim 变量名 as 变量类型
举例:dim i as int
解释:定义变量 i 为一个整数型数字变量。
②、循环语句
格式:
FOR 循环变量=初始值 TO 终止值 [STEP 步长]
命令串
NEXT 循环变量
举例:
for i=1 to 4 step 1
motor 0,50
motor 1,50
sleep 2.0
motor 0,-50
motor 1,50
sleep 0.6
next i
解释:第一行程序表示给循环变量 i 赋初始值 1,终止值是 4,步长是 1,
这是循环的开头。第六行是循环体,指挥机器人前进 2 秒,左转 0.6 秒。
③、结束语句
格式:stop
功能:终止程序执行
五、探索活动
请编依照本课实例,试着编写一段程序,让机器人实现走“8”字。
六、教学反思
(参考教案)第六课程序设计流程图
[教材分析]:
1.教材概况
本节课是人如何控制机器人进行工作、交流的一节基础课程;学习后便
于学生理清思路、严密思考、分析问题,并以相应的框图来形象、直观的表示问
--
---
题,从而找到解决问题的算法,为程序设计做好关键的一步。
[教学目标]
知识与技能: 学会用流程图来分析问题。
过程与方法:通过分析、举例画出流程图。
通过动手练习,发现这样做会让问题更简单,思路更清晰,思考问题
更严密。
情感态度与价值观:通过本节学习让学生体会到这样做会把复杂问题简
单化,学好、会用、爱用流程图来分析问题并解决问题;成功调试一个程序,从
而树立他们学习的信心,找到成功感。
2. 教学重难点
重点: 了解程序设计的一般步骤及流程图,学会用流程图来表示问题,
为其编好程式打下基础。
难点: 分析问题,正确的画出流程图写出程序并调试。
3.[学生分析]:
通过上几节的学习,学生巳经掌握和了解了机器人的相关知识,并对
之产生浓厚的兴趣;学习本节后学生能更好的与 ROBOT 交流,控制它来完成一定
任务。
4.[教法与学法]:
1. 教法:例证分析 任务驱动 主题研究
2. 学法:观察,分析,模仿,任务驱动,评价
5.[课 时]:1 节
[教学过程]:
一、引入课题(3 分钟)
前面的课程中我们学习了如何搭建一个机器人,并有目的搭建了走正方
形和送餐机器人,并了解和使用了用 BASIC 语言来编程控制我们的机器人,但我
们都是直接拿来用的,今天我们就与同学们一起学习、分析如何进行程序设计,
要经过哪些步骤、了解什么是算法?算法与流程图有什么关系?它的作用是什
么?如何画流程图,并根据流程图来进行程序设计。
二、程序设计的一般步骤(15 分钟)
要为机器人设计一个好的程序,一般需要以下几个步骤:分析问题->设
计算法->画出框图->编写程序->调试程序,共 5 个步骤。
1.分析问题
首先明确机器人要干什么,有些什么已知条件,未知条件,最终要达到
什么目标,要完成这些还需要哪些条件。
2.设计算法
从已知的条件出发,到达目标需要经过一系列的处理过程,通常把这种
解决问题的方法步骤称为“算法”。
注,它不是数学中“计算方法”,而是解决问题的方法步骤。
如,前边我们讲到的让机器人走正方形的算法见书 P32 页倒数第四行开
始。
3.画出流程图
前边我们进行了算法设计,对于机器人走正方形的算法是相对来说很简
单的,但一般情况我们面对的问题都是比较复杂的,故人们喜欢用一种框图来描
述算法,这样让我们把解决问题的思路更加清晰、形象、直观地表现出来,为下
--
---
一步的程序编制打下基础。
现在我们就以机器人走正方形的算法来画出流程图:
师:
与学生一起分析机器人走正方形的算法,画一个正方形推导机器人运动
过程,找出共同点,如前进->转弯要做同样的事 4 次才能形成一个正方形,分析
时看到书上的流程图 6-1 所示。
流程图中各框图的意思见书上图 6-2
4. 编写程序
根据流程图我们可以用相应的指令、命令语句来编制出程序了。如前面
的走正形的程序为:
FOR I=1 TO 4 STEP 1
MOTOR 0,50
MOTOR 1,50
SLEEP 2.0
MOTOR 0,-50
MOTOR 1,50
SLEEP 0.6
NEXT I
STOP
任务 1:现在分析并画出一个机器人原地转 4 个圆圈的流程图,并写出
程序。(仿照图 6-1)[时间 5 分钟]
[小帖示:]此题在于只要任何一个轮子不动,另一个以一定的速度转动,
这样就形成了一个同心圆。
5.调试程序
前面我画好了流程图,编好了程序,是不是就大工告成了呢?不是这样
的,还要将编制好程序下载到我们的机器人中去执行,对比与我们的目标是否一
至,不对的就去修改程序,再下载,再调试了,可能个需要多次才能成功哦,大
家快去调试吧,享受其中的快乐吧。
三、应用举例:前方有障碍,STOP!!(20 分钟)
完成此任务的步骤:
1.任务描述
机器人在前进的过程中,遇到障碍物,即停止,否则继续前进。
2.分析任务
机器人运动中最重要的是检测有无障碍物,无继续前进,这样一直下去直
到检测到障碍物机器人停止。
流程图(见 P35 图 6-5)
要完成这个任务必需要一个检测设备,它就是红外线传感器。
3.红外线传感器
检测障碍物的纳英特的红外线传感器见书图 6-3(实物出示),它检测
到障碍物灯亮,否则灯为不亮。
调节设置方法为:前边有一障碍物,若指示灯亮,则逆时针旋转直到不
亮;相反,则顺时针调节传感器的调节钮,直到调亮;这样的距离为为其检测范
围。
(演示示例)如,10CM 距离有手前后移动时,指示灯会在移近时产生一
--
---
个高电平灯亮,移开时会是低电平灯处于灭的状态。
[学生动手自己测一下]
4.[生]搭建一个两轮的机器人,用上红外线传感器,如书上图所示将传
感器连在第 10 输入端口上。
5.编程
因为要一直检测下去,只当传感器检测到障碍物下停下,所以要使用条
件循环,在 BASIC 中其语句和语法格式为:
WHILE 条件为真
语句组
WEND
所以,上面的任务的程序应如下:
WHILE DIGITAL(10)=0
MOTOR 0,50
MOTOR 1,50
WEND
STOP
表示 10 号端口的传感器没检测到障碍物时状态为 0,反之为 1;若一直
为 0 就一直前进,反之就停止。
6.调试
注意其值和传感器可检测范围的调整。
四、学生作品展示、评价(5 分钟)
从活动组中抽取几个组的作品来展示,有成功的,有还存在问题的,引
导学生从下表内来点评,老师总结。
评 价 表
作品完成任务
情 况
很好 好 一般
创造、创新情况
活动过程中的交流
情 况
一 般 较 多
总结,第一本活动课重在前边的用流程图分析,并写出程序调试,要完
成任务必需会用,用好红外线传感器;第二对于传感器的使用关键在于障碍物可
视范围参数设置;第三本活动重在动手实践,从问题分析->搭建->编程->调试的
动手做、做中学的思想中感受成功。
五、各组归纳整理设备(2 分钟)
各组按分类盒的要求归纳整理好自己使用的设备,检查后离开。
[目标]行为习惯的养成,做事有条不紊,爱护设备。
六,教学反思
教学流程畅通吗?
学生参予度?
绘流程图的情况,编写程序,进行调试情况?
从学生作品评价后发现了些什么问题?
--
---
作者单位:
(参考教案)第七课机器人的“感觉器官”
[教材分析]:
1.教材概况
本节课主要介绍机器人的各种传感器,如,声音,红外,灰度,烟雾,
触动,温度等等;它如同我们的感觉器官,要会灵活的使用它们,从而控制机器
人工作。
[教学目标]
知识与技能:了解各种常用的传感器,并能够熟练使用红外、声音、灰
度传感器,利用他们来检测声音的强弱,光值的变化,有无障碍物等。
过程与方法:实验例证,观察分析;
主学习、研究;
多实践,多动手,多总结。
情感态度与价值观:培养吃苦耐劳的钻研精神,动手通过实验得到
第一手资料是很宝贵的。
应用所学知识来解决现实生活中的实际问题,培养信息素养。
2.教学重难点
重点: 声音传感器、灰度传感器等传感器的使用。
难点: 如何使用各种传感器,调试、并获取相关的参考值;
实现:机器人+传感器+程序=任务的完成。
[学生分析]:
学生巳对机器人有所了解,能分析问题,画出流程图,编出简单任务
的程序。
[教法与学法]:
1.教法:实验举例 任务驱动
2.学法:观察,分析,取证,自主学习
[课时]:2 课时
[教学设施]:机器人活动室,多媒体投影仪,乐高套件,纳英特套件及
各种传感器
[教学过程]:
一 、播放影片剪辑片段,引入课题(5 分钟)
播放影片剪辑片段《终结者 2》及机器人视频《迎宾机器人》、《快
乐接线员》,通过影片和视频片段,我们看到机器人具有我们人脑的一部分功能。
机器人的核心是其电脑核心,光有电脑发号施令还不行,要让机器人处理相视频
中的各种复杂的事务,对周围的环境能够很快做出反应,能够完成“至欢迎词”,
“能过简单接听电话”等功能,是靠各种传感器来实现的,他们好像有我们人类
的眼、耳、口、鼻、舌。
什么是传感器?
传感器是机器人的“感觉器官”,是一种电子元件或装置,能响应或感
知被测量的物理量或化学量,并按一定规律转换成电信号,以供机器人核心识别。
它就像人的眼睛、耳朵、鼻子一样,能够感应到周围环境的信息,并把这些信息
传递给机器人的“大脑”。有了传感器,机器人就变得更加聪明了。
下图展示的是各种类型的传感器。
--
---
二、机器人的“嘴巴”和“耳朵”
1、机器人的“嘴巴”:它是一个峰鸣器,也叫扬声器,可以通过它发出
声音,如音符、音乐等。
2、机器人的“耳朵”:它只能分辩声音的强、弱度,返回一个电信号,
用相应的数值来表示,而现在此类传感器不能分辨具体的声音,也就是没办法进
行高难度、复杂的语言智能识别。
声音传感器的原理:将其连接在机器人的模拟端口上,用它感觉外界声
音的强度与给定的强度比较,超过时向主机发送“有声音”,反之“无声音”。
如图所示(纳英特声控传感器):
技术指标:
外形尺寸:30.5×15.0×14.5mm(长×宽×高) 重量:20g
额定电压:直流电源 5.0V 线长:17.2cm±0.2cm
调节方式:多圈电阻式调节,顺时针方向旋转功率调强,逆时针方向旋
转功率调弱
连接方式:单条 3 芯排线,2510 型 3 脚插头 安装方式:单颗Ø3 螺丝安
装
返回值:有声音返回 1,无声音返回 0(相对) 指示方式:白灯发出绿
光指示
使用方法:
使用单颗Ø3 螺丝将声控传感器安装于要检测的环境之内,将其连接线接
入任何空闭的数字传感器接口中。
声控传感器上配有信号指示灯,当有声音时指示灯会亮,还配有检测强
度调节器。欲使声控传感器在给定的环境中有无声音时,可以使其先处于相对无
声音的情况中,利用距离调节器可调出给定的初始声音强度。方法如下:
a)如果指示灯不亮,将调节器顺时针方向旋转,旋转至指示灯刚刚不亮
--
---
为止;
b)如果灯不亮,将调节器逆时针方向旋转,旋转至指示灯刚刚亮起为止;
此时,声控传感器的检测强度即为给定的强度。
实验一:测定声强相对值
(将学生按 4 个人一小组进行分组来完成本实验任务。)
运行下面的程序:(见书 P38)
注意:WHILE 1 。。。 WEND 是一个无条件循环,始终为真,也称为
死循环。
在 LCD 上会显示当前的声强值,如:ANALOG(4)= 100
其中返回值的范围为[0,255],声音越大,值越大,反之越小。
[师]:巡视,帮助学生测出相应声强的值;
注意事项:
1、环境内的声音值是个变量,要取得比较精确的环境声音值,可以在一
段时间内连续取几次值,再求它们的平均数。这种办法适用于所有的模拟传感器。
2、检测指定环境声音时,注意不要受其它声源干扰。
三、机器人的“眼睛”
眼睛是人们心灵的窗户,人们 80%的信息都是通过视觉获取的,所以是
非常重要的器官。机器人的视觉传感器也一样非常重要,它主要通过红外传感器
或光电传感器两种传感器来“看”东西,“辨别”颜色。
现目前主要的红外传感器、灰度传感器和光电传感器:
纳英特红外
传感器
--
---
原理和功能:
红外传感器(以下简称红外)。红外具有一对红外信号发射与接收二极
管,发射管发射一定频率的红外信号,接收管接收这种频率的红外信号,当红外
的检测方向遇到障碍物(反射面)时,红外信号反射回来被接收管接收,经过处
理之后,通过数字传感器接口返回到机器人主机,机器人即可利用红外波的返回
信号来识别周围环境的变化。
灰度传感器是模拟传感器,有一只发光二极管和一只光敏电阻,安装在
同一面上。灰度传感器利用不同颜色的检测面对光的反射程度不同,光敏电阻对
不同检测面返回的光其阻值也不同的原理进行颜色深浅检测。在有效的检测距离
内,发光二极管发出白光,照射在检测面上,检测面反射部分光线,光敏电阻检
测此光线的强度并将其转换为机器人可以识别的信号。
用途范围:
-通过检测光强变化计数人数
-通过测试反向光强来辨别颜色
-测量一个光源的光强
类型和供电要求:有源模拟传感器
典型应用和说明:
实例 1:沿黑线机器人。
实例 2:在交通模型中,控制路灯在晚上自动打开。
实例 3:自动门。
实验二:
分别用不同的传感器来检测迷宫场地地面(黑色)和白线的灰度值。
方法一:将书上 P40 的图 7-5 程序编写好并下载到纳英特机器人内存中,
检测其灰度值。
实验结论填写在书上。
方法二:不用编程将乐高光电直接在其输入端口 1 上面,打开电源按一
下 RCX 上 VIEW,将光电分别对白色物体和黑色物体上,观察其 LCD 上显示的数
值。
--
---
乐高光电读取值的范围为(0~100)
实验结论(白色物体的读取到的灰度值应大于 50,黑色物体的灰度值应
小于 50)。
注意:各品牌的传感器只能用于本品牌的电脑核心上,不能相互混用。
四、机器人的“鼻子”
人们用鼻子来分辨气味,机器人的“鼻子”是用气体分析仪做成的,当
遇到某类气体其电阻会发生变化,这样电路上反应出来,机器人接受到后,从而
实现如报警等处理方式。现在我们就来了解一下机器人的“鼻子”吧。
原理和功能:
检测环境是否有烟雾和烟雾的浓度,例如检测起火时的浓烟。烟雾探
头碰到烟雾或某些特定的气体,烟雾探头内部阻值发生变化,产生一个模拟值,
从而对其进行控制。烟雾传感器利用烟雾敏感电阻受烟雾(主要是可燃颗粒)浓
度影响阻值变化的原理向机器人主机发送烟雾浓度相应的模拟信号。
纳英特的烟雾传感器
烟雾传感器是模拟传感器,接在主板(A2-A6)模拟口跟扩展板的
(A16-A31)模拟口。使用前先预热 1—5 分钟(开机 1-5 分钟后使用)。在无烟
的房间内,烟雾传感器测试的返回值大概在 75 左右。例如:你可以点支香烟,
距离烟雾 50 公分左右时,烟雾传感器测试的返回值在 110 左右,浓烟时,烟雾
传感器测试的返回值在 180 左右。
编程应用示例:
While 1
Print “Bottom=%d”,analog(4) //烟
雾传感器接在模拟口 4
上
Sleep 0.5
WEND
运行程序,观察液晶屏显示可知:烟雾浓度越高,返回值越大;烟
雾浓度越低,返回值越小。
注意事项:
1、环境内的烟雾浓度值是个变量,要取得比较精确的环境烟雾值,可以
在一段时间内连续取几次值,再求它们的平均数。这种办法适用于所有的模拟传
感器。
2、检测指定环境烟雾时,注意不要受其他烟雾源的干扰。
3、烟雾探头上装有滤烟网,注意在使用时不要堵塞滤烟网,否则会影响
检测效果。
--
---
4、可以点支香烟,测试烟雾传感器的效果。
[实验]:本实验由老师完成,学生只观看其结果,实验中注意防火。
五、机器人的“触觉”
人们用通过身体部分的触觉器官如触碰、温度、温度来感知外界,作出
反应。而机器人的触觉传感器仍然是都过相应的触敏元件来反馈接触信号,从而
主机处理接受到信号。
使用方法与技巧见网上资源:
http://www.semia.com/new/robot/RCX/99xx.asp
RCX 传感器介绍篇。
使用方法与技巧见网上资源:
http://www.robotedu.com/Html/kzhfj/133452626.html
http://www.robotedu.com/Html/kzhfj/160551151.html
实验三:用乐高机器人做一个碰墙返回的机器人。
步骤 1,用乐高设备搭一个机器人,最前面安一个触碰传感器。
2,在 ROBLAB 中编写如下的程序,并下载到乐高 RCX 的中。
程序表示:A、B 马达一直前进,当 1 号端口的触动传感器碰到墙后马上
--
---
退回来。
自主学习、探究:自主探究其余的几个传感器。
六、机器人的电源
机器人的电源是其动力的核心,没有一个稳定的供电系统,你的机器人
就无法很好运转,它是一切的有本之源。
现目前的所有教育机器人一般都使用直流的 9V~12V 供电,可采用锂电
池、碱性电池、可充电的镍氢电池和相应的交流变压器。
建议大家平时训练和实验时都使用可充电电池,这样一次性投入可以得
到一个经济实惠、稳定的电源。
七、练 习:
1.将已经认识的几种传感器,填写在下表中。
传感器名称 作 用 外形描述
2.探索活动
设计一个声控机器人,无声音时原地不动,“听”到声音时立即向前运
动。
八、后记
作者单位:
(参考教案)第八课机器人走迷宫
[教材分析]:
1.教材概况
机器人走迷宫是本节课在经过几节实验课后,在掌握了相关知识后的一
项大的、传统的,并具有一定任务难度的活动课;它要求我们的同学能够综合前
面的所学,加上自己的创造、创新,去分析、解释任务;搭建机器人;写出详细
的流程图,并选择一种编程语言如 BASIC 来描述我们的算法,并通过机器人来检
验其正确性,通过反复调试最终完成项目任务。
[教学目标]
知识与技能:学会任务分析,找出其特点;
综合运用红外传感器和相关机器人的知识来完成任
务;
用 BASIC 语言来编制程序,完成任务。
情感态度与价值观: 培养团队、合作、交流精神;形成脑力、智力资源
共享;不经历风雨,怎么会见彩虹。
2.教学重难点
重点: 任务分析找准走迷宫的左手法则、或右手法则;搭建机器人;画
流程图;编程;调试。
难点:迷宫定则的找出,画流程图,编程、下载、调试。
[学生分析]:
学生有一定的相关知识,但本节难度比较大,要多引导,多鼓励。
[教法与学法]:
问题分解模块化,组内合作、交流、分工;
--
---
[教学过程]:
走迷宫是一项比较有趣的活动,是国际上最流行的赛事之一,可以考验
每个人的记忆力、判断力、分析问题等方面的能力。如图 8-1 所示是一个迷宫场
地,要求机器人从起如区出发,寻找一个最佳路径,走完 1,2,3,4 号房间后
回到起始区。具体参数如书 P44 页所述。
一、任务分析及算法: 让机器人沿迷宫的墙壁的某一侧行走可以使机器
人走遍迷宫几个房间,这是走迷宫的一般方法,我们称沿左侧行走的方法为左手
法则,称沿右侧行走的方法为右手法则。 假设按左手法则行走,机器人可以在
左边安一个红外传感器来检测左边的墙壁,以确定前进的方向,一只红外传感器
伸向前方,避免在前进的过程中撞到前方拐弯处的墙上。根据两只传感器获得的
光电信息可以做出以下四种判断:
1.当左边检测到墙壁障碍物时,向前方走,如图 1 所示。
2.当左边和伸向前方的传感器都探测到墙壁障碍物时右转 90 度,如图
2。
3.当左边探测不到墙壁时,左转 90 度,如图 3。
二、搭建机器人 根据分析搭建一个机器人,因实践发现,由于前方的传
感器视觉太小,机器人容易卡死,为了增加机器人视角,在其左前角 45 度处再
安装一个红红传感器,配合正前方传感器的工作,这样卡死现象有所改善。 搭
建如图所示的机器人:(要求机器人要装饰,并给它取名) 教师指导其搭建
三、画流程图
利用左手法则让机器人走迷宫,流程图可参考图 8-4。
教师一步的分析。
四、BASIC 的两个语句
1,WHILE 条件循环语句
格式:WHILE 条件表达式
WEND
--
---
功能:当条件满足时,即为真时,执行循环体中语句组。条件表达式得
到的是一个布尔值,当返回值为真时,其值在 QB 中可为“-1”或“1”,为假时
为“0”。
例,WHILE DIGITAL(2)>50
MOTOR( 0,50)
MOTOR (1,50)
WEND
表示 2 号红外传感器的值当大于 50 时,马达 0,1 按 50 的速度前进,直
到 2 号传感器的值小于 50。
2,IF 条件语句
格式: IF 条件表达式 THEN
语句组
1
THEN
语句组
2
ENDIF
功能:如果条件表达式成立为真时,则执行语句组 1 后执行 ENDIF 后面
的语句;反之,执行语句组 2 后执 ENDIF 后的语句。
例如, IF DIGITAL(2)红
色容器值?
循环结束
3 号光电>红
色容器值? A 前进,C 停
3 号光电>红
色容器值?
A 停,C 前进 A,C 前进
--
---
2,编程。程序如图 10-13 所示:
3,下载调试程序。
4,比一比,看谁的机器人又快又好。
快 稳定 创造、创新
1. 五、探索活动 扩展用 3 光感走黑线
总结双光感仍然存在稳定性问题,没办法走太多方格格子的场地
(参考教案)第 11 课 可监控事件的机器人
龙泉中学 张应国
一、 教学目标
1、知识目标:
①、了解事件监控的意义。
②、知道 RCX 对事件的监控原理。
③、掌握制作三光感事件监控的轨迹机器人的方法。
2、能力目标:
①、机器人直线前进、左右转向等动作的策略分析。
②、学会编写三光感轨迹机器人程序流程图。
③、用事件控制算法为机器人编写程序。
3、情感目标:
①、培养学生的观察能力、动手能力、创造能力,养成良好的思维习惯。
②、培养学生对待知识的科学态度和辩证唯物主义观点。
③、培养学生探索机器人的兴趣和科学精神。
二、教学重点、难点
重点:三光感走轨迹策略分析。
难点:
①、编写三光感轨迹机器人程序流程图;
②、通过流程图用事件控制算法为机器人编写程序;
③、下载程序到你的机器人内存中,进行实际轨迹场地调试。
三、教学方法
N
Y Y NN
Y
组别
情况
--
---
以学生直接实践体验为主,辅以教师演示、启发、引导。
四、教学准备
乐高机器人套装、电脑、网络教室,机器人调试场地或模拟平台环境。
五、教学过程
1、引入:通过上一节课的学习,我们知道机器人走轨迹的算法是条件判断。采用
这种算法,机器人走轨迹的任务中无法克服“过冲”,除非牺牲速度。通过实践我
们发现,用事件控制可以有效地减少“过冲”现象。
2、新课:这节课我们就来学习用事件控制算法为机器人编写程序。
步骤一 知道什么是事件控制
电脑(机器人的大脑)与人脑一样,每时每刻都能对各种事件进行监控并作出相
应的响应。例如,点击鼠标、敲击键盘、时钟等等,再比如病毒适时防预系统,
Windows 操作系统的责任就是处理各种事件。事件驱动是计算机操作系统实现多
任务的关键。
步骤二: RCX 对事件的监控
RCX 一共可以同时监控 16 个事件。在监控一个事件之前,必须先定义事件。
ROBOLAB 系统为我们提供了一些常见的标准事件。标准事件的基本格式是:
如
图 11-1 标准事件的格式
表示:定义当 1 号端口的光电传感器的值小于等于 48 时触发红色事件。
事件定义完成之后,就可以开始监控指定事件,并设置事件被触发的着陆点以及
是否需要结束监控事件,它们的图标如图 11-2 所示。
开始监控红色事件和蓝色事件 事件着陆点 停止监控所有事件
图 11-2 事件监控事件图标
步骤三:制作三光感事件监控的轨迹机器人
1)、策略分析
机器人的搭建如图 11-3 所示:
图 11-3 三光感轨迹机器人
如图图 11-4 当所示:2 号光感位于黑线上,1 号、3 号光感分居黑线两侧,机器
人直线前进;当 3 号光感检测到黑线,机器人右转,右转角度由 2 号光电控制,
当 2 号光感碰到黑线,即停止转动;当 1 号光感检测到黑线,机器人左转,左转
角度由 2 号光电控制,当 2 号光感碰到黑线,即停止转动;当三个光感同时检测
到黑线,机器人直线前进。
--
---
图 11-4 三光感走轨迹策略分析
2)编写三光感轨迹机器人程序流程图
图 11-5 三光感轨迹机器人程序流程图
3 ) 用 事 件 控 制 算 法 为 机 器 人 编 写 程 序
--
---
图 11-6 三光感轨迹机器人程序
程序的说明:
使用红、蓝、黄三个容器储存 1、2、3 号光电传感器在黑线上的光值,并作为判
断其是否在黑线的依据;
将 1 号光电传感器检测到黑线作为红色事件,3 号光电传感器检测到黑线作为蓝色
事件;
事件定义完成后,RCX 并不监控事件,只有在执行监控事件图标之后,RCX 才对
事件进行监控,一旦事件触发,程序立即跳到事件着陆图标,执行后续图标功能。
在 ROBOLAB 程序中只能有一个事件着陆点,如果在程序中同时监控两个以上的
事件,就得使用事件登记容器,判断是哪个事件被触发;
事件登记容器 在容器功能面板里,其功能是将“事件的值”放在指定容器里。
在程序中我们把“事件的值”放在 3 号通用容器里。在 ROBOLAB 中,事件的值
计算的方法是:从红色事件开始,分别为 20、21、22、……根据事件的值,我们就
可以判断是什么事件发生了,例如:
事件 1 发生(红色事件),事件值等于 1(20);
事件 2 发生(蓝色事件,事件值等于 2(21);
2 事件同时发生,事件值等于 3(20+21);
如果是黄色事件发生,事件值等于 4。想一想,为什么?
在 ROBOLAB 中,允许使用 32 个容器,即 32 个变量,分别用红、蓝、黄三种颜
色区分不同容器,如果要使用四个以上的容器,就需要使用“通用容器”。“通用
容器”不是由颜色区别,而是由编号 3 至 31 来区别。本程序中,我们用了 3 号通
用容器来保存事件登记值。
--
---
程序中机器人无论右转还是左转之后,都有一个向相反方向转动的修正,目的是
减小机器人运动的摆幅。
六、探索思考
请你仿照本课的思路搭建一个机器人,并用事件控制算法为机器人编写程序,程
序完成后,下载到你的机器人内存中,到实际轨迹场地试试看,你的机器人能按
规定的路线行走吗?想一想,机器人走轨迹的程序与路径有关吗?
(参考教案)第 12 课 机器人灭火——寻找火源
龙泉中学 罗秋
一、 教学目标
1、知识目标:
①、了解机器人灭火任务。
②、知道简单 QBASIC 的程序算法。
③、掌握通过机器人识别白线、机器人检测火焰等方法灭火的方法。
2、能力目标:
①、简易灭火机器人的搭建。
②、火焰传感器的使用。
③、教会机器人寻找火源完成简单灭火任务。
3、情感目标:
①、培养学生的观察能力、动手能力、创造能力,养成良好的思维习惯。
②、通过对光学、计算机科学、机械原理以及美学等的综合运用,提高学生的
综合运用。
③、通过竞赛机制,提高学生的竞争和合作意识,锻炼学生比赛时的灵活性。
二、教学重点、难点
重点:灭火机器人的搭建。
难点:
①、火焰传感器的使用;
②、通过 QBASIC 的程序算法为机器人编写程序;
③、下载程序到你的机器人内存中,进行实际轨迹场地调试。
三、教学方法
以学生直接实践体验为主,辅以教师演示、启发、引导。
四、教学准备
纳英特机器人套装、电脑、网络教室,机器人调试场地或模拟平台环境。
五、教学过程
1、引入:火灾是当今人类社会普遍关注的问题,它不仅威胁着人类的生命和财产
安全,更影响到一个社会的稳定和发展。图 12-1 是我国研制的第一代灭火机器
人。这类消防机器人适用于石油化工、油罐区、大型仓库等高温、强热辐射、
易坍塌的危险场所,可避免人员伤亡。在这几课里,我们将利用教学机器人,
模拟灭火过程。
--
---
图 12-1 我国第一代灭火机器人
2、新课: 灭火实验及场地简介
中小学机器人灭火实验是模拟现实家庭中机器人处理火警的过程,它要求制作一
个由计算机程序控制的机器人,在一间模拟平面结构的房间里运动,找到一根代
表房间里火灾点的正在燃烧的蜡烛并尽快将它扑灭。图 12-2 是机器人模拟灭火场
地示意图 (单位:cm)。
图 12-2 机器人模拟灭火场地示意图
图中红色为火焰,蓝色为家具,黄色为搜救对象所在位置。
3、简易灭火机器人的制作
为使问题简单化,我们假定一个简单任务:
任务 1 机器人从房间门口启动,对准火焰方向,直线前进,进入火焰前的警戒线,
停止前进,扑灭火焰。
这个任务非常简单,对机器人的要求是当“看见”地面白线时,停止运动,开起
--
---
风扇扑灭火焰。
为了让机器人能“看见”火焰前的白色警戒线,我们需要给机器人安装一个地面
灰度传感器。安装方法如图 12-3 所示,先将灰度传感器的调节器固定在主机箱上,
再用一根铜柱将灰度传感器的探头固定在机器人小车的前方,使探头距地面约 1
厘米,以提高检测的准确度。
灰度传感器可以用来检测物体表面的黑白程度,浅色物体灰度小,深色物体灰度
大。对计算机来说灰度从 0 开始到 255,一共为分 256 个等级。机器人把灰度小于
125 的物体认作白色(浅色)物体,灰度大于 125 的物体认作黑色(深色)物体。
图 12-3 地面灰度传感器的安装
运行图 12-4 的程序可以显示被测物体的灰度:
图 12-4 测物体的灰度
程序说明:程序中使用了赋值语句 i=analog(2),功能将 2 号模拟传感器的返回值,
赋给变量 i;print 是显示语句,显示语句可以显示字符串和变量的值,如 print
"analog(2)="显示字符串 analog(2)=,而 print I 则是显示变量 I 的值。注意要显示的
字符串必须用引号引起来。
请将图 12-4 所示的程序下载到机器人内存中,检测实际场地黑色区域和白线的灰
度,并记录下来。
在模拟机器人灭火任务中,最安全、方便的灭火方式是给机器人安装一个电风扇,
虽然在实际消防灭火中,这种方式不可取。如图 12-5 所示,我们把带动风扇转动
--
---
的马达接在马达端口 2 上,一台简易的灭火机器人就安装安成了。
图 12-5 简易灭火机器人
根据任务分析和机器人的搭建编写程序如下:
图 12-6 简易机器人灭火程序
这里需注意的是程序中马达和灰度传感器的端口必须与机器人搭建一致。也就是
说,假定你的灰度传感器安装在模拟端口 2 的,程序中的函数 analog(2)的端口号
也必须是 2。这里的程序中假定警戒线(白钱)的灰度小于 125,在你的程序中,
应以实际检测为准。
事实上程序 12-6 永远没有结束,只是因为灰度传感器检测到白线后,关闭了所有
马达,所以机器人停下来了。这样的程序结构叫“死循环”,一般在编写程序时应
尽量避免“死循环”,之所以这样编写是因为在纳英特机器人操作系统的 QBASIC
子系统中,没有程序结束语句。
你能根据图 12-6 的程序画出机器人灭火的程序流程图吗?
将图 12-6 所示的程序下载到你的机器人内存中,到实际场地试运行,观察机器人
能否扑灭火焰。
4、使用火焰传感器寻找火源灭火
程序 12-6 是机器人判断是否到达火源警戒线,从而决策是否停止并开启风扇灭火。
这样的算法有一个明显的问题就是如果机器人经过门口的白线,也会停下来,并
打开风扇。
事实上,燃烧的物体会产生较强的红外线,根据这一点,科学家用红外敏感型元
件,做成了专门检测红外信号强度的传感器,这种传感器对火焰产生的红外线特
别敏感,所以把它叫做火焰传感器。火焰传感器与灰度传感器一样也是模拟传感
--
---
器,我们可以用函数 analog(端口号)来读取火焰传感器的检测值。
能寻找火源的机器人的搭建
按照如图 12-7 所示的方法,把火焰传感器的探头安装在机器人的头顶,并将连接
线接在机器人主机的模拟端口 3,它就变成了一个能寻找火源的机器人了。
图 12-7 能寻找火源的机器人
教会机器人寻找火源
有了火焰传感器的机器人,自己并不会识别火源。换句话说,置身烈火的机器人
并不知道危险就要来临。
让我们来告诉机器人火源在哪里吧。
实验:
下面的程序能显示火焰值(假定火焰传感器安装在模拟端口 3),请你把它输入并
下载到机器人内存中;
图 12-8 显示火焰值
测试机器人离火焰的距离与火焰值的关系:
机器人离火焰的距离(单位:厘米) 火焰值
10 3
20 4
30 6
40 6
50 7
80 9
100 22
2.
--
---
结论: 。
测试火焰传感器探头方向与火焰值的关系:
火焰传感器探头方向 火焰值
探头正对火焰(夹角为 00)
偏左 150
偏右 150
偏左 300
偏右 300
偏左 450
偏右 450
偏左 600
偏右 600
偏左 900
偏右 900
探头背离火焰(夹角为 1800)
结论: 。
你认为当火焰值小于 时,必须灭火。
实验可见:正对火焰,距离火焰越近,火焰值越小;反之,背离火焰,距离火焰越远,火焰
值越大。我们可以形象地理解为,火焰值表示了火焰传感器探头距火焰的距离。
对计算机来说火焰值从 0 开始到 255,一共为分 256 个等级,当距离火焰无穷远(无火焰)
时,火焰值为 255;有火焰时火焰值在 200-230 之间,如果火焰值小于 6,则表明火焰非常
强了。
寻找火源灭火的两个任务
任务 2 机器人从房间门口启动,对准火焰方向,直线前进,看到火焰,停止前进,扑灭火
焰。
任务分析:本任务与任务 1 算法一样,只是开起灭火风扇的条件不同,任务一是机器人通过
灰度传感器“看到”白色警戒线;而这个任务是机器人通过火焰传感器“看到”火焰。
程序:
图 12-9 火焰传感器“看到”火焰灭火程序
本程序中,看到火焰的条件是“analog(3)
查看更多