创客教育视野下“计算机网络”课程实验设计
引言
在建设创新型国家的进程中,需要一大批具有创新能力的人才。创新型人才的培养,既是大学的使命,也是社会的共同期待。在《教育部关于全面提高高等教育质量的若干意见》中,明确支持本科生参与科研活动,早进课题、早进实验室、早进团队;要求加强实践教学管理,提高实验、实习实训、实践和毕业设计(论文)质量。当前,各高校十分重视教师以科研促进教学、教学与科研统一,以此促进创新型人才的培养;各用人单位越来越看重毕业生的实际动手能力和项目实践能力,显现出社会对创新型人才的渴求。但与此相矛盾的是,学生受限于知识结构,在本来就非常短暂的项目实践过程中,还需要花费很长时间用于底层技术的学习和重复性工作,使“做中学”实施起来比较困难;再加上由于硬件实验设备的封闭性,不利于教师结合实际应用进行课程实验设计,这就在很大程度上抑制了学生创新能力的提高。
如何在课程教学中引入结合专业应用的实验内容,以引起学生的学习兴趣并促进学生对专业的认知;如何引导学生更早地投入完整的项目实践中,从而在更为连续持久的项目实践中提高创新能力,仍是当前教学研宄需要思考和解决的重要问题。为此,本文以测控技术与仪器专业的“计算机网络”课程实验为例,分析其教学实践中存在的不足,试图在创客教育理念指导下构建创客学习环境,并在此环境下设计课程实验。
一创客教育
“创客”源于英文“Maker”,是指出于兴趣与爱好,努力把各种创意转变为现实的人。广义上讲,创客不仅包含了“硬件再发明”的科技达人,还包括了软件开发者、艺术家、设计师等诸多领域的优秀代表;本文所提的创客主要指前者,即利用开源硬件和互联网将各种创意变为实际产品的人。
创客运动(MakerMovement)是创客们通过自己动手(DoItYourself,DIY)或与他人合作(DoItWithOthers,DIWO)创造出独创性产品的行动。创客运动的产品大多开源,其他人可以利用所获得的文档获取产品信息或重新搭建。创客运动是一种具有划时代意义的新浪潮,将实现全民创造,推动新工业革命。
开展创客活动的场地被称为“创客空间”。《2014年地平线报告(基础教育版)》认为“创客空间”是促进基础教育学习变革的数字策略之一,将其列入未来5年内影响基础教育12项关键技术的大名单。《2014年地平线报告(高等教育版)》则预计了未来几年学生由消费者到创造者的角色转变趋势。
当创客文化进入校园,学校参与到创客运动中,便形成了创客教育(MakerEducation)。创客教育融合信息技术的发展,开拓了创新教育的新园地[6]。即使在没有高额设备经费投入的情况下,每间教室也可成为创客空间。通过在创客空间中自主、开放氛围中开展的“创客”活动和课程,学生进行碰撞、分享,接触最前沿的技术,动手实现其想法,并充分激发想象力,培养创新能力。在这样的方式下,创客正柔软地改变着教育。
创客教育目前还未正式作为课程标准体系中的内容,而是主要应用于学校的一些学生社团中,因此还远不足以展现其应用价值。创客教育作为“做中学(LearningbyDoing),’的延伸,强调学生主动思考、设计和制作,以实现基于创造的学习;创客教育受信息技术支持,学生一方面可以充分利用网络资源进行创新设计和产品创造,一方面通过网络交流、分享,激发创造热情,获得创意启示;创客教育指向全人发展的全人学习(WholeLearning),而这种全人发展是以创造力发展为核心的[8]。鉴于此,越来越多的教育工作者呼吁将创客教育带入教室、引入课程教学,而且不仅是整合于工程技术类和艺术设计类学科,甚至应该整合于学校的课程体系、整合于各个学科的教与学过程。
总体上,创客教育对促进素质教育的发展有重要意义。创新的核心是人,人的创新能力培养重在以兴趣为导向的素质教育。创客教育的实施可进一步拓展实验者的体验和想象力,提高实验者的动手创造力,这正是建设创新型社会对素质教育提出的要求。
创客教育也有助于提高学生对课程的学习兴趣。如北卡罗莱纳大学“程序设计导引”课程中使用开源硬件Arduino进行C语言的教学,用C语言控制微处理器及其相关硬件、通过建立库函数扩展C语言,这些内容虽涉及硬件,但由于Arduino己对这些硬件进行了封装,实现了硬件的软件化,对学习者几乎无硬件基础要求,这就使学生基于Arduino学习C语言成为可能。实践表明,学生因为可以立即发现这款开发板的诸多用途,所以使用Arduino这样一个小型、便宜的“掌上实验室”可以很容易地激起他们的兴趣。
创客教育对于提高课程设计的系统性和完整性也有重要的作用。如在嵌入式系统的课程设计中,学生在创客教育环境下更易看到嵌入式系统课程的复杂性和挑战性;相比重视嵌入式系统的底层技术层面,其课程设计的内容可以更加完整、更具系统性;利用Arduino及网络资源,其课程设计也更易于实施。但其中可能存在一个问题,即开源和重用设计很难鉴定出作品是否为学生亲自设计。文献[12]给出了一种方案,在评价项目和开源代码社区的联系时,最严格的一条是要求所有外部资源(包括同班同学)必须严格注明引用出处;如果项目包含了大量外部资源,只是简单集成也认定为有效。因此,达到了引导学生正确注明引用的目的。学生可能在开发具体模块方面受益不多,但在系统集成方法和技巧、代码阅读和理解等方面却非常受益,因此学生对此种方式的课程设计给出了很高的评价。其实践结果表明,源于Arduino的使用,学生作品较前几年的作品质量更高,也更具创新性。
文献进一步构建了智慧学习的概念框架,设计了四种智慧学习模式,并初步设计了包括专题学习、创意构想、设计开发和实践应用四个主要环节在内的“创客”学习模式。文献[14]认为适合创客教育的创客空间,即校内创客教育培养环境,可以大大提高教学效果,也是创客教育得以实现的重要物质保障。这些研究的继续深入,对于推进学校的创客教育和创客教育融入课程的实践均有重要意义。
二“计算机网络”课程改革现状
随着科学技术的发展,通信技术、计算机技术和控制技术之间的融合成为必然趋势。特别是随着物联网概念的提出乃至蓬勃发展,使得这种融合的必要性更加凸显。在此背景下,在测控技术与仪器等非计算机专业开设“计算机网络”课程便显得相当重要了。限于经费和学生的知识结构,目前非计算机专业“计算机网络”课程的教学改革主要呈现出两个方向:一是优化教学内容,改革教学方法,从不同角度采取措施以提高学习兴趣;二是为解决硬件实验设备不足的问题,采用抓包软件等工具辅助进行虚拟实验以降低成本,增强对网络工作过程的感知,加深对各知识点的理解,同时借以提高师生的研究能力。
以上研究一般笼统地在“非计算机专业”层面上进行,并没有结合具体的专业应用。在如何面向非计算机专业来设计具有专业特色的实验和相关的教学内容等方面,还鲜见文献论述。
三“计算机网络”课程实验设计
一般的“计算机网络”课程应用层实验主要是制作并发布简易网站或网页设计。本研究所设计的实验用于取代原来的应用层实验,从而使课程实验落脚于测控技术与仪器专业应用。
1实验目的和内容
本实验旨在通过搭建嵌入式服务器模拟工业现场监测,以加深理解计算机网络技术在工业控制领域的实际应用;通过编写相应的Web程序,以加深理解HTTP协议工作原理。本研究供选择的实验如表1所示。
2开发工具的选择
开源硬件作为撬动创客教育实践的杠杆,成为实践者手中最重要的工具。本研究的实验设计选择使用Arduino作为嵌入式服务器的主控制器。Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(Arduino开发环境),且得到了TI、Mathworks、Microsoft、Google等诸多着名商家的支持,现己成为创客们主要的开发工具[23]。Arduino价格低廉、方便应用,其开发的以太网扩展板自带有Ethernet库文件。用户在掌握HTTP协议基本原理后,只需要了解其函数用法,即可进行创新应用设计。
3实验方法与流程
为更好地实施本次实验,支持创客教育实践,本研究从多个角度进行了创客教育环境的建设,并将其渗透到实验实施的多个环节。
(1) 前期准备。主要包括:创客空间的建设。主要是指开放全部专业教学实验室,满足学生用于实践和交流的场地需求;成立“西邮创客空间”,并建立相应的微信公众号,通过线上和线下的活动,虚实结合,服务于全方位的交流互动。Arduino基础知识的普及。受限于课时和课程重点,Arduino基础知识的学习主要安排在课外时间进行,其内容主要通过微信平台发布。为降低学习难度和增加吸引力,这些内容结合具体应用案例以单个知识点制作。
(2) 实验任务部署。教师主要进行实验内容说明与安排组织。实验任务主要以微课程形式发布,包含实验内容涉及原理的回顾和实验操作环节的指导。
(3) 具体实施。Web程序设计可自行完成,也可参考实验材料完成。每3个学生自由组合为一个实验小组;各小组在有余力的情况下,可互换实验器件,并进行相应设计。在实施的过程中注重实验氛围的营造,强调平等交流、分享、诚信。对作品严格要求,所有外部资源必须严格注明引用出处。这些作品涉及网络的基本原理相同,使更广范围的交流成为可能。
(4) 实验检查与系统总结。教师在实验的过程中仔细观察学生的实验情况,做好答疑和问题汇总,同时增加答辩环节,进行充分交流和系统总结。
4实验案例
在本次实验中,“彩虹队”实验小组所搭建的工业现场环境实时监测系统硬件原型如图1所示。以太网扩展板米用层叠式设计,可以叠加在Arduino控制板上,与Arduino—起构成嵌入式服务器。温湿度传感器型号为DHT11,以单总线形式输出温湿度数字信号,对其操作可通过相应的库函数实现。嵌入式服务器实时采集并发布环境温湿度信息供客户端访问,客户端访问显示的结果如图2所示。
四结论与展望
本文针对非计算机专业的“计算机网络”课程与专业应用结合不紧密的问题,通过创客教育与课程教学的融合,将基于Arduino的嵌入式服务器设计作为测控技术与仪器专业的“计算机网络”课程实验,解决了课程教学所面临的问题。在实施方面,由于学生己有一定的电子技术基础和C语言基础,并对提前发布的相关实验材料做了充分预习,所以他们都能顺利地完成实验任务。实践结论为:
(1)在创客教育视野下设计与专业应用相结合的课程实验,使低年级学生有机会在系统层面上认识所学课程与专业的紧密关系,因此能激发他们的学习兴趣。由于学生不仅可以在己有硬件的基础上自行编写网页、模拟发布工业现场监测信息,还可以进一步自己动手改变监测与采集的参数种类、扩展不同应用,因此学生的积极性被充分地调动起来了。在本实验基础上扩展的毕业设计作品《基于Web的文物环境参数监测系统》,还被陕西省自动化学会评为了优秀毕业论文。
(2)以Arduino为主要工具的创客教育,对于提高学生的创新实践能力、为学生提供自我教育的机会均非常有益。例如,以此项实践为开端,部分同学后续参加了基于Arduino的创新项目实践活动,在“挑战杯”等多项学科竞赛中获奖,申报并获得了多项国家级、省级大学生创新创业训练计划项目等。
通过总结以上实践经验,本研究还基于Arduino,利用无线局域网、蓝牙、GPRS等不同领域技术,结合专业应用进一步开发了系列网络实验项目。这些实验项目丰富了实验内容,有效促进了课程与专业的进一步结合。
为了推广实践成果,以在更多课程中展开创客教育,需要相应学科的教师首先成为“教育创客”。当前的做法是通过动态评审机制,吸引部分教师项目加入创客空间。创客空间为项目提供基础技术支持和活动服务,同时也要求这些项目进行定期分享交流。通过这种形式,部分教师掌握了开展创客教育的基础技术。但创客教育对于“教育创客”的要求是全面的,这方面工作还需要多方的共同推进。
当前,国务院将加快构建众创空间作为推进大众创新创业工作的首要重点任务[26],教育部对深化高校创新创业教育改革、努力造就大众创业、万众创新生力军提出了具体要求,给创客教育带来了新的发展机遇。全面探索创客教育教学内容和方法体系,将是下一步研究的重点。
上一篇:计算机网络教学模式探讨