教育与科技没半毛钱关系?黑科技都是国外的公司在做?一切看起来酷炫的都只是概念?2015淘宝教育科技节,芥末堆亲测教育科技产品,给你最真实的使用体验,让教育科技不再只是看起来酷炫,分分钟触手可及!
关于芥末堆:目前中国影响力第一的教育垂直科技新媒体,我们观察整个教育行业产业链上下游的动态发展,发现行业内具备创新与机遇的公司与产品,解读政府政策及市场变化,及时、高质地为教育行业内各方提供深度价值信息,为中国教育行业的企业管理者提供发展和决策参考。
根据官方介绍,Makeblock mBot (蓝牙版)是一款为素质教育而生的低门槛“机器人小车”,适合初学者学习 STEM(没有 Art) 领域——科学(Science)、技术(Technology)、工程(Engineering)、数学(Mathematics)的知识,八岁以上的孩子可独立完成。
mBot 分为硬件和软件两个部分,硬件是标准化的电子零件,可通过无焊接的方式组装完成,同时还配有一个简易遥控器可供拼装完成后直接“驾驶”;而软件部分则有通过蓝牙直接实现操控的 mBot APP,同时还是支持基于 Scratch2.0 开发的图形化编程软件 mBlock,以及 C 语言编程的 Arduino,可在官网找到下载。
Part.1 组装机器人小车组只需要 23 分钟
首先是拆包图:
必要零件包括电机、mCore 主控板、蓝牙模块、5 号电池盒、轮子、巡线传感器、全向轮、超声波传感器、锂电池、遥控器、电子连接线。所以基本就是上图这些,没有无用零件。而组装手册则分为四大部分:零件清单、mCore 详解、组装过程、连线。绘制的步骤清晰,其中组装过程分为 12 步,每一步从位置到所需零件都标注的很明确。
其中有一点细节是,虽然它在安装步骤中标注了每个螺丝的名字“M2.2”、“M3 自攻螺丝”、“M4”,但并没有详细地对应到具体是哪个实物。不过因为只有三种,所以即便是新手也可以通过步骤图示来分辨出用哪个。
从第 1 步到第 8 步都是通过螺丝完成的拼接,而且按照组装说明来操作,完成只用了 15 分钟。最明显的感受就是零件之间严丝合缝,即便是手残党也能搞定。不过对我这种从没碰过机器人的家伙来说,最让我觉得惊喜的是那个螺丝刀,期初我以为这个只是用于轮子上的自攻螺丝,但直到我发现没有螺母的短粗型 M4 螺丝,是徒手搞不定的……
螺丝刀的原始状态是钢棍和手把分开的,六边形凹槽的 M4 螺丝让我纠结了一下,在翻完组装说明还是没有新发现后(确定并不是遗失了别的零件),我才想起钢棍的另一头也是这个形状——这可能是我在这套产品里唯一感受到不是“低门槛”的细节了。
此外除了零件组装本身就很“低门槛”,这套产品在细节之处也给了许多小白或粗心用户更多的贴心提示。比如上面这个电池盒电线位置的说明,如果电线在铜柱前方,那么当铜柱上方安装好 mCore,再取出电池盒就会变得有些麻烦。
到此,就可以用套装内的遥控器来进行前后左右的操控了。而从认识零件到全部组装,一共用了 23 分钟,基本上没遇到不知道怎么拼和拼不上的问题,确实可以说是一款低门槛的“组装产品”。
全部拼装完成后,还有一部分连接零件的剩余,其中还包括一个“电机轴”备用包。
Part.2 在编程之前得先了解要“用什么控制什么”
机器人小车上被控制的零件
未经编程开发的 mBot 只有简单的前后左右运动,因此在所有零件中能够提供“额外”展示,就只有巡线传感器和超声波传感器这两个零件了。那么在官方介绍中,它们可以分别提供以下展示:
(超声波传感器)
(巡线传感器)
除此之外,根据 mCore 的介绍,主板上还有 LED 三色彩灯、蜂鸣器,我也已经成功玩过了~
(LED 三色彩灯效果预览,程序:三色循环)
实现控制的程序编写软件
面对陌生的 Arduino,我决定先尝试下基于 Scratch 开发的 mBlock。mBlock 是一款 120M 大小的压缩包,解压后会有安装文件,支持中文简体,可以快速上手;而 Arduino IDE 则只有 58M,唯一不同的是 Arduino 只支持英文。但除了要安装以上两个软件外,还需要安装 Arduino 驱动、安装 Arduino 驱动、安装 Arduino 驱动!重要的事说三遍!无论你是Mac还是Windows,都要安装!
(mBlock / ScratchBot 界面)
( Arduino 界面)
此外 makeblock 还提供了从 ScratchBot(mBlock) 语言到 Arduino 语言的转换,这样可以更好地理解代码的编写与编程的含义。
makeblock 的论坛里还有两种编程语言的示例视频教程,我还额外发现了一个叫做 Ardublock 的软件:以图形化积木搭建的方式编程,使编程的可视化和交互性加强,降低编程门槛,即使没有编程经验的人也可以尝试给Arduino控制器编写程序。
(感觉像是 Scratch 和 Arduino 合体了)
连接运行程序的电脑和小车
根据组装手册提示:小车上的蓝牙模块可以用来和 Android 或 iOS 智能手机配对控制 mBot,也可以支持蓝牙通讯的电脑配对使用 mblock 来无线编程。那么再根据组装手册上提示的连接,就可以很快递找到连接方法了。不过说起来貌似简单,实际操作起来却并不顺利。
首先你需要一台支持蓝牙的电脑,而且我建议你用台式机,不然会出现下面这种情况(虽然最后我还是各种瞎捣鼓成功了,但弄好了的原因并不确定,我猜测跟我没安 Arduino 驱动有关,因为安完就可以了……):
总结一下用电脑实现蓝牙操控的过程(套装内的组装说明并没有写):
1/ 安装 mblock 和 Arduino 驱动;
2/ Mac 版的 Arduino 驱动是从 mblock 上跳转到 Github 下载的,然后在安装的过程你还会遇到使用指令窗口的步骤,但如果你像我一样是小白用户,Mac 的指令窗口可以在“系统其他”里找到,文件名叫“终端”;
而在执行代码的时候,要注意的是如果你比我还要小白,请只输入红色框内的代码,因为 $ 前应该是你电脑的名字;
3/ 操作完上一步你的电脑就重启了,但如果你不知道这一步是重启也不用紧张,iOS 不同于 Windows 系统,重启完之前打开的页面也都会原封不动地还在;
4/ 重启后继续参考安装教程的步骤安装蓝牙固件,一切都完成后,就可以实现无线编程了。
Part.3 体验编写程序和运行程序
电脑控制
在 Mac 安装驱动的教程最后还有一个非常短的测试,是给键盘匹配操控功能,但只有前后进退。不过因为在编程之前就向小哈(我堆程序员)询问过一个问题:小车实现转向,比如向左转,是说左轮不动右轮动吗?小哈的回答是:不是不动,是改变转速,所转方向一侧的轮子转速低于另一侧的转速,就可以实现转向。于是就有了下方这个基础版的操控:
但在运行的过程中,小车出现了一个问题:指令为向左转向时,小车会先向右偏转一下,然后再向左。而这个问题在右侧旋转时则没有出现,于是我把小车反过来看了一下:
(图为翻转状态,按小车正面行驶状态区分左右轮)
实际上,无论按左键(左转命令)还是按右键(右转命令),小车都是左轮先动,而左轮先动就意味着在这段时间内“左轮转速大于右轮转速”,所以必然导致小车向右偏移。
于是我改了一点儿程序设置,将左键(左转命令)中的两个电机接口换了下顺序,而电机接口2就是小车的右轮。这时候再运行程序,小车就不会再出现向右偏转的情况。这也就意味着在执行程序的时候是有先后顺序的,先设置哪个电机接口,哪个轮子就先动。
小哈(芥末堆程序员)表示他当初玩单片机的时候是不会出现这种明显启动差异的,有可能是电池问题,他们当时用的是 2~4 节 3.6V 的 18650 型锂电池——我用的是 4 节 1.5V 的五号电池,并没有用 mBot 套装内自带 3.7V 锂电池。
不过这对整体使用并没有太多影响,在用电脑完成基本操作之后,通过官方论坛我还找到了“避障小车”和“巡线小车”的编程示例。在按照视频里的步骤可以很轻松地“复制”程序,然后右键单击“mBot 主程序”选择“上传到Arduino”即可实现对小车的程序传送。
(由 mBlock 编写的壁障小车程序,右侧为自动生成的 Arduino 代码)
上图运行效果是小车在遇到障碍后可自动寻找新的行进路线,但基本上都是撞到东西以后才会改变方向,而且 distance(距离)的设置变动对小车基本没影响。此外遇到的问题还有视频里只有“执行”命令而没有“停止”命令,而且在第一次修改成电脑控制后,我的遥控器就失灵了,所以我又加了一个“按下空格键则前进速度为 0 ”的设置。
实际上在做巡线小车的时候遇到的问题更多,最严重的是我认为以当前小车状态无法更好执行——或者,是需要比官方示例更优化的方案。
(巡线小车程序:左侧为官方示例,右侧为改进方案)
巡线小车的基本原理应该是通过对黑色路线的识别,判断是车头偏右还是偏左,如果偏左则一 A 灯灭并执行右转回归轨道命令,反之B等执行左转命令,如果巡线器两边都识别不到说明完全驶离正确方向,所以执行后退命令。但按照示例的编程执行并不能很好地巡线,一开始我以为是转速太快导致小车跟不上识别速度,于是把速度改了——事实证明然并卵。
(官方示例程序 50 转速下的躲线小车 - GIF帧数有加快)
注意观察上图,当小车识别到已偏离黑色轨迹时,小车执行的是倒退偏转……于是我又想可能是转速太低,当双侧均为未识别到黑线时小车执行退后命令,以至于再前进很难——我瞎猜的,因为改成 150 也不行,接着我又翻了翻 mBlock 的界面和论坛,结果发现没人有我这么愚蠢又小白的问题,所以在意识到“啊反正我也搞不定了”之后,初步体验完 mBlock 的我又试了试 Arduino。
但简单总结一句话就是:官网没有教程,面对着空荡荡的陌生界面我选择继续玩 mblock。
(重温一下 Arduino 界面,我知道它并不是为我而生)
mBot APP
如果你不愿意编程,在做完小车后还可以下载 mBot APP。它支持蓝牙无线控制,提供 3 种情景模式分别是:手动控制(操纵杆/重力感应)、超声波自动避障、巡线模式。此外右侧还支持响起蜂鸣器、LED 亮灯、200转速快冲。
(mBot APP 界面)
Part.4 对 makeblock mBot 的整体评价
首先对我而言,趣味性有,但很有限,不过这并不影响它吸引我;而“吸引点”,我并不觉得是所谓的“酷炫高科技”,而是在于每次的“发现、思考以及解决问题”。
为什么小车左转时会先右偏?巡线器的作用原理以及为什么我没成功?如果否则语句的套嵌逻辑?这些对我来说才是 mBot 的魅力所在——但其中比较重要的一点是“能解决问题”,这也是我认为“低门槛的教育科技产品”在教育中的重要意义,它不会让你陷入完全的混沌。不过同样的,我也认为低门槛并没有增加教育产品的趣味性,但成就感着实提升不少——正如它所说:低门槛,快速入门的机器人套件。此外如果我们不从教育角度来看待这个产品,其实我很喜欢makeblock官网上的一句话:我们提供给用户的是实现想法的能力。
世界上的第一个操作系统不是 Windows,第一台计算机更不是你那个轻薄的 Mac air,一切科技的发展其实都是在降低大众使用的门槛,这样才能有更多的人提高“创造的效率”。换到创客教育中,我认为这正是“低门槛的高科技教育产品”的意义。但如果作为 STEM 教育,我觉得“低门槛”仅仅只能做启蒙而已,后续的学习路径则更为重要——也就意味着教育产品或教育者必须做好更完善的引导。
2、芥末堆不接受通过公关费、车马费等任何形式发布失实文章,只呈现有价值的内容给读者;
3、如果你也从事教育,并希望被芥末堆报道,请您 填写信息告诉我们。