机器人巡线任务教学方法探究
2019-10-30陈锐
陈锐
摘 要 机器人竞赛中,巡线就是让机器人沿着给定的线路(一般是白底黑线)行驶的过程。巡线能力是机器人的基本能力,也是难点之一,如何把这部分内容教好?本文以初次参赛的青少年为教学对象,从基本技能培养、巡线方法讲解、实践练习三个方面对如何做好机器人巡线任务教学的方法进行了探究, 重点研究了针对中小学生特点的教学流程和训练办法。提出了在教学中夯实学生的基本技能培训、由浅入深地探究、有针对性地自主练习是完成巡线教学任务的有效方法。
关键词 机器人 竞赛 巡线 教学 乐高
中图分类号:G424文献标识码:A
在机器人竞赛中,巡线就是让机器人沿着给定的线路(一般是白底黑线)行驶的过程。无论在WER还是乐高系列机器人竞赛中,巡线既可以是一项单独的竞赛内容,同时也是完成其它竞赛任务的基础。因此,让参赛的学生学会巡线任务是机器人竞赛培训的一项基础内容。
机器人实现巡线的基本原理一般是通过测量机器人的光传感器数值,据此判断机器人与线路的相对位置,再通过一定的算法调整机器人左右马达的动力,从而实现让机器人沿规划线路移动。
机器人的巡线从原理上来说起来并不复杂,但完成这项任务的学生大多是第一次把软件与硬件的结合起来完成任务,第一次从机器的角度思考问题,要让他们理解这里面的逻辑原理,学会用程序自动控制机器人完成巡线任务还是有很大的难度。要让学生快速准确地掌握机器人巡线技术,我认为在教学过程中要做好以下几点:
1夯实学生的基本技能
学生的能力发展往往是从简单到复杂,因此在完成巡线任务教学前,要做好学生基本技能的培训。学生有了一定的基础,在学习巡线任务时就会得心应手。基本技能主要包括机器人小车的搭建、小车转向的原理、传感器的使用、马达的控制、常用编程语句的使用等方面。
其中,最直观的就是机器人小车的搭建。在教学过程中可以从小车搭建过程入手,在机器人不断成型过程中,学生的成就感,兴趣会得到逐渐提高。教师要充分利用学生的兴趣,在搭建过程中讲解各部分的原理,特别是要着重讲解如何利用左右轮的差速来实现小车的转弯。
程序是机器人的灵魂,学生的机器人小车搭建好后,就可以让他们学习简单编程语句。首先,可以利用驱动马达语句实现机器人小车的移动。然后,让学生探究左右电机输出不同的功率与转向的关系。一般先让学生实现左右转向,再练习180度调头和其它精确度数转向,逐步掌握转向的方法。
基本技能训练里面传感器的使用是难点,为了破解这个难点,不同的机器人可以采用不同的教学方法。这里我们以乐高机器人为例,设计了三个任务,把传感器的使用和基本程序模块调用结合在一起进行教学。
第一个任务是利用程序控制显示屏。此任务的目标是让学生显示自己的名字在显示屏上。
第二个任务是让学生读取颜色传感器的反射值。学生通过操控颜色传感器,能够学会传感器与控制器的连接方法,并能体会到颜色传感器就是机器人的“眼睛”,要让它来感知环境就要靠学生设计的程序。完成了这项任务,学生在学会了传感器的使用同时还初步掌握了循环语句的使用。
第三个任务则是读取颜色传感器看到的颜色,并用文字显示在显示屏上。此任务对颜色传感器的使用进行了更深入的探究,更为重要的是,在这个任务里的程序还用到了判断逻辑,也就是乐高编程里面的切换模块。
通过这三个任务,学生基本能掌握机器人巡线的基础技术,当教师在进行下一步教学时,学生能较易理解各种巡线技术的原理,而不再是照抄网上的或者老师的程序。
2由浅入深地学习各种巡线方法
机器人巡线有多种多样的方法,但一般都要先要侦测自己的位置,确定和线的关系,然后驱动马达调整位置并前进。
从使用传感器数目上来分类可以分为:单传感器巡线、双传感器巡线以及更多的传感器巡线。从巡线效果上来说,当然是传感器越多效果越好。但是,一方面中小学生所参加的竞赛活动大部分都限制颜色传感器数目;另一方面,传感器使用得越多,设备购置费用越高,所以参赛时以3个以下的颜色传感器为主。
从巡线所使用的逻辑上來说有两段式、三段式、斜率式、PID巡线。这几种巡线逻辑难度是逐步递增,当然巡线效率、机器人行走的平滑度也是依次提高。
从多次培训的经验上看,要想取得良好的培训效果,一定要让学生按从单传感器到多传感器,从两段式巡线到其它高级巡线的方式进行培训。如果一开始就讲最难的巡线方法,学生往往只能听得一头雾水。
在培训中,让学生在学会先利用一个传感器读取反射值,根据反射值的大与小,来调节AB电机的转动,其伪代码如下:
While 没到终点 do
Begin
If 传感器在黑线上 then
驱动A电机离开黑线
Else
运动B电机靠近黑线
End
这样就可以控制机器人沿着黑线左摇右摆地前进,这就是二段式巡线法。虽然机器人还很慢,但总归是开始巡线了。
学生学会了二段式巡线,在实践中就会发现这种巡线方式很慢,不能通过虚线和一些复杂的路口。此时引导学生探究,引入三段式巡线,即机器人不仅只能左右摆动,还有直行的机会。
其伪代码如下:
Begin
While 没到终点 do
Begin
If 传感器在黑线上 then
驱动A电机离开黑线
Else
If 传感器靠近黑线 Then
同时驱动AB电机直行
Else
驱动B电机靠近黑线
End
学会三段式巡线后,应逐步增加传感器,可以提高巡线的精度。传感器增加后就会形成判断语句嵌套,因为学生编程接触的少,教师要在这里对逻辑进行重点讲解。
有了前面的基础,对于有能力的学生还可继续研究斜率巡线和PID巡线。
3在实践中不断练习,锻炼学生的逻辑思维
学生学会了巡线的基础知识,更重要的是要让他们多练习。学生在实践过程中一定会遇到多种多样的情况,比如各种路线:直线、S弯、大折线、虚线、左路口、右路口、T字路口、十字路口。比如环境光线的变化、路面摩擦力的改变、机器人电力的大小等。指导教师一定要让学生多发现问题,先让其尝试自行解决,当他们实在没有办法时再给出思路提示。
以上是对竞赛机器人巡线任务教学方法一些经验总结,巡线任务是机器人一项基础功能,虽然对于初学者有一定的难度,但只要教师按文中所提的方法施教一定能取得良好的教学效果。