一种面向儿童实物编程方法及系统的制作方法

文档序号:9328171阅读:2178来源:国知局
一种面向儿童实物编程方法及系统的制作方法
【技术领域】
[0001]本发明属于人机交互领域,具体涉及到一种通过实物进行编程的系统。
【背景技术】
[0002]随着现代科学技术的发展,各种各样的计算设备已经逐步渗透到了生活中的每个角落。从日常办公的计算机,到手持设备,甚至家用电器,到处都存在着各种各样的计算设备。而人们如何与这些计算设备进行更好的交互,方便操控这些设备,也一直是人机交互领域研究的热点问题之一。同时,越来越多的儿童也有了使用计算机的机会,他们利用计算机玩游戏、浏览网页、收发信息、进而学习知识、了解社会、认识世界,计算机正在改变着儿童的生活与学习方式。随着儿童使用计算机的深入,儿童不再满足于仅仅使用计算机,他们渴望开发自己的程序,特别是制作游戏。因此如何以适合儿童的方式给他们提供高技术产品,已成为研究者的主要目标。让儿童更好的接受和理解身边发生的一切,最好的方式就是让他们直接去动手实践操控。因此,让儿童利用计算设备进行编程是满足这些需求的更有效的方式。
[0003]传统的编程通常是通过键盘输入文本语言来完成。这种编程方式对儿童而言,理解和使用起来很不方便。儿童很难记住和理解程序语言的语法、逻辑关系和程序架构等非常专业的知识。实物编程向儿童提供了一种编程的可行途径。实物编程通过触觉、物理感知等技术与实物交互,再将实物逻辑转化为程序逻辑来进行编程。通过实物编程系统,儿童可以对程序语言的逻辑有更加直观的理解。程序不再是一行行枯燥的代码,而是一组形象甚至一组实物的组合,儿童通过对实物的拼接组合,就可以完成普通程序语言通过键盘输入代码完成的工作。实物编程的特点决定了它更适合儿童进行编程操作。当前已经有一些实物编程的工作,主要可以分为两种类型。一种基于内置电子模块的实物编程比如DigitalConstruct1n Set, roBlocks,另一种是无电子模块的实物编程比如Tern。基于电子模块的实物编程是将电子设备嵌入实物编程块,通过编程块中的内置电子模块来向系统传递编程块相关语义信息。内置电子设备的实物编程系统虽然编程能力强,但普遍成本较高。而无电子元件的实体编程的语言模块的语义是通过摄像头或数码相机等视觉捕捉设备获取的,成本较低,但是也存在遮挡问题,并对环境光有一定要求。此外,很多系统在儿童编程中很少提供反馈。综合考虑,本发明提出了一种面向儿童的实物编程系统,儿童可以通过该系统进行编程的学习和操作。此外,本发明可用于新手编程的场景,让新手通过实物交互尽快理解和掌握编程的基本概念。

【发明内容】

[0004]本发明通过让儿童使用实物编程块来完成编程行为,解决了儿童学习编程的难题。本发明的目的在于为儿童提供一种实物编程方法及系统,使得其可以摆脱编程语言繁冗的语法,专注于程序设计本身。
[0005]本发明的技术方案为:
[0006]本儿童实物编程系统如图1所示。其特征在于包括若干实物编程块、图像采集单元、实物编程处理单元、迷宫地图生成模块,迷宫问题生成模块、得分统计模块、用户登录模块、实物编程显示环境的输入输出设备(部分内容参见发明:一种实物编程方法和系统,发明号:ZL201110079139.6)。所述的实物编程的序列是通过编程图像采集模块进行图像采集,输入到计算机进行语义分析,之后进行程序的执行。
[0007]1.所述实物编程块是表达实物编程语句的载体。在每个实物编程块表面均贴有TopCode计算机视觉识别码和编程语义图形,这样一方面便于计算机的识别和处理,另外也方便了 J L童理解和记忆不同的实物编程块的语义。实物语义是通过摄像头采集并发送到电脑立而。
[0008]进一步的,实物编程块分为四大类:第一类是开始结束编程块。有开始和结束两种编程块,表示程序的开始和结束;第二类是方向编程块,包括直行、左转、右转三种种编程块,表示迷宫中虚拟人物行走的方向;第三类是循环编程块,包括循环开始、循环结束编程块用来标示一个循环的起始和结束,使用时中间加入表达循环次数的数字块。第四类是据子块,包括从I到9的九个数字编程块,用来代表循环的次数。
[0009]进一步的,所述的摄像头是用于采集实物编程的程序。摄像头通过USB 口与计算机相连,每隔一段时间,由计算机控制摄像头对用户摆放的实物编程块进行拍照,并将拍好的照片传给计算机上的实物编程处理模块。
[0010]2.所述编程图像采集模块,定时发送采集命令,采集摄像头拍摄范围内的实物程序,并将采集到的图像发送到计算机内部的实物编程处理单元。
[0011]3.所述实物编程处理单元存储所述实物编程显示环境的语法语义判定规则,每一所述实物编程块的表面设有一计算机视觉识别码和一语义图形;所述实物编程处理单元用于判断所述图像采集单元当前采集的实物编程块序列所对应的功能语义序列是否满足所述实物编程显示环境的语法语义判定规则,并根据判断结果反馈提示信息。
[0012]4.所述实物编程处理单元提取实物程序的图像,结合迷宫地图,进行分析理解和语义处理,然后给出编程反馈。
[0013]进一步的,编程反馈主要是语音、图像和文字反馈。
[0014]进一步的,实物编程处理模块对实物程序进行识别理解和语义分析,给出对应的功能语义序列。
[0015]进一步的,实物程序处理模块根据功能语义与内部迷宫地图进行匹配,判断实物程序的正
[0016]确与否,并给出实时的反馈信息。
[0017]5.所述的迷宫地图,是由至少一条从起到到终点的可行路径组成,路径的存储有特定的规则,路径上有若干试题。
[0018]进一步的,按照任务在地图中所占单元格数,将迷宫任务分为三级:小型5*5的迷宫(简单任务),第二级中型7*7的迷宫(中等难度的任务),第三级大型9*9的迷宫(复杂的任务)。
[0019]进一步的,迷宫路径上的试题(或称为问题)是由出题规则给出题目类型和难易程度,并在运行阶段随机载入相应的试题。
[0020]6.所述的迷宫地图,是在一个10*10的方格区域,由专门的迷宫自动生成算法实现的迷宫路径。
[0021]进一步的,每种迷宫路径上的试题数量不同,小型迷宫的是3个,中型迷宫的是5,大型迷宫的试题数量是7。
[0022]7.所述的迷宫生成算法,是根据迷宫的大小,设定初始和终止单元格,之后用深度优先算法,生成可行路径就构成了完整的迷宫。
[0023]进一步的,可行路径的生成算法,首先是根据初始化10*10地图的单元格(如,可以置初值为I),根据设定的任务类型,在地图中选取迷宫的一个开始点,之后遍历可行的路径,再根据任务类型,随机加入不同数量的问题标记,最后打印输出迷宫题图。
[0024]8.所述的问题生成模块是根据用户信息、任务信息产生的迷宫试题。
[0025]进一步的,迷宫中的试题是由问题生成模块产生,它是根据出题规则从当前的试题库中选出,并在系统运行阶段加载到游戏中。试题分为3类,分别适合小班、中班、大班不同年龄儿童。题目有语文、数学、常识题等。试题存放在试题库中。
[0026]9.所述的得分统计模块是根据迷宫游戏任务难度和试题难度,答题时间以及是否回答正确来统计用户得分,并实时给出文字形式的分数结果。
[0027]10.所述的用户登陆模块是记录和维护用户基本信息和使用情况,如,使用系统的次数,每次的问题和得分信息等,并将其存储在用户信息库中。
[0028]11.所述系统还包括语音输出装置、鼠标和键盘输入设备,所述实物编程处理单元分别与所述语音输出装置、鼠标和键盘笔连接。
[0029]本系统在现有的基于文本的计算机编程语言上,通过计算机视觉和人机交互等技术,实现了支持儿童的实物编程系统,极大的简化了儿童以及新手学习编程的过程,使儿童可以将精力集中在解决问题和处理程序逻辑本身,尽量避免了编程语言语法学习的困扰。而且,在系统中加入了与儿童年龄相关的试题,在编程的同时,让他们学习和巩固学到的知识,并在游戏之后给出一个成绩,增加了系统对于儿童的吸引力。由于本系统容易实现且成本低廉,所以具有很好的推广潜力。在儿童教育、家庭娱乐、儿童编程学习等环境下,用户都可以通过完成系统中的任务来学习编程相关知识。
[0030]与现有技术相比,本发明具有如下的优点和技术效果:
[0031]1.给出了一个儿童实物编程系统。
[0032]本发明给出的儿童实物编程系统,通过摄像头和计算机视觉技术实现了通过实物编程块进行编程的系统。并融合了儿童所接触的知识,提升了游戏的兴趣。另外,实物编程方法语法简单,使得儿童更容易学习和使用。
[0033]2.提供了更适合低龄儿童的编程方式。
[0034]本发明设计的编程行为,更适合低龄儿童。并且通过设计的得分系统,使得其路径上的题目更能符合儿童的年龄段和知识水平。
[0035]3.提供了一种迷宫自动生成算法。
[0036]本发明提供了自动生成迷宫的算法,根据给定任务的难度和问题数量,在一个10*10的地图上,自动生成迷宫可行路径和分支死路。
[0037]4.提供了一种分数统计规则和出题规则。
[0038]本发明提供了一种分数统计规则,可以按照儿童游戏时任务的难度、问题难度、回答情况和答题时间等的归一化后加权求和,给出最终的得分。还提供了迷宫的出题规则,该规则利用儿童的信息以及近几次回答情况,来选择合适的题目。
[0039]5.支持实时的多媒体反馈,使程序调试更加便捷。
[0040]系统支持在每次对于用户编写程序的编译分析后,通过图像和语音等多媒体方式给以用户反馈,使调试过程更加容易。
[0041]6.成本低廉,易于推广。
[0042]相比于其他的一些实物交互系统,本系统的实现不需要特别昂贵的交互设备。
【附图说明】
[0043]图1本系统结构图;
[0044]图2迷宫生成流程图;
[0045]图3本系统的基本处理流程图。
【具体实施方式】
[0046]为了使本技术领域的技术人员更好的理解,下面结合附图和实施方式对本交互方法作进一步的详细说明:
[0047]在介绍系统流程之前,先给出迷宫生成流程,如图2所示。首先选择任务对应迷宫地图大小,将迷宫地图的二
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1