一种反向编程的方法及系统技术方案

技术编号:18256218 阅读:33 留言:0更新日期:2018-06-20 08:06
本发明专利技术提出一种反向编程的方法(100),其中受控对象在控制指令的作用下产生行为,所述方法包括如下步骤:获取表征所述受控对象行为的行为特征数据(101);对所述获取的行为特征数据进行分析处理从而生成相应的可视化程序(102),其中所述生成的可视化程序包括各可调整的参数和用于结合所述参数以控制所述受控对象的各程序步骤。

A method and system for reverse programming

The present invention proposes a method of reverse programming (100) in which a controlled object generates behavior under the action of a control instruction, and the method comprises the following steps: obtaining a behavioral feature data (101) representing the behavior of the controlled object (101); processing the obtained behavior feature data in line to generate a corresponding visual program ( 102), wherein the generated visualization program includes adjustable parameters and procedures for controlling the controlled object in combination with the parameters.

【技术实现步骤摘要】
一种反向编程的方法及系统
本专利技术涉及可编程玩具领域,具体地涉及一种反向编程的方法和相应的系统。
技术介绍
文献CN102416265A公开一种变形金刚机器人玩具及方法,其中公开了一种让爱好者自己对机器人进行编程的平台,其中机器人的动作、形态可以自由自主编排,能够多单元接听控制命令,是一种新颖,灵活,具有一定智能性的机器人。文献CN1338965公开一种具有借助于通信装置实现的更灵活的编程功能的微处理器控制的玩具组合元件。文献CN1244435公开一种可编程的玩具,其中通过构成为键盘的操作装置借助于微处理器发出控制命令给构成为受控对象的玩具汽车中的马达,通过马达对控制命令的执行,玩具汽车可以做出相应的行为动作。文献CN1267228A公开一种可编程组合式玩具,其中包括可控玩具单元和通过无线电对其进行控制的可编程控制系统。此外,文献CN202096722U还公开一种可编程学习型机器人,其中可以通过卡片输入的方式进行编程。此外,文献CN105363223A还公开一种基于NFC的智能可编程积木玩具。其中,将NFC(近场通信)技术应用至积木玩具上,通过搭建积木的形式使得儿童体验到编程的乐趣,从而使得积木玩具不仅仅是空间形状的拼接与组合,增强了对儿童的吸引力。当前可知的是一款由麻省理工学院(MIT)设计开发的一款面向少年的简易编程工具Scratch。这个软件的特点是:使用者可以不认识英文单词,也可以不会使用键盘。构成程序的命令和参数通过积木形状的模块来实现。用鼠标拖动模块到程序编辑栏就可以了。其中主要涉及可以用来选择的功能模块和由此编辑出的程序代码,编辑好的程序代码可以执行用于控制某个对象执行相应的运动、交互、形态变化、表情改变以及相应的发出声音。一般而言,编程能力需要用户拥有一定的编程技术知识以及逻辑思考能力,而这对于没有经过系统学习编程的用户来说,在具体操作中容易遇到问题,或者无法在操作中完成预期的效果,感觉枯燥乏味,从而放弃学习。因此,在将编辑好的程序代码执行用于控制某个受控对象(其中例如包括实体对象和虚拟对象)执行相应的运动、交互、形态变化、表情改变以及相应的发出声音的过程中,由于执行环境的多样性以及执行过程中的具体情况的变化,受控对象极其容易产生令用户并不是太满意的执行效果,或者由于用户可能在美学方面的高要求从而使得执行过程有待优化,这样就需要一种可能,也就是用户可以通过对编程技巧要求并不高的途径(例如上述图形化编程环境)实现对受控对象的执行过程进行改变或者进一步调整。
技术实现思路
因此本专利技术的目的在于,在可编程玩具领域中,提供如下可能,即通过解析受控对象的行为并且生成可视化并且可编辑的程序例如可视化程序,从而帮助用户形象具体地认知物体行为,进而启发用户运用自己的想象力和创造力可以亲自参与到编程中。按照第一方面,本专利技术提出一种反向编程的方法,其中受控对象在控制指令的作用下产生行为,所述方法包括如下步骤:获取表征所述受控对象行为的行为特征数据;对所述获取的行为特征数据进行分析处理从而生成相应的可视化程序,其中所述生成的可视化程序包括各可调整的参数和用于结合所述参数以控制所述受控对象的各程序步骤。按照本专利技术的第一方面提出的方法的构思在于,以一种反向思维和反向操作的方式,将在控制指令的作用下结合具体的执行环境产生的受控对象的实际行为重新解析为相应的可视化程序,该可视化程序对于没有经过系统学习编程的用户来说形象、生动、容易理解,该可视化程序可以包括一个或多个可调整的参数和用于控制受控对象的一个或多个程序步骤。在此,受控对象可以理解为在可编程玩具领域中可在相应的控制指令的作用下产生特定行为的实体物体或虚拟物体。所述控制指令可以理解为任何通过有线和/或无线通信方式传送给受控对象并使得受控对象产生特定行为的可执行的程序或程序序列。特别是该控制指令就可以是可编辑的并且可由受控对象执行的可视化程序或者程序序列。在此所述的实体物体可以包括例如玩具机器人、玩具汽车、玩偶、玩具飞行器等,这些实体物体均可以有线和/或无线通信方式接收控制指令并且通过执行这些控制指令产生特定行为。在此,所述受控对象的行为可以理解为包括运动行为(比如玩具车辆)、动作行为(比如变形金刚),表情行为(比如玩偶)等。有利地,按照本专利技术的第一方面提出的方法还可以包括:适应性调整所述参数和/或修改所述程序步骤,生成更新的可视化程序;将所述更新的可视化程序用于所述受控对象,根据所述受控对象执行后的结果确定是否需要对所述更新的可视化程序进行再次修改。由此可以以一种通过实际应用执行获得反馈的方式,在将在控制指令的作用下结合具体的执行环境产生的受控对象的实际行为重新解析为相应的可视化程序之后,针对该可视化程序包括的一个或多个可调整的参数和用于控制受控对象的一个或多个程序步骤根据需要进行相应调整,从而实现对该解析后生成的可视化程序的更新或修改,然后通过将更新或修改的可视化程序重新用于该受控对象,根据应用的结果来反馈更新或修改的效果,从而实现对该可视化程序的优化调整。其优点还在于,由于图形化编程环境的上述诸多优点,自然是用户参与编程的优选方式和编程环境。有利地,所述获取表征所述受控对象行为的行为特征数据的步骤可以持续进行。这可以理解为,该步骤从所述受控对象接收控制指令并且通过执行控制指令产生行为开始可以一直在进行中。其优点在于,可以比较全面地监控受控对象在控制指令下的行为,从而随时监控其行为方式,尤其是当在执行过程中会出现突然或者意想不到的情况下是非常有利的。有利地,所述获取表征所述受控对象行为的行为特征数据的步骤可以通过触发方式实现。这可以理解为,所述获取表征所述受控对象行为的行为特征数据的步骤可以根据需要按照用户的意愿选择性地进行,比如通过触发方式。这表示,获取该受控对象的行为特征数据的过程非自动运行,有明确的开始点和结束点,比如在具体实现中可以通过比如一个或两个实体或者虚拟按钮控制的方式来实现,比如点击开始按钮表示开始而点击结束按钮表示该过程结束。自然其他任何能实现同样功能的方式也都是可以考虑的。有利地,当所述受控对象是实体物体的情况下,所述行为特征数据可以包括通过一个或多个传感器获取的传感器数据和/或自动记录的用户操作数据。在此所述一个或多个传感器可以理解为包括安装在受控对象内部和/或受控对象之外的用于检测特定物理量的传感器,例如速度传感器、加速度传感器、转速传感器、位移传感器、间距传感器、陀螺仪等。用户操作数据通常可以包括例如加速、减速、左转、右转等以及相应的操作作用程度。一般地,当所述受控对象是实体物体的情况下,通常综合考虑该实体受控对象在执行相应控制命令期间的传感器数据和用户操作数据来实现对受控对象的行为解析。在此应当阐明的是,之所以在实体物体的情况下采用传感器数据和用户操作数据来综合体现实体物体的行为以便反应其实际行为情况,是因为在通过对比传感器的数据诸如加速度传感器的数据与用户操作数据比如加速、减速的数据,可以考虑通过操作数据预设的预期值与传感器具体体现的实际参数的差异,从而得知通过传感器得知的物体实际行为与通过用户操作数据想要实现的物体行为之间是否存在不同,从而得知物体行为是否存在异常,以此判断是否要引入校准策略诸如校准算法等。例如,假如受本文档来自技高网
...
一种反向编程的方法及系统

【技术保护点】
1.一种反向编程的方法(100),其中受控对象在控制指令的作用下产生行为,所述方法包括如下步骤:获取表征所述受控对象行为的行为特征数据(101);对所述获取的行为特征数据进行分析处理从而生成相应的可视化程序(102),其中所述生成的可视化程序包括各可调整的参数和用于结合所述参数以控制所述受控对象的各程序步骤。

【技术特征摘要】
1.一种反向编程的方法(100),其中受控对象在控制指令的作用下产生行为,所述方法包括如下步骤:获取表征所述受控对象行为的行为特征数据(101);对所述获取的行为特征数据进行分析处理从而生成相应的可视化程序(102),其中所述生成的可视化程序包括各可调整的参数和用于结合所述参数以控制所述受控对象的各程序步骤。2.根据权利要求1所述的方法(100),其特征在于,还包括:适应性调整所述参数和/或修改所述程序步骤,生成更新的可视化程序;将所述更新的可视化程序用于所述受控对象,根据所述受控对象执行后的结果确定是否需要对所述更新的可视化程序进行再次修改。3.根据权利要求1或2所述的方法(100),其特征在于,所述受控对象为实体物体或虚拟物体。4.根据权利要求1或2所述的方法(100),其特征在于,所述获取表征所述受控对象行为的行为特征数据的步骤持续进行。5.根据权利要求1或2所述的方法(100),其特征在于,所述获取表征所述受控对象行为的行为特征数据的步骤通过触发方式实现。6.根据权利要求3所述的方法(100),其特征在于,当所述受控对象是实体物体的情况下,所述行为特征数据包括通过一个或多个传感器获取的传感器数据和/或自动记录的用户操作数据。7.根据权利要求3所述的方法(100),其特征在于,当所述受控对象是虚拟物体的情况下,所述行为特征数据包括来自于所述虚拟物体的软件载体中由软件开发工具包(SDK)收集的数据。8.根据权利要求1或2所述的方法(100),其特征在于,所述生成的相应的可视化程序基于不同的受控对象包括不同种类和/或不同数量的代码块。9.根据权利要求1或2所述的方法(100),其特征在于,在对所述获取的行为特征数据进行分析处理从而生成相应的可视化程序中,根据不同的受控对象采用相应不同的算法。1...

【专利技术属性】
技术研发人员:吴周亚谢磊
申请(专利权)人:上海葡萄纬度科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1