基于Makecode+Micro:bit平台的 人工智能教学尝试
周开海
闽教版六年级下册机器人部分教学内容受硬件条件影响,基本以理论教学为主,不能让学生深刻体验人工智能的魅力,而MakeCode软件平台与MicroBit硬件结合,是一个简单可行的实践方案。MakeCode是由微软开发的一款面向青少年的图形化编程语言,平台开源,只要电脑连接互联网,就可以开展编程教学活动。而Micro:bit是由BBC公司推出的微型电脑板,这块板上集成了LED、磁力与加速传感器、蓝牙,还预留连接环孔跟外接设备相连。笔者根据多次反复比较,最终决定选用以Micro:bit为核心的Kittenbot硬件套装进行教学实践探究。下面笔者以《机器人的大脑》一课为例谈一谈基于Makecode+Micro:bit平台的教学尝试。
● 基于学情的目标制定
《机器人的大脑》是闽教版小学信息技术六年级下册第9课教学内容。学生经过前半学期对Scratch编程语言的学习,已经初步具备了Scratch图形化编程基础,初步了解了程序的基本结构。在第8课学生了解并组装了带有电机和传感器的简易机器车,了解了MakeCode平台各模块指令,能编写简单的程序。本课以声音控制机器人为例,分析机器人的工作过程,让学生明白外部信号如何在计算机里表示,机器人对接收到的信号是如何进行处理并做出反应的。
● 基于需求的课前准备
根据课堂活动需求和学校现有条件,将班级学生以6人为一组编排成学习小组,确定学习组长和成员分工。课前准备上节课装好的8台机器车(装有声音和超声波传感器),制作声控小车工作流程的微课,将Makecode离线编辑地址制作成网页快捷方式(https://makecode.microbit.org/),提供扩展包地址(https://github.com/KittenBot/pxt-powerbrick)备准一个学习包(主要提供学生从软件平台中找到相应的模块指令,如图1所示)。
● 基于探究的教学活动
1.导入(5分钟)
师(手上拿一台装有声音传感器的机器人小车):今天,我们一起来玩一个游戏。一、二大组的同学先跟老师来练习一下节奏,拍一下,停一下X 0 | X 0 | X 0 ||;三、四大组的同学换一个节奏,连续不停地鼓掌XXXX | XXXX | XXXX||。请同学们分组用刚才的节奏鼓掌,我们看看屏幕上的机器人小车的运行情况。说说你看到了什么现象?(请学生说,引导说出掌声连续—机器人持续前进—有声音时前进,没声音时停止—声音“驱使”机器人前进)你们想知道机器人是怎样工作的吗?今天,我们一起学习12课——《机器人的大脑》。(出示课题:机器人的“大脑”)
导入分析:用手机现场直播机器人的活动过程,改变了以往教师口述导入的理论学习方式,掌声与机器人互动的形式激发了学生的学习兴趣,促使学生对机器人如何工作进行思考,得出最初原始的答案,感性认识为课堂中的理性探究做好铺垫。
2.新课——分析机器人工作过程(8分钟)
师:想一想,如果刚才我们发出轻微的声音,机器人也会前进吗?(生:不会,要大声)多大声才算大呢?(……)声音传感器可以侦测的范围是0~1023之间,我们需要在这个范围之内给机器人预设一个值,这个预设值是多少呢?(生:50、100、200、300、1000)大家是怎么想的?(生:排除轻微的声音、排除环境干扰声)如果我预先不知道这个值是多少,怎么办?(生:随便设一个值,进行调试)预设了数值,怎么让机器人去判断?(生:把侦测到的声音跟预设值进行比较)能用一句来说吗?(生:如果声音大于预设值,则机器人前进,否则机器人停止)这是我们人类的想法,怎么将它变成机器人的想法?(生:编写程序)这程序就像机器人“大脑”——主控器里的思想。我们编写程序之前也要有自己的思想,就是我想让机器人什么情况下前进,什么情况下停止。这样的想法可以用程序流程图来表达(如图2)。
请同学们对照程序流程图,从Makecode里找到对应的指令。请各小组讨论后完成桌面的学习记录单。(每个小组派一个同学来完成学习记录单,集体讨论学习单)声控小车用到了哪些指令?(生:条件、比较、声音强度、电机控制)比较声音大小为什么用“大于”?(生:大于表示侦测到声音大小超过声音预设值就前进,如果用小于,则声音大小为0也会让小车前进)如果发现小车太敏感,侦测到细微的声音就往前跑,怎么办?(生:调大声音的预设值)如果很大声都没反应,可能是什么问题?(生:可能是声音预设值太大了)
新课分析:机器人工作过程,即程序流程图的执行过程。分析过程以流程图为核心,探究实现“掌声驱使机器小车前进”这一任务。学生通过探究明白“提出任务—规划过程—尝试实现”的流程,头脑中对课堂任务有了初步的想法。条件比较时,如果学生提出“小于预设值停,否则前进”,那么教师可以引导简单比较不同条件与电机控制的关系。
3.小组尝试(12分钟)
师:接下来,同学们请在自己的计算机上尝试一下,然后各组讨论推荐一个程序下载测试。如果发现预设值不够准确,继续在刚才那个程序里修改。老师在你们计算机桌面上准备了一个学习包,遇到困难的同学可以打开学习包一起学习。好,现在各小组到老师这边来领取机器人。以小组为单位,打开相应的学习包学习,尝试利用Makecode编写程序。(教师巡视,发现问题拍程序图对比,集中分析)大家来找茬,找出三幅图中典型的错误。(分别是端口错误、声音参考值大小不合适、比较符号不对、电机转速不对)
探究分析:小组探究让学生明白,从程序完成到任务实现还需要经过“尝试—调整”的反复实践过程。软件硬件结合,让学生对程序中的错误有深刻的认知,学生编写程序—硬件执行的过程就是人工智能的实现过程。
4.拓展创新——拓展包(7分钟)
师:未完成的小组可以继续完成声控小车程序。已经完成的小组想一想:这台机器人同时装有超声波传感器,你能尝试用超声波传感器来控制机器人吗?(拓展包准备避障机器人的流程图,学生根据流程图编写程序,教师适当介入)
拓展分析:基础任务是从“0”到“1”的教学,只要教师铺垫得当,学生顺利迈出第一步,后面的拓展就是从“1”到“无穷”的过程。
5.交流评价(5分钟)
抽两个小组说设想,运行机器人,大家评议给分。(其他小组课后评分)
学生说自己的机器人是怎樣工作的。(我们做的是声控小车,如果声音大于×××,小车就前进,否则小车停止)(完全实现声控小车设计的小组得2分,初步完成有待改进的得1分;拓展完成避障小车的,根据效果得3分)引导学生讨论各小组机器人的优缺点,提出改进办法。
交流分析:交流评价的过程,既是学生回顾反思的过程,也是课堂总结提升的过程。学生通过讨论交流、总结描述、拓展改进,对程序执行过程有了理性的认识,同时,学生逻辑思维能力也得到提升。
● 教学感悟
通过实践教学,基于Makecode+Micro:bit平台的人工智能进课堂活动取得了良好的成效,激发了学生学习编程的兴趣,学生能积极地参与到课堂教学中,课堂教学气氛活跃,取得了良好的效果。同时,软硬件结合的教学实践也激发了学生的创新意识,学生不再是教师教什么就做什么,而是成为课堂的设计者,在作品中融入了自己的创意和想法。