步入开源硬件智能机器人教育时代
2012-03-07曾祥潘
曾祥潘
智能机器人的应用十分广泛,无论是工业、农业、军事,乃至家庭、教育领域都可见其身影。基础教育领域对应用于教学的机器人性能要求不高,但要有较高的开放性和可扩展性,使用者可根据需要通过增减模块改变机器人功能,便于自主创新。另外,在学校里使用的设备,注定要具有较高的性价比。
目前,生产教育用机器人的厂商比较多,中小学智能机器人实验室大多数采用了其中一家或多家厂商的产品。但是,笔者通过文献调研、机器人竞赛及走访周边学校发现,各厂商的机器人产品普遍存在以下问题:(1)各厂商产品繁杂,各品牌机器人自成体系、互不兼容。由于没有统一的技术标准,实验室在器材更新时大多只能选择同一厂商的产品,选择范围受到限制。(2)机器人产品更新换代迅速,旧型号零配件供应不足。不同型号的机器人配件往往不能互换,旧型号机器人在性能上虽然能满足教学需要,但停产后配件难寻,只好被迫升级全套器材,造成浪费。(3)机器人功能模块类型少,扩展性受限。各种型号的机器人多数针对竞赛而设计,配备的功能模块较少,其他类型的模块由于兼容性问题无法使用,机器人可实现的功能十分有限。(4)机器人核心技术资料不公开,学生不能充分掌握机器人的各种知识。缺少电路原理图,无法分析零配件功能用途;机器人底层语言的源代码不公布,不能了解机器人运作原理。(5)缺少技术支援,机器人后期维护难。保修期一过,厂商的技术支持就立即停止。由于跟竞赛联系紧密,教师们在技术上的研讨十分保守,教学交流也难以开展。(6)机器人价格较高,建设经费投入大。较高的建设经费使机器人教育进学校的进程异常缓慢,同时,设备单价昂贵,教师担心设备损坏,不敢“放手”让学生动手操作机器人,制约了学生的学习积极性。
开源硬件
开源硬件是指与开源软件相同方式设计的计算机和电子硬件。开源硬件通常发布有详细的硬件设计资料,如电路图、材料清单和电路板布局数据等。使用者可以通过购买、委托制造或自制等方式获得开源硬件。另外,得益于开源硬件独特的开发和发布方式,制作、使用开源硬件无需担心版权问题。
在智能机器人领域,最常见的开源硬件是Arduino。
Arduino是意大利一个教学用开源硬件项目。Arduino包含一个单片机开发板、一个简单易用的软件开发系统、一系列丰富的传感器和驱动电路。Arduino的电路板可以自行制作焊接,也可以购买已经组装好的,软件开发系统可以从官方站点www.arduino.cc上免费下载使用。
Arduino系统使用C语言编程,并进行了简化,降低了复杂性,初学者很容易上手,大大降低了入门门槛。笔者在初次接触Arduino时,只花了几十分钟就可以编写简单的Arduino程序。如果不想使用字符编程,还可以选择图形化的编程工具,通过添加、拖动图标的方式轻松编程。
商品机器人与开源机器人
常见的由机器人厂商生产的机器人,我们称为商品机器人;由开源硬件组装而成的机器人,称为开源机器人。
开源机器人能否满足中小学机器人教学的需求?现将智能机器人实验室使用较为广泛的两款商品机器人与使用Arduino制作的开源机器人作一比较(见表1)。
从上述比较可见,开源机器人的配置能媲美甚至优于商品机器人,完全可以满足中小学机器人教学的需求,且具有以下优点。
1统一技术规范,新旧型号配件通用。Arduino在开发过程中力求新旧版本的通用,无论从物理结构上还是接口电路电气性能上,各种新旧型号的控制器和传感器都可以互相搭配使用,大大节约了硬件资源。
2功能模块十分丰富,机器人扩展能力非常强,利于学生创新想法的实现。Arduino能够使用上百种功能模块,甚至可以自行开发功能模块,创新应用得到支持。
3所有技术资料公开、透明。从电路原理图、零件清单到编程平台、源代码唾手可得,使用者可深入研究机器人的底层技术。
4技术交流社区活跃,使用者众多,技术问题可迅速得到解决。Arduino官方论坛注册用户达到5.3万多人,加上其他使用Ardui no的交流社区,用户可能达到近十万人。另外,国内相继涌现了学习使用Arduino的工作坊,如北京Arduino俱乐部、上海“新车间”等。学生无论从网上还是网下都可以找到Arduino用户进行交流。
5无技术垄断现象,器材价格透明,利于推广。由于技术资料公开,没有厂商可以垄断Arduino的生产与销售,使得Arduino的性价比极高。
建设开源硬件机器人实验室
通过对商品机器人和开源机器人的研究分析可见,利用开源硬件建设机器人实验室的优势是十分突出的。据此,笔者提出建设开源硬件机器人实验室的构想,籍此扩展机器人实验室建设的途径和渠道,为促进中小学机器人教育发展提供参考。
机器人实验室建设通常包含三方面的内容:计算机、智能机器人、配套设施。笔者依此对开源硬件机器人实验室建设的配置作如下建议。
1.计算机设备可因学校实际情况而定,采用购买新计算机或者使用原计算机室设备的方法解决。Arduino开发环境对计算机硬件要求很低,但凡正常使用的计算机都能满足需要。若购买新计算机,可以采购手提电脑,便于运行机器人时随时随地调试。
2智能机器人数量可根据学生实际人数,按照2~3人一台机器人的标准配备。开源智能机器人零配件可分为基础配置和拓展配置两部分。
(1)采用基础配置的机器人可满足中小学智能机器人的入门教学需要,完成诸如机器人巡线行走、走迷宫等任务。基础配置的详细零部件见表2。
(2)拓展配置是在基础配置的基础上增加零部件,以满足学校机器人课外小组活动以及创新活动的需要。拓展配置零部件见表3。
3配套设施包含组装机器人的起子、钳子等工具。另外,需要铺设机器人运行场地,配备适量的机械加工设备,如手钻、钢锯、电磨等,以满足机器人改装和创新活动的需求。
实验室的运作方式
目前,机器人教育在中小学尚属初期的探索阶段,能够学习的经验很少。如何能更好地发挥实验室的使用效益,笔者认为可以从以下方面着手。
1拓展使用对象
实验室建成初期可先从机器人兴趣小组人手,培养一部分有兴趣的学生,组成机器入学习团队。教师可利用机器人兴趣小组开展校内的机器人展示、竞赛活动,扩大机器人实验室影响面,吸引更多的学生参与学习。教师应在机器人兴趣小组的教学活动中积累经验,形成自己的教学能力,逐步将课外小组松散的教学行为转变成面向全体学生的常规课堂教学。
2拓宽应用面
得益于开源硬件体系,机器人可使用的传感器种类和使用效果都得到较大提高,教师可利用丰富的硬件资源开拓各种机器人创新应用。同时,Arduino除了在机器人领域的应用外,在其他方面如物理、数学、通用技术等学科也有着广泛的应用。开源机器人实验室完全可以成为多个学科的通用实验室。笔者相信,开源机器人实验室的使用前景十分广阔。
(作者单位:广东广州市白云区景泰小学)