往期回顾

前段时间,我们给大家介绍了慧编程的特色功能之一——上传模式广播,大家都学会了吗?

(可以戳下文回顾一下这两篇精彩的案例教程~)

第1篇 丨《少儿编程软件慧编程-丨用「上传模式广播」功能实现“自制”游戏机

第2篇 丨《少儿编程软件慧编程实现一边巡线一边报告

对于大部分老师来说,学会这一功能或许还远远不够。“该如何把「上传模式广播」用到课堂教学上去?”,才是老师们更关注的问题。

今天,来自宝岛台湾的邱信仁老师,就详细记录了他教学生们第一次使用“上传模式广播”的课堂教学过程和内容,一起来看看吧!

教学背景
在本课教学中,我的学生年龄范围是8~15岁(国中和国小在读),另外,全部学生都有至少20个小时的编程学习基础。

「上传模式广播」的由来

慧编程以Scratch 3.0为基础,让大家能够轻松控制mBot、程小奔等机器人,除此以外还增加了许多厉害的新功能,比如AI和IoT等。

由于程序编写可以大致分为「设备」及舞台上的「角色」,两者程序的指令不再互相通用,所以如果希望机器人设备与舞台上的角色互动,就需要通过「变量」或「广播消息」来传递。

之前大家都用过mBlock 3,应该还记得在mBlock 3里的脚本区,你是能同时找到舞台角色的积木块和机器人模块的,对吧?但是在慧编程(mBlock 5),你得切换到「设备」才能找到设备的积木块,切换到「角色」找到角色的积木块。

那为什么会这样设计呢?原因其实很简单,两种主体间的程序可以独立操作了。这样的方式,除了方便不同程序语言的转换外(mBot的C++语言,舞台角色的Python语言),更棒的是由于二者是完全独立的程序,编译执行起来也更迅速

但是,有两个问题还是不容忽视:1.Scratch的广播消息与变量传输,需要由计算机端来控制设备,不论是USB传输或是蓝牙传输,都会延迟程序执行的反应时间。2.mBot需要刷新固件,无法单独执行程序。

为了让mBot机器人既能独立执行程序,又能回传计算机端的相关信息,慧编程团队开发了「上传模式广播」功能。

为mBot和熊猫分别添加扩展

(以慧编程网页端为例)

在“设备”模块下切换到“上传模式”,并添加“上传模式广播”扩展:

在“角色”模块下添加“上传模式广播”扩展:

编写程序


1)分别对mBot及熊猫撰写程序,如下:

熊猫的程序很简单,按下键盘的上下键,就发送上传模式广播的消息(分别是1与2)。

mBot机器人的程序也很简单,收到上传模式的广播消息(1或2),就点亮mCore上面的LED灯(分别是红灯或绿灯)。

记得上传程序之后,还是需要USB连接或打开蓝牙的连接!

以上的程序是单方面控制:熊猫下令让mBot发光。(传输信息的顺序是:键盘–>熊猫–>mBot)

2)那么反向操作,希望用mBot操控熊猫呢?

只要改写一下程序就OK。下面是熊猫的修改程序:

这里其实我们是增加了一个帽子命令,「当接收上传模式消息STOP」,这是接收端,让熊猫飞上天空再掉下来。

接着是mBot的程序修改:

大家可以看看,这个程序和上一个例子「熊猫下令让mBot发光」中的mBot程序有什么不同呢?

没错!加了「当mCore启动时」的帽子命令,然后里面是个「重复执行」,以及「如果」命令。

同样,请记得连接USB线或用蓝牙无线连接,再点击上传程序哦~

现在,程序已经完成了。按下mBot的板载按键,就能够命令舞台上的熊猫跳起来啦。

动手实践

至此,老师的演示已结束,各位同学赶快打开慧编程试试吧~

反思与小结

1.通过这节课,学生们初步了解什么是「上传模式广播」,在什么情况下可以使用这一功能以及功能的简单运用。

对于学生们来说,这一功能还是比较好理解的。主要需要让学生理解“广播传递消息”的逻辑,即:熊猫–>广播消息1–>mBot–>亮灯。另外,广播在现实世界中也有类似的功能(信息的传导),所以建议可以适当结合实际进行教学。

2.我一直认为,设备与舞台角色能互动是慧编程的强项。相比单纯地上传代码到机器人进而实现操控机器人,这种虚实互动(设备与角色的互动)要有趣得多。而且更贴近孩子的生活经验。