将Scratch应用于机器人编程教学的分析与实践
2023-09-21王丽
王丽
摘要: 随着新课标的推进和实施,如何在小学中高年级培养学生的计算思维,培育核心素养,成为一个重要命题。本文对小学Scratch和机器人教学的现状进行了分析,通过六年级信息技术课本中“我控制的机器人”这一实际教学案例的研究,对原有教材内容进行了丰富、细化和升华,总结了利用Scratch语言进行小学信息技术机器人编程教学的方法和心得。
关键词: 小学信息技术 机器人 Scratch 编程 融合教学
引言
以Scratch为代表的图形化编程语言,界面形象生动,使用积木来编写程序,没有英文指令的理解障碍,让学生在创作的过程中直观、形象地学习编程、实现算法、表达思想。在六年级信息技术课本“我控制的机器人”中引入Scratch语言,让学生对机器人进行编程,设计和实现算法,能够让学生经历抽象、分解、建模的过程,在想象构思、动手搭建、编程设计、修改调试的步骤中培养计算思维,在综合运用、动手动脑中提高学生的核心素养。
一、现状分析
(一)学校机器人教学现状
1.软件难
现行中小学信息技术教材第八册第12课中提到不同品牌的机器人配有不同的编程软件。书中案例示范的是如图1所示的一款软件。学校用于比赛购买的机器人也是专业的配套编程工具,现在比较流行的机器人编程软件还有Aduino,而这几款编程工具对于六年级的学生来说比较陌生,在短短的一节课或者两节课中,需要认识学习新的软件,再利用工具进行编程,时间比较紧迫,难度也较大。目前的信息技术课绝大部分内容是软件教学,软件知识和硬件知识被分离开来,学生无法对信息技术学科有一个全面的认识。让学生在信息技术课上既动脑又动手,用实验去验证,用创造去学习,成了难以实现的目标。
2.硬件少
为了在机器人大赛中获奖,大部分学校每年要花费重金聘请校外专业的机器人社团对本校的优秀学生进行辅导。这些学校的机器人硬件由校外社团提供,比较先进,但是只有一小部分学生能够接触到,接触面非常窄,以笔者所带的六年级学生为例,仅有三名学生参加社团。还有一部分学校采购了数套机器人,也建立了机器人创客实验室,但是面对整个学校上千的学生,仍然是杯水车薪。
(二)Scratch编程的教学现状
Scratch程序设计从2017年1月起被安排进安徽省小学信息技术教材第4册第三单元。在此之前,小学阶段学习的唯一编程工具是PCLogo。Scratch趣味编程开始出现在小学信息技术四年级下册教材中,对于四年级的学生来说,Scratch结构化、搭积木式的编程方式,让几乎所有的学生都会一眼喜欢上这个软件。遗憾的是,信息技术教材只安排了6课时内容,学生们在课堂上几乎没有深入学习Scratch编程的机会。所以,将Scratch应用于机器人编程教学中也是对四年级学习内容的 延续。
三、将Scratch软件用于小学机器人编程教学的意义
(一)增强学习趣味,降低学习难度
将Scratch应用到机器人编程教学中,学生不单要动脑编程,还要动手搭建机器人。学生的编程作品不再是摸不着、看不见的软件,而是以可以触摸、观察的硬件方式呈现出来。这使得编程的过程变得更有趣、结果更加直观生动,也使得编程的结果更容易观察,有利于学生理解、调试、修改程序。
(二)培养学生想象力、创造力
想象来自现实,来自对现实深入的思考、观察、分析,然后从中发现原型,进行组合、改造、变化。在以往的信息技术课中,培养学生的想象力和创造力是一大难点,往往出现老师怎么做学生就怎么做、老师做啥样学生就做啥样的情况。创新教学方法和软硬件,可以使学生深入理解信息科技的原理,看到事物内在的联系。丰富的软硬件积木为创新提供了土壤,让想象能够开花结果。
(三)培养学生计算思维
计算思维是信息科技的核心素养。思维是内在的、无法直接呈现的。创新软硬件,能够将智能设备的工作过程和原理直观呈现出来。通过创新教学方法,将学生设计的算法通过图形化编程直观地演示出来,学生在不断地观察、思考、假设、修改、获得反馈的过程中理解并养成计算思维。
(四)提供新的教学路径
整合机器人硬件教学与Scratch软件编程,利用信息技术对学生开展创新教育,为学生营造了创新的环境,播下了创新的种子,为小学阶段的机器人教育提供了借鉴。
三、基于Scratch的小学信息技术机器人编程教学的实践
下面以电子工业出版社版小学六年级信息技术课本中“我控制的机器人”一课为例,简要阐述Scratch的小学信息技术机器人编程教学的具体 实践。
(一)发现需求,探究原理
我在教學“我控制的机器人”一课时正值盛夏,师生在教室里挥汗如雨。于是,我引导学生发现大家降温、消暑的迫切需求:“天这么热,怎么才能凉快些呢?”“还要起身开电风扇,真是麻烦,走走路又要出汗了。”“电风扇要是智能、自动的就好了。”从这些感慨、想法出发,学生发现了需求。我再引导他们将需求转变为具体的项目目标:“能不能设计一个智能电风扇,只要人一靠近,就可以自动工作?”
在实际教学中,其实这一步并不容易。因为学生的想法天马行空、五花八门,既要保护学生思考、探索的积极性,又要将教学控制在一定的范围内。需要对学生的问题有一定的预估,既要在学生的想法超越教学软硬件时,帮助他们收拢想法,聚焦项目方向;又要在学生对硬件不熟悉时,利用课前收集的资料,帮助他们了解可编程的机器人和智能硬件,为他们指明方向。
当学生接触到身边的机器人、智能硬件,以及自动化工作的设备后,他们能够想象到自己设计的智能风扇的样子,可是如果这个时候就让他们动手开始软硬件设计、制作,他们就会陷入一片茫然,因为他们缺少相关的知识储备和经验。为此,我抓住时机提问:“你们在生活中见过哪些这样的智能设备?”根据经验,他们可以说出感应门、感应水龙头等智能设备。这个时候追问学生,“它们是如何运行的?由哪些部分组成?”就会难倒很多学生。我借机引导学生回忆、复习本单元前几课的内容,由此学生能够得出结论:这些自动感应的智能设备都是由传感器、控制器、电机和运动部分等组成的。学生在探究身边智能设备的同时,也认识了智能控制的原理。
(二)认识构造,积木搭建
受硬件限制,“机器人”内容在很多学校的教学一线处于实质上的空白状态。面对学生感兴趣的机器人,我们往往只能望书兴叹。目前市面上常见的智能硬件往往价格不菲,动辄就是四位数,例如知名的乐高EV3套装,在网店的售价就高达六千多元。怎样让智能硬件买得起、用得起,一直是困扰一线信息教师的问题。我在遇到这一问题时,在网上平台反复搜索比较,选择了仅数百元的积木式机器人。它有两个特点:第一,便于安装和拆卸;第二,价格非常便宜,一个班级购买十台,也只相当于花一个比赛机器人的价钱,让学校“轻松购”。这学生有机会动手又动脑,让机器人教学“能落地”。
学生在认识了智能设备控制原理后,已经对搭建智能风扇迫不及待了。这时我带着学生认识积木式智能硬件的传感器、控制器和运动部分,为搭建智能风扇做准备。尤其是传感器类型多样,学生需要熟悉每一种传感器的功能和特点,才能在搭建时选择合适的传感器。其次,还要带学生观察传感器、控制器、电机等主要部分之间的线缆连接,积木式硬件通常使用各种线缆连接,传递能源和信号。在教学中,要让学生注意线缆的颜色、接口、正确接法。最后,还要提醒学生注意电机和扇叶的齿轮连接,讲解齿轮减速的原理,借机进行STEM相关教学。
(三)编写程序,认识算法
使用图形表示算法是一种培养计算思维的好方法。千言万语不如一张图,流程图在汇编语言和早期的BASIC语言环境中得到广泛的应用。软件编程原理都是相通的。针对智能风扇的算法,笔者也引导学生使用流程图来表示,让学生设计工作流程,再借助流程图说一说“智能风扇”是如何工作的。
算法教学是计算思维培养的核心环节,新课标提出重视培养学生利用计算机学科的思想、知识、方法解决真实问题。本项目活动中,学生在前面搭建的基础上,理解了输入—计算—输出这一基本的控制过程,为算法的基本结构奠定了基础。接下来,老师需要引导学生针对输入、计算、输出的三个环节,设计硬件工作的逻辑和步骤,对具体如何实现进行算法分析。尤其是其中的计算环节,牵涉到判断和循环结构,有一定难度,需要学生细致分析;对判断和循环的条件仔细考虑。
教材中的这一课,学生需要学习利用专门的软件给机器人编程,学生原来学习的PCLogo语言、Scratch语言无法直接迁移到新的学习中来,加大了学习难度,学生“学得慢”。Scratchpi这个软件,界面、使用方法都和Scratch一样,只是在Scratch的基础上增加了一些与智能硬件相关的积木。学生可以无缝迁移之前的经验,感到亲切、熟悉,也愿意学习。知识迁移较快,难度降低,学生能够轻松掌握新知识。
学生已经通过前面的算法分析,绘制出了流程图,这里需要做的,是将流程图所表示的算法用具体的程序语言实现出来。语言有自身的格式和规则,学生只有对程序语言熟悉,才能较好地使用程序语言来描述算法。老师要加强對积木模块的教学,帮助部分程序语言不熟练的同学或小组,完成这一环节的任务。
(四)小组合作,学习创新
小学阶段机器人教学课堂组织形式以小组合作学习为主。这一方面可以让学习能力强的学生带动学习能力弱的学生,让学生在学习活动中形成集体意识和合作习惯;另一方面可以解决硬件不足的问题。但要注意的是:在不同阶段的机器人教学中应当依据学生特点和具体条件,采取不同的分组方法,让学生通过互相之间的交流、示范、解释加深对知识技能的理解,从而激发绝大多数学生学习“机器人”知识的兴趣。
软硬件搭建完毕后,学生还需要对智能风扇进行调试运行,这就需要学生之间互相合作。同时对于出现的疑难问题,利用教师给的数字指导手册进行学习,找到问题根源,排除故障。例如,对于人体靠近时的距离和风扇的转速这两个数值,需要在反复的尝试中,找到一个合理的区间,不能出现人靠近了风扇不转或风扇虽转但没有降温效果的情况。
使用Scratchpi对机器人内容进行学习,并采用小组合作的形式完成学习任务后,学生总是感觉意犹未尽。一般我会在已有的硬软件基础上增加一些条件对任务进行拓展,培养学生的程序设计能力、实践与创新能力。
例如,鼓励学生从智能风扇出发,开发类似的自动化控制设备,服务学习与生活。在实际教学中,学生创意无限,产生了很多好点子、好想法、好作品。有的学生制作了自动浇花器,有的学生制作了夜间智能灯,有的学生制作了宠物自动喂食器……学生从创造中收获学习的成果,享受学习的乐趣,实现了核心素养的培育。
参考文献:
[1]王同聚.Scratch与机器人共融在教学中的应用与实践——以中小学机器人教学为例[J].中小学信息技术教育,2015(8):76 79.
[2]管雪沨.Scratch让信息技术更有趣[J].中国信息技术教育,2012(10):21 22.
责任编辑:黄大灿