利用实物块编程的方法及其在机器人领域的应用

文档序号:10724264阅读:230来源:国知局
利用实物块编程的方法及其在机器人领域的应用
【专利摘要】本发明公开了一种利用实物块编程的方法及其在机器人领域的应用,该方法为:(1)搭建带有主控板的运行对象,(2)根据所需的程序指令设计一套带直观识别、供扫描或拍摄的信息的实物块,(3)依次选取实物块,利用输入设备对实物块上面的信息进行扫描或拍摄识别,(4)根据程序指令串形成可执行程序,装载到主控板的存储器中,解析并检测其逻辑是否正确;(5)如果逻辑正确,则执行程序;否则返回步骤(3)继续,直到逻辑正确为止;(6)执行程序过程中,通过运行对象的运行方式来验证程序的执行是否正确。本发明通过运行对象对预构思线性编排且包含程序指令的一系列实物块进行扫描输入,有利于高效率地启蒙和提高孩子的编程能力。
【专利说明】
利用实物块编程的方法及其在机器人领域的应用
技术领域
[0001]本发明属于人机交互领域,具体涉及到一种实物化编程的方法及其在机器人领域的应用。【背景技术】
[0002]进入21世纪,信息技术推动下知识社会的形成及其对技术创新的影响进一步被认识,科学界进一步反思对创新的认识:技术创新是一个科技、经济一体化过程,是技术进步与应用创新“双螺旋结构”(创新双螺旋)共同作用催生的产物,而且知识社会条件下以需求为导向、以人为本的创新2.0模式(创客)进一步得到关注。在这个世纪里,创客将成为世界的领导者,引领世界走向更加辉煌的一页。
[0003]伴随着当代中国乃至世界对创客的越来越关注,全民创客时代已经来临。在互联网时代的今天,计算机和网络已经成为人们生活中必不可缺少的一部分。作为创客,也必须掌握一项基础技能,就是“编程”。程序是计算机的大脑,也只有掌握“编程”的技能,然后才能够参与到计算机创新制作过程中来。
[0004]传统的编程通常是通过键盘输入文本语言来完成。这种编程方式对于计算机初学者而言,理解和使用起来很不方便,主要原因是传统编程语言中的语法和复杂指令,难以被理解和记忆,同时还需要进行大量输入工作。而一般儿童和新手很难记住和理解程序语言的语法、逻辑关系和程序架构等非常专业的知识。此外,对文字掌握得还不纯熟的儿童来说,程序的文本编辑方式缺乏直观性,儿童无法采用传统的编程方式来创作自己的程序。对此,需要研发一种直观的编程方式,便于上手操作。
【发明内容】

[0005]本发明的目的在于提供一种实物化编程的方法以及其在机器人领域的应用,使得儿童和新手可以摆脱编程语言繁冗的语法,能更好地学习和理解程序设计本身的逻辑。
[0006]本发明解决上述第一个目的的技术方案为:利用实物块编程的方法,其特征在于包括以下步骤:(1)搭建带有主控板的运行对象,该运行对象作为执行程序的主体,包含执行程序过程中所必备的各机械结构,通过搭建所述各机械结构有机连接成为一体,所述主控板的存储器中存有对应运行对象运行各机械结构的驱控程序,并且该运行对象上面固定或可拆卸地设有扫描或拍摄用的输入设备;(2)根据(1)中所述运行对象的运行方式在编程过程中所需要的程序指令,设计一套实物块,每个实物块上面不仅包含易于直观识别的第一种信息,还包含供扫描或拍摄识别的第二种信息,同一块实物块上面的第一种信息和第二种信息对应于一个相同的程序指令, 不同的实物块所对应的程序指令不同,并且,同一块实物块上面的第一种信息和第二种信息可以各自独立,也可以合为一体;(3)根据(1)中所述运行对象的运行方式以及(2)中所述实物块上面的第一种信息,依次选取(2)中的实物块,利用(1)中所述输入设备对所选取的实物块上面的第二种信息,依次进行扫描或拍摄识别,每个实物块可以被一次或多次选取和识别;(4)根据(3)中依次扫描或拍摄识别得到的实物块所对应的程序指令串形成一可执行程序,启动主控板内的装载程序把该可执行程序装载到主控板的存储器中,主控板内CPU解析该可执行程序并检测其逻辑是否正确;(5)如果逻辑正确,则执行程序;如果逻辑不正确,则向选取错误的实物块反馈信息,返回上述步骤(3)继续,直到逻辑正确为止;(6)执行程序过程中,通过运行对象的运行方式来验证程序的执行是否正确,如果运行对象的运行方式正确,就结束任务;否则,更改实物块的选取和识别顺序,返回上述步骤(3) 继续,直到运行对象的运行方式正确为止。
[0007]进一步地,步骤(2)中所述第一种信息和第二种信息为图形、色彩、文字或结构造型。
[0008]更进一步地,步骤(1)中所述扫描或拍摄用的输入设备为条码枪、二维码枪或摄像头;步骤(2 )中所述第二种信息为条形码、二维码或图形码。
[0009]进一步地,所述运行对象设有与主控板相连的计数器,步骤(3)在依次识别所选取的实物块的同时进行计数,以供查阅和检验。
[0010]更进一步地,所述计数器为数码管计数器、单排或阵列的计数LED、LCD屏显计数器、计数表盘中的一种。
[0011]进一步地,步骤(2)所述一套实物块当中每个实物块的外形相同,且不同套实物块的外形为卡片、扑克牌或积木。
[0012]本发明解决上述第二个目的的技术方案:利用实物块编程的方法在机器人领域的应用,其特征在于:步骤(1)所述运行对象为机器人,其运行方式为巡迹,对应地,步骤(2 )所述实物块所对应的程序指令包括条件类指令和动作类指令,其中条件类指令指的是与机器人巡迹所用传感器相关的反馈指令,所述动作类指令包括延时指令、前进指令、左转指令、 右转指令、转圈指令、停止指令、灯示指令。
[0013]同样地,利用实物块编程的方法在机器人领域的应用,其特征在于:步骤(1)所述运行对象为机器人,其运行方式为跳舞,对应地,步骤(2)所述实物块所对应的程序指令包括条件类指令和动作类指令,其中条件类指令指的是与机器人舞蹈所用位置传感器相关的反馈指令,所述动作类指令包括曲臂指令、半蹲指令、深蹲指令、抬腿指令、扭腰指令、转身指令。
[0014]与现有技术相比,本发明具有如下的优点和技术效果:本发明通过搭建带输入设备的运行对象及被赋予程序指令含义的一套实物块,实现对预构思的程序进行实物化的辨识、编排和高效率的扫描输入,取代传统编程语言的复杂语法及繁杂输入,有利于孩子在编程方面的启蒙和提高。此外,各个实物块可以重复使用,有利于节省成本。【附图说明】
[0015]图1为本发明利用实物块编程方法的流程图。
[0016]图2为本发明利用实物块线性编程并操作运行的状态示意图。
[0017]图3为本发明实物块一种实施例的实体示例图。
[0018]图4为本发明实物块另一种实施例的实体示例图。【具体实施方式】
[0019]下面结合具体实例和附图对本发明技术方案作进一步说明。所举的实施例仅是对本发明产品或方法作概括性例示,有助于更好地理解本发明。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应该视为落在本发明的保护范围之内。
[0020]图形化编程向儿童提供了一种编程的可行途径。它将各种编程的概念转化为各种图形,儿童只需要对于各种图形进行重组、编序,就可以完成编程的整个过程。而实物编程被认为是图形化编程的一个分支。与图形化编程不同之处在于,实物编程对于程序的操作超越了计算机屏幕的限制。实物编程通过触觉、物理感知等技术与实物交互,再将实物逻辑转化为程序逻辑来进行编程。与直接让儿童操控电脑相比,让儿童通过操纵实物来进行创作,更容易让儿童投入到整个过程当中。通过实物编程系统,儿童可以对程序语言的逻辑有更加直观的理解。程序不再是一行行枯燥的代码,而是一组形象甚至一组实物的组合,儿童通过对实物的拼接组合,就可以完成普通程序语言通过键盘输入代码完成的工作。实物编程的特点决定了它更适合儿童进行编程操作。
[0021]如图1和图2所示,是本发明利用实物块编程方法的流程图及操作运行的状态示意图。从图示可见,该方法主要包括如下步骤:(1)搭建带有主控板11的运行对象1,该运行对象作为执行程序的主体,包含执行程序过程中所必备的各机械结构12,通过搭建所述各机械结构有机连接成为一体。所有该些机械结构,包括各类电机、舵机、声光装置等,凡是能响应形成动作的各种装置均可适用。与此同时,该主控板的存储器112中存有对应运行对象运行各机械结构的驱控程序,主控板的CPU111在运行程序时便在执行程序指令时调取相应的驱控程序,从而使得机械结构响应相应的动作。并且该运行对象1上面固定或可拆卸地设有扫描或拍摄用的输入设备13。[〇〇22](2)根据(1)中所述运行对象的运行方式在编程过程中所需要的程序指令,设计一套实物块2,每个实物块上面不仅包含易于直观识别的第一种信息,还包含供扫描或拍摄识别的第二种信息,同一块实物块上面的第一种信息和第二种信息对应于一个相同的程序指令,不同的实物块所对应的程序指令不同。在此要求下,任何一个实物块仅代表唯一一个程序指令,在进行实物编程时便不易产生歧义,能做到准确选择实物块。需要进一步说明的是,上述第一种信息是便于编程实践者辨识实物块、快速分辨其对所对应的程序指令所用的。而上述第二种信息是适于供上述输入设备13采集和识别的特定信息。
[0023]作为不同的实施方式,如图3所示,可以在同一块实物块2上设计各自独立的第一种信息21和第二种信息22;如图4所示,也可以在同一块实物块上将两种信息融为一体,即見合彳曰息23。[〇〇24](3)根据(1)中所述运行对象的运行方式以及(2)中所述实物块上面的第一种信息,依次选取(2)中的实物块(按逻辑编排顺序),利用(1)中所述输入设备对所选取的实物块上面的第二种信息,依次进行扫描或拍摄识别,每个实物块可以被一次或多次选取和识另IJ。这里,扫描和拍摄识别的方式具有多种可选方式,当一套实物块中任一块无需重复利用时,可以采用在输入设备取景范围内翻书式浏览实物块;而当其中某一块实物块需要重复利用时,则上述方式不再适用,则可以采用逐块择取、手动扫描实物块。这样一个个实物块所对应的程序指令将归集成串。
[0025](4)根据(3)中依次扫描或拍摄识别得到的实物块所对应的程序指令串形成一可执行程序,启动主控板内的装载程序把该可执行程序装载到主控板的存储器中,主控板内 CPU解析该可执行程序并检测其逻辑是否正确;这是一种由主控板内CPU在片内执行的预检测。[〇〇26](5)如果逻辑正确,则执行程序;如果逻辑不正确,则向选取错误的实物块反馈信息,返回上述步骤(3)继续,直到逻辑正确为止;(6)执行程序过程中,通过运行对象的运行方式来验证程序的执行是否正确,如果运行对象的运行方式正确,就结束任务;否则,更改实物块的选取和识别顺序,返回上述步骤(3) 继续,直到运行对象的运行方式正确为止。
[0027]作为上述方案的细化来看,上述步骤(2)中所述第一种信息和第二种信息为图形、 色彩、文字或结构造型,两者可以交互使用,惟满足编程实践者的视觉辨识,及输入设备扫描或拍摄能够辨识编程指令所需即可。
[0028]例如,步骤(1)中所述扫描或拍摄用的输入设备可以是条码枪、二维码枪或摄像头;与之对应地,该步骤(2)中所述第二种信息便可以相应地选为条形码、二维码或图形码。 当然尤其当为图形码时,满足视觉辨识的要求,两种信息便可有机融合,成为复合信息。
[0029]为更好地完善本方案,在实施编程实物块的扫描时,该运行对象可以设有与主控板相连的计数器,步骤(3)在依次识别所选取的实物块的同时进行计数,以供查阅和检验。 该计数器可以是数码管计数器,可以是单排或阵列的计数LED,可以是LCD屏显计数器,也可以是计数表盘。这样在进行实物块扫描或拍摄识别时,如果实物块的数量和计数不一致的话,便可容易直观辨识漏扫描,而重复实施。
[0030]再者,从本发明的实施方式而言,上述步骤(2)所述一套实物块当中每个实物块的外形相同,且不同套实物块的外形为卡片、扑克牌或积木。通常而言,扑克牌的实施方式更易于为人们所接受,通过扫描或拍摄进行“线性的实物化编程”,扫描或拍摄的顺序即为线性串接的顺序,也是所编程序的执行顺序。
[0031]实施例,如图2所示的操作运行的状态示意图可见,实物块设为一系列扑克牌2a~ 2i,每个扑克牌对应一个程序指令并具有第一种信息和第二种信息。当运行对象1需要进行编程操作实施某一系列动作时,通过编排扑克牌的次序形成一套程序指令集,而后采用运行对象的输入设备对该付扑克牌进行扫描,并将该所得的可执行程序输入主控板的存储器之中。而后通过主控板的CPU进行逻辑校验。在逻辑校验无误后CPU便执行该可执行程序,驱动上述机械结构分时序动作。
[0032]具体地,利用实物块编程的方法在机器人领域的应用,步骤(1)所述运行对象为机器人,当其运行方式为巡迹,步骤(2)所述实物块所对应的程序指令包括条件类指令和动作类指令,其中条件类指令指的是与机器人巡迹所用传感器相关的反馈指令,所述动作类指令包括延时指令、前进指令、左转指令、右转指令、转圈指令、停止指令、灯示指令。如在先的专利申请(申请号为:201610101172.7)所公开的技术方案,当一套完整的程序能被线性化地组织,并在主控板的CPU执行该程序时,完全按照线性一个个遍历各个程序指令,实现运行对象的动作。而该在先申请中,各个程序节点的连接和运行方式相对复杂,相比之下,本发明的实物块编程方法具有更高的实施效率和灵活性。
[0033]同样地,利用实物块编程的方法在机器人领域的应用,步骤(1)所述运行对象为机器人,其运行方式为跳舞,对应地,步骤(2)所述实物块所对应的程序指令包括条件类指令和动作类指令,其中条件类指令指的是与机器人舞蹈所用位置传感器相关的反馈指令,所述动作类指令包括曲臂指令、半蹲指令、深蹲指令、抬腿指令、扭腰指令、转身指令。当执行可执行程序时,各舵机、电机、表情板等机械结构将在一定的时序间隔下执行动作,完成机器人舞蹈。
[0034]综上,通过实施例的详细描述,可以清楚理解本发明技术方案较之于现有技术具有显著的技术效果,本发明通过搭建带输入设备的运行对象及被赋予程序指令含义的一套实物块,实现对预构思的程序进行实物化的辨识、编排和高效率的扫描输入,取代传统编程语言的复杂语法及繁杂输入;(1)趣味性强,对于孩子来说,可以先构思一线性的实物块连接顺序,然后扫码,再执行;(2)灵活机动,纠错方便,适应各种构思,有利于孩子在编程方面的启蒙和提高;(3)实物块只需一套(也可以备一“大”套,以满足同一运行对象的所有可能的运行方式),每个实物块均可以重复使用,有利于节约成本;(4)扫描或拍摄的输入方式, 简便可靠,实施起来非常方便。
【主权项】
1.利用实物块编程的方法,其特征在于包括以下步骤:(1)搭建带有主控板的运行对象,该运行对象作为执行程序的主体,包含执行程序过程 中所必备的各机械结构,通过搭建所述各机械结构有机连接成为一体,所述主控板的存储 器中存有对应运行对象运行各机械结构的驱控程序,并且该运行对象上面固定或可拆卸地 设有扫描或拍摄用的输入设备;(2)根据(1)中所述运行对象的运行方式在编程过程中所需要的程序指令,设计一套实 物块,每个实物块上面不仅包含易于直观识别的第一种信息,还包含供扫描或拍摄识别的 第二种信息,同一块实物块上面的第一种信息和第二种信息对应于一个相同的程序指令, 不同的实物块所对应的程序指令不同,并且,同一块实物块上面的第一种信息和第二种信 息可以各自独立,也可以合为一体;(3)根据(1)中所述运行对象的运行方式以及(2)中所述实物块上面的第一种信息,依 次选取(2)中的实物块,利用(1)中所述输入设备对所选取的实物块上面的第二种信息,依 次进行扫描或拍摄识别,每个实物块可以被一次或多次选取和识别;(4)根据(3)中依次扫描或拍摄识别得到的实物块所对应的程序指令串形成一可执行 程序,启动主控板内的装载程序把该可执行程序装载到主控板的存储器中,主控板内CPU解 析该可执行程序并检测其逻辑是否正确;(5)如果逻辑正确,则执行程序;如果逻辑不正确,则向选取错误的实物块反馈信息,返 回上述步骤(3)继续,直到逻辑正确为止;(6)执行程序过程中,通过运行对象的运行方式来验证程序的执行是否正确,如果运行 对象的运行方式正确,就结束任务;否则,更改实物块的选取和识别顺序,返回上述步骤(3) 继续,直到运行对象的运行方式正确为止。2.根据权利要求1所述的利用实物块编程的方法,其特征在于:步骤(2)中所述第一种 信息和第二种信息为图形、色彩、文字或结构造型。3.根据权利要求2所述的利用实物块编程的方法,其特征在于:步骤(1)中所述扫描或 拍摄用的输入设备为条码枪、二维码枪或摄像头;步骤(2)中所述第二种信息为条形码、二 维码或图形码。4.根据权利要求1所述的利用实物块编程的方法,其特征在于:所述运行对象设有与主 控板相连的计数器,步骤(3)在依次识别所选取的实物块的同时进行计数,以供查阅和检验。5.根据权利要求4所述的利用实物块编程的方法,其特征在于:所述计数器为数码管计 数器、单排或阵列的计数LED、IXD屏显计数器、计数表盘中的一种。6.根据权利要求1所述的利用实物块编程的方法,其特征在于:步骤(2)所述一套实物 块当中每个实物块的外形相同,且不同套实物块的外形为卡片、扑克牌或积木。7.权利要求1所述的利用实物块编程的方法在机器人领域的应用,其特征在于:步骤 (1)所述运行对象为机器人,其运行方式为巡迹,对应地,步骤(2)所述实物块所对应的程序 指令包括条件类指令和动作类指令,其中条件类指令指的是与机器人巡迹所用传感器相关 的反馈指令,所述动作类指令包括延时指令、前进指令、左转指令、右转指令、转圈指令、停 止指令、灯示指令。8.权利要求1所述的利用实物块编程的方法在机器人领域的应用,其特征在于:步骤(1)所述运行对象为机器人,其运行方式为跳舞,对应地,步骤(2)所述实物块所对应的程序 指令包括条件类指令和动作类指令,其中条件类指令指的是与机器人舞蹈所用位置传感器 相关的反馈指令,所述动作类指令包括曲臂指令、半蹲指令、深蹲指令、抬腿指令、扭腰指 令、转身指令。
【文档编号】G06F3/01GK106095096SQ201610407558
【公开日】2016年11月9日
【申请日】2016年6月12日
【发明人】赵敬双
【申请人】苏州乐派特机器人有限公司, 赵敬双
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1