STEAM视域下机器人的结构设计与教学建议
2021-05-31刘全铭罗倩茹廖泽松刘宝瑞
刘全铭 罗倩茹 廖泽松 刘宝瑞
摘 要:STEAM教育强调培养学生运用综合知识解决问题的能力,让学生在运用综合知识解决问题的过程中习得多方面的新知识,从而形成良性循环。因此STEAM教育往往是伴随着项目式学习展开的。而当下STEAM教育中适合学生的项目较为匮乏,学生往往学习的是单一的知识,解决的问题也比较简单,难以充分体现STEAM教育的理念。国际青少年机器人世界杯救援项目是一个合适的开展STEAM教育的平台。本文从STEAM的五个维度出发,对RCJ机器人的设计、搭建、编程与调试进行了说明,并提出了STEAM视域下RCJ救援项目机器人的教学建议,以期为更多一线STEAM教育教师、機器人教师提供新思路。
关键词:STEAM教育;RCJ比赛;机器人设计;教学建议
中图分类号:G434文献标志码:A文章编号:2096-0069(2021)02-0075-05
收稿日期:2020-11-02
基金项目:中国大学MOOC爱课程平台-教师教育专题“如何做创客教育”(0401iCourse045);坪山区教育科学规划课题“项目式学习视域下九年一贯制学校机器人课程设计研究”(PSGH2020081)
作者简介:刘全铭(1964— ),男,陕西西安人,高级教师,研究方向为通用技术课程设计与实施、知识产权、中学人工智能教育;罗倩茹(1995— ),女,陕西宝鸡人,教师、硕士研究生,研究方向为机器人教育、创客教育,本文通信作者;廖泽松(1982— ),男,陕西宁陕人,一级教师,研究方向为人工智能;刘宝瑞(1993— ),男,陕西礼泉人,三级教师、硕士研究生,研究方向为创客教育。
一、研究背景
2003年,教育部首次将“人工智能初步”和“简易机器人制作”模块纳入高中信息技术和通用技术课程中。2018年,在教育部新颁布的课程标准中,将“人工智能初步”和“开源项目设计”模块纳入高中信息技术课程的选择性必修模块中,“技术与工程”系列纳入高中通用技术课程的选择性必修课程中[1]。在国家政策的大力支持下,我国机器人教育进入了飞速发展时期,然而,机器人教育中强调学生的动手实践却容易忽视理论指导。STEAM教育强调学科知识的整合,注重学生综合运用知识的能力。本研究从STEAM的视角对机器人教育重新进行了审视,以国际青少年机器人世界杯(RoboCup Junior,简称RCJ)救援项目机器人为例对机器人的结构进行了设计,并对一线教师提出了切实可行的建议。
(一)STEAM教育
众所周知,STEAM教育源于STEM教育,在原有的科学(S)、技术(T)、工程(E)与数学(M)的基础上增加了艺术(A)。我国STEAM教育相较于发达国家开展得较晚,但是近年有关STEAM教育的研究呈上升趋势。与传统教育相比,STEAM教育强调对学生综合运用知识解决问题能力的培养,以及学生对综合知识的学习[2]。
STEAM教育的开展往往依托于项目式学习,教师提出项目并对学生进行基础的指导。学生则以合作学习的形式开展项目式学习,在实践的过程中对新知识进行建构,并在不断思考以及尝试解决问题的过程中获得综合运用知识解决问题的能力。但是,目前STEAM教育在中小学开展过程中遇到的主要问题之一是缺少适合中小学生进行学习的平台或项目。
(二)RCJ救援项目
RCJ是国际机器人世界杯比赛的重要组成部分。目标是通过组织机器人比赛,来推动世界范围内的机器人研究和教育[3]。与其他机器人比赛相比,RCJ比赛有以下几个特点:第一,不限制参赛机器人的器材,允许使用各种器材以及控制器,甚至是自己团队设计的控制板。但是禁止学生直接使用厂家提供的现成的机器人,在比赛的过程中会有严格的答辩环节,一旦主办方发现团队成员并没有完整地参与机器人的设计、搭建、编程以及调试环节,会取消团队的参赛资格或者比赛成绩。第二,RCJ更注重的是教育目的,而非竞赛。主办方鼓励各赛队之间相互交流,并鼓励团队自主设计电路或者传感器。第三,RCJ每年的挑战大体相同,这样就给学生提供了一个相对稳定的实践环境,以便他们随着知识和能力的增长不断地找出更好的解决方案。第四,RCJ的比赛项目虽然大体相同,但是更强调机器人的智能性,对机器人的设计、控制与程序编写方面相较于其他机器人比赛难度更大。
救援项目是RCJ比赛的三个项目之一,机器人自动在充满障碍物的地图中搜索“伤员”(该项目中的“伤员”是指场地中温度较高的热源)后投放“救援包”。完成该项目主要涉及的知识点如下:第一,算法的设计,包括机器人构建地图的算法、搜索地图的算法,PID(Proportion Intergral Differential,比例积分微分)控制算法以及最优化算法等方面;第二,机器人结构的设计,包括搭建机器人结构的基础知识、AutoCAD矢量图绘制与3D建模软件的使用、小型机床以及3D打印机的使用等;第三,控制方面的知识,包括控制器的选择与设计、传感器的选择与设计等,这些知识涉及STEAM的方方面面[4]。学生在这个过程中能够真实感受到对综合知识的学习以及如何运用综合知识解决问题的过程。
二、STEAM视域下RCJ救援机器人的设计
RCJ救援项目场地图如图1所示,该项目需要完成的任务如下:第一,机器人能够在随机的地图中构建出地图的全貌;第二,机器人需要有一定的越障能力来保证完整地走完全部地图;第三,机器人需要能感受到地图中“伤员”的位置并根据“伤员”的具体情况投递适量的“救援包”;第四,机器人需要有图像识别功能找出墙上的字母并给出相应的反馈。
RCJ救援项目的比赛与学生现实生活中的案例相类似,且与学生在学校所学知识联系比较紧密。中小学生在完成项目的过程中,可以充分利用自己所学的知识。另外,由于没有器材以及控制器的限制,学生有无限的创造空间,各个学龄段的学生都可以发挥自己的优势。机器人相关知识较少的团队可以使用乐高、中鸣等集成度相对较高的控制器作为设计的基础,机器人知识相对完善的团队可以自己设计自己需要的控制器。但是,该项目鼓励团队使用自主设计的控制器或者传感器,使用较多自主设计的控制器和传感器的机器人会获得主办方较高的评价。
RCJ救援项目机器人主要分为机器人结构设计与程序编写两部分。图2是机器人结构设计的一种形式。笔者从STEAM教育的五个维度出发,对这两部分的设计与实现进行较为深入的说明。
(一)科学方面
参加比赛的机器人需要构建出整个比赛的地图,所以机器人首先需要在移动时实时构建出局部地图,最后用局部地图构建出完整的比赛地图。场地上随机摆放各种形状的障碍物,所以应对机器人进行如下设计:第一,所搭建的机器人要有一定的避障能力。从科学的角度就需要考虑到结构设计过程中机器人的稳定性、轮距、轴距等。第二,比赛场地中有坡道,这就需要考虑到机器人的轮胎与坡道之间的摩擦力,需要对轮胎的材质、厚度、半径以及感知坡度的方法进行考虑。第三,所搭建的机器人平台需要有足够的空间放置各种传感器,需要考虑到传感器的布局方式等。为了解决上述问题,应从科学的角度对机器人进行如下改进:第一,为了避障,减小机器人底盘轮胎间的轮距,尽可能不碰到障碍物,并且将机器人平台设计为弧形,在四角安装导向轮。第二,为了越障,增加轮胎轴距与轮胎的半径。考虑到场地的摩擦力问题,对不同材料的轮胎与不同半径的轮毂进行测试。第三,为了便于传感器位置的调试,应为机器人平台设计多个标准孔,这样既能减轻机器人的重量,又便于调试传感器的位置。
为机器人编程的过程就是赋予机器人“生命”的过程,编程的过程需要考虑机器人的结构设计,机器人结构的各个因素都会影响到程序的编写。举个简单的例子:机器人两侧驱动电机的功率相同,机器人一定会走直线吗?真正的答案是不一定。因为这与机器人本身的结构有很大的关系,如果机器人是高度对称的,两个电机的制作工艺也完全相同,在这种极为苛刻的条件下,机器人才能准确地走出一条直线。所以,机器人程序的编写需要科学且充分地考虑各种因素。
(二)技术方面
为了从零开始制造机器人,需要掌握绘制矢量图的软件以及3D建模软件,需要熟悉小型机床与3D打印机的操作。另外,需要掌握相关的机器人控制技术、传感器的原理以及制作电机减速箱等机器人硬件方面的技术。最后,还需要掌握一些通用工具的使用,包括电烙铁、电钻、钢锯等。为了完成机器人的制作,学生需要学习这些技术,并且学习这些技术的回报也是非常丰厚的。制图与建模的技术不仅可以用于机器人的制作,而且对于学生今后的生活与学习也有非常大的帮助。更重要的是,学习机器人相关技术能为学生从容地面对未来人工智能时代的到来打下坚实的基础。
编程技术是人工智能时代学生必须掌握的技术,教育部已经出台关于少儿编程学习的若干政策。RCJ救援项目需要学生有较高的编程能力。参加RCJ救援项目的学生需要掌握与机器人相关的编程技术,另外还需要学习一些算法知识,需要学生具有计算思维以及運用计算机解决实际问题的能力。
(三)工程方面
对于RCJ救援项目而言,工程知识体现在机器人结构的设计,包括板材的选择、板型的设计、3D模型的设计、材料的加工、机器人整体结构的规划、机器人完成投放“救援包”任务的管道或者手臂的设计、机器人图像识别中模板的建立,以及机器人通信线路的设计。
在搭建机器人的过程中会出现各种工程方面的问题,包括螺丝滑丝、设计板材之间结构对不上、忘记为某些线槽打孔、电机位置未对齐、线材之间相互干扰、电池与控制板电压不匹配等。学生在协作解决这些问题的过程中会尝试使用工具,或者选择重新设计、加工。这一过程能让学生有效地在实践中发现问题、解决问题、获得新知,能够培养学生综合运用知识解决问题的能力。最后,这个过程需要学生合作交流来完成任务,对学生的沟通能力有促进作用。
在程序编写方面,学生需要掌握与机器人控制相关的控制算法,从工程角度而言,学生需要掌握PID控制算法[5]。学生在制作机器人的过程中会由于一些不规范的操作导致出现误差,PID控制算法可以通过传感器实时检测反馈,从而尽可能地减小误差。
(四)艺术方面
RCJ救援项目在艺术方面对学生有较高的要求。机器人需要有对称美、稳定美、设计美。 齿轮的契合、材料的切割、整体的紧凑,都需要精心的设计。设计、制作机器人不仅仅要考虑如何完成任务,还要考虑如何让机器人更好、更快、更高效地完成任务。学生在完成项目的过程中可以亲自见证一个机器人的诞生。通过自己的双手创造出一个可以与外界交互的机器人,学生能够真切地感受到机械的美与设计的美。
(五)数学方面
机器人的设计、搭建与调试的过程是与数学知识紧密联系的。机器人各个器材之间的连接、完成任务动作的设计、场地的测算、传感器的改进与调试、影响机器人动作的各个因素之间的关系,都涉及数学知识。学生需要充分地利用自己所学的数学知识来优化机器人的设计。
在程序编写的过程中需要更多的数学知识,需要利用数学统计分析找出显著影响机器人行进路线的干扰因素,并通过程序对其进行控制。另外,在前面工程方面提及的PID算法,也需要学生有相应的数列与斜率等相关方面的数学知识,才能科学高效地对PID的比例、积分与微分参数进行调节。
学生在这个过程中能体会到数学知识确实能够帮助解决生活中出现的各种问题,一旦学生通过数学知识解决了机器人设计过程中出现的问题,会极大地激发学生对数学的兴趣,有助于学生今后的数学学习。
三、STEAM视域下RCJ救援机器人的教学建议
RCJ救援项目不限制参加比赛的器材以及控制器等,这给予参赛团队无限创意的可能,但是,学生在准备机器人比赛的过程中往往会出现许多问题。如:繁忙的学业导致学生没有时间参加完整的备赛过程;队员之间不在同一班级,平时协作交流少;学生有关机器人知识的基础不一样,导致合作时出现问题;等等。作为一线教师,如何科学地引导学生备赛,尽可能地解决上面出现的问题,让学生在准备比赛以及参加比赛的过程中学习到更多的知识?笔者结合教学与指导过程中的观察与反思提出如下建议。
(一)明确教师与学生的任务
指导学生参加机器人赛事的教师需要了解RCJ救援项目的构成模块,熟悉RCJ救援项目往年考查的题目,熟悉RCJ救援项目经常出现的问题,了解RCJ救援项目各个步骤需要完成的时间节点,了解参与RCJ救援项目学生的相关知识基础以及学生特点,了解参与RCJ救援项目学生的空余时间。
参加机器人比赛的学生需要端正参加比赛的心态,了解自己的分工以及队友的分工,努力学习完成自己任务所需要的知识,并与队友多交流,相互学习,争取做到一专多能,定期与教师多交流,了解项目整体进度以及赛事的最新动态。
(二)将备赛与参赛过程中学生需要掌握的知识点设计成微课
在备赛之余,教师需要备课、讲课,学生需要学习、练习,所以留给教师教授学生机器人知识的时间非常少,学生也缺少自学的时间。教师可以借助现代教育技术手段,利用暑假、寒假等空闲时段将参赛队员需要掌握的知识点录制成视频,学生在备赛前期可以结合自己的时间进行学习,这样能有效地节约教师的时间,学生也能合理安排自己的时间,利用空余时间来学习这些知识。
(三)设计项目实施进度表并考虑突发问题
虽然学生均有自己的分工,但机器人项目是一个团体项目,所以在备赛的过程中,往往需要学生合作完成部分任务,但是有时有人会因为一些突发事件不能参加,这时候项目往往就难以进行下去,因此教师需要设计项目实施进度表,充分了解每位学生的时间、分工以及学生间的配合情况,并且提前想好预备方案,确保在个别学生不能参与活动时项目的进度也不会被延误。
(四)注意学生分工以及对学生的指导,使学生能相互配合、彼此合作
这里有一个适度的原则。学生全面发展当然是最好的,但是在备赛的过程中如果有个别人太自我往往会有不好的影响,从而影响整个团队的状态。教师应尽量保证学生可以一专多能,做到团队成员尽量彼此合作。
(五)提前考虑并着手准备后勤工作
备赛的过程中会有许多后勤保障等细节工作要处理。比如,确定大赛的规则是否更新、比赛时入住酒店的选择、机票的预定等等,这些均是不容忽视的问题。这些问题看似琐碎,但是忽视这些问题往往会导致严重的后果,所以教师以及团队成员需要关注这些问题。
四、结束语
在开展RCJ救援项目机器人设计、搭建、编程、调试过程中,学生在科学、技术、工程、美术和数学等方面的潜能会被激发出来,会产生浓厚的学习兴趣,进而提高综合知识与能力水平。STEAM教育为RCJ救援项目机器人的设计与实现奠定了基础、指明了方向,RCJ救援项目机器人为 STEAM教育提供了操作平台。
参考文献
[1]罗倩茹,秦健,刘宝瑞,等.基于设计型学习(DBL)的机器人竞赛教学模式构建研究:以2018年FLL工程挑战赛“饮水思源”为例[J].中国教育信息化,2018(17):41-44.
[2]刘宝瑞,秦健.基于STEAM教育的VEX机器人的设计与教育应用[J].中国教育信息化,2019(2):30-34.
[3]李嘉秀.基于arduino平台的足球机器人在RCJ中的应用[J].物联网技术,2015,5(3):97-100.
[4]刘玮松,刘海东,焦晓武,等.中学机器人教育与STEAM教育融合探索[J].中国教育技术装备,2017(20):11-13.
[5]李尹.PID 控制算法及其在風速控制中的应用[D].武汉:华中科技大学,2007.
(责任编辑 孙震华)
The Robots Architectural Design and Teaching Suggestion from the Perspective of STEAM
—A Case Study of the Robot of RCJ Rescue Project
LIU Quanming1,LUO Qianru2,LIAO Zesong1,LIU Baorui3
(1.The High School Affiliated to Xian Jiaotong University,Xian,Shaanxi,China 710048;
2.Pingshan Foreign Language Wenyuan (Zhukeng) School,Shenzhen,Guangdong,China 518118;
3.The High School Affiliated to Shaanxi Normal University,Xian,Shaanxi,China 710048)
Abstract: STEAM education emphasizes cultivating students abilities of solving problems by applying comprehensive knowledge and lets students acquire multi-dimensional new knowledge in the process of applying comprehensive knowledge to solve problems,hence forms virtuous cycle.So,STEAM education is always carried out accompanying by project learning.However,the current STEAM education which suit students is comparatively deficient.What the students have learnt is single knowledge,the problem solved is relatively simple,which cannot fully reflect the idea of STEAM education.International Youth Robot World Cup Rescue Project is a suitable platform to carry out STEAM education.This paper starts from five dimensions of STEAM,explains the design, building,programming and shakedown test of RCJ robot,and puts forward the teaching suggestions of RCJ rescue project robot from the perspective of STEAM,hoping to provide new thoughts for more frontier STEAM educational teachers and robot teachers.
Key words: STEAM education;RCJ competition;robot design;teaching suggestion