APP下载

STEAM教育理念下的小学机器人课程教学实践研究

2019-01-03刘恩霞翟希元孙站英

新课程·小学 2019年10期
关键词:机器人

刘恩霞 翟希元 孙站英

摘要:机器人教育是今后信息技术学科教育的主要阵地,是全面培养学生信息素质提高其创新精神和综合实践能力的良好平台。开源机器入是一种应用于科学研究和教学的资源开型机器入,其主要特点体现在机器人硬件或软件的开放性,由于硬件和软件的对外开放而得以在教学中推广使用。近年来STEAM教育理念日渐成熟,为培养学生的全新精神提供了有效途径,基于STEAM育理念,借助STEAM模式开展小学开源机器人课程的学习实践与研究,以Arduino Nano单片机与超声波传等传感器设计的智能浇花机器人为典型案例,为机器人教育提供一次有意义的探索。

关键词:机器人;STEAM;Arduino开源硬件

一、引言

人工智能正向我们走来,机器人是人工智能的一个载体,我们所居住的环境中出现了无人环卫车、无人公交车,这正是机器人在生活中的真实应用。机器人的研发目的不正是如此吗?STEAM教育要求以科学的态度认知事物,以数学为基础,从工程和艺术的角度解读科学和技术,以跨学科的理念将不同类型的学科融合,为当代社会的进步提供优秀人才支持。

机器人是一个综合了机械原理、电子传感器、计算机硬件及人工智能等众多行进技术多学科的研究领域。开源机器人(open Source Robot)是一种应用于科学研究和教学的资源开放型机器人。其主要特点体现为机器人硬件或软件的开放性。由于硬件和软件资源的对外开放,极大地方便了机器人技术的交流及二次开发,学生可以根据自己设计自主搭建、自主编写代码,充分发挥其乐于创造的天性,因此,开源机器人备受师生的推崇。教育机器人在国内尚处于起步阶段,缺少课程标准与教学专家的参与和指导。

本文基于为机器人课堂注入更多创造力、更多批判性、可持续性的元动力,以项目式学习为依托,以小学Arduino开源硬件课程设计与实践为主要内容进行研究,以期为开源硬件教育的进一步实践提供参考。

二、相关概念

(一)Arduino开源硬件

Arduino是一款简单易用、便于上手的开源电子原型平台,包含硬件部分(各种符合Arduino规范的开发板)和软件部分(Arduino IDE和相关的开发包)。硬件部分(或称开发板)由微控制器(MCU)、闪存(Flash)以及一组通用输入/輸出接口(GPIO)等构成,你可以将它理解为是一块微型电脑主板。

软件部分则主要由PC端的Arduino IDE以及相关的板级支持包(BsP)和丰富的第三方函数库组成。使用者可以借由Arduino IDE轻松地下载你所持有的开发板相关的BSP和需要的函数库,用于编写你的程序。Arduino IDE是一个基于C语言的编程环境,通过程序的编写、上传控制Arduino硬件,控制多种传感器、伺服马达等零件,完成自动控制,但C语言的编程环境对编程者要求较高,随后Arduino官方平台开发了基于图形化编程的Ardublock(图1),北京师范大学基于Goolge的Blockly图形化编程软件开发了Mixlv(图2),Citilab和Smalhalk团队在图形化编程软件Scratch的基础上改版推出了Scratch for Arduino(图3),动力猫公司基于Scratch3.0图形化编程软件开发了Scraino(图2),这些图形软件各有千秋,使Arduino编程门槛降低,使其得以走进小学课堂教学,促进了Arduino开源平台在教学中的广泛使用。

(二)STEAM教育

STEAMEducaion是科学(Science),技术(Technology),工程(Engineering),艺术(Arts),数学(Mathematics)五个首字母的简称。STEAM教育就是集科学、技术、工程、艺术、数学为一体的,多学科、跨学科、多元化智能融合的教育理念。STEAM教育在国外叫做STEM,因部分学者主张认为STEM只是“理工科”的学习,但它又不仅仅只包含理工科的知识。还有艺术、人文、社会、情感等学科的融入,所以应该加上一个A,即艺术(Arts),故而STEM变成了STEAM。STEAM教育要求以科学的态度认知事物,以数学为基础,从工程和艺术的角度解读科学和技术,以跨学科的理念将不同类型的学科融合。

STEAM教育要求学习者基于问题的学习、基于探索式的学习、基于项目式的学习、基于情景式的学习。

STEAM教育要求教育者拥有多学科、跨学科、综合性、多面性的知识,以趣味性、游戏性的教学方式去设计和开发STEAM课程。

教师需要合理安排教学过程,即如何让学生发现问题;如何设计解读问题的方法;如何利用科学、技术、工程、数学、艺术等知识解决问题;如何运用理性方法验证解决效果。

本机器人项目按照:确定主题—功能目标设定一资源储备—项目设计一多元评价的流程进行实践。

三、STEAM教育理念下的小学机器人课程教学实践研究

(一)确定实践项目主题

STEAM教学强调知识整合能力,强调培养解决实际问题的能力,强调培养学生的动手能力,项目主题的确定关系到项目活动能否顺利进行,一个贴近生活,富有挑战性的主题既能激发学生兴趣,又能让学生利用已有知识储备探究新知。项目主题的来源既可以是课程标准、日常生活,又可以是社会和国家的重大事件。选题原则:一是生活性。吸引学生参与项目之中,创造性地开展学习实践。二是学科综合性。让学生综合应用多学科知识发现问题、解决问题,得到跨学科知识应用的能力。三是复杂性。具有一定复杂性能,融合多学科知识,唤起学生已有知识经验。四是实践性。让学生在创新实践中提升对知识的应用能力和问题解决能力。

由于社团的学生受个人能力及第一次参与这样的主题活动没有经验的限制,我和同学们共同进行了此次活动的选题。

随着生活质量的提高,越来越多的人喜欢在家里种植一些花卉,既能增加美感,又能净化空气。但随着现代生活节奏的加快,人们因为出差、旅行、工作忙碌等种种原因而不能及时地为家中的盆栽及时地补充水分,从而导致盆栽因为缺水而枯萎。为了解决这一问题,同学们确定了设计制作智能浇花机器人的主题。

(二)功能目标界定

从主题出发将分散的学科知识进行整合以界定功能目标。首先,让学生进行调研分析目前网络上展示的各种浇花装置的优缺点,学生认为现有的浇花装置处于静态模式,不能移动浇水,因此,学生创造性地提出以移动小车为平台进行浇水作业。其次,让学生讨论研究浇花的次数,经学生讨论认为目前先实现浇一盆比较合理。最后,让学生探讨哪些Arduino传感器和元件可以实现智能浇花小车的功能。

经过同学们的研究将此项目在设计上分为四部分:启动装置、寻迹部分,浇水部分,浇水结束。

当花盘中的土壤传感器的湿度达到一定值时,通过蓝牙通信启动装置;寻迹部分又分为初步检测花盆位置,行进中检测花盆位置,进入花盆近距检测时进一步精确花盆位置,以确定合适的浇水位置停止行进;通过水泵进行浇水操作;当土壤传感器达到一定值时再次通过蓝牙通信停止抽水作业,机器人退回,浇水结束。

(三)资源储备

资源是批支持学习者完成项目的工具或材料,项目的主要资源集中在创客教室内。Arduino开源硬件资源主要可以分类两类:技术类资源、辅助类资源。

技术类资源包括:Arduino开源硬件及其传感器、计算机、伺服电机、搭建构建、Scraino图形化编程软件等。

辅助类资源包括:视频、图书、支持学习的技术环境等。

(四)项目设计

本项目使用的开源硬件是动力猫公司提供的ArduinoNano单片机及其传感器套件及其公司开发的基于Scratch 3.0的图形化编程软件Scraino2.2,Nano单片机功能较强,体积小,耗能小,兼容市场上大多数Arduino传感器,其Scraino软件开放性较强支持市场上大多数Arduino单片机。

1.流程控制框架

引导学生根据本项目的程序功能写出总流程图,根据总流程图把整个程序划分成LED显示模块、蓝牙通信模块、超声波寻迹模块、浇水模块、浇水结束五个主要的功能模块,每个功能模块都要写出基本流程图,这主要是为以后的程序编写起到一个指导作用。当然,在实际的程序编写过程中肯定会有一些改动,一个基本的流程会指导学生在写程序的过程中不会出现太大的偏差。每个功能模块定义为独立函数,模块间使用递归调用,数据传递变量定义为全局变量。

2.电子元件精度测试

引导学生上网查阅传感器手册并编写简单测试程序对电子元件进行精度测试。项目中需要配对使用的电子元件,首先要进行相应的精度测试,然后选择精度相近的电子元件配对使用。本项目中寻迹模块中使用的超声波传感器和两个差速电机都需要配对使用。

(1)电机配对

本项目中要让小车直线行进、转弯,经过充人测试程序,测得如下数据:车前进或后退操作时两个电机相同转速旋转,车子基本直线运动;在执行转弯操作时,左右两边电机以同样速度旋转一定角度时扭力有一定的偏差,两个电机转速大概相差10,这个问题我們通过后期程序编写中的参数设置进行了校正,另外搭建好的车子正常行进时两个电机的转速要在70以上,低于70转时车子动力不足。

(2)超声波传感器的配对

起初先在距离小车1米处放置障碍物,之后让数码管读取超声波传感器数值,让数值较为接近的两个传感器配对,但由于传感器返回的数值是一个不稳定动态值,这种方法并不可行;之后我们还是在小车1米处放置障碍物,让小车在距离障碍物10厘米处停下,选取两个最接近10厘米值的超声波传感器进行配对使用。

3.设计机器人搭建模型

引导学生通过查阅资料以及根据对车辆的已有认识,进行项目模型的构建,为了使小车的底盘更加稳健,外形更加美观,同学们热烈讨论,提出不同方案,经过设计修改,再设计再修改,学生终于确定小车为履带式,三个超声波传感器扇形于车头前摆放,水槽置于后轮承重梁上方的方案。在这个过程中注重引导学生搭建模型要符合功能需求,在注重科学性的同时还要具有美感。

4.组装搭建机器人

引导学生以工程的角度分析搭建机器人的车身、组装马达、安装主动轮及从动轮、履带,安装扩展板,安装单片机、超声波传感器、LED屏、舵机、伺服电机等,并将单片机与各个电子元件利用杜邦线相连,最终搭建完成的机器人如图:

5.超声波寻迹探测原理

引导学生运用已有的科学、数学知识对超声波寻迹探测原理进行分析,并推算出探测公式,由于小学生数学知识储备相对较少,教师引导学生多做测试,尽可能通过测试获得所需数据,阐述如下:

首先引导学生通过对超声波传感器原理进行分析,使学生认知到一个超声波传感器可以测距避障,如果两个超声波传感器同时对一个花盆测距呢?能不能探测寻找花盆呢?学生通过实验得出了两个超声波一左一右按一定角度摆放然后进行差值运算控制电机1和电机2的转速实现哪边超场波距离花盆近,车子向哪边拐,近而寻找花盆,在此基础引导学生引入第三个超声波会感器让车子在距离花盆10厘米处停下,车子的行走路线呈S型。(如图)

测试实验过程中及时引导学生通过过已有数学知识建立公式模型:(此表中超声波传感器简称超)

这个过程很好地体现了数学、科学、物理、艺术等学科的高度融合,学生对于如何批判性地去思考问题,创造性地解决问题的过程有了一个良好的体验。

6.编程调试

在编写程序的过程中指导学生根据项目功能进行模块化(函数)编写,以递归方式调用函数,使用全局变量进行函数间的数据传递。在程序中设置陷阱程序反复核对运行状态来应对软硬件错误,下面以超声波寻迹探测模块为例阐述如下:

这个函数的编写主要用到了Scraino图形化软件中的“算定义模块”“重复执行到”“如果……否则……”等程序指令。首先通过控制电机原地扭动车子,让超声波传感器感知到花盆的存在,之后进入s行走功能,对过比较左右两个超声波传感器的差值控制两个电机的转速,实现边行进边转向功能,这其中针对超声波传感器的性能,我们先通过对超声波感器数值除以3再向下取整的方式降低超声波传感器数值精度,以取得对编程有用的数值。行进中实时判断超声波传感器距离花盆的距离,如果距离小于10厘米,让电机转速为0车子停止。(因Scraino为图形化编程,程度截图无法完全展开,而其又支持获得Arduino IDE编码,故以编码形式展示。)

在编程的过程中学生对利用框架思维发现问题有了一定的认识;对利用问题拆解思维思考问题有了一定的了解体会,对通过函数思维解决问题有了进一步的内化体验。学生的编程思维得以很好的训练。

(四)多元评价

本项目在小学五年级社团中开展,为期一学期,一共16课时,在项目实践的过程中不断对小组团队合作、项目评价进行了有意义的评价,基于评价学生再不断修改不断完善作品。

1.小组团队合作

在本项目开展过程中,每组都有自己的小组合作学习记录本,用来记录学生个人得分和小组得分,主要由成员参与度、发现问题情况、解决问题态度等组成,每次活动后评选出最优秀的学习小组,活动结束后总评。这个评价过程提高了学生的凝聚力,对学生个人也起到了良好行为的约束。

2.项目评价

项目通过交流、展示,向其他人讲解项目原理、实施过程、结果分析,回答他人提出的有关问题,进一步加深对项目的理解和相关知识的应用。

四、结语

智能浇花机器人项目,通过项目学习的方式,引领学生借助信息技术学习项目必备知识,精心设计机器人搭建模型,通过对电子元件及拼接构建的进行结构等方面的分析完成工程搭建,利用图形化编程软件进行编程,最后对项目进行科学评价。在设计与研究机器人项目的沉积中,学生充分体验STEAM教育思想学习的整个过程,跨学科的融合有效培养了小学生利用批判性的思维思考问题,创造性地解决问题的能力。期望此项目的实践研究能为今后小学开源机器人课程的研究提供些许新思路。

猜你喜欢

机器人
机器人,让未来走近你