CN103456203A - 一种便携式实物编程方法及系统 - Google Patents

一种便携式实物编程方法及系统 Download PDF

Info

Publication number
CN103456203A
CN103456203A CN2013104147570A CN201310414757A CN103456203A CN 103456203 A CN103456203 A CN 103456203A CN 2013104147570 A CN2013104147570 A CN 2013104147570A CN 201310414757 A CN201310414757 A CN 201310414757A CN 103456203 A CN103456203 A CN 103456203A
Authority
CN
China
Prior art keywords
module
programming
labyrinth
identification code
semantic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013104147570A
Other languages
English (en)
Other versions
CN103456203B (zh
Inventor
王丹力
齐云凤
张洋
王宏安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN201310414757.0A priority Critical patent/CN103456203B/zh
Publication of CN103456203A publication Critical patent/CN103456203A/zh
Application granted granted Critical
Publication of CN103456203B publication Critical patent/CN103456203B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Toys (AREA)
  • Optical Communication System (AREA)
  • Selective Calling Equipment (AREA)

Abstract

本发明公开了一种便携式实物编程方法,本方法为:1)建立一实物编程处理和显示单元,迷宫识别模块根据所选迷宫地图初始化实物编程处理模块并在显示模块上初始化迷宫信息;2)用户根据所选迷宫地图依次摆放实物编程块构成一队列,该队列中的实物编程块依次向所述无线处理模块发送无线信号;3)无线处理模块依次将收到的每一所述无线信号中的标识码发送给实物编程处理模块,将识别码转换为对应的程序语义信息,构成一程序功能语义序列;4)实物编程处理模块根据所选迷宫地图的语法语义规则检查当前程序功能语义序列是否正确,并给出反馈信息。与现有技术相比,本发明成本低、易于操作,处理效率高;提供实时反馈有助于用户的使用。

Description

一种便携式实物编程方法及系统
技术领域
本发明属于人机交互领域,具体涉及到一种通过实物进行编程的方法和系统。
背景技术
随着个人计算机和各种数字化设备的普及,计算机和各种数字化产品已成为我们的生活必需品,它们融入了我们的生活和娱乐,可以让我们更好的认识世界,了解世界。同时对于儿童来说,他们也有了更多机会使用计算设备。随着儿童使用计算机的深入,他们不仅仅满足于使用计算机玩游戏、浏览网页和观看视频,更希望能够自己编写程序来控制计算机。但是传统的文本编程方式并不适合儿童。这是由于儿童在学习文本编程时,除了需要记忆各种命令代码并能正确拼写外,还需要学习编程的语法规则、逻辑结构、系统架构等复杂概念。而这些知识对于他们而言很难理解,也很难记忆,并难以用文本写出正确的代码。近些年出现了一些的实物编程系统,儿童可以通过和实物进行交互来编写出同传统编程方式一样功能的代码,这样的编程方式更能吸引儿童,也更方便儿童学习和理解。实物编程方式向儿童提供了一种学习编程的可行途径。
专利一种基于红外和无线传输技术的实物编程方法和系统(申请号:201210251967)公开了一种实物编程方法和系统,它基于红外和无线传输技术,与电脑相连的无线处理模块通过轮询编程块序列获得实物程序语义,并通过计算机进行实物程序的映射和执行,来实现编程的任务。而该专利有以下不足之处:系统需要计算机作为逻辑处理和显示单元,系统成本较高,而且使用环境受到一定的限制;轮询编程块序列的实现方法使得系统处理速度较慢,实时性较差。
发明内容
针对上述问题,本发明的目的在于提出一种新的低成本、便携式实物编程方法,此方法是使用自制的LED Pad作为处理和显示单元来取代计算机,采用RFID、无线、红外、传感器等技术进行识别理解和通信,使得本系统具有更好的可移动性和便携性,并且整体的成本大大下降,另外,与电脑相比对应用环境的要求也大大降低。系统使用LED Pad进行迷宫游戏任务呈现,编程与运行状态的反馈。在LED Pad的显示单元上提供了编程正确与否的图像和声音反馈,同时在编程块上也提供了编程视觉反馈,这些都能帮助儿童快速定位错误编程块,学习正确的编程方式。另外,系统还扩展了编程概念,增加了带参数的实物编程块,使编程概念更加完整。本发明通过操作实物语句块进行编程,使得儿童可以摆脱编程繁冗的语法、大量的输入和复杂的编程环境,降低了儿童学习编程的门槛。
1)本发明的技术方案为:编程处理模块,所述实物编程处理模块依次将收到的识别码转换为对应的程序语义信息,构成一程序功能语义序列;
2)所述实物编程处理模块根据所选迷宫地图的语法语义规则检查当前程序功能语义序列是否正确,并给出反馈信息。
进一步的,所述实物编程块包含一单片机处理器、无线通信模块、红外发射模块及红外接收模块;所述红外接收模块收到前一实物编程块发射的红外信号后通过所述单片机处理器激活所述无线通信模块和红外发射模块,并向所述无线处理模块发送无线信号;其中,位于所述队列的第一个实物编程块上的所述红外发射模块始终处于激活状态。
进一步的,所述无线处理模块对已识别的标识码建立一实物语义序列,然后将所述实物语义队列发送给所述实物编程处理模块。
进一步的,若某一实物编程块从所述队列中移除时,即该实物编程块收不到红外信号,则该实物编程块发送移除信号给所述无线处理模块,同时关闭其红外发射模块;所述无线处理模块接收到该移除信号后,在所述实物语义队列中查询该实物编程块的标识码,删除该标识码及其后续的标识码。
进一步的,所述迷宫地图为设有RFID标签的纸质迷宫地图;所述迷宫识别模块为RFID识别模块;所述RFID识别模块根据放入迷宫读取区的所述纸质迷宫地图初始化所述实物编程处理模块;所述显示模块为一LED阵列;所述迷宫地图为有一定数量的单元格的迷宫,其中单元格与该LED阵列相匹配。
一种便携式实物编程系统,其特征在于包括实物编程处理和显示单元和若干实物编程块;所述实物编程处理和显示单元包括:迷宫识别模块、无线处理模块、实物编程处理模块、显示模块;其中:
所述实物编程块中包括一单片机处理器、无线通信模块、红外发射模块和红外接收模块;所述红外接收模块收到红外信号后通过所述单片机处理器激活所述无线通信模块和红外发射模块,并向所述无线处理模块发送无线信号;所述无线信号包括当前实物编程块的标识码;
所述迷宫识别模块用于根据所选迷宫地图初始化所述实物编程处理模块,并在所述显示模块上初始化迷宫信息;
所述无线处理模块用于依次将收到的每一所述无线信号中的标识码发送给所述实物编程处理模块;
所述实物编程处理模块用于依次将收到的识别码转换为对应的程序语义信息,构成一程序功能语义序列;并根据所选迷宫地图的语法语义规则检查当前程序功能语义序列是否正确,并给出反馈信息。
本发明的主要组成为:
1)一套便携式实物编程环境,包括实物编程处理和显示单元——LED Pad以及若干实物编程块。其中,LED Pad由实物编程处理模块、LED显示模块、无线处理模块、纸质迷宫、RFID识别模块、传感器模块、运行状态控制开关等组成。实物编程块包含一个单片机处理器、无线通信模块、红外发射模块及红外接收模块、LED显示单元等,其中,只有实物编程模块中的开始编程模块上红外发射模块处于开启状态,用于激活后续实物编程块的红外发射模块,从而保证未加入编程队列的实物编程块红外发射模块处于关闭状态,防止其无线通信模块被非正常激活向LED Pad发送信息。
2)LED Pad中的实物编程处理模块,用于接收无线处理模块传送的实物语义序列信息并根据对应的转换关系表将实物语义序列信息转换成对应的程序功能语义序列;同时判断当前功能语义序列是否满足实物编程任务的语法语义环境,并提供正确或者错误的图像和声音反馈;其中,实物编程处理模块包含有一单片机,以处理实物编程信息、控制程序运行状态和传感器模块。
3)LED显示模块是一个由发光二极管组成的正方形(例如8*8)的显示阵列,每个LED灯对应一个纸质迷宫的单元格。该模块提供系统主要的视觉反馈,点亮的LED灯代表迷宫中编程的当前位置。
4)无线处理模块包含一单片机和一无线模块(可参见上述专利,申请号:201210251967);其中,本方法中无线处理模块是根据实物编程块添加的顺序依次向实物语义数组中插入二进制标识码的方法进行排序的。
5)每个纸质迷宫正面是一个迷宫地图,其背面贴有一个唯一的RFID标签,可以被RFID识别模块识别,然后实物编程处理模块根据纸质迷宫初始化内部存储的虚拟迷宫信息。另外,纸质迷宫也包含反馈机制信息,本系统包含三种不同的反馈机制,分别为编程有反馈,编程无反馈和自由创作。
6)RFID识别模块是用于识别用户所选的纸质迷宫,初始化虚拟迷宫和反馈机制信息。
7)传感器输入模块,用于接收用户的输入信息,实物编程处理模块实时检测传感器的状态,并提供用户与系统交互的反馈。
8)LED Pad中包含有一个蜂鸣器,作为主要的声音反馈输出模块。
9)LED Pad顶部有一个运行状态控制开关,用于供用户选择编程/运行状态。实物编程处理模块检测用户当前的选择并控制LED Pad进入所选的状态。
10)实物编程块是系统的主要输入工具,实物编程块的组成和功能可参见上述专利。本系统中增加了带参数的方向编程块,其包含有一个可调节的波段开关,可以控制动作的执行次数,每一波段对应一执行次数。此外,块与块之间采用红外技术进行通信,通过红外发射及接收模块控制无线通信模块的工作状态,即开关,当实物编程块被添加到编程序列中,该实物编程块主动向无线处理模块发送信息。
其中,LED Pad为编程处理和显示设备,其取代了电脑主机和显示器,在系统中负责处理无线处理模块发来的实物程序,同时提供相应的程序反馈,是系统的主控制器和显示设备。当编程块摆放正确时,LED Pad和编程块给出编程正确的反馈;当编程块摆放错误时,LED Pad和编程块反馈错误信息。会显示一个闪烁的叉号。
其中,当编程块摆放正确时,LED Pad点了编程块对应路径上的LED灯;同时编程块上代表正确的LED点亮;编程块摆放错误时,在显示阵列上反馈一个闪烁的叉号,编程块上代表错误的LED点亮。
其中,运行状态控制开关有两个状态:编程状态和运行状态。对应于系统的两个阶段:编程阶段和运行阶段。编程阶段,系统接收实物编程块的输入,并根据其序列与迷宫进行匹配,给出反馈信息。在运行阶段,系统依次执行编程阶段时用户通过编程块编写的任务,并通过接收传感器区的输入与用户进行交互。
其中,纸质迷宫上印制有一定数量的单元格的迷宫(例如可以是8*8个单元格,这要与LED陈列相匹配),包括开始单元格和结束单元格,一条或者两条可行路径,途中经过若干个传感器图案单元格。用户需要使用实物编程块编写一条从开始单元格到结束单元格的路径。
其中,所述的反馈机制中的编程有反馈是指:在编程阶段,LED Pad的显示单元根据编程块摆放编写的路径实时点亮当前路径;编程无反馈是指:在编程阶段,LED Pad的显示单元并不会实时点亮路径,只有在成功到达结束单元格时给出正确的声音反馈并点亮整条路径。自由创作是指:该地图为一个空白画板,没有迷宫限制,用户可以利用方向编程块自由绘画路径和图案。
一种便携式实物编程系统,其特征在于系统包括一实物编程处理和显示单元LED Pad,和若干实物编程块;所述实物编程处理和显示单元包括实物编程处理模块、LED显示模块、无线处理模块、纸质迷宫、RFID识别模块、传感器模块、运行状态控制开关等;所述的实物编程处理模块与其他模块相连,并起控制器和处理器的作用;实物编程处理模块检测开关状态,识别所选迷宫,并将实物编程块的二进制标识码序列转换成功能语义序列,判断是否满足所选迷宫的语法语义规则,并根据判断结果的正误提供反馈;所述传感器模块检测用户输入,使用户与系统进行交互,参与到系统的运行阶段中。
所述的每一个实物编程块包括一单片机,连接有无线通信模块和红外模块,和两个用于反馈的LED灯;带参数的实物编程块除包含某些特定语义(如:上、下等)外,还连接有一个可以调节的波段开关,用于控制当前编程块的动作执行次数;红外模块用于激活添加到队列中的下一个实物编程块的无线通信模块,无线通信模块与LED Pad中的无线处理模块通信。
本发明的系统框架如图1所示,包括界面交互层、内部处理层和数据资源层。界面交互层是用户与系统交互的界面,其中输入包括用户拨动运行状态控制开关控制系统的状态,摆放编程块编写程序控制当前的迷宫出逃路径,运行阶段用户触发相应的传感器使运行得以继续;输出包括LED Pad中的显示单元提供当前编程和运行结果的图形化反馈,蜂鸣器播放声音反馈以及编程块上显示该编程块是否正确的LED灯。在内部处理层中,实物编程处理单元采集状态控制开关信息并控制系统当前状态,采集编程块序列的信息,交由无线处理模块和实物编程处理单元处理,结合迷宫的地图信息进行语法语义分析,经过处理后提供图像与声音反馈;系统运行阶段监测传感器输入并对其数据进行分析,判断是否正确触发传感器。在数据资源层中,语义转换规则库中包括各个编程块与对应语义的转换规则,地图库中为可供用户选择的纸质迷宫以及与之对应的系统内部用于初始化的虚拟迷宫,音乐库中存储有编程结束和运行结束后播放的音乐素材。
其中,实物编程处理单元检测状态开关的当前状态,并控制系统状态。系统状态分为编程阶段和运行阶段两部分。在编程阶段,系统接收用户实物编程块序列的输入,并进行相应的判断,提供反馈。运行阶段,系统按照编程阶段编写的路径将路径上各个单元格对应的LED灯依次点亮。
其中,实物编程块的具体信息可参见上述专利申请(申请号201210251967),本系统中传感器编程块包括光照传感器块、压力传感器块、旋钮传感器块,分别与LED Pad上的传感器输入端相对应。另外本系统增加了参数编程块,这类编程块为带有参数的方向编程块,用户可以选择1-4的参数,参数编程块的语义为对应方向编程块可重复执行参数步。
其中,实物编程处理单元根据语义转换规则将编程块的二进制标识码转换成对应的语义,并与当前任务地图对应,进行语义语法分析,判断该编程块的摆放是否正确。例如,二进制标识码0xA2、0xA4转换成向上方向块,0xB2、0xB4转换为向左方向块,0xE2对应压力传感器块等。
LED Pad在运行阶段按照已经编写好的路径依次点亮LED灯,同时,将正在执行的编程块的信息通过串口传递给无线处理单元,再由无线处理单元发送给相应的编程块。实物编程块收到信息后点亮与正误信息对应的LED灯提供相应反馈。当遇到传感器单元格时,实物编程处理单元实时检测传感器的状态,若对应的传感器被正确触发,则继续点亮下一个LED灯;否则,该传感器单元格的LED灯闪烁。
整套系统的连接结构图如图2所示。本系统利用单片机系统和Arduino平台,实现了一套支持儿童编程的便携式实物编程环境。传统的编程方式中,语法繁冗,规则复杂,大量的输入和复杂的编程环境等使之仅适用于受过专业培训的专业人员编程,对于儿童来说过于困难。本发明的实物编程系统极大的简化了编程过程,使用贴有简单易懂语义图形的实物块作为输入,降低了学习编程的难度,同时可以使儿童更多的将注意力放在解决问题和处理程序逻辑本身而不是繁冗的语法上,另外,实物交互的方式可以吸引注意力,增加了学习编程的乐趣,并在其中学习到编程知识。
与现有技术相比,本发明具有如下的优点和技术效果:
1.本发明给出便携式实物编程方法和系统。
本发明中,优点在于设计并实现了一种的实物编程处理和显示单元LED Pad,使得本系统可以独立于电脑使用,使得其具有很好的可移动性与便携性,使用环境不受限制。
2.采用RFID识别技术进行任务选择。
本发明采用RFID识别技术实现了一种实物交互的任务选择方法。系统的RFID识别模块可以识别贴有RFID标签的纸质迷宫并初始化任务,可以方便的进行扩展与制作,另外也方便儿童选择任务。
3.设计实现了一种带参数的编程块。
本发明中在方向编程块的基础上增加了可选择参数的参数编程块,可以向儿童传递编程中十分重要的概念——参数。每个参数编程块有1-4可以调节的参数,代表对应个方向块,减少了编写程序所需编程块的个数,使实物编程系统更加便携和经济。
4.提升了实物编程块与无线模块的通讯效率。
与一种基于红外和无线传输技术的实物编程方法和系统专利(申请号201210251967)相比,本发明虽仍然使用红外和无线通信技术,但在实现上本发明采用实物编程块与无线处理模块主动通信,而非无线处理模块对编程块进行轮询,提高了处理效率,使得编程的反馈更加及时,提升了用户体验的效果。
附图说明
图1本系统的系统架构图;
图2本系统的系统连接结构图;
图3本系统基本处理流程图;
具体实施方式
为了使本技术领域的技术人员更好的理解,下面结合附图和实施方式对本交互方法作进一步的详细说明:
本系统的基本处理流程如图3所示。主要分为状态控制、编程阶段和运行阶段三个阶段。下面我们以编程有反馈机制为例说明系统的处理流程。对于编程无反馈阶段,除在编程阶段不会点亮Pad上的LED灯,其他均相同。
其中,状态控制部分主要负责初始化和检测状态控制开关,并控制LED Pad进入相应的阶段。
1.初始化。在程序开始出,首先需要对无线模块通讯、串口通讯和定时器进行初始化。
2.检测状态控制开关。实物编程处理单元检测状态控制开关,若此时开关处于编程阶段位置,则控制系统进入编程阶段;若开关处于运行阶段位置,则控制系统进入运行阶段。
编程阶段是系统的重要阶段,在该阶段中用户通过摆放实物编程块编写程序,控制游戏中的虚拟人物(系统中以LED光点表示)从迷宫开始单元格成功走到迷宫结束单元格。下面将详细说明编程阶段的执行步骤:
1.RFID识别地图并初始化地图。编程阶段开始,实物编程处理单元控制RFID识别模块等待用户将选择好的任务地图放在LED Pad上,RFID识别模块识别地图背面的RFID标签,识别成功后初始化实物编程处理单元内部当前任务地图信息并在LED显示模块上提供初始的迷宫信息,此外,还将初始化该地图对应的反馈机制信息。
2.实物编程块发送无线信息。当实物编程块收到上一个编程块的红外信号后,激活其无线模块和红外发射模块,并向无线处理模块发送表示连接的无线信号。首先,编程块通过将无线接收地址设置为无线处理模块的二进制地址与无线处理模块建立通信,并设置自己为无线发送模式,依次发送代表连接的信息、该块的参数信息和该编程块的二进制识别码。当编程块的参数发生变化时,也要向无线处理模块发送代表连接的无线信号。发送完成后将自身设置为无线接收模式。当编程块被移除时,该编程块收不到红外信号,则发送从队列中删除该编程块的移除信号,包括移除信息和当前块的二进制识别码,同时该编程块设置红外发射模块为关闭状态。
3.无线处理模块接收无线信号并进行数据处理。无线处理模块接收到连接信息后返回确认信息,识别该编程块的二进制标识码和参数信息并进行处理。首先,无线处理模块查询目前的实物语义队列中是否存在该块的二进制码,若存在,则表示此无线信号为实物编程块的参数发生变化时发出的,此时需要比较实物语义队列中该块的个数与参数的大小,若参数(即执行次数)大于已有个数,则在已有的位置后面继续插入直到共有参数个为止;若参数小于已有个数,则按照队列倒序依次向前删除该二进制码,直到个数等于参数为止。若不存在,则表示此无线信号为新加入的实物编程块发出的,此时在队列尾部插入参数个该二进制码。如果接收到的信息为移除信号,无线处理模块在实物语义队列中查询该二进制码,删除该二进制码以及实物语义队列中后续的二进制码。
依次处理所接收到的无线信息,并定期将实物语义队列通过串口发送给实物编程处理单元Arduino。
4.Arduino进行信息读取与转换。实物编程处理单元Arduino从串口收到信息后,根据语义转换对应关系表将实物语义队列中的二进制标识码信息转换成对应程序语义信息。
5.语义与语法分析和图形反馈。结合任务地图的具体信息,Arduino进行语义语法分析与理解并给出相应的反馈。具体为:第4步中串口每接收到一个二进制码并转换成语义信息后,判断该语义是否符合当前状态并将二进制码、正误信息和编程所得的路径保存在数组中。若符合,则给出正确的反馈,并继续读取串口数据进行下一个编程块的判断,直到正确读取完数据;若不符合,则给出错误反馈,点亮一个闪烁的叉号,并停止读取下一条命令直到用户修改该错误编程块。具体的,会根据命令的不同,执行相应的判断过程。命令主要有四种:方向命令、参数命令、传感器命令和开始结束指令。
6.播放编程成功音乐。当检测到用户正确编写完迷宫地图的程序时,结束编程阶段并播放正确完成编程任务的提示音。
当检测到状态开关被拨到运行阶段时,程序进入运行阶段。该阶段主要是执行用户在编程阶段编写好的程序。用户可以通过传感器输入模块与系统互动。运行阶段详细执行步骤如下:
1.语义读取分析并通过串口发送。实物编程处理模块依次从上述第4步得到的数组中读取一个数据,包括二进制码、正误信息和路径信息,若该块正确,则点亮相应的LED灯,同时将二进制码以及该编程块摆放正确的信息通过串口发送给无线处理模块,进一步的若该单元格为传感器,则该LED灯闪烁,直到检测到相应的传感器被触发后才能继续读取下一数据。若该块错误,则将二进制码和当前编程块错误信息编码后通过串口发送出去,同时使LED Pad显示单元上的LED灯停在最后一个正确的单元格中。
2.串口数据解析并无线发送。无线处理模块串口接收到数据后,执行串口中断函数。具体为解析编程块的二进制码以及正误信息,通过把接收地址设置为编程块的地址进行无线通信,将正误信息通过无线通讯发送给编程块。
3.无线信息解析与执行。编程块接收到无线信息后,对其进行解析。若为摆放正确信息,则点亮块上的蓝色LED灯;若为错误信息,则点亮块上的红色LED灯。
4.重复执行1-3步直到数组中的数据全部读取完。
5.播放运行成功音乐。当所有编程块全部执行正确,且成功到达迷宫出口,系统播放运行成功音乐,并点亮一个对勾图形作为反馈。
综上所述,本发明给出了一种便携式实物编程方法及系统。用户可以通过摆放实物编程块进行编程控制虚拟角色的移动,极大的简化了编程语言繁复的语法和规则,优化了之前的系统,并可以在系统的LED显示模块和编程块上进行反馈,使得编程变得更加简单,从而儿童可以将精力集中在解决问题的逻辑本身而不是复杂的语法规则,提高了儿童对于编程的兴趣,方便其学习编程。

Claims (10)

1.一种便携式实物编程方法,其步骤为:
1)建立一实物编程处理和显示单元,包括:迷宫识别模块、无线处理模块、实物编程处理模块、显示模块;所述迷宫识别模块根据所选迷宫地图初始化所述实物编程处理模块并在所述显示模块上初始化迷宫信息;
2)用户根据所选迷宫地图依次摆放实物编程块构成一队列,该队列中的实物编程块依次向所述无线处理模块发送无线信号;所述无线信号包括当前实物编程块的标识码;
3)所述无线处理模块依次将收到的每一所述无线信号中的标识码发送给所述实物编程处理模块,所述实物编程处理模块依次将收到的识别码转换为对应的程序语义信息,构成一程序功能语义序列;
4)所述实物编程处理模块根据所选迷宫地图的语法语义规则检查当前程序功能语义序列是否正确,并给出反馈信息。
2.如权利要求1所述方法,其特征在于所述实物编程块包含一单片机处理器、无线通信模块、红外发射模块及红外接收模块;所述红外接收模块收到前一实物编程块发射的红外信号后通过所述单片机处理器激活所述无线通信模块和红外发射模块,并向所述无线处理模块发送无线信号;其中,位于所述队列的第一个实物编程块上的所述红外发射模块始终处于激活状态。
3.如权利要求2所述的方法,其特征在于所述无线处理模块对已识别的标识码建立一实物语义序列,然后将所述实物语义队列发送给所述实物编程处理模块。
4.如权利要求3所述的方法,其特征在于若某一实物编程块从所述队列中移除时,即该实物编程块收不到红外信号,则该实物编程块发送移除信号给所述无线处理模块,同时关闭其红外发射模块;所述无线处理模块接收到该移除信号后,在所述实物语义队列中查询该实物编程块的标识码,删除该标识码及其后续的标识码。
5.如权利要求3所述的方法,其特征在于所述实物编程块包括参数类方向实物编程块,所述参数类方向实物编程块上设有一波段调节装置,每一波段对应一执行次数;所述无线信号还包括执行次数信息;所述无线处理模块针对收到的每一无线信号,首先识别其中的标识码,然后查询当前的实物语义队列中是否存在该标识码,若存在,且执行次数大于所述实物语义队列中该标识码的个数,则在所述实物语义队列后面继续插入该标识码直到执行次数个为止;若执行次数小于所述实物语义队列中该标识码的个数,则按照倒序依次向前删除该识别码,直到所述实物语义队列中该标识码的个数等于执行次数为止;若不存在,则在所述实物语义队列尾部插入执行次数个该标识码。
6.如权利要求1~5任一所述方法,其特征在于所述迷宫地图为设有RFID标签的纸质迷宫地图;所述迷宫识别模块为RFID识别模块;所述RFID识别模块根据放入迷宫读取区的所述纸质迷宫地图初始化所述实物编程处理模块;所述显示模块为一LED阵列;所述迷宫地图为有一定数量的单元格的迷宫,其中单元格与该LED阵列相匹配。
7.一种便携式实物编程系统,其特征在于包括实物编程处理和显示单元和若干实物编程块;所述实物编程处理和显示单元包括:迷宫识别模块、无线处理模块、实物编程处理模块、显示模块;其中:
所述实物编程块中包括一单片机处理器、无线通信模块、红外发射模块和红外接收模块;所述红外接收模块收到红外信号后通过所述单片机处理器激活所述无线通信模块和红外发射模块,并向所述无线处理模块发送无线信号;所述无线信号包括当前实物编程块的标识码;
所述迷宫识别模块用于根据所选迷宫地图初始化所述实物编程处理模块,并在所述显示模块上初始化迷宫信息;
所述无线处理模块用于依次将收到的每一所述无线信号中的标识码发送给所述实物编程处理模块;
所述实物编程处理模块用于依次将收到的识别码转换为对应的程序语义信息,构成一程序功能语义序列;并根据所选迷宫地图的语法语义规则检查当前程序功能语义序列是否正确,并给出反馈信息。
8.如权利要求7所述的系统,其特征在于所述迷宫地图为设有RFID标签的纸质迷宫地图;所述迷宫识别模块为RFID识别模块;所述RFID识别模块根据放入迷宫读取区的所述纸质迷宫地图初始化所述实物编程处理模块。
9.如权利要求7或8所述的系统,其特征在于位于所述队列的第一个实物编程块上的红外发射模块始终处于激活状态。
10.如权利要求9所述的系统,其特征在于所述实物编程块包括参数类方向实物编程块,所述参数类方向实物编程块上设有一波段调节装置,每一波段对应一执行次数;所述无线信号还包括执行次数信息;所述无线处理模块针对收到的每一无线信号,首先识别其中的标识码并对之前识别的标识码构建一实物语义队列,然后查询当前的实物语义队列中是否存在该标识码,若存在,且执行次数大于所述实物语义队列中该标识码的个数,则在所述实物语义队列后面继续插入该标识码直到执行次数个为止;若执行次数小于所述实物语义队列中该标识码的个数,则按照倒序依次向前删除该识别码,直到所述实物语义队列中该标识码的个数等于执行次数为止;若不存在,则在所述实物语义队列尾部插入执行次数个该标识码。
CN201310414757.0A 2013-09-12 2013-09-12 一种便携式实物编程方法及系统 Expired - Fee Related CN103456203B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310414757.0A CN103456203B (zh) 2013-09-12 2013-09-12 一种便携式实物编程方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310414757.0A CN103456203B (zh) 2013-09-12 2013-09-12 一种便携式实物编程方法及系统

Publications (2)

Publication Number Publication Date
CN103456203A true CN103456203A (zh) 2013-12-18
CN103456203B CN103456203B (zh) 2015-08-26

Family

ID=49738521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310414757.0A Expired - Fee Related CN103456203B (zh) 2013-09-12 2013-09-12 一种便携式实物编程方法及系统

Country Status (1)

Country Link
CN (1) CN103456203B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104200717A (zh) * 2014-09-25 2014-12-10 福建农林大学 基于Arduino控制器的教学实验箱及其实验方法
CN104898456A (zh) * 2015-04-02 2015-09-09 赵敬双 实物化编程的方法及其在机器人领域的应用
CN105047042A (zh) * 2015-07-06 2015-11-11 中国科学院软件研究所 一种面向儿童实物编程方法及系统
CN105302555A (zh) * 2015-10-23 2016-02-03 中国科学院软件研究所 一种基于多语义的实物编程系统
CN105589341A (zh) * 2016-03-11 2016-05-18 苏州乐派特机器人有限公司 实物化编程的指令模块
CN105765512A (zh) * 2014-01-30 2016-07-13 施政 在交互面上用物理物体进行计算机编程的系统及方法
WO2016155660A1 (zh) * 2015-04-02 2016-10-06 苏州乐派特机器人有限公司 实物化编程的指令模块、编程方法及其在机器人领域的应用
CN106139614A (zh) * 2016-07-22 2016-11-23 苏州乐派特机器人有限公司 一种利用实物化编程操作进行的游戏方法
CN106237629A (zh) * 2016-09-12 2016-12-21 苏州乐派特机器人有限公司 一种应用于实物编程积木的传感器无线信号传输方法
WO2016202270A1 (en) * 2015-06-17 2016-12-22 Zheng Shi System and method for physical programming on interactive surface
CN106952507A (zh) * 2017-04-28 2017-07-14 乐聚(深圳)机器人技术有限公司 基于人形机器人的教育系统及其方法
CN107993495A (zh) * 2017-11-30 2018-05-04 北京小米移动软件有限公司 故事机及其控制方法、装置及存储介质、故事机播放系统
CN108230828A (zh) * 2018-02-12 2018-06-29 叶昌青 一种实物化编程系统和编程方法
CN110035315A (zh) * 2019-03-26 2019-07-19 乐佰科(深圳)教育科技有限公司 一种模块化编程录播课的使用方法及电子设备
CN110751243A (zh) * 2019-09-26 2020-02-04 宁波凯思奥教育科技有限公司 一种基于rfid多标签识别的实物编程装置及控制方法
CN111047931A (zh) * 2019-12-16 2020-04-21 深圳市思天极创教育科技有限公司 一种移动编程系统
CN111613116A (zh) * 2020-05-09 2020-09-01 广州大学 基于ArduBlock的实体化积木、编程方法及系统
CN112394913A (zh) * 2019-08-19 2021-02-23 中国科学院自动化研究所 支持程序分解和复用的实物编程系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175954B1 (en) * 1997-10-30 2001-01-16 Fuji Xerox Co., Ltd. Computer programming using tangible user interface where physical icons (phicons) indicate: beginning and end of statements and program constructs; statements generated with re-programmable phicons and stored
CN102136208A (zh) * 2011-03-30 2011-07-27 中国科学院软件研究所 一种实物编程方法和系统
CN102789713A (zh) * 2012-07-19 2012-11-21 中国科学院软件研究所 一种基于红外和无线传输技术的实物编程方法和系统
CN102800223A (zh) * 2012-07-19 2012-11-28 中国科学院软件研究所 一种协同实物编程方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175954B1 (en) * 1997-10-30 2001-01-16 Fuji Xerox Co., Ltd. Computer programming using tangible user interface where physical icons (phicons) indicate: beginning and end of statements and program constructs; statements generated with re-programmable phicons and stored
CN102136208A (zh) * 2011-03-30 2011-07-27 中国科学院软件研究所 一种实物编程方法和系统
CN102789713A (zh) * 2012-07-19 2012-11-21 中国科学院软件研究所 一种基于红外和无线传输技术的实物编程方法和系统
CN102800223A (zh) * 2012-07-19 2012-11-28 中国科学院软件研究所 一种协同实物编程方法

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105765512A (zh) * 2014-01-30 2016-07-13 施政 在交互面上用物理物体进行计算机编程的系统及方法
CN106164852A (zh) * 2014-06-13 2016-11-23 施政 用功能物体对移动物体的移动动作编程的方法和系统
CN104200717A (zh) * 2014-09-25 2014-12-10 福建农林大学 基于Arduino控制器的教学实验箱及其实验方法
CN104898456A (zh) * 2015-04-02 2015-09-09 赵敬双 实物化编程的方法及其在机器人领域的应用
CN104898456B (zh) * 2015-04-02 2018-06-19 苏州乐派特机器人有限公司 实物化编程的方法及其在机器人领域的应用
WO2016155660A1 (zh) * 2015-04-02 2016-10-06 苏州乐派特机器人有限公司 实物化编程的指令模块、编程方法及其在机器人领域的应用
WO2016202270A1 (en) * 2015-06-17 2016-12-22 Zheng Shi System and method for physical programming on interactive surface
CN105047042B (zh) * 2015-07-06 2017-12-19 中国科学院软件研究所 一种面向儿童实物编程方法及系统
CN105047042A (zh) * 2015-07-06 2015-11-11 中国科学院软件研究所 一种面向儿童实物编程方法及系统
CN105302555A (zh) * 2015-10-23 2016-02-03 中国科学院软件研究所 一种基于多语义的实物编程系统
CN105589341B (zh) * 2016-03-11 2020-01-17 苏州乐派特机器人有限公司 实物化编程的指令模块
CN105589341A (zh) * 2016-03-11 2016-05-18 苏州乐派特机器人有限公司 实物化编程的指令模块
CN106139614A (zh) * 2016-07-22 2016-11-23 苏州乐派特机器人有限公司 一种利用实物化编程操作进行的游戏方法
CN106237629B (zh) * 2016-09-12 2019-02-01 苏州乐派特机器人有限公司 一种应用于实物编程积木的传感器无线信号传输方法
CN106237629A (zh) * 2016-09-12 2016-12-21 苏州乐派特机器人有限公司 一种应用于实物编程积木的传感器无线信号传输方法
CN106952507A (zh) * 2017-04-28 2017-07-14 乐聚(深圳)机器人技术有限公司 基于人形机器人的教育系统及其方法
CN107993495A (zh) * 2017-11-30 2018-05-04 北京小米移动软件有限公司 故事机及其控制方法、装置及存储介质、故事机播放系统
US11113986B2 (en) 2017-11-30 2021-09-07 Beijing Xiaomi Mobile Software Co., Ltd. Story machine, control method and control device therefor, storage medium and story machine player system
CN108230828A (zh) * 2018-02-12 2018-06-29 叶昌青 一种实物化编程系统和编程方法
CN110035315A (zh) * 2019-03-26 2019-07-19 乐佰科(深圳)教育科技有限公司 一种模块化编程录播课的使用方法及电子设备
CN112394913A (zh) * 2019-08-19 2021-02-23 中国科学院自动化研究所 支持程序分解和复用的实物编程系统
CN110751243A (zh) * 2019-09-26 2020-02-04 宁波凯思奥教育科技有限公司 一种基于rfid多标签识别的实物编程装置及控制方法
CN110751243B (zh) * 2019-09-26 2023-05-12 宁波凯思奥教育科技有限公司 一种基于rfid多标签识别的实物编程装置及控制方法
CN111047931A (zh) * 2019-12-16 2020-04-21 深圳市思天极创教育科技有限公司 一种移动编程系统
CN111613116A (zh) * 2020-05-09 2020-09-01 广州大学 基于ArduBlock的实体化积木、编程方法及系统

Also Published As

Publication number Publication date
CN103456203B (zh) 2015-08-26

Similar Documents

Publication Publication Date Title
CN103456203B (zh) 一种便携式实物编程方法及系统
CN102789713B (zh) 一种基于红外和无线传输技术的实物编程方法和系统
CN105047042B (zh) 一种面向儿童实物编程方法及系统
CN102136208B (zh) 一种实物编程方法和系统
Yu et al. A survey of computational kits for young children
CN105302555A (zh) 一种基于多语义的实物编程系统
Wang et al. A tangible embedded programming system to convey event-handling concept
CN107168698A (zh) 图形化编程的自动编译方法
CN108499107A (zh) 虚拟现实中虚拟角色的控制方法、装置及存储介质
CN104991640A (zh) 交互界面上的实物编程系统和方法
Wang et al. TanPro-kit: a tangible programming tool for children
Wang et al. E-Block: a tangible programming tool for children
KR20160093794A (ko) 저항과 자석이 내장된 카드키 및 보드를 이용한 로봇 프로그래밍 교육용 키트 및 방법
CN201936600U (zh) 基于专用语音芯片的非特定人语音识别与语音合成装置
CN213159402U (zh) 一种编程语言实物化积木编程系统
CN109375768A (zh) 互动式引导方法、装置、设备和存储介质
CN105930584B (zh) 一种计算机组成与系统结构的虚拟实验平台及其实现方法
CN111862727A (zh) 人工智能图形化编程教学平台及方法
KR102251867B1 (ko) 사물인터넷의 스타네트워크를 이용하여 코딩 교육을 제공하는 시스템 및 방법
US20090210372A1 (en) Rule-based programming languages for entities in environments
CN113442134A (zh) 机器人编程控制系统
CN211653760U (zh) 一种机器人的刷卡系统
CN207281494U (zh) 益智机器人
KR102203829B1 (ko) 코딩용 카드를 이용하여 코딩로봇의 제어를 위한 알고리즘을 생성하는 코딩보드장치 및 방법
Devine Enabling intuitive and efficient physical computing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150826

Termination date: 20170912