魔方拼图解算器的制作方法

文档序号:18512627发布日期:2019-08-24 09:14阅读:1169来源:国知局
魔方拼图解算器的制作方法

本申请要求2016年11月23日提交的美国临时专利申请序列号62/426,169的优先权。



背景技术:

许多人可能喜欢尝试解析各种拼图。特别地,魔方类型拼图是一个特定分类。

这些拼图的许多用户可能不能够解析拼图或者可以预期学习附加的移动或策略。当前的教学工具不允许用户接收拼图本身的反馈。

此外,许多用户可能想要与他人竞争或跨社交媒介共享结果。当前的拼图不能够与诸如智能手机的用户设备通信,因而缺乏允许用户容易地交互的能力。

因而,存在魔方拼图解算器的需要,魔方拼图解算器能够指示朝向解法的步骤并与各种用户设备交互。



技术实现要素:

一些实施例提供了一种魔方拼图解算器设备。这种设备可以具有六个侧面,每个侧面具有数个子元件(如,九个子元件,十六个子元件等)。每个侧面能够绕着轴线旋转,使得子元件的取向相对于魔方的其他侧面改变(如,通过将面顺时针旋转九十度,一百八十度,二百七十度等)。除改变与旋转面相关联的子元件的面的取向之外,可以移动其他子元件以便与不同侧面相关联。比如,魔方的转角子元件可以与魔方的三个面相关联,其中特定面的移动可以引起每个子元件的一个以上面与不同侧面相关联。

魔方拼图可以具有方形侧面和方形子元件。不同的实施例可以利用各种适当的形状和布置(如,球,圆,三角,锥等),但是在全部说明书中将被其称之为“魔方拼图”。当每个侧面的子元件都匹配时,魔方拼图是在“被解析”状态。比如,这种匹配可以包括匹配颜色、图形指示器(如,形状,图标,字母,数等)、纹理等。在一些实施例中,用户能够限定与默认解析状态不同的目标状态。比如,用户可以按特定型式(有或没有来自解算器的引导)布置子元件,然后可以将该状态设定为预期目标,开始或解算状态。

本领域普通技术人员将认识到,魔方拼图的具体属性可以取决于各种相关参数(如,拼图的形状,面数,子元件数等)在不同实施例之中变化。

魔方拼图解算器设备可以包括各种位置感测元件。这些元件可以能够识别拼图的每个面的旋转。位置感测元件可以包括相对和绝对位置感测。

魔方拼图解算器设备可以利用位置感测元件来确定(和/或更新)拼图的当前状态。可以利用当前状态来生成解法以实现目标状态。解法可以经由设备的各种ui元件呈现给用户(如,指示每个面的旋转方向的箭头)。当用户请求指令时,可以呈现这种解法步骤。一些实施例可以通过比较设备的当前状态与目标状态来自动确定何时解法已实现。

一些实施例可以允许与外部用户设备(如,智能手机,平板电脑等)通信。这种用户设备可以执行一些实施例的应用,其能够向用户提供指令,接收拼图的状态,跨各种平台共享结果,和/或施行其他适当的任务。

前述发明内容旨在用作一些示范性实施例的各种特征的简要介绍。在不脱离本公开的范围的情况下,其他实施例可以以其他具体形式实施。

附图说明

在所附权利要求中阐述了本公开的示范性特征。然而,出于解释的目的,在以下附图中图示了若干实施例。

图1图示根据示范性实施例的魔方拼图解算器系统的示意性框图;

图2图示图1的魔方拼图解算器的正视图;

图3图示图1的魔方拼图解算器和比较应用的立体图;

图4图示图1的魔方拼图解算器使用的位置感测元件的正视图;

图5图示图1的魔方拼图解算器使用的补充位置感测元件的正视图;

图6图示由图4和图5的位置感测元件在九十度旋转上产生的输出的时序图;

图7图示用于感测多重位置感测元件的输出的接口电路的示意性示图;

图8图示用于操纵图7的接口电路的输出和控制信号的时序图;

图9图示图1的魔方拼图解算器使用的替换性位置感测元件的正视图;

图10图示图9的替换性位置感测元件的前截面视图;

图11图示由图9和图10的位置感测元件在完整旋转上产生的输出的时序图;

图12图示由图1的魔方拼图解算器使用的另一替换性位置感测元件的侧视图;

图13图示图12的替换性位置感测元件的移动部分的正视图;

图14图示图12的替换性位置感测元件的静态部分的正视图;

图15图示由图12的位置感测元件在完整旋转上产生的输出的时序图;

图16图示由图1的魔方拼图解算器使用的感测位置感测元件的开关位置的接口电路的示意性示图;

图17图示描述图16的接口电路的操作的真值表;

图18图示由图1的魔方拼图解算器使用的生成用户接口(ui)输出的电路的示意性示图;

图19图示真值表,表示出用于使用图18的电路生成各种ui输出的信号;

图20图示由图1的魔方拼图解算器使用的生成ui输出的替换性电路的示意性示图;

图21图示由图1的魔方拼图解算器使用的使用图20的替换性电路生成ui输出的控制电路的示意性示图;

图22图示评估魔方拼图并生成用户接口输出的示范性处理的流程图;

图23图示检测图1的魔方拼图解算器的状态的变化的示范性处理的流程图;

图24图示为图1的魔方拼图解算器生成解法并且经由一些实施例的ui元件提供指令的示范性处理的流程图;

图25图示在操纵图1的魔方拼图解算器时评估用户表现的示范性处理的流程图;以及

图26图示用于实施一些实施例的示范性计算机系统的示意性框图。

具体实施方式

以下详细描述描述当前设想的进行示范性实施例的模式。该描述不是采取限制性的意思,而仅仅是为了图示一些实施例的一般原理的目的,因为本发明的范围由所附权利要求最佳地限定。

下面描述的各种特征,每个特征可以彼此独立地使用或者与其他特征组合使用。概括地,一些实施例大体提供了一种魔方拼图解算器。

第一示范性实施例提供一种魔方拼图解算器,包含:至少一个位置感测元件;至少一个ui输出;和控制器,控制器从至少一个位置感测元件接收位置信息,确定建议移动,并引导至少一个ui输出以提供与建议移动相关联的指示。

第二示范性实施例提供一种确定魔方拼图解算器的位置的自动方法,该方法包含:监测一组感测引脚;基于该组感测引脚中的至少一个感测引脚的状态的变化来识别旋转;识别与所识别的旋转相关联的魔方拼图解算器的面;并基于所识别的面和所识别的旋转来更新魔方拼图解算器的状态。

第三示范性实施例提供一种魔方拼图系统,魔方拼图系统包含:魔方拼图设备,魔方拼图设备包含:一组位置感测元件和无线通信接口,该组位置感测元件能够检测魔方拼图设备的每个面的旋转;以及,用户设备,通过无线通信接口通信联接到魔方拼图解算器,用户设备包含至少一个ui元件,至少一个ui元件能够提供解析魔方拼图设备的逐步指令。

在以下章节中描述了若干更详细的实施例。部分i提供一些实施例的硬件架构的描述。然后,部分ii描述由一些实施例使用的操作方法。最后,部分iii描述了实施一些实施例的计算机系统。

i.硬件架构

图1图示根据示范性实施例的魔方拼图解算器系统100的示意性框图;如图所示,该系统可以包括魔方拼图解算器110,用户设备120和服务器130。魔方拼图解算器110可包括电池140,一组面板模块145(每个面板模块包括位置传感器150,ui输出155和ui输入160),电力控制165,控制器170,ui控制器175,位置传感器180和通信接口185。

魔方拼图解算器110可包括各种电子电路和/或设备。魔方拼图解算器可以嵌入到魔方拼图中,使得魔方拼图的尺寸和形状与不包括嵌入式解算器和相关联的特征的魔方拼图相同。

用户设备120可以是能够跨一个以上适当接口通信的设备,诸如智能手机,笔记本电脑,平板电脑,可穿戴设备等。

服务器130可以是能够执行指令,处理数据并跨一个以上适当接口通信的计算设备。

电池140可以是单次使用或可充电电池,其能够向魔方拼图解算器110的各种部件提供电力。

面板模块145可以包括各种子元件,下面描述其示例。魔方拼图的每个面可以与不同的面板模块相关联。在一些实施例中,一些部件可以跨多重面板模块共享。此外,面板模块可以利用解算器110内的各种共享总线或其他通信路径。

位置传感器150可以包括能够检测与面板模块145相关联的面的位置和/或移动的各种部件。一些实施例可以包括传感器,因为仅仅接合传感器并且当魔方旋转时传感器抽取电流,所以传感器提供电力节省,并且当魔方处于任何固定位置时可以减少电力。

不同的实施例可以包括各种不同的位置传感器150和/或传感器的组合(如,加速度计,编码器等)。一些实施例可以包括与每个面板或面相关联的多重位置传感器。比如,一些实施例可以在每个面子元件中包括三个加速度计传感器,使得三维取向可以被确定。在一些实施例中,位置传感器可能不能够确定绝对位置,但可能能够监测位置的变化(如,面至少旋转45度)。在这种情况下,如果当前状态是未知的(如,由于电力损耗),则可以需要重置或以其他方式提供魔方的状态(如,通过从用户设备下载)。

ui输出155可以包括各种指示器,诸如发光二极管(led),触觉反馈元件(如,振动元件),听觉输出(诸如扬声器)等。一个示范性实施例包括每个面上两个led指示器(与顺时针和逆时针运动相关),下面进一步详细描述。ui输出可以向用户提供反馈,使得用户能够解析拼图(或者移动到更接近解法的状态)。这种反馈可以包括,比如,下一步移动的亮光指示(如,“最佳”移动),多重可能移动的指示等。

ui输入160可以包括诸如按钮、触摸屏等的元件。一个示范性实施例包括与每个面相关联的按钮,如下面进一步详细描述的。一些实施例可以利用位置传感器150作为ui输入160。比如,输入命令可以与面的完整三百六十度旋转相关联。这种命令可以用于请求提示,关闭解算器110的电力等。

电力控制165能够向电池140提供充电电力,将电力从电池分配到解算器的其他元件,和/或以其他方式管理电力接收、消耗和/或分配。一些实施例可以利用磁性充电器(和/或其他无线充电方案)。替换性地,一些实施例可以包括允许有线充电连接的有线连接器(如,usb端口)。

控制器170可以从解算器110的各种其他部件接收数据和/或将命令发送到解算器110的各种其他部件。控制器170可以与能够存储指令和/或数据的储存器(未示出)相关联。控制器可以执行能够基于魔方拼图的当前状态生成至少一个解法的算法、应用等。这种解法可以包括一系列移动、最佳移动、下一步移动等。

ui控制器175可以与控制器170,ui输出155和ui输入160交互。ui控制器175可以识别所接收的输入(诸如按钮按压),并将适当的信息发送到控制器170。同样地,ui控制器175可以从控制器170接收信息并且为ui输出155生成适当的命令,从向用户提供反馈。下面更详细地描述示例ui控制器175。

位置传感器180可包括各种位置感测元件(如,加速度计),位置感测元件可以用于确定魔方拼图本身和/或其子元件的相对位置。位置传感器180可以包括惯性导航单元(inu),惯性导航单元能够感测三维加速度,三维陀螺仪位置和/或三维磁力计位置,以识别(和/或量化)三维运动和/或拼图解算器110的取向。

比如,位置传感器180可以用于确定对用户来说哪些面是可见的,并且因而如果多重潜在的下一步移动可用则哪些ui输出155应该被使用,或者为了确定下一步移动,在可见的面上提供指示(如,通过立刻闪烁多重led指示器)以指示用户应该操纵魔方拼图的位置。

通信接口185能够与一个以上用户设备120、服务器130等通信。这种接口185能够使用各种无线(如,蓝牙,wifi,蜂窝网络等)和/或有线通信路径(如,usb)通信。这种通信路径可以包括设备之间的直接通信信道,可以利用各种其他设备(如,路由器,热点等)的间接路径,网络路径等。

本领域普通技术人员将认识到,系统100可以以各种具体方式实施而不脱离本公开的范围。比如,一些实施例可以作为单机设备运行并且可以省略通信接口185。作为另一示例,一些实施例可以不利用不与面板或面相关联的位置传感器180。此外,一些实施例可以包括上面未描述的附加元件。作为又一示例,一些实施例可以包括物理操纵元件(诸如致动器,马达等),物理操纵元件可以允许拼图解算器110操纵拼图本身(如,通过移动每个面直到魔方被解析为止)。一些实施例可以包括附加的传感器、控制器等。而且,各种元件可以以各种不同的方式布置,和/或包括各种不同于所示出的、不同的通信路径。

图2图示魔方拼图解算器110的正视图。如图所示,在该示例中,拼图解算器110具有六个面200,每个面包括九个子元件210。

在该示例中,中心子元件210包括指示顺时针或逆时针旋转的两个ui元件220。ui元件可以使用元件面中的贴图形成,然后元件面可以通过led图示。不同实施例可以包括各种不同的ui元件。比如,一些实施例可以沿着圆隔开多重led,并且可以顺序点亮led以指示旋转方向。这种解法可以包括各种扩散器或其他元件,使led的“移动”显现得更连续。

图3图示魔方拼图解算器110和比较应用的立体图。在该示例中,魔方拼图解算器110与在用户设备120上运行的app相关联。用户设备可以包括ui显示器310。在该示例中,显示器示出了拼图解算器320和各种其他ui元件330(如,按钮,文本或图形等)的三维代表物。在该示例中,代表物320匹配物理拼图110的状态。不同的实施例可以显示各种不同的代表物320(如,当前状态,目标状态,提示后的状态等)。此外,该代表物可以包括动画或其他图形元件,其可以指示移动,使得提示(或其他信息)可以被提供给用户。

该应用可以被用于提供指令或提示给用户。此外,这种app可以被用于监测拼图解算器状况并识别何时已实现解法。用户可以能够跨社交媒体共享结果或使用app组织实况竞赛。在一些实施例中,app可以提供指令以实现特定的开始位置,使得所有参赛者可以从相同的开始点竞赛。

本领域普通技术人员将认识到,拼图解算器110的能力(如,无线通信,ui元件等)可以允许许多不同的交互游戏和/或其他娱乐应用被应用于这种拼图的使用。

在一些实施例中,拼图解算器110可以不包括任何ui元件。相反,解算器可以与用户设备120通信以接收用户输入,提供指令等。

图4图示魔方拼图解算器110使用的位置感测元件400的正视图。如图所示,元件400可以是带有通孔的圆形构件,该通孔允许元件绕着轴线旋转。魔方拼图解算器的每个面可以包括一个这种元件。元件可以包括非导电区域410和导电区域420。导电区域420可以包括金属或其他适当的材料,而非导电区域410可以包括塑料或其他绝缘体。在该示例中,区域以45度间隔隔开。不同的实施例可以利用不同的间距。

图5图示魔方拼图解算器110使用的补充位置感测元件500的正视图。元件500可以是带有通孔的静止元件,该通孔允许元件500关于如旋转元件400相同的轴线安装。如图所示,元件500可以包括非导电区域510和导电区域520。在该示例中,导电区域520联接到各种连接器(或“引脚”)530,其允许供应部连接,输出通信等。

与引脚p0和p1相关联的导电区域520以四十五度间隔开,其中接地区域在两者的中心。引脚gnd可以连接到接地供应部,而引脚p0和p1可以经过上拉电阻连接到电压供应部。在一些实施例中,可以以比区域420的宽度小的间隔隔开与引脚p0和p1相关联的导电区域520,使得位置感测信号不重叠(即,仅一个信号以特定旋转角度改变)。

图6示出了由位置感测元件400和500在九十度旋转上产生的输出610至620的时序图600。如图所示,当输出引脚(p0或p1)和gnd引脚经由导电区域420连接时,与输出引脚相关联的输出变为逻辑低状态。

可以分析结果的格雷码输出信号610至620以确定旋转角度和方向。代表性地,面将以九十度的增量旋转。这样,可以在如图所示的两个完整脉冲之后应用旋转(在该示例中在零度和九十度之间)。在这种配置中,当面处于代表性的九十度位置(在正负二十二度半内)时,没有电流(除了泄漏)通过连接到引脚p0和p1的上拉电阻抽取。因而,诸如在该示例中,位置传感器可以被配置成通过确保引脚处于打开电路状态,在这种“方形”状态(即,零度,九十度,一百八十度和二十七度的旋转)来使用最小量的电力。在该示例中,能够检测相对位置(并且可以使用状态机械或其他适当的元件来存储绝对位置)。

图7图示用于感测多重位置感测元件的输出的接口电路700的示意性示图。如图所示,电路可以包括输出连接710,多重开关对720和输入连接730。如分解视图740所示,开关750可以由上述输出p0和p1控制(其中如果在该示例中任一信号为逻辑低,则开关可以闭合)。

图8图示用于操纵接口电路7的输出和控制信号的时序图800。在该示例中,接口电路的单个示例能够检测魔方拼图解算器110的所有六个面上的旋转。

如图所示,最初所有面控制信号(f0至f5)可以设置为逻辑低,而两个感测引脚(sen0和sen1)是逻辑高,指示所有开关750是打开的。当面旋转超过二十二度半时,一个感测信号变低810。作为响应,如图所示,面控制信号可以循环,其中一个变为低,而其余的被设置为高阻抗状态820。以该方式,可以在检测到旋转之后单独评估每个面。在该示例中,感测引脚不会又变低,直到控制信号f5变为低830为止,其指示旋转与该面相关联。

在该示例中,通过使所有控制信号变为低850,以在恢复检测之前将所有控制信号设置为高阻抗840。替换性地,在识别该面之后,可以使所有控制信号变为低。最终,与旋转事件相关联的感测引脚变高860,指示事件的结束(当然,如果该面旋转超过四十五度,则另一感测引脚可以在大约相同的时间变低)。可以监测这种事件,使得完整的九十度旋转,以及旋转方向的检测,被识别。

在上面和下面的示例中,示出了许多没有时间延迟或边缘之间的间隙的信号。本领域普通技术人员将认识到,实际实施可以包括轻微偏离(如,通过在上面的示例中包括轻微比四十五度小的导电区域420),使得信号边缘不重叠。

图9图示由魔方拼图解算器110使用的替换性的位置感测元件900的正视图。如图所示,该元件900可包括旋转轴910,面板920,多重接触引脚930,多重导电区域940,各种ui指示器950和按钮输入960。轴910可以绕轴970旋转。

接触引脚930可以在感测元件900和其他部件之间运送信号。在该示例中,按钮960与输出b0相关联,而ui指示器950(如,诸如上述指示器220的指示器)通过输入l1和l2控制。

在一些实施例中,所有按钮960可以提供相同的功能(如,每个按钮可以用于给设备供电,请求提示,改变解析算法等)。按钮可以能够识别不同类型的输入(如,轻击,多击,轻击和保持等)。在一些实施例中,按钮可以与不同的功能相关联。一些实施例可以不在每个面上包括按钮(或者可以完全省略按钮)。在一些实施例中,一个以上按钮可以通过不同的元件(如,充电连接器)代替。

图10图示替换性的补充位置感测元件900的前截面视图。除了上述引脚之外,该示例包括输出引脚p0和p1。在该示例中,除了最左边的“感测”区域940以外,所有导电区域940彻底变得围绕轴910。如图所示,感测区域可以包括导电区域1010和非导电区域1020。非导电区域可以跨越四十五度,而导电区域跨越一百三十五度。输出引脚p0和p1关于gnd引脚隔开四十五度。

图11示出了由位置感测元件900在完整旋转上产生的输出1110至1120的时序图1100。如上,输出引脚p0和p1可以经过上拉电阻联接到电压供应部。在该示例中,感测元件900可以能够以四十五度的增量在180度间隔上检测绝对旋转位置。

图12图示由魔方拼图解算器110使用的另一替换性的位置感测元件1200的侧视图。该示例包括旋转部分1210和静态部分1220,静态部分1220包括多重弹簧加载的接触引脚1230。

图13图示替换性位置感测元件1200的移动部分1210的正视图。如图所示,移动部分12010可以包括各种非导电区域和导电区域1320至1330。在一些实施例中,所有导电区域可以连接到接地供应部,而引脚1230可以经过上拉电阻联接到电压供应部。

图14图示替换性位置感测元件1200的静态部分1220的正视图。在该示例中,sw1和sw2输出以三十度隔开,而共用端子在一百九十五度角处。

图15图示由位置感测元件1200在完整旋转上产生的输出的时序图。如图所示,能够以三十度的增量感测位置。

图16图示由魔方拼图解算器110使用的感测位置感测元件(诸如上述那些)的开关位置的接口电路1600的示意性示图。如图所示,电路1600可以包括控制引脚1610,感测输出1620,正在评估的一对开关1630,一对相关联的二极管1640和开关1650。在一些实施例中,可以通过重新配置微控制器设备的数字输入/输出引脚来实施开关。

图17图示描述接口电路1600的操作的真值表1700。这种方法可以用于确定诸如上述开关750的开关的状态。

图18图示由魔方拼图解算器110使用的生成ui输出的电路1800的示意性示图。这种ui输出可以类似于上述ui元件220和950。通过将引脚l0至l4驱动至逻辑低、高或高阻抗状态,可以点亮每个单独的led。此外,led可以以足够高的速率开关,使得一次显现多于一个led。

图19图示真值表1900,真值表1900示出用于使用电路1800生成各种ui输出的信号。如图所示,每个面f0至f5可以与一对led相关联。控制线l0至l4可用于控制每个面的指示器。

图20图示由魔方拼图解算器110使用的生成ui输出的替换性电路2000的示意性示图。图21图示由魔方拼图解算器110使用的使用替换性电路2000生成ui输出的控制电路2100的示意性示图。如图所示,每个面上带有六个led的三个面可以由六条信号线控制。

本领域普通技术人员将认识到,不同的实施例可以以不同的具体方式实施而不脱离本公开的范围。比如,一些实施例可以包括多重类型的感测元件(如,绝对和相对)。此外,一些实施例可以包括加速度计或陀螺仪,其可以能够确定拼图解析本身的位置而不是其部件(如,识别被用户正在观视的拼图的哪个面)。作为另一示例,不同的实施例可以包括不同数和类型的ui元件。

ii.操作方法

图22图示评估魔方拼图并生成用户接口输出的示范性处理2200的流程图。这种处理可以由诸如上述拼图解算器110的设备执行。比如,当一些实施例的拼图解算器通电时,当用户请求提示时,和/或在其他适当的时间,处理可以开始。

如图所示,该处理可以索取(在2210)位置数据。这种数据可以由诸如控制器170的元件从诸如位置传感器150和/或位置传感器180的元件索取。这种位置数据可以包括拼图状态,从先前状态的变化,感测到的移动等。

下一步,该处理可以索取(在220)任何用户输入。比如,用户输入可以包括按钮按压,拼图的操纵(如,摇动拼图),操纵拼图方面或其他元件等。此外,可以经由诸如通信接口185的部件,从外部设备或元件接收用户输入(如,智能手机)。

在一些情况下,位置数据和用户输入可以作为单个实体被索取(如,当用户改变面位置时,面位置的变化可以改变魔方的状态并且被解释为对下一步移动的请求)。在其他情况下,该处理可以在后续处理之前等待用户输入。比如,用户可以改变面位置(无论是否基于先前的提示),并且除非用户请求提示(如,通过按下按钮)或者满足一些其他适当的标准(如,自上次移动后流逝的时间超过阈值),否则不会采取进一步动作。

然后,该处理可以评估(在230)所索取的位置数据和/或用户输入数据。这种评估可以包括确定拼图的当前状态,识别下一步移动(或一组潜在移动),识别最佳移动,识别非有效的移动等。一些实施例可以利用先前状态来确定当前拼图的状态。比如,一些实施例可以包括能够确定和存储拼图状态的微处理器(和/或其他适当的处理设备和相关联的储存器)。

然后,处理200可以确定(在240)是否已满足任何输出标准。比如,这种输出标准可以包括确定是否已接收到提示请求。如果该处理确定(在240)未满足输出标准,则处理可以结束。

如果该处理确定(在240)已满足一些输出标准,则该处理可以激活(在250)适当的ui输出元件(如,通过点亮单个旋转指示器),然后可以结束。在外部设备与解算器通信的情况下,该处理可以向外部设备发送适当的命令或消息,使得外部设备提供适当的ui输出(如,通过更新显示屏)。

此外,一些实施例可以收集信息并将收集的信息分配到各种外部资源(如,服务器),使得可以跨社交网络或其他适当的场所共享信息。例如,这种信息可以包括状态信息、解算时间或其他表现统计等。

更进一步,一些实施例可以利用一个以上用户设备来索取状态信息,位置数据,提供用户输出,和/或以其他方式实施处理200。比如,一些实施例可以允许用户使用相机来捕获魔方拼图的当前状态。作为另一示例,一些实施例可以利用用户设备屏来提供拼图的渲染并指示下一步移动、一系列移动等,如上面参考图3所述。

图23图示检测魔方拼图解算器110的状态改变的示范性处理2300的流程图。这种处理可以由诸如上述拼图解算器110的设备执行。比如,当一些实施例的拼图解算器通电时,或者当运动被检测到时,处理可以开始。

如图所示,该处理可以监测(在2310)诸如上面描述的参考感测输出710的那些感测引脚。下一步,该处理可以确定(在2320)是否已检测到旋转。可以基于接收感测引脚进行这种确定(如,当在上面的示例中任一感测引脚变低时,部分旋转被检测到)。如果该处理确定(在2320)未检测到旋转,则该处理可以重复操作2310至2320,直到该处理确定(在2320)旋转已被检测到。

如果该处理确定(在2320)旋转被检测到,则该处理可以扫描(在2330)拼图的面。可以以上面参考示图800描述的办法类似的办法实现这种扫描。

在识别与旋转相关联的面之后,处理2300可以继续监测该面,同时该处理确定(在2340)是否已实现完整九十度旋转。取决于在感测引脚上检测到的下一步信号边缘,旋转可以继续朝向完整旋转(或者已实现完整旋转)或者可以返回到开始位置(或者可以在中间状态暂停)。

如果该处理确定(在2340)已经执行完整旋转,则该处理可以更新(在2350)拼图状态以反映位置的变化,然后可以结束。如果该处理确定(在2340)未执行完整旋转(由于部分旋转或回到原始位置),则该处理可以结束而不更新拼图状态。

在一些实施例中,用户能够存储或“锁定”状态,使得用户可以回到该状态。以该方式,用户能够在能够恢复到特定状态的同时测试各种策略或程式(如,当用户尝试解析第三个侧面时,用户可能希望保存被解析的两个侧面的状态)。

只要拼图正在使用中,就可以迭代地执行处理2300。可以存储在断电或超时事件之前确定的最终状态,使得可以在下次拼图通电时索取该状态。

图24图示为魔方拼图解算器110生成解法并且经由一些实施例的ui元件提供指令的示范性处理2400的流程图。这种处理可以由诸如上述拼图解算器110的设备执行。比如,当一些实施例的拼图解算器通电时,当检测到旋转时(即,当使用诸如处理2300的处理更新状态时),和/或在其他适当的时间,处理可以开始。

如图所示,处理2400可以索取(在2410)当前拼图状态。这种状态可以指定每个拼图面的每个可移动子元件的位置。取决于设备的能力,状态可以包括一些子元件的相对位置(如,指示在给定时间哪个面向上)。位置可以指示子元件当前位于每个面上哪处,以及子元件的取向(如果适用的话)。比如,转角部件可以与三个面相关联,并且该位置可以指示该部件当前定位在哪个转角,以及与该部件的每个指示器相关联的面(如,颜色的取向)。

下一步,该处理可以识别(在2420)解法。可以以各种适当的方式并基于各种因素来识别该解法。比如,初学者可以请求“解法”,解法以正确的取向实现魔方拼图的一个完整侧面。作为另一示例,不同于标准纯色,解法可以是跨每个面解析的型式(如,棋盘)或位置。作为另一示例,解法可以是单个最优移动。该解法可以基于各种不同的算法(如,以最小数的移动来解析的“主”算法,逐层算法等)。

所识别的解法可以与从当前状态实现解法所需的数个移动相关联。可以将每个移动作为“提示”或指令提供给用户。取决于所采用的算法,这种移动可以以各种次序列出。

然后,处理可以确定(在2430)是否已请求提示。可以基于各种适当的标准进行这种确定。例如,用户可以按压按钮(或多击,按压和保持等)以请求提示。作为另一示例,用户可以摇动拼图以请求提示。作为又一示例,一些实施例可以在自上次移动后经过指定时间之后提供提示。

如果该处理确定(在2430)没有提示已被请求,则处理可以结束。如果该处理确定(在2430)提示已被请求,则该处理可以提供(在2440)提示,然后可以结束。可以使用上述ui指示器,或其他适当的方式来提供这种提示。

图25图示在操纵魔方拼图解算器110时评估用户表现的示范性处理2500的流程图。这种处理可以由诸如上述用户设备120的设备执行。比如,当一些实施例的拼图解算器通电时,当用户启动一些实施例的app时,和/或在其他适当的时间,处理可以开始。

如图所示,该处理可以建立(在2510)与拼图设备的连接。可以使用有线或无线通信信道建立这种连接。下一步,该处理可以检索(在2520)拼图的当前状态。通过评估拼图面的绝对位置和/或其他适当的方式(如,用户可以拍摄每个面的图片并将图片装载到app用于分析),可以从本地存储器索取该状态。

然后,该处理可以确定(在2530)是否存在用于拼图的限定的开始状态。这种状态可以与特定的实况事件或比赛,长期挑战等相关联。以这种方式,用户可以能够通过从相同的开始状态解析拼图来竞争。

如果该处理确定(在2530)存在限定的开始状态,则该处理可以识别(在2540)解法,该解法将基于当前状态实现预期开始。下一步,该处理可以提供(在2550)该解法并验证开始状态。可以经由设备110的ui元件和/或经由设备显示器使用逐步旋转指令来提供解法。

在提供(在2550)解法并验证状态之后或在确定(在2530)不存在限定的开始状态之后,该处理可以开启(在2560)一个计时器。这种计时器可以与多重设备(如,在实况竞赛期间)或单个设备(如,用户可以与另一用户的成果或过去的成果竞争)相关联。代替使用时间,一些实施例可以计数移动的数量或使用其他适当的表现度量。

下一步,该处理可以确定(在2570)拼图是否已被解析。可以通过将拼图的当前状态与解算状态比较来进行这种确定。可以执行诸如处理2300和2400(或其部分)的处理以确定拼图是否已被解析。

该处理可以继续监测魔方状态并将状态与解算状态比较,直到该处理确定(在2570)魔方已被解析。然后,该处理可以停止(在2580)计时器(或其他度量计数器)并提供结果(如,流逝的时间,移动数,请求的提示等),然后可以结束。

结果可以跨其他资源(如,社交媒体,用户组等)存储和/或共享。

本领域普通技术人员将认识到,处理2200至2500可以以各种不同的方式施行而不脱离本公开的范围。比如,一些实施例可以包括附加操作,省略列出的操作,和/或以不同于所描述的、不同的次序施行操作。作为另一示例,可以基于所接收的用户输入和/或其他适当的准则来迭代地施行处理(和/或其部分)。

iii.计算机系统

上述许多处理和模块可以作为软件处理实施,软件处理是被指定为记录在非暂时性存储介质上的一组以上指令。当这些指令由一个以上计算元件(如,微处理器,微控制器,数字信号处理器(dsp),应用指定集成电路(asic),现场可编程门阵列(fpga),等)执行时,指令引起计算元件施行指令中指定的动作。

在一些实施例中,可以使用电子电路彻底实施上述各种处理和模块,该电子电路可以包括各种成套装置或元件(如,传感器,逻辑门,模拟数字转换器,数字模拟转换器,比较器,等)。这种电路可以能够实施可以与所全部描述的各种软件元件相关联的功能和/或特征。

图26图示用于实施一些实施例的示范性计算机系统2600的示意性框图。例如,可以使用计算机系统2600至少部分地实施上面参考图1描述的系统。作为另一示例,可以使用使用计算机系统2600执行的成套指令来至少部分地实施参考图22至图25描述的处理。

可以使用各种适当的设备来实施计算机系统2600。比如,计算机系统可以使用一个以上个人计算机(pc),服务器,移动设备(如,智能手机),平板电脑设备和/或任何其他适当的设备来实施。各种设备可以独自工作(如,计算机系统可以作为单个pc实施)或者相结合(如,计算机系统的一些部件可以由移动端设备提供,而其他部件由平板电脑设备提供)。

如图所示,计算机系统2600可以包括至少一个通信总线2605,一个以上处理器2610,系统储存器2615,只读储存器(rom)2620,永久存储设备2625,输入设备2630,输出设备2635,音频处理器2640,视频处理器2645,各种其他部件2650,以及一个以上网络接口2655。

总线2605表示计算机系统2600的元件之间的所有通信路径。这种路径可以包括有线,无线,光学和/或其他适当的通信路径。例如,输入设备2630和/或输出设备2635可以使用无线连接协议或系统联接到系统2600。

为了执行一些实施例的处理,处理器2610可以从诸如系统储存器2615、rom2620、和永久存储设备2625的部件索取要执行的指令和/或要处理的数据。这种指令和数据可以通过总线2605传递。

系统储存器2615可以是易失性读写储存器,诸如随机访问储存器(ram)。系统储存器可以存储处理器在运行时使用的一些指令和数据。用于实施一些实施例的成套指令和/或数据可以存储在系统储存器2615、永久存储设备2625和/或只读储存器2620中。rom2620可以存储可以由处理器2610和/或计算机系统的其他元件使用的静态数据和指令。

永久存储设备2625可以是读写储存设备。永久存储设备可以是非易失性储存器单元,即使在计算机系统2600关闭或未供电时,该非易失性储存器单元也存储指令和数据。计算机系统2600可以使用可移动存储设备和/或远程存储设备作为永久存储设备。

输入设备2630可以使用户能够与计算机系统通信信息和/或操纵系统的各种操作。输入设备可以包括键盘、光标控制设备、音频输入设备和/或视频输入设备。输出设备2635可以包括打印机、显示器、音频设备等。一些或所有输入和/或输出设备可以无线地或光学地连接到计算机系统2600。

音频处理器2640可以处理和/或生成音频数据和/或指令。音频处理器能够从诸如麦克风的输入设备2630接收音频数据。音频处理器2640能够向诸如一组扬声器的输出设备2640提供音频数据。音频数据可以包括数字信息和/或模拟信号。音频处理器2640能够分析和/或以其他方式评估音频数据(如,通过确定诸如信号噪声比、动态范围等的质量)。此外,音频处理器可以施行各种音频处理功能(如,均衡、压缩等)。

视频处理器2645(或图形处理单元)可以处理和/或生成视频数据和/或指令。视频处理器能够从诸如相机的输入设备2630接收视频数据。视频处理器2645能够向诸如显示器的输出设备2640提供视频数据。视频数据可以包括数字信息和/或模拟信号。视频处理器2645可以能够分析和/或以其他方式评估视频数据(如,通过确定诸如分辨率、帧速率等的质量)。此外,视频处理器可以施行各种视频处理功能(如,对比度调整或标准化,颜色调整等)。更进一步,视频处理器可以能够渲染图形元件和/或视频。

其他部件2650可以施行各种其他功能,包括提供存储,与外部系统或部件的接口等。

最终,如图26所示,计算机系统2600可以包括能够连接到一个以上网络2660的一个以上网络接口2655。例如,计算机系统2600可以联接到因特网上的互联网服务器,使得当用户与在互联网浏览器中操作的接口交互时,在计算机系统2600上执行的互联网浏览器可以与互联网服务器交互。计算机系统2600可以能够经过网络接口2655和网络2660访问一个以上远程存储器2670和一个以上外部部件2675。网络接口2655可以包括一个以上应用编程接口(api),其可以允许计算机系统2600访问远程系统和/或存储器,并且还可以允许远程系统和/或存储器访问计算机系统2600(或其元件)。

如在本说明书和本申请的任何权利要求中所使用的,术语“计算机”,“服务器”,“处理器”和“存储器”都指代电子设备。这些条款不包括人或人群。如在本说明书和本申请的任何权利要求中所使用的,术语“非暂时性存储介质”完全限制于以能够由电子设备读取的形式存储信息的有形的、物理的对象。这些术语不包括任何无线或其他短暂信号。

本领域普通技术人员应该认识到,计算机系统2600的任何或所有部件可以与一些实施例结合使用。另外,本领域普通技术人员将理解,许多其他系统配置也可以与一些实施例或一些实施例的部件结合使用。

此外,虽然所示出的示例可以将许多个别的模块图示为单独的元件,但是本领域普通技术人员将认识到这些模块可以组合到单个功能块或元件中。本领域普通技术人员还将认识到,单个模块可以分开到多重模块中。

前述内容涉及示范性实施例的说明性细节,并且可以在不脱离由所附权利要求限定的本公开的范围的情况下进行修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1