1机器人教学日记广东汕头华侨中学吴爱玲在准备机器人创新赛的过程中,作为指导教师的我主要负责指导学生完成以下两方面的工作,一方面是指导学生完成机器人硬件的改装和集合工作;另一方面是指导学生完成程序的编写和调试工作。现将指导过程本人的一些心得体会介绍如下:组装和测试硬件这是我们学校第一次参加机器人创新赛,所以没有现成的经验可供借鉴与学习,学校也没有现成的设备可供使用,有的只是几个能力风暴机器人,上一年我们用于机器人足球赛的,考虑到我们之前为机器人设计的功能,再面对眼前的能力风暴机器人,我们这才深深地意识到原来我们手中可用的硬件资源基本上为0,我们的硬件改造工作就是这样从0开始的。在指导学生完成硬件改造与组装工作的过程中,让我体会最深的有以下几点:一、引起学生学习的兴趣——假借于物常言道,兴趣是成功的一半。要让学生学好一门知识,首先要能引起学生学习的兴趣。在准备创新赛的这四个月的时间里,我更为深刻地体会到这句话的含义。作为指导教师的我,我无法将兴趣强加到学生身上,但我一直努力做到:在有限的时间内,将机器人的神奇魅力淋漓尽致地展现在学生面前,让学生们发现机器人的神奇,从而对其感兴趣,产生一种学习的欲望。由于经费有限,所以我们一开始就知道:我们是不可能向机器人制造商购买成品配件来使用的,唯一可行的办法只有让学生自己到二手市场购买零件和相关的材料然来制作。对于这项工作,学生们还是非常感兴趣的,他们带着满腔的热情投入了这项工作,有时为了一个小小的零配件的制作学生们不惜跑到澄海那边的玩具制作厂向师傅们请教……学生们的兴趣与热情是支持他们完成这项工作的最大支柱,如果没有那份对机器人的热爱与钟情,我相信做为一个高二级的学生,面对着巨大的学习与考试压力,是不会再愿意花时间在这上面的,当然在这其中离不开指导老师的支持与鼓励。二、指导学生从易到难组装硬件——逐级闯关我们为机器人设计了四大功能:(1)无线摄像即时传输功能;(2)消毒药剂喷洒功能;2(3)机械臂实时排障功能;(4)DNA的验证功能。如果要实现这四大功能,学生们就需要为机器人添加各个功能所需的硬件。考虑到功能比较多,而硬件的改造与组装又是学生们的弱处,所以我鼓励学生从易到难做起,一步一步来,逐级闯关。按照这个原则学生们循序渐进地为各个功能展开了硬件的改造工作,实践证明这一做法更能让学生在各个阶段集中精力地搞好相关硬件的调试工作。而在此环节中让学生们养成记录的好习惯是我们指导教师采取的另一种指导方法,在项目一开始的时候,我们就为学生制作了一张实验表,用于记录每次实验的数据和相关的情况,在项目的开展过程中,我们一直要求学生用电子文档的形式记录下每次实验的情况。几个月的实践证明:这种方式能够更有效地帮助学生完成数据的收集与分析工作,从而更有效、更科学地帮助学生从中发现问题,从而解决问题。三、培养学生独立解决问题的能力——转换角色硬件改造工程的最重要的环节就是集成,在集成的过程中学生们不仅需要保证各个零部件在单独运行的条件下能够顺利运转,而且需要保证在集合成整体的条件下也能够正常运转。由于有前阶段的调试做铺垫,所以学生们在开展硬件集合工作的时候还是进展得非常顺利的,一切都在学生的掌握中顺利地进行着,当集合到第四个零部件——水箱时,我们一直担心的问题出现啦……,水箱在单独运转时一切功能正常,但集合进机器人就无法运转,正当学生们不知所措时……“直接告诉他们问题的所在?”“还是让他们自己去发现问题,解决问题?”两种想法在我的头脑中碰撞着,最后我决定放开手让他们自己试着去寻找解决问题的办法,我觉得:养成独立思考问题、解决问题的能力远比他们及时解决这个实际问题来得更加重要,更加有意义。“其实我也不会”我满脸疑问地并问学生们“是不是有什么电子器件可以实现开关的功能吗?”这次我学会了化被动为主动,主动先向学生“求助”。时间一秒钟一秒钟地过去啦,学生们苦苦思索着,一会儿翻电路书,一会儿摆弄机器人看电路板,一会儿……突然间戴剑文同学灵机一动,指着桌面上的电源的开关“继电器,老师,我们可以用继电器来实现两种电流的切换,因为继电器具有电源开关同样的开关功能……”问题解决啦,我们彼此会意地3笑啦。其实,做为一个指导老师,我们在指导学生的过程中学生会向我们提出这样那样的知识疑问,这里面可能会涉及到各个学科的知识,我们不可能对所有学科的知识都非常地熟悉,这时候我们应该怎么办呢?如果用一句老话来讲就是老师在教学生的过程中应该授之以渔,还是授之以鱼,我相信答案每个老师都非常地清楚,其实做为指导教师的我们不必要事事为学生做好,准备好,有时放开手,调换一下身份,当一回学生,让学生当一回老师来帮我们解决问题也未尝不是一件好事。四、借助各学科教师的力量——扩大知识面问题终于解决啦,可是新的问题又出现啦,“继电器?“继电器是什么样的一种电子器件,如何才能将它应用到我们的机器人系统中来?”现在我们终于体会到了为什么有些人说:机器人是一个多学科集成应用的领域,在机器人的制作过程中我们不仅需要计算机方面的知识,还需要物理、数学等各个学科的综合知识。所以我建议学生们带着问题去物理实验室跟物理老师们共同探讨,在他们的努力下他们终于弄明白了断电器的工作原理,还学会了如何安装继电器,看着他们迫不及待地想把刚学到的知识马上动手来实践一下,我深深地体会到:应用知识在教学中的所起到的重要性。在了解了继电器的相关知识之后,学生们很快就完成了硬件的集成工作,功能一切运转正常,看到此幕,我们都会心地笑啦,一个新生的婴儿就这样诞生啦……智能机器人是一个能力培养的综合平台,如果想要很好地应用此平台,那么学生就需要掌握好各学科的综合知识,如何才能扩大学生的知识面?这并不是一个指导老师所可以做到的事情,我们也会有不懂的时候,借助各学科教师的力量,让学生把不懂的问题向他们请教,这也不失为一种好办法。编写和调试程序程序是智能机器人的灵魂,让学生们通过为机器人编写程序来学习程序设计的知识是程序设计最好的教学手段。在准备比赛的四个月的学习过程中,学生们通过为机器人编写程序获得了成功的喜悦,也建立起了成功的信心,更为重要的是培养了他们对程序设计学习的兴趣。4做为指导教师的我深深地体会到:智能机器人作为程序设计的新的学习载体,它从根本上解决了以前程序设计教学中存在的一些问题——程序设计的学习咕燥无味,学生对其总提不起兴趣。以下是本人在指导学生编程的过程中所总结出来的一些心得体会,归纳起来有以下几点:一、选择合适的编程软件——VJC平台在程序的编写方面我们为学生提供的是一个图形化交互式C语言——VJC编程平台。当初之所以采用这一平台,是因为通过对这一平台的试用,我们深深地感受到:VJC的操作简便,编程界面中有活泼明快的图案和简短的文字说明,采用的是直观的流程图编程方法又辅之以代码编程,使得编程能力处于不同层次的学生在编写机器人程序的过程中能够很好地发挥出自我的创造力。(1)简单易懂的流程图编程界面在流程图的编程界面中,如图一所示,学生只需轻轻移动智能机器人专用的图形模块由顶向下搭建流程图,就可以轻而易举地动态生成无语法错误的JC代码。流程图搭建完毕,程序也就已经编写完成。这种编程方式对于初学者来说,很能够调动其学习积极性,让他们体会到其实编程并不像他们想像中的那么难,即使他们在没有学过任何编辑知识的情况下,也完全可以做到编出一条没有任何错误的代码程序来。图一流程图的编程界面(2)功能强大的代码编程界面而对于一些编辑能力比较强的学生来说,在编写比较复杂的程序的时候,他们则可以从流程图编程界面转换到JC代码的编程环境下进行编写,如图二所示,这样他们就可以按照自己的意愿来对程序进行编辑、注释和修改,从而设计出更加复杂,功能更加完善的程序。在JC代码界面下编程,学生们更能发挥出其超强的编程能力,不用局限于各个功能模块5的限制,当然这种编程方式要求学生具有一定的编程知识,而且在编写完成之后学生需要进行一定的调试,改正程序中出现的一些语法错误,只有调试通过的程序才可以下载到机器人身上运行。图二代码编程界面二、不要忽视调试工作的重要性——调试程序考虑到VJC自带模块的功能是指机器人在一个非常理想化的环境下才可以达到的运行结果,在实际的运行中,机器人是完全不可能在一个非常理想化的环境下运行的,因为机器人的实际运行情况要受周围环境的不确定性因素和各种各样的外界因素所干扰。为了更好地开展程序调试的工作,做为一名指导教师的我采用了以下几个指导方法:(1)坚持填写实验报告在项目开始的时候我们就为学生制作了一张实验表,用于记录每次实验的数据。几个月下来,实践证明做法非常有利用程序的调试工作,因为学生每次活动的时间都是不连续的,每次调试程序出现的问题、解决的办法可能无法在同时间就完成,这时候实验表就发挥了它的辅助作用——帮助学生分析每次的实验结果;其次,一个项目下来,学生们通过积累下来的实验表也可以总结出程序调试工作的周期性,从而帮助学生在进行下一次项目的调试工作时更合理地安排时间。(2)软硬件结合来完善程序在程序的调试过程中学生会发现程序中存在的许多漏洞,这些漏洞的解决是不是一定可以通过完善程序来解决?经过实践,我们得出的答案是否的。有一次,学生在调试红外测碍程序时,刚开始的时候总发现机器人的测碍能力非常有限,几番对程序代码进行检查也都没有发现错误……正当学生的程序调试工作停滞不前时,6我建议学生将障碍物换一下,无意中我们就发现原来机器人自带的红外传感器本身就具有一些缺点。它对黑色或是较深颜色的物体并不敏感,而这种缺陷不是程序可以解决的……(3)在实验中验证程序参数的合理性我们都知道影响程序运行效果的另一大因素是参数,不同的参数值会导致不同的运行结果。参数有一个范围,在此范围内哪一个数值才是最佳的参数呢?我们不得而知,但是我们可以通过程序的实际运行结果来加以验证,在实验中得出最佳的参数值。例如:学生在调试“红外检测障碍物”程序时,就从实验中验证出:如果机器人的运行速度过快的话,就会对周围物体的检测失灵。根据实验的结果他们开始调整程序,将机器人运行的速度一步一步地加以调整,最终从实验中获得了一个最佳的参数值,此速度值不仅能够保证机器人在运行过程中有足够的时间来感应外界的物体,而且可以保证机器人顺畅地执行下一步的指令。果然经过这一改动,程序的运行效果大大改善啦,由此可见一个合适的参数值的重要性。(4)以编程思路做为编写程序的指导思想漫无目的地编写程序,想到哪编到哪只会导致程序杂乱无章,特别是对于比较大型的程序,编程思路更显得重要。例如:学生在编写自由行走程序时,由于自由行走没有固定的行走模式,谁也无法断定哪种自由行走的模式是最好的,是正确的,所以在指导学生的时候我要求学生把机器人自由行走的思路定下来,然后根据编程思路来编写程序。实验证明:在调试时学生们会遇到很多问题,但是由于有编程思路做为指导,有了目标,他们就可以朝着这个目标去解决难题,从而攻破难关,如果一开始没有把思路定下来,可能他们连问题出在哪都不清楚,又怎么能解决问题呢。通过指导学生我深深地体会:让学生学会将具体的活动抽象为编程的思想在编写程序的流程中具有不可忽视的重要性。在指导学生编程的过程中我也深深地感受到:程序编写工作虽然是咕燥无味的,但是机器人这一新的教学载体的出现在很大程度上为程度编写工作注入了活力,注力了趣味的元素,它让学生们编写的程序可以非常形象化地展示出来,从而更快更直接地让学生了7解到程序的运行结果,也在一定程度上激发了他们学习程序设计的热情与兴趣。