CN108271365B - 游戏机器人、***及控制游戏机器人的方法 - Google Patents
游戏机器人、***及控制游戏机器人的方法 Download PDFInfo
- Publication number
- CN108271365B CN108271365B CN201680052518.7A CN201680052518A CN108271365B CN 108271365 B CN108271365 B CN 108271365B CN 201680052518 A CN201680052518 A CN 201680052518A CN 108271365 B CN108271365 B CN 108271365B
- Authority
- CN
- China
- Prior art keywords
- module
- robot
- gaming
- gaming robot
- data
- 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.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/214—Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
- A63F13/2145—Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/23—Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
- A63F13/235—Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console using a wireless connection, e.g. infrared or piconet
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/65—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/803—Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/85—Providing additional services to players
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/90—Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
- A63F13/98—Accessories, i.e. detachable arrangements optional for the use of the video game device, e.g. grip supports of game controllers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H11/00—Self-movable toy figures
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H11/00—Self-movable toy figures
- A63H11/18—Figure toys which perform a realistic walking motion
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H30/00—Remote-control arrangements specially adapted for toys, e.g. for toy vehicles
- A63H30/02—Electrical arrangements
- A63H30/04—Electrical arrangements using wireless transmission
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H33/00—Other toys
- A63H33/04—Building blocks, strips, or similar building parts
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H33/00—Other toys
- A63H33/04—Building blocks, strips, or similar building parts
- A63H33/042—Mechanical, electrical, optical, pneumatic or hydraulic arrangements; Motors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/003—Manipulators for entertainment
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
- B62D57/02—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
- B62D57/032—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/01—Mobile robot
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/02—Arm motion controller
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/27—Arm part
- Y10S901/28—Joint
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Robotics (AREA)
- Manipulator (AREA)
- Toys (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Selective Calling Equipment (AREA)
Abstract
描述了游戏机器人的示例。可用诸如智能手机或平板的计算装置来控制游戏机器人。游戏机器人可以用于单机或团体游戏活动。在一种情况下,游戏机器人具有一个或多个基础模块(11)。这些基础模块包括具有主处理模块的主要模块,所述主处理模块用于响应于从计算装置接收的命令而控制所述游戏机器人的至少一个运动模块。辅助模块(1000)可借助机械联接器和电气接口(1003、1004)附接于所述基础模块(11)。所述主处理模块被配置成:借助所述电气接口(1003)从所述辅助模块获得标识所述辅助模块(1000)的数据,并且将所述数据发送到所述计算装置。所述计算装置基于从所述辅助模块获得的数据来改变发送到所述主处理模块的命令,使得基于所述辅助模块的连接来修改对至少一个运动模块的控制。
Description
技术领域
本发明涉及游戏机器人。具体地,但非排他性地,本发明涉及用于控制游戏机器人的方法和***。可用诸如智能手机或平板的计算装置来控制游戏机器人。游戏机器人可以用于单机或团体游戏活动。
背景技术
传统上,计算机或视频游戏***以由游戏装置生成并且在计算机监视器或电视屏幕上显示的虚拟世界为重要内容。游戏装置可以是游戏控制台、个人计算机,或者(最近)智能手机或平板装置。通常,使用游戏手柄或操纵杆形式的游戏控制器来控制游戏控制台;个人计算机可以是带有操纵杆或键盘的控制器;并且智能手机或平板可以使用触摸屏界面。随着时间推移,由游戏***创造的虚拟世界和角色变得越来越精细和精致,从早期游戏计算机的简单二维图形发展为具有栩栩如生的实体、逼真实体和照明引擎的巨大三维世界。
虽然游戏***随着时间推移已经变得更加先进,但是常常缺乏与游戏的虚拟世界以及所述游戏内的角色的亲密度或联系。尽管在线游戏兴起并且能够在玩计算机游戏的同时与世界各地的其他用户进行交流,但是用户仍然经常使用游戏控制器和屏幕配置与游戏进行交互,而游戏控制器和屏幕配置在过去三十年内保持不变。
对于增加与游戏中的虚拟角色或世界的亲密度或联系的尝试有限。US 5,766,077描述了一种“娱乐性强的游戏装置”,在该游戏装置中,将三维玩具机体和游戏机结合在一起。玩具机体对应于放置在附近的监视器上显示的战斗角色,由此使玩家更容易感受战斗角色并且使游戏更有趣。使用游戏主机在监视器上显示与玩具机体对应的角色。机器人玩具经由有线接口连接到游戏主机。提供了控制监视器上显示的角色移动的控制器。玩具机体或“机器人玩具”具有主要机器人部分(身体部分)和多个机器人部分(手臂部分或腿部分),后者可断开地附接于主要机器人部分。主要机器人部分具有在其中存储自相关数据的非易失性存储器,并且机器人部分中的每个具有用于标识自身的标识部分。游戏主机具有用于从主要机器人部分的非易失性存储器读出数据的读出装置(读出部分)和用于对玩具身体部分中的每个的标识部分进行解码并且个体指定玩具身体部分的指定装置(读出部分)。它还具有控制装置(控制部分),该控制装置用于根据数据读出装置所读出的数据和指定装置所指定的细节和控制器的操纵来控制角色的移动。
WO2016/075081A1描述了用于玩具(例如,建筑玩具元件)的自动计算机辅助光学识别的***和方法。用建筑玩具元件建造的玩具可以从数字图像中识别出并且用于在虚拟游戏世界内产生玩具的虚拟表示。
然而,这些增加亲密度或联系的尝试仍然导致游戏的实体世界和屏幕上显示的虚拟世界之间有差距。随着虚拟世界和角色变得越来越丰富和更栩栩如生,感觉该差距越来越远。
发明内容
根据本发明的第一方面,提供了一种包括一个或多个基础模块的游戏机器人。所述一个或多个基础模块包括主要模块,所述主要模块包括主处理模块,所述主处理模块响应于从计算装置接收的命令而控制所述游戏机器人的至少一个运动模块。所述一个或多个基础模块中的至少一个包括:辅助模块机械联接器,用于连接辅助模块;以及辅助模块电气接口,用于访问存储在所述辅助模块的电子电路内的数据,所述数据标识所述辅助模块。所述主处理模块被配置成:借助所述电气接口从所述辅助模块获得所述数据;以及将所述数据发送到所述计算装置。所述计算装置基于从所述辅助模块获得的所述数据来改变发送到所述主处理模块的所述命令,使得基于所述辅助模块的连接来修改对至少一个运动模块的控制。
因此,本文中描述的某些示例涉及被称为游戏机器人的相对新型的消费机器人。这些与视频游戏结合使用来合并实体世界和虚拟世界。这可在增强现实的帮助下实现。该游戏机器人因此可用于代表在计算装置上玩的虚拟游戏的实体存在。因此,游戏机器人结合了实体和虚拟游戏动作。可在实体世界中控制游戏机器人来完成增强现实游戏任务或战斗,例如,虚拟世界中的某些虚拟游戏元素可与真实世界的实体元素交互。在这些增强现实世界中,游戏机器人具有一致的实体和虚拟角色属性。通过附接辅助模块,用户可在实体世界和虚拟世界二者中(即,以闭环方式)修改游戏机器人的行为。以这种方式,对机器人进行实体修改(例如,附接对机器人的实体冲击可忽略的部件)会引起游戏机器人的属性或特征被虚拟修改,这些属性或特征体现在修改后的实体行为(诸如,修改后的移动和/或原动机启动序列)中。
在一种情况下,计算装置可包括通信联接的移动装置,诸如通过无线连接联接的智能手机或平板。在其他情况下,计算装置可包括远程(数据)服务器,由此游戏机器人直接地或借助有限的游戏控制器联接到远程服务器。例如,在这种情况下,主处理模块可包括WiFi接口,以使其能够连接到互联网和远程服务器。在第三种情况下,计算装置可包括通信联接的移动装置和远程服务器二者,例如,游戏机器人可连接到移动装置,然后通过移动装置的连接连接到远程服务器。在这种情况下,可在移动装置和远程服务器之间分配某些处理任务。
在使用中,游戏机器人可包括多个基础模块和辅助模块。基础模块可包括以下中的至少一项:以上提到的主要模块、一个或多个运动模块、身体模块和电池模块。基础模块中的每个可以能联接于另一个基础模块和/或一个或多个辅助模块。在一个示例中,游戏机器人可具有辅助模块,辅助模块包括与机器人腿部附接的可去除护盾和 /或与机器人身体附接的武器。可使用存储在护盾的电子电路内的数据(例如,存储在微控制器存储器内的唯一标识符或字符串序列)来标识被认为“重”或“轻”的护盾;然而,“重”和“轻”护盾二者都可具有相当的实体质量(或对腿部模块的运动带来小实体效果的质量)。计算装置从护盾接收数据并且确定它是“重”还是“轻”。在一种情况下,所述数据包括指示辅助模块类型的标识符。然后,计算装置修改或改变发送到游戏机器人的主处理模块的命令(例如,相比于没有附接护盾的基础情况),使得腿部运动减慢或以其他方式与护盾的虚拟质量成正比地调节。例如,“重”护盾可使游戏机器人的虚拟质量加倍,并且机器人因此可发送以在游戏机器人没有附接护盾的基础情况的一半的加速度移动游戏机器人的命令。
在一种情况下,所述一个或多个基础模块包括用于提供机器人运动的至少一个运动模块,其中,所述至少一个运动模块包括所述辅助模块机械联接器和所述辅助模块电气接口。例如,运动模块可以是包括至少臀部和大腿的腿部模块,并且辅助模块可以是与腿部模块电气和机械附接的可去除护盾组件。
在一种情况下,第一辅助模块能连接到所述辅助模块机械联接器,并且从所述计算装置接收的命令基于由所述主处理模块发送的标识所述第一辅助模块的数据来控制所述至少一个运动模块以第一速度移动。例如,所述第一辅助模块可具有第一虚拟质量(“重的”护盾或武器),因此如果假定力是恒定的,则加速度将减小。在这种情况下,计算装置被配置成评估游戏机器人的例如向前或向后移动机器人的机器人运动方程,并且使用结果来计算游戏机器人例如在时间t(例如,10s)内移动到相对x、 y或x、y、z位置(例如,[+5,+10]或[+5,+10,+20])的命令。这些命令可包括旋转元素。游戏机器人的主处理模块被配置成例如借助嵌入式控制器的固件来接收这些命令并且计算一系列原动机旋转(例如,脉宽调制信号)以实现该运动。
在这种情况下,第二辅助模块也可以能连接到所属辅助模块机械联接器。可以能连接第二辅助模块来取代第一辅助模块,例如,第一辅助模块可被去除并且被第二辅助模块取代。从所述计算装置接收的命令基于由所述主处理模块发送的标识所述第二辅助模块的数据来控制所述至少一个运动模块以第二速度移动。例如,第二辅助模块可具有第二虚拟质量(是“轻”护盾或武器),因此如果假定力与附接第一辅助模块时相同(例如,游戏机器人被认为是具有相同的下面关节移动能力),则加速度将减小达较小范围。当计算装置评估游戏机器人的运动方程以计算针对游戏机器人的命令时,时间可减少至达到同一位置(因为加速度将更大)。这会导致高级命令,诸如,在时间t(例如,7.5s)移动到相对x、y、z位置(例如,[+5,+10,+20])。同样,游戏机器人的主处理模块被配置成接收这些命令,并且计算一系列原动机旋转(例如,脉宽调制信号)以实现该运动(例如,借助较快旋转)。
如以上讨论的,基础模块可包括运动模块,运动模块进而可包括多个腿部模块。在这种情况下,游戏机器人可以是例如具有四条腿的“足式”游戏机器人。每个腿部模块可包括用于使所述腿部模块的一些部分分别围绕多个轴旋转的多个原动机。在一种情况下,腿部模块包括具有两个原动机(“膝盖”和“踝”关节)的“大腿”部分和具有一个原动机(用于“臀部”关节)的“臀部”部分。在这些情况下,因具有各自具有多个独立可控原动机的多个独立可控腿部模块,可制定大量的复杂机器人运动。以这种方式,游戏机器人可在实体世界中制定虚拟游戏世界或环境的复杂动画或角色运动。以这种方式,可在实体世界和虚拟世界二者中看到逼真的移动(例如,模拟诸如蜘蛛、螃蟹、蜥蜴或哺乳动物的动物所执行运动的流体运动),从而弥合这两个世界之间的间隙并且为用户提供沉浸体验。
在一种情况下,所述主处理模块被配置成从所述计算装置接收高级命令,并且所述主处理模块被配置成从每个腿部模块内的控制电路接收运动学反馈。在一种情况下,所述主处理模块包括运动学引擎,所述运动学引擎用于响应于所述高级命令,使用接收的所述运动学反馈而生成低级命令。例如,如上所述,高级命令可包括移动到特定相对位置(例如,与游戏机器人的姿势相比较)或绝对位置(例如,在定义的三维空间内对机器人周围的实体环境建模)的命令。该高级命令可以是基于时间的(例如,在x秒内),在这种情况下,运动引擎可计算所需的原动机速率和加速度;或者可依据以下中的一个或多个来定义:标量速度、矢量速率和标量和/或矢量加速度。例如,高级命令可包括启用在所供应的运动学约束内的预定义移动序列或在时间上定义的移动序列(例如,时空中定义的点之间的线性运动或非线性运动)。
该控制***的优点在于,在允许进行复杂流体运动的同时,将虚拟移动转换成实体移动。例如,从在计算装置上运行的游戏引擎以最小程度的修改来输出时间和位置信息。这允许游戏引擎在便携式计算装置(例如,智能手机等)上以实时速率运行。相比之下,由于处理开销以及缺乏针对特定机器人装置的优化控制库,所以需要在计算装置上计算的机器人原动机的运动学的***将难以以实时速率运行。通过这种处理划分,还减少了需要通过从计算装置到游戏机器人的通信链路发送的信息;例如,诸如“在时间t到达位置[x,y,z]”的命令比实现移动所需的低级原动机指令的集合小得多。
在某些示例中,所述辅助模块电气接口包括电源接口和数据通信接口。在这些情况下,所述辅助模块可包括借助所述电源接口进行供电的一个或多个有源电子元件,其中,所述主处理模块被配置成控制所述有源电子元件。例如,辅助模块可包括屏幕、电机或一个或多个发光二极管(LED)。在某些情况下,标识所述辅助模块的数据包括唯一标识符;以及形成所述辅助模块的一部分的有源电子特征的指示。标识这些有源电子元件的数据可使主处理模块能够基于所存储的指令集合来检测和控制元件。例如,主处理模块可在执行计算装置所指示的移动的同时,使一个或多个彩色LED闪烁。在某些情况下,机械联接器和电气接口可通过同一结构元件(例如,磁性扣钩和 /或销/插座电连接器)来实现。
根据本发明的第二方面,提供了一种游戏机器人***,所述游戏机器人***包括本文中描述的任一个示例的游戏机器人和执行游戏机器人软件应用的计算装置。在这种情况下,游戏机器人软件应用可接收标识辅助模块的数据,并且计算发送到游戏机器人的主处理模块的命令。例如,所述计算装置可被配置成基于所述游戏机器人的所述主处理模块所发送的数据来更新所述游戏机器人软件应用内的游戏环境中的所述游戏机器人的属性。
在一个示例中,所述计算装置包括连接装置。所述连接装置可以是诸如智能手机或平板的便携式计算机。在另一种情况下,所述连接装置可以是膝上型或台式计算机。在又一种情况下,连接装置可以是专用游戏控制器。在这些情况下,连接装置可包括:处理器,用于执行所述游戏机器人软件应用;无线接口,用于与所述游戏机器人的所述主处理模块进行通信;显示屏,用于显示所述游戏机器人软件应用的用户界面;以及游戏控制器,用于将用户命令提交给所述游戏机器人软件应用。用户(即,游戏玩家)可使用游戏控制器来控制真实世界和虚拟世界二者中的游戏机器人。游戏机器人软件应用可响应于借助游戏控制器接收的用户命令而生成移动游戏机器人的命令。例如,通过向前按压游戏控制器的控制板,游戏机器人的表示可在虚拟世界中向前推进,例如,游戏机器人的模型可在非可视化的维度空间中推进,并且命令可被发送到游戏机器人,以在现实世界中推进成比例的量。在某些情况下,游戏控制器可使用连接装置的触摸屏来实现,例如,可在显示屏上示出的用户界面上设置虚拟操纵杆或控制板。
在某些情况下,所述游戏机器人软件应用包括:智能模块***,用于基于借助所述无线接口从所述游戏机器人的所述主处理模块接收的数据来收集与所述游戏机器人连接的任何辅助模块的状态;以及战斗***,用于从所述智能模块***接收数据并且基于来自所述智能模块***的数据来计算涉及至少所述游戏机器人的模拟战斗的结果。例如,护盾模块以及调节游戏机器人的属性(例如,质量、速度或加速度)可在游戏环境中提供数目更多的防御点。类似地,武器模块以及调节游戏机器人的属性 (例如,质量、速度或加速度)可以能在游戏环境中进行特定攻击移动。在一种情况下,攻击移动可具有对应的一组实体移动,主处理模块遵循来自游戏机器人软件应用的高级命令来启动这组实体移动。模拟战斗可以在以下之间:两个或更多个实体上共处(例如,在同一房间或地理区域中)的游戏机器人之间;实体上远离的两个或更多个游戏机器人(例如,不同房间或地理区域);和/或一个或更多个游戏机器人(例如,共处或位置远离)和游戏环境中的一个或更多个虚拟实体(例如,游戏机器人的虚拟表示)。这使得地理上远离的用户(例如,用户不需要实体共处来体验实体和虚拟游戏设计)能够进行灵活的游戏设计。对于共处的游戏机器人,可在具有协调的实体移动序列的同一实体空间中模拟“战斗”,作为多个通信联接的连接装置产生的这些序列将共享游戏环境同步并且将命令个体地发送到相应的游戏机器人。这使得对多个游戏机器人的同步控制能够代表虚拟世界内发生的战斗。另外,可基于从游戏机器人 (例如,红外(IR)或超声波距离传感器)接收的传感器测量结果来将真实世界物体整合到游戏环境中,例如,一个物体会挡住武器的瞄准线,从而防止射程内的其他游戏机器人有损伤。
在一个示例中,游戏***还包括数据服务器,所述数据服务器借助活跃的互联网连接与所述计算装置通信联接,所述数据服务器包括用于存储与所述游戏机器人相关的数据的机器人数据库,在这种情况下,所述数据服务器从所述计算装置接收标识所述辅助模块的数据,验证所述数据并且将所述数据存储在所述机器人数据库中。例如,标识辅助模块的数据可包括在生产期间加载到微控制器存储器中的n比特全局唯一标识符,例如,数目、字符串或比特序列。在这种情况下,数据服务器可存储标识符列表,并且将从计算装置接收的数据与该列表进行比较。如果借助主处理模块和计算装置从辅助模块获得(例如,读取)的标识符与列表中的条目相匹配,则可验证辅助模块。在一种情况下,数据服务器可与计算装置通信,以指示辅助模块可被启动。启动可包括使得能够修改游戏机器人属性,例如,质量和能力。计算装置可向主处理模块发送启动辅助模块的有源电子元件的功能的命令(例如,启动LED等的标志),并且可发送控制值。
在一个示例中,所述主处理模块被配置成向所述计算装置发送游戏机器人状态数据,并且所述计算装置被配置成将所述游戏机器人状态数据发送到所述数据服务器,以便存储在所述机器人数据库中的机器人配置文件中。所述游戏机器人状态数据包括以下中的至少一项:所述游戏机器人行进的距离;针对所述游戏机器人的校准数据;所述游戏机器人经历的故障;以及与所述游戏机器人连接的辅助模块。可使用该状态数据来更新游戏机器人软件应用所使用的机器人属性。
在某些情况下,所述游戏机器人软件应用包括虚拟物品***,所述虚拟物品***用于确定一个或多个虚拟物品的状态,其中,所述计算装置基于从辅助模块获得的数据并且基于任何当前虚拟物品来改变发送到主处理模块的命令。例如,可将护盾附接于游戏机器人,以修改实体移动,并且可通过启动虚拟“增速器”来进一步修改实体移动。
在某些示例中,所述主处理模块包括存储器并且被配置成接收移动程序,所述移动程序包括一系列原动机动作并且与能断开的所述辅助模块关联。例如,移动程序可包括复制游戏环境内的动画或移动的实体动作,例如,“跳跃”运动,其中,借助腿部模块移动或“发射”运动使身体模块反复升高和降低,其中,向后的交错运动复制武器反冲动作。在该示例中,所述主处理模块被配置成将所述移动程序存储在存储器中,并且如果能断开的所述辅助模块被连接,则响应于来自所述计算装置的至少一条命令而选择性加载和执行所述移动程序。可在生产期间和/或借助无线更新(例如,如从所联接的计算装置接收的)将移动程序加载到存储器中。在一种情况下,响应于以上提到的数据服务器对辅助模块的验证,可将一个或多个移动程序发送到游戏机器人。移动程序可被作为数据存储在游戏机器人软件应用内,或者可从数据服务器下载。
在一个示例中,所述主要模块包括用于将所述多个腿部模块连接到所述主要模块的一组腿部机械联接器和腿部电气接口,其中,每个腿部模块包括:微控制器,所述微控制器包括用于存储标识所述腿部模块的数据的存储器;主要模块机械联接器,用于将所述腿部模块连接到所述主要模块的所述腿部机械联接器中的一个;以及主要模块电气接口,用于将所述腿部模块电联接到所述主要模块的所述腿部电气接口中的一个;其中,所述微控制器借助所述主要模块电气接口与所述主处理模块电通信。主要模块机械联接器和电气接口可形成“臀部”的与游戏机器人的身体模块联接的部分,其中,每个腿部模块包括整合的臀部和大腿元件。在这种情况下,微控制器可控制位于腿部模块内的原动机的原动机动作,例如,围绕竖直轴的“臀部”旋转、围绕水平轴的“大腿”旋转和围绕另一个水平轴的“膝盖”旋转。在这种情况下,每个腿部模块的所述主要模块电气接口包括与每个腿部模块的相应辅助模块电气接口电联接的至少一条电力线和至少一条数据线。以这种方式,主处理模块可具有借助数据线与辅助模块的微控制器的电连接,使得主处理模块能够从所述微控制器读取或以其他方式获得数据。在另一种情况下,主处理模块可与腿部模块的微控制器通信,腿部模块可进而从辅助模块的微控制器读取或以其他方式获得数据。在一种情况下,每个腿部电气接口包括数据线,以指示腿部模块被连接。所述主处理模块可被配置成向给定的腿部微控制器指示原动机的所期望位置和速度。每个腿部模块微控制器进而可通过主要模块电气接口向所述主处理模块发送数据。所述数据可包括:用于腿部模块的唯一标识符;关节状态数据;以及辅助模块数据,所述辅助模块数据包括标识所连接的任何辅助模块的数据,其中,所述主处理模块被配置成将关节移动数据发送到给定的腿部模块微控制器,所述关节移动数据包括位置和速度指令。以这种方式,腿部模块可被去除并且被不同的模块(例如,带有轮或飞行模块的腿部),却保持同一控制结构。
对于上述游戏机器人,计算装置可被配置成借助无线接口向主处理模块发送高级命令,高级命令至少指示游戏机器人的所期望的空间位置。在某些情况下,还可提供进行移动或明确速度或加速度数据的时间。在一种情况下,高级命令被作为齐次变换矩阵中的值提供。在这种情况下,主处理模块可被配置成将所述高级命令转换成指示至少所述至少一个运动模块的所期望的关节位置的低级命令。在某些情况下,移动的速度或时间也可作为低级命令的一部分提供。另外,所述游戏机器人软件应用可被配置成:从所述游戏控制器接收用户命令,所述用户命令至少指示所述游戏机器人的所期望的移动方向;以及使用运动学函数来计算针对所述游戏机器人的高级命令,所述运动学函数取使用从所述辅助模块获得的数据所获取的所述游戏机器人的属性作为输入。
根据本发明的第三方面,提供了一种控制游戏机器人的方法,该方法包括以下步骤:在计算装置处,从所述游戏机器人接收标识所述游戏机器人的能断开模块的数据,所述能断开模块与所述游戏机器人机械和电气联接,所述数据得自所述能断开模块的电子元件;在所述计算装置处,基于从所述游戏机器人接收的所述数据,更新所述计算装置所实现的游戏环境中的所述游戏机器人的属性;在所述计算装置处,接收使用所述计算装置的游戏控制器输入的用户命令;在所述计算装置处,根据所述游戏机器人的属性和所述用户命令,计算针对所述游戏机器人的命令;以及将所述命令从所述计算装置发送至所述游戏机器人,其中,所述命令能用于响应于所述用户命令而控制所述游戏机器人的移动。
因此,该方法使得能够检测模块化游戏机器人的实体配置,并且用于在使用游戏控制器控制机器人时,选择性调节游戏机器人的动作和移动。例如,游戏机器人可按取决于所附接的辅助模块的方式移动,例如,可控制关节的角度,使得当附接某些武器或“屏幕”并且机器人向前、向后或向侧面移动或者一个辅助模块可与“跳跃”向前运动关联时,身体模块向下重叠,而另一个辅助模块可只能够进行侧向螃蟹状移动。辅助模块还可修改游戏机器人在其实体环境内移动时的速度和/或加速度。
在某些示例中,该方法包括以下步骤:在所述游戏机器人的主处理模块处,从所述计算装置接收所述命令;在所述主处理模块处,使用运动学引擎将所述命令转换成针对一个或多个原动机的运动学命令;以及在所述游戏机器人处,使用所述运动学命令控制所述一个或多个原动机,以响应于所述用户命令而实施所述游戏机器人的移动,其中,所述移动取决于能断开模块的机械和电气联接。运动学命令可包括用于一个或多个相应电动机的一个或多个脉宽调制信号,所述电动机实现了游戏机器人的相应原动机。如以上讨论的,来自计算装置的命令可包括位置和定时信息形式的高级命令。
在一个示例中,该方法包括以下步骤:从所述机器人装置断开所述能断开模块;在所述计算装置处,从所述游戏机器人接收不存在所述能断开模块的指示;在所述计算装置处,基于所述指示来更新所述游戏机器人的属性;其中,更新后的所述属性由所述计算装置用来生成改变的一组评论,以响应于所述用户命令而控制所述游戏机器人的移动。以类似情况,所述能断开模块可包括第一能断开模块,其中,该方法可包括以下步骤:从所述游戏机器人断开所述第一能断开模块;将第二能断开模块与所述游戏机器人连接;在所述计算装置处,从所述游戏机器人接收标识所述第二能断开模块的数据,所述数据得自所述第二能断开模块的电子元件;在所述计算装置处,基于标识所述第二能断开模块的所述数据来更新所述游戏机器人的属性;其中,更新后的所述属性由所述计算装置用来生成改变的一组评论,以响应于所述用户命令而控制所述游戏机器人的移动。
如上所述,属性可包括游戏机器人的质量。可基于所附接的特定辅助模块来人为地改变属性,例如,当辅助模块被去除时,可减小质量。该质量可能不等于机器人的实际质量,例如,辅助模块可具有20g的实际质量,但可被建模为具有200g的质量。该质量可用在运动方程内,所述运动方程被游戏机器人软件应用计算并且用于使游戏机器人在(虚拟)游戏环境中移动,进而生成所发送的用于使游戏机器人在实体空间内移动的命令。
在一个示例中,标识所述能断开模块的所述数据包括唯一标识符,并且所述方法包括以下步骤:在所述计算装置处,将所述唯一标识符与数据库进行对照,以验证所述能断开模块的合法性。
根据本发明的第四方面,提供了一种游戏机器人***,所述游戏机器人***包括:游戏机器人和连接装置。在这方面,所述游戏机器人包括:多个基础模块,每个基础模块都包括机械联接器和电气接口,所述多个基础模块包括:多个腿部模块,每个腿部模块都包括用于使所述腿部模块的一些部分分别围绕多个轴旋转的多个原动机;以及主要模块,所述主要模块包括用于控制所述多个腿部模块的主处理模块。所述游戏机器人还包括至少一个能断开辅助模块,其包括:机械联接器,所述机械联接器在使用中与所述多个基础模块中的一个基础模块上的机械联接器接合;电气接口,所述电气接口在使用中与所述多个基础模块中的所述一个基础模块上的电气接口电联接;以及电子电路,所述电子电路用于存储标识所述辅助模块的唯一标识符。所述连接装置与所述游戏机器人通信联接,并且包括:处理器,所述处理器执行游戏机器人软件应用,所述游戏机器人软件应用被配置成向所述游戏机器人的所述主处理模块发送用于控制所述多个腿部模块的高级命令;以及游戏控制器,所述游戏控制器用于将用户命令提交给所述游戏机器人软件应用。所述游戏机器人的所述主处理模块被配置成:借助所述电气接口从所述能断开辅助模块获得所述唯一标识符,以及将所述唯一标识符发送到在所述连接装置上执行的所述游戏机器人软件应用;其中,所述游戏机器人软件应用被配置成:基于所述唯一标识符,更新所述游戏机器人软件应用内的游戏环境中的所述游戏机器人的属性;基于更新后的所述属性和从所述游戏控制器接收的用户命令来计算高级移动命令;以及将所述高级移动命令发送到所述游戏机器人的所述主处理模块,其中,所述主处理模块还被配置成基于接收的所述高级移动命令来计算用于控制所述多个腿部模块的所述原动机的低级命令。
根据下面对只是以举例方式给出的本发明的优选实施方式的描述,本发明的其他特征和优点将变得清楚,描述是参照附图进行的。
附图说明
图1示出了示例游戏机器人;
图2示出了图1的示例游戏机器人的基础模块、腿部模块和身体模块;
图3a至图3c示出了图2的示例腿部模块的示例大腿;
图4a至图4b示出了图2的示例身体模块;
图5示出了示例原动机输出轴的各种布置;
图6示出了示例腿部模块;
图7a示出了图6的示例腿部模块的大腿;
图7b示出了用于连接两个机器人模块的示例联接器对;
图7c示出了包括在图7b的联接器对中的示例链接组;
图8示出了用于连接两个机器人模块的示例联接器对;
图9示出了用于连接两个机器人模块的示例联接器对;
图10a至图10b示出了示例腿部模块和示例护盾辅助模块;
图11示出了示例腿部模块和示例护盾辅助模块;
图12a示出了其他示例模块化游戏机器人;
图12b示出了其他示例模块化游戏机器人;
图13示出了其他示例模块化游戏机器人;
图14a示出了其他示例模块化游戏机器人;
图14b示出了图14a的示例游戏机器人的运动模块;
图15a示出了其他示例模块化游戏机器人;
图15b示出了图15a的示例游戏机器人的运动模块;
图16示出了用于示例游戏机器人的各种不同武器辅助模块;
图17示出了受两个用户控制的两个游戏机器人;
图18a示出了用于控制游戏机器人的示例远程计算装置;
图18b示出了用于控制游戏机器人的其他示例远程计算装置;
图19a至图19b示出了根据某些示例的示例游戏控制器;
图20是用于游戏机器人通信基础设施的示例架构的示意图;
图21是用于游戏机器人的示例***架构的示意图;
图22是示例游戏机器人主处理模块的***的示意图;
图23是用于控制游戏机器人的远程计算装置的示例***架构的示意图;
图24是用于控制游戏机器人的示例远程计算装置的***的示意图;
图25是用于游戏机器人的基于云的计算装置的示例架构的示意图;
图26a是示出用于游戏机器人中的运动模块联接的示例电连接组的示意图;
图26b是示出用于游戏机器人中的辅助模块联接的示例电连接组的示意图;
图27是示出实现标识辅助模块的数据的示例数据包的示意图;
图28a示出示例游戏机器人***;
图28b是图28a的示例游戏机器人***的示例***架构的示意图。
具体实施方式
本文中描述的某些示例涉及模块化消费机器人及其控制方式。在某些情况下,可通过附接各种运动模块和/或辅助模块使游戏机器人的实体外观和行为二者具个性化。例如,用户可通过添加以武器和护盾形式设计的新模块来改变游戏机器人的实体行为,或者可将足式机器人转变成轮式机器人或飞行机器人。
在所描述的一个示例中,模块化机器人可包括主要模块和一个或更多个位置模块。在某些情况下,身体模块提供了主要模块和位置模块之间的接口;在其他情况下,运动模块可以可断开地联接于主要模块,例如,可以包括具有集成的大腿部分和臀部部分的腿部模块。主要模块可具有电池盒或可附接的电池模块。
某些示例中描述的模块化机器人的一个优点是,基础模块和辅助模块二者被设计成彼此兼容并且可与受限制的工具或技术技能互换。例如,机械联接可以是“推入配合”或磁耦合。这样允许所有年龄和技术能力的用户享用模块化机器人。例如,在不重新设计游戏机器人的控制***的情况下,可以将步行机器人转变为飞行或滚动机器人,或者用不同的武器或护盾来改变机器人的功能。这是利用特定的可卸的机械接口和电气接口实现的。
特定示例涉及足式消费机器人的设计,该足式消费机器人具有被设计用于致动机器人关节的集成机动模块。在一些示例中,原动机被完全集成在机器人元件(诸如,手臂、腿部或身体)的设计内。可基于所附接的辅助模块来修改对这些原动机的控制。以这种方式,与其他形式的“玩具”或“爱好者”机器人相比,游戏机器人具有高级功能。
本文中描述的游戏机器人的某些示例可被认为是“智能的”,其中,本文中描述了这种智能游戏机器人的实体实现细节。智能游戏机器人在用户(也可称为玩家或游戏玩家)的控制下进行操作。游戏机器人是“智能”的,因为它实现了半自主控制功能,所述半自主控制功能在与被用户用来控制游戏机器人的计算装置(在本文中也被称为智能连接装置)结合的情况下运转(并且与该计算装置通信)。连接装置可采取现代手机(例如,智能手机)、平板计算机或一副增强现实护目镜的形式。智能连接设备可借助由多个按钮和一个或更多个操纵杆组成的实体或虚拟游戏手柄(例如,视频游戏控制器)接收用户的输入。使用连接装置的游戏手柄,用户能够将顶级命令无线地发送给智能机器人(例如,向前移动、向左转、发射武器、跪下、跳跃......)。来自用户的顶级命令被连接装置处理并且被发送到游戏机器人,其中,游戏机器人的运动学引擎对顶级命令作出解释,以生成低级命令并且控制智能机器人关节。在本文中描述的示例中,连接装置基于来自用户(例如,经由游戏控制器输入)的顶级命令并且基于机器人属性集合来生成一组高级命令。这些属性可对游戏机器人的实体属性建模。然而,在示例中,基于辅助模块的存在而人为修改这些属性,使得它们的值偏离所测得的游戏机器人的实际属性。例如,一个属性可包括游戏机器人的质量。在没有一组附接的辅助模块的情况下,该质量可接近机器人装置的实际实体质量,或者至少与所述实体质量成正比。用例如唯一标识符或描述符串标识的不同辅助模块可具有大致相等的实体质量(或在给定范围内的质量),然而,可用指示不同虚拟质量的不同属性值对它们建模(例如,在质量中的至少一个在给定范围之外的情况下)。例如,它们可改变游戏机器人的建模质量,不顾及它们实际实体质量。当使用属性利用运动学方程(即,运动的方程)来计算发送到游戏机器人的命令(例如,高级定位和定时信息的形式)时,那么这些虚拟质量影响游戏机器人如何在实体环境中移动。简单来说,附接于游戏机器人的“重的”护盾会导致移动和加速度缓慢,而“轻的”护盾会导致移动和加速度较快(权衡之处在于“重的”护盾为游戏环境战斗引擎增加了更多防御点)。
在本文中描述的某些示例中,游戏机器人是“智能的”,因为基础模块和辅助模块中的至少一者(在某些情况下,二者)是“智能的”。这些模块是“智能的”,因为它们包含电子电路,例如,印刷电路板形式的电子电路(例如,印刷电路板包括电阻器网络和/或微控制器)。这些智能模块嵌入电子电路,这些电子电路要么通过有源方式 (诸如,数字或模拟有线电连接)要么通过无源方式(诸如,无线射频传输)来允许进行其标识。可按各种方式使用各种模块的标识。智能模块的第一个益处是允许游戏机器人软件接口基于所连接模块的类型来更新机器人的游戏属性。智能模块的第二个益处是验证在使用中的模块的合法性,通过为每个模块电子电路配备加密的标识符并且借助游戏机器人软件应用与数据库交叉参考此标识符来防止伪造。
如上所述,如本文中讨论的游戏机器人可包括模块化机器人,用户可利用各种可移除智能辅助模块(例如,武器、助推器、护盾、腿部模块、轮模块)将模块化机器人个性化。该电子电路至少包含标识辅助模块的数据,辅助模块可用于检测所附接的辅助模块的存在并且将该信息传达给连接装置,使得在游戏设计期间将游戏机器人的属性考虑在内。某些辅助模块也可以是“智能的”,因为它们包含有源电子元件,诸如,可由游戏机器人(例如,要么通过辅助模块内的微控制器和/或来自游戏机器人的微控制器)控制的LED和/或电机。除了用户可附加于游戏机器人的实体辅助模块之外,用户还可获得并且在游戏设计期间使用多个虚拟物品(例如,治疗药水、增速器)。这些虚拟物品可按类似方式修改游戏机器人的属性并且影响机器人的实体控制,例如,“增速器”可暂时减小游戏机器人的建模质量。虚拟物品还可与所附接的辅助模块结合进行使用,例如,如果附接了“重的”护盾,则其效果会暂时因使用“增速器”虚拟物品而失效。
智能的可互换机器人模块(例如,辅助模块和运动模块)的使用使得用户能够拥有用各种版本的武器、护盾、头部、显示或运动模块将他们自己的机器人的外观、操作和实体移动(例如)个性化的全部能力。它还使得非技术型用户能够不费力地维护和保养游戏机器人。在作为复杂的机械和电气装置的运动模块承受高占空比并且容易随时间推移而磨损和失效的情况下,这尤其有意义。模块化构思允许只更换机器人受损的元件,尤其是对机器人功能至关重要的基础模块,从而使维修更容易并且允许用户和制造商延长游戏机器人的使用寿命,而无需寻求新的机器人来源。对于游戏机器人的制造商而言,模块化使得能够在进行简单的最终组装阶段之前开发、制造和并行测试不同的模块。
在某些示例中,游戏机器人能够检测其环境(例如,其他机器人、障碍物)并且将该信息无线地转达给连接装置,以将其并入游戏设计中。例如,智能机器人的检测***可依赖于红外传感器、机载相机和/或声音检测。当不止一个游戏机器人和用户在一起玩时,他们可能通过游戏机器人彼此“战斗”。本文中讨论的“战斗”被模拟,并且游戏机器人不会遭受实体损伤,相反,损伤是虚拟的并且在游戏机器人软件应用内接受管理。游戏机器人和连接装置可例如在点对点自组织网状网络中或者借助与本地或广域网联接的协调游戏服务器进行无线联接,来进一步增强游戏体验。基于每个游戏机器人的配置(例如,所附接的辅助模块、可用的虚拟物品和机器人环境)和每个用户的输入和技能,所使用的连接装置内的战斗***(例如,被实现为游戏机器人软件应用的一部分)计算每场战斗的结果。
在某些示例中,游戏机器人可形成增强现实***的一部分。在某些情况下,游戏机器人的特征在于跟踪***,跟踪***允许连接装置计算机器人在连接装置相机的视场中的位置、取向、比例和姿态。当连接装置配备有相机和足够大的显示屏时,它可通过添加例如特殊效果(例如,***、火焰、激光束)、虚拟对手或虚拟环境,利用其显示屏来跟踪机器人并且增强现实。在某些情况下,可通过将虚拟特殊效果转化成实体领域(例如,通过控制游戏机器人的实体移动)来改善增强现实体验。例如,游戏机器人软件应用可被配置成检测游戏环境内的***,并且例如通过发送高级命令来相应地通知游戏机器人。该高级命令可被游戏机器人的主处理模块接收并且用于启动模拟附近***的一系列移动。机器人与特殊效果的距离可调节所执行的动作,例如,可使用(例如)通过***中心和游戏机器人位置之间的按欧几里得距离计算出的距离按顺序缩放移动的幅度或动力。连接装置可发送动作和机器人的距离或相对位置。其效果是,近处***或“直接击中”导致机器人大幅移动(例如,建模的混沌移动或冲击波的效果),而远处***或射弹导致机器人的移动较小。类似地,可通知游戏机器人进行武器发射命令(例如,以武器类型和定时信息的形式),可使用该命令来激活模拟武器发射的游戏机器人的一系列实体移动。例如,“大型迫击炮”可具有不同的动作集合(例如,使机器人遵循大反冲力而成角度地移动)到“火焰喷射器”(例如,小振动和左右移动)。如果附接和检测(并且在某些情况下,验证)适宜的辅助模块,则移动序列才会是可用的,例如,如果“火焰喷射器”辅助模块被机械和电气联接并且对照机器人数据库验证唯一标识符,“火焰喷射器”移动序列才会是可用的。类似地,如果附接了适宜的辅助模块,武器特征可只在游戏环境中才是可用的。当用户他自己或她自己将只用一个游戏机器人玩游戏时,增强现实对于改善单人玩家体验尤为有意义。
在某些示例中,描述了用于智能游戏机器人和连接装置的“云”基础设施。在这种情况下,“云”被认为是意指与一个或更多个网络(诸如,互联网)通信联接的一个或更多个远程服务器,远程服务器用于取代本地服务器或个人计算机来存储、管理和处理数据。智能机器人和连接装置二者都有与云无线通信的能力。云包括存储用户和机器人数据二者的数据库。该数据可例如由机器人清单、辅助模块、虚拟物品、技能和游戏统计数据组成。还可存储用户数据,以基于使用统计数据、人口统计和机器人所有权来构建每个用户的配置文件。该数据可用作技能引擎的输入,技能引擎被设计成在用户在游戏中前进时管理向用户进行的技能分配/授予。该数据还可用作云内的分析引擎的输入/指标,将分析该数据,以识别改进/定制游戏机器人游戏体验的模式。云还包括获得新机器人、实体和虚拟物品或备件的功能。云还充当能够要么实体地(诸如,第三方护盾和武器)要么虚拟地(诸如,新游戏和虚拟物品)提供附加内容的外部实体的入口。云还充当社区的入口,用户可利用论坛或社交媒体来访问彼此的用户和机器人配置文件或交换信息。
本文中描述的示例涉及游戏机器人。游戏机器人呈消费机器人而非工业机器人的形式,即,被设计成由公众成员获得和使用,与提供可用的工业输出形成对照。它可被认为是玩具或娱乐机器人的形式,尽管包括对于比较的“玩具”而言先进的功能。游戏机器人可按即用形式供应,例如,不需要某种“爱好者”机器人套盒所需的实质性组装。例如,与工业机器人相比,使用游戏机器人并不需要专业的技术知识。游戏机器人也被设计成由单个用户进行处理和操作,例如,在使用中包括一个或更多个可被手动抬起和运送的单元。与替代的“玩具”相比,本文中描述的游戏机器人的功能范围大,例如,游戏机器人具有更宽更复杂的移动范围,而比较的“玩具”机器人可具有相对小的移动自由度(例如,1至10的移动范围)和/或相对小的受控制能力(例如,在狭窄的行为范围内进行操作,诸如,沿着轨道向前或向后移动)。比较的“玩具”物品也被设计成一次性使用的单个单元,而非模块化的构造。某些比较的“玩具”可作为模块化构造套件获得,但是这些套件通常也具有相对小的移动自由度(例如,简单的电机旋转)和/或相对小的受控制能力(例如,限于打开或关闭)。本文中描述的某些示例提供了具有多功能性、移动自由度和可维护性并且还可低成本地制造并且在美学上令人愉悦的游戏机器人。
示例游戏机器人设计
图1示出了根据第一实施方式的示例机器人10。机器人10是具有同样的四条腿的足式机器人。机器人10是模块化的,并且包括三种截然不同的模块类型(四个腿部模块11、一个主要模块12和一个身体模块13)。图2分别示出了每种类型的模块 11、12、13(腿部模块、主要模块和身体模块)。
模块11、12和13中的每个可被认为是基础模块,其中,腿部模块是运动模块的特定实现方式。基础模块可被认为包括游戏机器人的核心功能,例如,在该特定示例中,模块化机器人需要用主要模块、身体模块和四个腿部模块发挥功能。运动模块不必仅限于一种类型的运动,并且可采取多种形式,包括用于创建步行模块化机器人的腿部模块、用于创建滚动模块化机器人的轮模块或用于创建滚动模块机器人的推进器模块。
每个腿部模块11包括臀部111、大腿112、膝盖113和小腿114。每个腿部由三个原动机115、116和117来致动,这三个原动机各自被完全集成在机器人10内。原动机115、116和117中的每个为每个腿部赋予三个自由度,从而允许腿部绕三个旋转轴14、15和16来旋转。两个原动机115、116被集成在每条大腿112中。剩余的原动机117被容纳在身体模块13中。包括在身体模块13中的原动机117的数量对应于机器人10拥有的腿部的条数。主要模块12包含机器人10的主控制器。
图3a至图3c更详细地示出了示例腿部模块11中的大腿112以及包括在其中的两个原动机115、116。在该实施方式中,大腿112由三个主要结构元件形成:两个外壳31和32以及大腿承载板33。图3a的部分(ii)示出了去除外壳32后的大腿112,更清楚地示出了承载板33。为了清楚起见,只例示了一个原动机115的元件(原动机116被有意省略了)。在图3b中可看出,大腿承载板33提供了与原动机115的元件的机械接口。在特定例示的示例中,原动机115的元件包括被布置成独立驱动原动机115和116二者的大腿电子板34、电机35、输出轴36和位置传感器37。原动机 115还包括齿轮箱38(在图3b的(ii)和(iii)中可见),齿轮箱38包括齿轮39,以机械地调节电机35的输出转矩。
图3b提供了去除外壳31和32二者后的大腿112的原动机115的更详细视图。原动机115的传动系包括电机35,并且在该特定示例中,包括总传动比为大致320:1 的四级平行轴齿轮箱38。原动机115的控制由大腿电子板34和位置传感器37管理。原动机115的元件的镜像形式可设置在大腿112的相对端处,以形成原动机116。
图3c示出了位置传感器的替代布置。图3a和图3b中描绘的位置传感器37是一种称为“通孔”或“无轴”的位置传感器,它被设计成允许轴(在该情况下,原动机输出轴36)穿过位置传感器37。这促成了双输出轴设计。然而,以下的替代的布置(也就是说,图3c中示出的布置)也是可能的:位置传感器37'依赖于与输出轴36'的齿轮49啮合的空转齿轮47。在所描绘的示例中,空转齿轮47具有比齿轮49小的节径,这有助于提高位置传感器37’的灵敏度。然而,如果位置传感器37'的运动范围受限,则齿轮49与空转齿轮47之间的传动比为1:1可以是优选的。
图4a的(i)和(ii)提供了集成身体模块12和其四个原动机117中的一个的详细视图。为了清楚起见,未描绘容纳在身体模块12内的其他三个原动机。身体模块 12的构造类似于大腿112的构造,不同的是,大腿112容纳两个原动机,而身体模块12容纳四个原动机。身体模块12由三个主要结构元件形成:两个外壳41和42 以及身体承载板43。图4a的部分(ii)描绘了去除了外壳42后的身体模块12。为了清楚起见,只例示了一个原动机117的元件(其他三个原动机117被有意省略了)。
身体承载板43提供了与原动机117的元件的机械接口。图4a中示出的原动机元件是被布置成独立地驱动全部四个身体原动机117的身体电子板44、原动机42的电机45、身体输出轴46和位置传感器47。应该注意,在该特定实施方式中,为了降低制造成本,原动机117的元件与大腿中的原动机115和116的对应元件相同。原动机 117还包括齿轮箱(在图4b中可见),以机械地调节电机45的输出转矩。例示的原动机117的元件可被复制,以形成身体模块的剩余三个原动机117。
图4b提供了去除外壳41和42二者后的身体模块12的四个原动机117之一的齿轮箱58的更详细视图。原动机117的传动系包括电机45,并且在该特定示例中,包括总传动比为大致320:1并且输出转矩为大致0.5Nm的四级齿轮箱58,四级齿轮箱 58包括四级平行轴齿轮箱59。
在某些替代实施方式中,原动机117可被集成在腿部模块11中,其中,腿部模块11联接于身体承载板43(例如,外壳41和42的臀部部分移动到腿部模块11的端部并且与身体模块13可断开地联接)。在某些实施方式中,主要模块12和身体模块13可被集成在单个主要模块中。
图5详细示出了在大腿112和身体模块13中发现的原动机115、116和116的输出轴的各种布置。特别地,图5示出了用于第一示例输出轴56的联接器和轴承的不同的可能构造。图5的(i)描绘了如何在大腿或身体模块(未描绘)内部使用一个或更多个衬套51来支撑第一示例输出轴56。在该示例中,输出轴56包括一种称为平行键花键的花键。图5的(ii)示出了如何在大腿112或身体模块13(未描绘)内部使用一个或更多个滚珠轴承52来支撑第二示例输出轴56’。第二示例输出轴56’包括一种称为渐开线花键的花键。图5的(iii)示出了包括一种称为平行键花键的花键的第三示例输出轴56”。原动机115、116、117可包括具有第一示例输出轴56、第二示例输出轴56’和第三示例输出轴56”中的任一个的特征的输出轴或任何其他合适的输出轴布置。
图6例示了腿部模块11的替代布置,其中,在腿部模块11内不使用滚珠轴承和衬套(类似地,在身体模块13内可不使用滚珠轴承和衬套)。替代地,包括在联接器中以将大腿112连接到小腿114的连杆61和62也用作支承表面。图6的(i)示出了大腿112和小腿116的横截面,从中可看出,连杆61被楔入原动机(例如,原动机115)的输出轴66上。连杆61和62通过承载大腿外壳31和32来提供用于径向负载的支承表面63和用于轴向负载的支承表面64。图6还描绘了在大腿112的相对端处的联接器对70(在该示例中,其包括一组连杆)。在图10a和图10b中进一步详细描述的联接器对70用于将腿部模块11与身体模块13机械地接合。
使用三个单独的原动机来致动以上示例中的三个关节,以为腿部提供三个自由度并且允许机器人以流体运动行走。在这些示例中,接头没有被联接,例如,没有连杆机构或任何其他合适的机构。与原动机数量减少并且只可能进行受限运动的示例相比,这大大增加了可能的移动和移动序列的范围。
图7a提供了大腿112的视图,为了清楚起见,仅例示了一个原动机115。在与用于将大腿112连接到小腿114的连杆61和62类似的布置中,图7a示出了用于将大腿112连接到身体模块13的一对连杆71和72。在该特定实施方式中,连杆71、 72提供支承表面73和74,支承表面73和74与连杆61和62所提供的支承表面63 和64类似。
机器人模块的快速断开
图7b示出了联接器对70的各种视图。联接器对70将腿部模块11连接到身体模块13并且包括两个联接器75和76。在该示例中,联接器75、76各自包括一对连杆。联接器75形成腿部模块11的一部分并且与每条大腿112的原动机116、115中的一个机械地接合。联接器75包括独立的连杆71和72。联接器76形成身体模块13的一部分并且与身体模块13的四个原动机117中的任一个的输出轴机械地接合。联接器76包括独立的连杆77和78。在图7b中描绘的联接器对70的实施方式中,可通过按压弹簧闩锁78而分离(或脱离/断开)联接器75和76,以允许联接器75的键 751与联接器76的键槽762接合。在该特定实施方式中,联接器75以向上(或分别地,向下)运动与联接器75接合(或分别地,分离)。弹簧闩锁78被设计成在被按压时弯曲(以使联接器75与联接器76接合或分离),并且弹回到其原始位置,以保持联接器75和联接器76接合。因此,连杆组70可被认为是快速释放或快速断开连杆组。
图7c进一步例示了连杆组70。图7c的(ii)描绘了身体模块13,用所有四个联接器76来提供与身体模块13的所有四个原动机117的机械接合。图7c的(iii)描绘了四个腿部模块11中的一个,其包括提供与大腿原动机中的一个机械接合的联接器75。腿部模块11的另一个大腿原动机借助一对小腿连杆61和62与小腿114机械接合。图7c的(i)示出了处于部分连接状态的身体模块13和腿部模块11。以连杆组70的方式形成机械接口的连杆组还可包括当联接器75和76处于连接状态(图7a 至图7c中未示出)时形成电气接合的特征。
图8例示了可如何在形成上述机械接合的同时形成此电气接合。图8示出了联接器对80,联接器对80包括含有第一连杆(未示出)和第二连杆82的第一联接器85 和含有第一连杆87和第二连杆88的第二联接器86。联接器对80的元件可具有上述联接器对70的对应元件的任何或全部特征。在特定的例示实施方式中,联接器85 包括保持在其两个连杆之间的印刷电路板853,尽管为了清楚起见仅描绘了连杆82。在该示例中,印刷电路板853包括四个充当电连接器的弹簧支承销854。印刷电路板 853利用电缆855有线连接到大腿的印刷电路板34。类似地,联接器86包括保持在其连杆87和88二者之间的印刷电路板(未描绘)。在该示例中,联接器86的印刷电路板包括被设计成与销854形成电接触的四个电焊盘864。联接器86的印刷电路板(未描绘)利用电缆865有线连接到身体模块的印刷电路板44。
图9例示了用于在游戏机器人的两个元件之间形成快速释放机械和电连接的另一个示例联接器对90。联接器对90包括第一联接器95(包括第一连杆和第二连杆) 和第二联接器96(包括第一连杆和第二连杆)。在该特定的实施方式中,联接器95 包括保持在其连杆二者之间的印刷电路板953。在该示例中,印刷电路板953包括四个充当电连接器的弹簧支承销954。印刷电路板953利用电缆955有线连接到大腿112 的印刷电路板34。类似地,联接器96包括保持在其连杆二者之间的印刷电路板963。在该示例中,联接器96的印刷电路板963包括被配置成与销954形成电接触的四个电焊盘964。印刷电路板963利用电缆965有线连接到身体模块13的印刷电路板44。在该特定示例中,通过将联接器95、96中的一个围绕联接器95、96中的另一个扭转 (旋转)(如图9的(iii)中的箭头所指示的)来连接/断开联接器95和96。
在其他实施方式中,臀部原动机可被集成在腿部模块中,例如,元件76、86、 96可位于大腿模块113的端部处。
可移动护盾模块布置
如以上讨论的,游戏机器人可包括一个或更多个可选的或可去除的辅助模块。这些可包括例如“武器”模块、“护盾”模块、“头部”模块和“显示器”模块中的一个或更多个。辅助模块与基础模块(例如,主、身体或运动模块)接合,以增强基础模块的外观和功能。例如,可将武器或头部模块附加于主要模块,并且可将护盾模块附加于运动模块。从模块化机器人不需要任何辅助模块来发挥作用(例如,移动、接受连接装置的控制或参与模拟战斗)的意义上来说,辅助模块是可选的。
例如,在模块化游戏机器人的一个示例配置中,运动模块可由四个腿部模块组成,以形成步行机器人。主要模块可以是“狂战士(Berserker)”设计(例如,参见图12a),并且特征在于可以是“重炮(Heavy Cannon)”和“护盾型推进器(Shield Booster)”武器模块。腿部模块的特征在于还可以是“轻”护盾模块。电池模块可被容纳在“狂战士”主要模块内。
在模块化游戏机器人的第二示例配置中,运动模块可由四个腿部模块组成,以形成步行机器人。主要模块可以是“暴力(Brute)”设计(例如,参见图12b),并且特征在于可以是屏幕模块。腿部模块的特征在于还可以是“重”护盾模块。在这种情况下,电池模块可被容纳在“暴力”主要模块内。
在模块化游戏机器人的第三示例配置中,运动模块可由四个推进器模块组成,以形成飞行机器人(例如,参见图15a)。主要模块可以是“狂战士”设计(例如,参见图12a),并且特征在于可以是“重炮”武器模块。电池模块可被容纳在“狂战士”主要模块内。
图10a至图10b、图11和图16中示出了示例辅助模块设计(前两个图示出了示例护盾模块,而后面的图示出了示例武器模块)。
图10a至图10b和图11示出了游戏机器人的示例可去除的护盾模块。护盾模块被设计成轻松地与游戏机器人基础模块(诸如,基础模块或运动模块)附接/脱离,以增强机器人的外观以及其实体和虚拟属性。例如,能够保护游戏机器人免受攻击的坚固但笨重/庞大的护盾会使机器人变慢。相反地,为游戏机器人供应较少保护的较弱但较轻/较小的护盾将允许机器人移动得更快。本质上借助游戏机器人软件界面来处理游戏机器人属性的改变(例如,附加的强度/降低的速度或附加的速度/降低的强度),通过该软件界面来改变/限制机器人的实体特性。护盾模块的实体设计可包括护盾壳和护盾支架。护盾通常可被紧固于护盾壳。护盾支架被设计成与机器人模块机械接合,并且可易于进行附接/断开。
在某些情况下,辅助模块可能是“有源的”。术语“有源的”涉及以下事实:辅助模块包括含有标识辅助模块的数据(诸如,唯一标识符)的电子电路,从而允许机器人自动标识在使用中的模块,并且借助游戏机器人软件界面自动更新机器人属性。游戏机器人的主处理模块可借助在使用中的基础模块和辅助模块的相应部分之间形成的电气接合来获得该数据。在某些情况下,被包括作为护盾模块的部分的电子电路也可用于供应集成在设计内以增强护盾外观的灯(例如,LED)。通常,护盾模块电子电路被在护盾壳和护盾面板之间保持就位。因为护盾组件被设计成易于与机器人附接或脱离,所以护盾支架的特征还必须在于可易于进行连接/不可连接的电气接合。
基础模块和辅助模块中的每个的机械和电气接合或联接可按多种不同的方式来实现。
在被设计成与步行游戏机器人的腿部模块的小腿接合的可去除护盾模块的第一示例配置中,护盾支架包括四个弹簧支承的接片。护盾支架的弹簧支承的接片与小腿上的对应插座接合。弹簧支承接片被设计成在推动小腿时偏转,以接合在小腿的插座中,然后弹回到中立位置,以提供确实的互锁。这些弹簧支承的接片实现了辅助模块的机械联接器。在腿部模块上设置对应的机械联接器(例如,插座),以与辅助模块的机械联接器配合。四个弹簧支承的接片中的每个还装有与护盾模块电子板连接的电导体。这实现了辅助模块的电气接合。在腿部模块上设置对应的电气接合(例如,导电焊盘等)。四个护盾支架接片与小腿插座内的四个配合的电导体接触。这形成了电连接。可通过该连接和/或供应到有源元件的电力来读取数据。该特定配置在机器人的腿部模块和护盾模块之间提供了高达四个独立的电连接。在该配置中,机械联接器和电气接口被装入同一联接器/接口中。
在被设计成与步行游戏机器人的腿部模块的小腿接合的可去除护盾模块的第二示例配置中,护盾支架包括四个弹簧支承的接片。护盾支架的弹簧支承的接片与小腿上的对应插座接合。弹簧支承的接片被设计成在推动小腿时偏转,以接合在小腿的插座中,然后弹回到中立位置,以提供确实的互锁。特别地,护盾支架弹簧接片不导电。替代地,利用与护盾电子电路板附接的三个金属条来实现护盾模块和小腿之间的电气接口,并且该电气接口被设计成接触与小腿电子电路板附接的匹配的电连接器。金属条的弹性带来了确保护盾模块和腿部模块之间成功电接触所需的柔软度。该特定配置在机器人的腿部模块和护盾模块之间提供了高达三个独立的电连接。在该配置中,机械联接器和电气接口被分开设置。
在被设计成与步行游戏机器人的腿部模块的小腿接合的可去除护盾模块的第三示例配置中,护盾支架包括三个磁体。护盾模块的磁体与小腿上的铁磁垫的对应磁体接合。除了为护盾模块提供机械接合和互锁之外,还可通过选择导电磁体(例如,铁、钴、镍、钕磁体)将磁体用作电气接口。该特定布置的优点是,将机械和电气接口二者组合在简单且紧凑的封装内。通过磁体传导电信号有时会改变此信号的电特性,但是这可通过在磁体的中心处***非磁性导电芯来容易地解决。该特定配置在机器人的腿部模块和护盾模块之间提供了高达三个独立的电连接。在该配置中,机械联接器和电气接口被装入同一联接器/接口中,并且包括提供了这两种功能的共同元件。
在图10a、图10b和图11中分别示出了这些示例配置。
图10a和图10b描绘了腿部模块11以及可附接于腿部模块的示例可去除“辅助”模块。在例示的示例中,辅助模块是可去除的护盾组件1000,护盾组件1000可被夹上腿部模块11的小腿114上或与腿部模块11的小腿114断开。也就是说,腿部模块 11包括能与护盾辅助模块1003上的第二联接器连接的至少一个第一联接器。第一联接器和第二联接器能互连,以在腿部模块11和护盾辅助模块1003之间形成机械接合并且在腿部模块11和护盾辅助模块1003之间形成电气接合。护盾组件1000包括护盾1002和可固定于护盾1002的护盾支架1001(例如,使用螺钉)。在其他示例中,护盾支架1001可与护盾1002一体地形成。在该特定示例中,护盾组件1000与小腿 114之间的机械接口是利用内置于护盾支架1001内(也就是说,与护盾支架1001一体形成)的四个塑料弹簧接片1004来实现的。弹簧接片1004被设计成在与小腿114 上的四个对应插座1003接合时偏转。
图10a和图10b中描绘的护盾组件1000是“有源的”(也就是说,它包括电子元件)并且与小腿114电气接合。护盾组件1000和小腿114二者都容纳印刷电路板(未描绘),并且四个接片1004中的每个都包括电导体,电导体被配置成***小腿114 的也导电的四个插座1003中(也就是说,与插座1003形成电气接合)。在该特定示例中,在护盾组件1000和小腿114之间,有可能进行高达四个独立的电连接。例如,可使用给定的个体电连接来向护盾供应电力(例如,为包括在护盾中的发光二极管(LED)供电),或者用于腿部模块11和护盾组件1000之间的数字通信(例如,在识别护盾1002的类型的过程期间)。
图10b只描绘了护盾支架1001,并且为了清楚起见,已经省略了护盾1002。类似地,为了清楚起见,仅描绘了腿部模块11的下壳的一半。因此可看出,护盾组件 1000装有印刷电路板1005,而小腿114装有印刷电路板1007。这些印刷电路板中的每个可包括微控制器。可装入本文中所述的印刷电路板或电路内的一个示例微控制器是Microchip TechnologyInc.(美国亚利桑那州钱德勒)供应的PIC微控制器(例如,诸如PIC10的PICx)。还可使用其他微控制器。微控制器可包括程序存储器和数据存储器。使用护盾印刷电路板1005上的一组导电弹簧接片1006和小腿印刷电路板 1007上的对应连接器1008来实现护盾印刷电路板1005和小腿印刷电路板1007之间的电连接。在该特定示例中,当护盾组件1000连接到腿部模块11时由接片1006和连接器1008形成的四个电连接包括用于向护盾中包括的灯(未描绘)提供电力的三个电连接和用于将护盾标识信息(即,标识辅助模块的数据)从护盾组件1000发送到腿部模块11(使得护盾标识信息可被传递到例如机器人的主要模块12)的数据连接。
在一些示例中,可利用磁体来实现护盾组件1000和小腿114之间的机械接合。图11例示了一个这样的示例。在该特定示例中,护盾支架1101包括三个磁体1104。磁体1104被配置成将护盾组件1100引导到连接位置,然后在与小腿114上的三个对应磁体或铁磁垫1103接合时,将其保持在连接位置。在该实施方式中,磁体1104 连接到位于护盾组件1100上的印刷电路板(未描绘),并且磁体(或铁磁垫)1103 连接到包括在小腿114中的印刷电路板(未描绘)。磁铁(或铁磁垫)1103和磁铁 1104是导电的(例如,铁、钴、镍、钕磁铁),因此也充当小腿114和护盾组件1100 之间的电连接器。因此,该实施方式在护盾组件1100连接到腿部模块11时在腿部模块11和护盾组件1100之间产生电气和机械接合二者。
模块化游戏机器人示例
图12a和图12b例示了根据本发明的模块化游戏机器人的两个不同示例。图12a 例示了三种类型的机器人模块(腿部模块121、主要模块122和身体模块123)可如何连接在一起以形成具有第一配置的完全组装好的模块化机器人120。可利用最少技能或工具(例如,以上面关于图7至图11描述的任何方式),每个模块可机械和电连接到机器人10的剩余部分并且与其断开。虽然以上描述涉及腿部模块11和身体模块13之间的连接,但是在一些示例中,包含机器人10的“大脑”(例如,微控制器、片上***或嵌入式处理器)的主要模块12也可容易与身体模块13机械和电气连接和断开。
图12b例示了关于具有第二配置的第二模块化机器人120'的主要模块的可去除特性。机器人120'包括主要模块122',主要模块122'可容易与身体模块123’连接(断开) (在该示例中,身体模块123’与机器人150的身体模块123相同)以在主要模块122' 和身体模块123'之间形成电气和机械接合(例如,以上面关于图7至图11描述的任何方式)。第二模块化机器人120'的腿部模块121'也利用与以上关于机器人10描述的类似的快速释放连接器连接到身体模块123’。
图12b还例示了如何可使用可易于更换的模块来使模块化游戏机器人个性化。机器人120'具有与机器人120的对应身体模块123和腿部模块121相同的设计的身体模块123'和腿部模块121'。然而,主要模块122'(在该示例中,具有“暴力”设计)在外观上与机器人120的主要模块122不同。第二机器人120'还具有与其小腿附接的不同护盾组件125。在该示例中,主要模块122'包括可去除武器模块126和显示屏127,显示屏127可用于显示关于机器人的信息,并且在某些情况下,修改控制机器人的机器人属性,由此增强玩游戏体验。
图13至图16还例示了可如何使用本文中描述的示例的模块化特性来定制游戏机器人。图13例示了可如何使用大腿113来形成不同类型的运动模块,大腿113通常用在与上述腿部模块11相同类型的腿部运动模块内。大腿113可被配置成完全自主,使得它们只需要外部电源变得完全发挥作用。因此,多个大腿113可连接在一起,形成如图13中示出的类人机器人161的蛇形链条机器人(例如,图13的一个“肢体”) 或多关节肢体。在这些示例中,大腿113之间的连接可以是由快速释放连接器(诸如,上面关于图6至图9描述的连接器中的任一个)实现的。
图14a和图14b示出了示例轮式机器人140。在该示例中,机器人140包括四个运动模块,其中两个运动模块包括腿部模块11(在该示例中,与上述机器人10的腿部模块相同),并且其中两个运动模块包括轮模块141。轮模块141(和腿部模块11) 利用快速释放连接器(诸如,上面关于图6至图9描述的连接器中的任一个)与机器人身体模块13(在该示例中,与上述机器人10的身体模块13相同)机械和电气接合。图14b详细示出了示例轮模块141。示例轮模块141包括主齿轮箱和电机142和无轮毂轮143。轮143的特征在于附加的内部齿轮144和与身体模块13的联接器76 兼容的联接器145。轮模块141和身体模块13之间的电连接是如上面关于图9描述的。在髋关节安装在腿部模块内的情况下,轮模块的接口76可相应地变化。在一种情况下,轮模块141内的电子电路可包括标识模块的数据,例如,该数据由主处理模块读取或以其他方式获得。以这种方式,可基于所获得的数据(例如,用于控制轮电机的单个PWM信号,而非用于控制腿关节原动机的两个或三个信号)来改变主处理模块所提供的控制。
图15a和图15b示出了包括四个运动模块的示例飞行机器人150。在该示例中,所有四个运动模块包括飞行模块151,飞行模块151利用快速释放连接器(诸如,上面关于图6至图9描述的连接器中的任一个)与机器人身体模块13(在该示例中,与上述机器人10的身体模块13相同)机械和电气接合。飞行机器人150还包括主要模块12,在该示例中,主要模块12与上述机器人10的主要模块12相同。图15b详细示出了示例飞行模块151。示例飞行模块151包括容纳电机和齿轮箱(未描绘)的主壳体155和无轮毂多叶片转子154。示例飞行模块151还包括与身体模块13的联接器76兼容的联接器152。轮模块151和身体模块13之间的电连接153是如上面关于图9描述的。在髋关节安装在腿部模块内的情况下,轮模块的接口76可相应地变化。在一种情况下,飞行模块151内的电子电路可包括标识模块的数据,例如,该数据由主处理模块读取的。以这种方式,可基于所获得的数据(例如,用于控制推进器电机的信号,而非用于控制腿关节原动机的两个或三个信号)来改变主处理模块所提供的控制。
图16例示了可如何通过将可去除辅助模块连接到机器人10的主要模块12来进一步定制模块化游戏机器人(在例示示例中,是机器人10)。在图16中示出了三种不同示例类型的辅助模块。图16的(i)示出了“重炮”型武器模块161,图16的(ii) 示出了“护盾加强器”型武器模块162,图16的(iii)示出了“火焰喷射器”型武器模块 163,图16的(iv)示出了具有护盾加强器模块162和与其附接的火焰喷射器模块163 二者的身体模块12。辅助模块161、162、163中的每个可被***主要模块12的壳体上的插座165中。也就是说,主要模块12包括至少一个第一联接器(即,在本示例中为三个的插座165),第一联接器可连接到辅助模块161、162、163上的第二联接器。第一联接器和第二联接器能互连,以在主要模块和辅助模块之间形成机械接合并且在主要模块和辅助模块之间形成电气接合。
与上面关于图10和图11描述的护盾组件1000类似,武器辅助模块161、162 和163是有源的。在图16中描绘的示例中,使用销164(包括在第二联接器中)实现电连接(接合)(例如,用于电源和数据通信),销164被设计成***包括在第一联接器/插座165中的每个中的对应插座中。辅助模块是可互换的,使得辅助模块161、 162、163中的任一个可被***主要模块12的插座165中的任一个中。如同护盾辅助模块1000一样,主要模块12和武器辅助模块161、162、163之间的电连接可用于对包括在武器辅助模块161、162、163中的灯(LED)供电和/或将武器模块标识信息从武器辅助模块161、162、163发送到主要模块12。图16还示出了与主要模块12 连接的示例机器人头部模块160(例如,使用用于将武器辅助模块161、162、163连接到身体模块12的相同类型的连接器或上面关于图6至图9描述的快速释放连接器)。头部模块160可与另一种设计的头部模块或另一种类型的模块互换。
智能游戏机器人
本文中公开的示例特别地涉及游戏机器人。现在,将参照图17至图19来更详细描述游戏机器人的构思。图17描绘了由两个用户(玩家)170a和170b控制的两个游戏机器人171a和171b(也就是说,游戏机器人171a、171b各自由两个用户170a、 170b中的不同一个控制)。然而,单个玩家能够玩单个机器人,或者任何数量的玩家能够用他们的机器人171战斗(在这些情形下,每个玩家可具有关联的游戏机器人)。使用连接装置来控制每个游戏机器人171a、171b。连接装置可以是例如一副增强现实护目镜173、手机/计算机平板174或二者的组合。在例示的示例中,每个玩家170a、170b正在使用一副增强现实护目镜173a、173b和手机174a、174b。连接装置173a、173b、174a、174b能够使用无线传输(例如,“WiFi”或“蓝牙”)与游戏机器人171a、171b进行信息发送和接收。每个玩家170a、170b的连接装置173a、173b、 174a、174b也可互连,以进一步增强玩家体验。
在涉及增强现实护目镜的使用的某些实施方式中,护目镜的处理能力可能不足以实现所期望的性能,并且可用具有足够计算能力的另一个装置(例如,台式/膝上型计算机或视频游戏控制台)进行补充。
在图17的游戏机器人环境的一种配置中,两个用户使用其配备有触屏的智能手机来控制两个机器人,触屏充当游戏用户界面的显示器和允许每个用户使用他/她的拇指控制他/她的机器人的虚拟游戏手柄二者。在该配置中,机器人和智能手机利用称为蓝牙的射频传输类型进行连接。另外,智能手机也利用WiFi互连,以允许两个用户用彼此机器人战斗。如果存在有源无线互联网连接,则每个用户都能够在游戏设计期间连接到云,以便从云数据库访问彼此的配置文件或者从云市场购买附加的虚拟物品。他们还能够借助云社区门户与社区其他成员交换信息,或者借助云的外部实体界面访问第三方游戏。然而,活跃的互联网连接并不是允许用户彼此战斗必不可少的,因为它们的连接装置和智能机器人是自给自足的并且嵌入了进行游戏所需的所有数据、处理能力和软件应用。智能游戏机器人基础设施被设计成将所有相关数据存储在装置中的每个内,直到与云的无线连接能更新数据库、技能和分析。也可借助与互联网连接的独立计算机访问市场。当多个用户用他们的机器人“战斗”时,游戏机器人软件应用可存在于一个或更多个连接装置上。在一种情况(诸如,图17中示出的情况) 下,可使用两个连接装置,其中,每个连接装置都运行游戏机器人软件应用。应用可通过连接装置之间的对等通信(例如,通过WiFi网络),借助游戏服务器(例如,借助与游戏服务器的互联网连接)或者借助游戏机器人本身(例如,借助蓝牙和/或红外通信通道)进行同步。
图18a描绘了可用作控制游戏机器人的连接装置的手机174。手机174的特征在于其正面上的触觉显示屏185和其背面上的相机186。手机174的显示器185显示用户界面180(在图18a的(ii)中详细示出)。在该示例中,游戏机器人181的用户界面180包括用于将游戏机器人171在所有方向(例如,向前、向后、向左、向右、顺时针旋转、逆时针旋转)上引导的由第一拇指操作(借助触觉显示屏185)的控制板181。在该示例中,用户界面180还包括由第二拇指操作(借助触屏185)操作的控制板182,控制板182用于选择可在玩游戏期间使用的各种技能和物品(例如,武器、治疗力量、对手扫描、额外的生命)。这些控制板181、182中的一个或更多个实现如本文中讨论的游戏控制器,例如,触屏185和用户界面180包括游戏控制器。用户界面180仅作为示例提供,并且配置可根据游戏机器人软件应用的实现方式而改变。
用户界面180还包括机器人状态的“状态”显示器183以及“增强现实”显示器184。“增强现实”显示器184与相机186结合进行使用。增强现实显示器184播放在相机 186的视场内捕获的实体游戏机器人171及其环境的实时图片,用诸如虚拟对手、虚拟环境/周遭和/或虚拟武器效果的虚拟现实特征来增强该图片。这些虚拟武器效果可与游戏机器人的实体移动效果或序列(所谓的实体“动画”)同步。
图18b描绘了可用作控制游戏机器人的连接装置的一副增强现实护目镜173。在例示的示例中,在护目镜173的屏幕上显示用户界面180(在该示例中,与图18a 的手机174所显示的用户界面180相同)。用户170仍然可需要附加的手动远程控制器来控制机器人171装置。例如,此手动远程控制器可类似于通常用于玩视频游戏的控制器,诸如是被游戏手柄187(如图18b的(i)中所示)或设计成通过将手指以预定方式移动手指来控制机器人171的连接手套189(如图18b的(ii)中所示)。在这些示例中,可用电缆188将游戏手柄187或手套189接通护目镜173,或者另选地,可使用无线传输(例如,“WiFi”或“蓝牙”)无线连接到护目镜173。在某些情况下,增强现实护目镜173可包括嵌入式计算装置(例如,与在智能手机中发现的处理器类似的处理器),因此可不需要单独的连接装置。
在一些示例(未例示)中,手机或平板可与包括控制按钮和/或一个或更多个操纵杆的对接站对接,以向用户提供更符合人体工程学的游戏手柄(即,与视频游戏控制器的游戏手柄类似)和/或以便释放手机/平板的显示器上的空间并由此增强游戏设计。因此,可由计算装置或通过计算装置加上附加元件来提供游戏控制器。
在游戏机器人的一种配置中,可用具有有限功能的专用远程控制器来控制机器人,以降低用户的成本。在该配置中,远程控制器可使用诸如红外的更便宜的无线通信方法,并且不提供与互联网或无线网络的连接。在该配置中,机器人将充当与云的接口。该配置将提供以下的解决方案:用户不需要智能手机、平板计算机或一副增强现实护目镜。替代地,将向机器人供应具有有限连接或处理能力的价格合理的远程控制器。在这种情况下,计算装置可包括位于云中的游戏服务器(例如,执行游戏机器人软件应用的游戏服务器)和/或远程控制器内的嵌入式控制器。
图20例示了游戏机器人通信基础设施200的示例顶层架构。可在任何时刻使用无限数量的游戏机器人201。由玩家使用连接装置202(例如,智能手机、计算机平板或一副增强现实护目镜)来控制每个游戏机器人201。机器人201能够经由无线(例如,WiFi或蓝牙)数据传输204彼此通信。连接装置202还能够借助无线(例如, WiFi或蓝牙)数据传输205彼此通信。每个连接装置202也有可能可借助无线(例如,WiFi或蓝牙)数据传输206直接询问任何机器人201。在此情形下,可使用任何连接装置202来询问任何机器人201以获取机器人信息(诸如,标识和所有权),但是在任何时刻,只有一个连接装置202能够控制一个机器人201。可根据游戏机器人通信协议来进行该询问,游戏机器人通信协议被配置成构造游戏机器人的主处理模块和在连接装置上操作的游戏机器人软件应用之间的通信。每个连接装置202还可借助活跃的互联网连接207连接到数据服务器(例如,云或游戏服务器)203。云203存储诸如统计数据或玩家/机器人配置文件的多个游戏机器人变量。云203还充当用户可借助连接装置202在其中购买新技能、属性或元件的市场。如果机器人201在无线网络连接的范围内,则机器人也有可能可直接与云203通信。这可能是向游戏机器人提供主处理模块上的WiFi接口的情况。
在一个示例中,可借助无线数据传输通道204在游戏机器人204之间交换位置信息。在其他示例中,这也可包括红外通道。无线数据传输通道206(例如,蓝牙通道) 可用于交换标识游戏机器人(例如,包括主处理模块的基础模块和辅助模块)的数据,并且用于在游戏机器人和控制连接装置之间发送控制数据。游戏信息可通过连接装置之间的无线通信通道208(例如,通过本地无线(WiFi)网络)同步。游戏信息可包括机器人位置(例如,在游戏环境的坐标***中)和战斗数据(例如,攻击点和防御点)。游戏统计数据、健康和标识数据可通过活跃的互联网连接207发送到实现云的数据服务器。在某些情况下,即使用户没有关联的游戏机器人,用户也能够使用连接装置参与游戏。例如,在虚拟世界中,用户可“扔”诸如“炸弹”的武器,以在游戏环境中对机器人或实体造成伤害。
图21描绘了机器人201***架构的详细视图。机器人201的架构基本上围绕容纳在机器人201的主要模块211内的主处理模块(被称为MPM)210旋转。主处理模块可包括使用无内部互锁流水线级(MIPS)指令集的微处理器的精简指令集计算机(RISC)。它可包括多个(例如,32个)寄存器并且例如是32或64位。可用C/C ++编写主处理模块的控制固件,并且使用适当改变的C编译器来编译控制固件。在一个示例实现方式中,主处理模块包括PIC32x微控制器。可在其他实现方式中使用其他微控制器。在该示例中,在机器人201的主要模块211内,主处理模块210与追踪灯、音频和视频装置、参考传感器、有线和无线通信单元以及电源单元通过接口连接。作为机器人201的主要模块211的一部分,主处理模块210还与其他机器人模块和特别地身体模块212、运动模块213、护盾模块215、武器模块214和电池模块216 通过接口连接。在替代实施方式中,身体模块212的元件可被集成在运动模块元件 213中,例如,用于髋关节的至少一个原动机的电机控制单元(MCU)可与用于大腿关节中的多个原动机的电机控制单元(MCU)一起共同位于腿部模块中。每个MCU 可与单独的一组位置传感器通过接口连接,其中,每个位置传感器可感测对应关节原动机(或关节结构)的位置。上面参照图3至图9来描述位置传感器的示例。在该替代实施方式中,检测传感器可保留在身体模块212中,或者可被装入主要模块211 中。MCU可形成运动微控制器的一部分。运动微控制器可包括16位微控制器。在一个示例实现方式中,运动微控制器包括PIC16x微控制器。可在其他实现方式中使用其他微控制器。
在一种情况下,可通过穿过运动模块的电连接来提供护盾接口215。在一种情况下,实现移动模块的MCU的微控制器也可被配置成为该特定移动模块提供护盾接口 215,例如,微控制器可在附接之后在启动时读取和存储标识护盾模块的数据,其中,主处理模块210可向运动模块的微控制器请求所述数据。在另一个实现方式中,主处理模块能够借助数据线读取标识护盾模块的数据,数据线与穿过运动模块的主处理模块通信联接。数据线可包括通过运动模块到达护盾存储器或微控制器的传导路径,例如,其中,由通用异步收/发器(UART)装置借助异步通信将数据作为数据位读取。数据线可形成机器人***总线的部分,诸如,控制器局域网(CAN)总线。在一种情况下,护盾接口215可包括与图26b中示出的接口类似的接口。
图22还详述了在主处理模块210中发现的***和这些***执行的功能。如以上讨论的,通信可通过***总线和/或个体数据线发生(例如,用于串行通信)。
通信***220的功能是处理机器人201和其所连接环境之间的所有有线(例如,编程期间的USB)和无线(例如,在玩游戏期间的蓝牙、WiFi)通信。
电力管理***221为机器人201供应主电源和辅助电源二者的功能是通过将电池模块226的电压从典型的9Vdc电源调低到用于电机的6Vdc电源和用于其他电子元件的3.3Vdc来实现的。电力管理***221的另一个功能是根据需要来管理可充电电池的充电和放电。
监视***222的功能是提供机器人201的健康状态,包括例如电力总线电压、电机电流消耗、机器人的电力消耗、电池放电率或关键元件的温度。监视***222可从基础模块和/或辅助模块的元件(例如,从运动模块213或身体模块212)接收信息。温度可被提供作为当前的最大和/或最小温度测量值(例如,在限定的时间段内或自值重置开始)。也可报告由一个或更多个电路热敏电阻所测得的对温度安全阈值的违背。其他故障信息也可例如以通信或电机驱动错误的形式被报告给监视***222。故障信息还可包括电测量,例如,被违背的当前阈值。监测***222还可计算和存储关节移动测量值,例如,单位为英里、公里、码或米的行驶距离。这可例如使用位置传感器基于旋转计数按照运动模块MCU中的原动机来提供。
校准***223的功能是在玩游戏期间校准机器人201的传感器,特别地,根据需要校准用作跟踪***的一部分的罗盘以及加速度计、陀螺仪、GPS或高度计(例如,用于飞行机器人)。校准***223可指示运动模块213执行校准例程并且提供校准测量。例如,可指示运动模块或原动机移动达设定距离并且可测量移动的时间。运动模块213可包括在这些校准例程期间提供数据的加速度计。校准例程可包括两个或多个原动机的复合移动,例如,腿部的“升高、旋转和下降”移动。校准***223还可从所联接的基础模块和/或辅助模块接收校准信息,例如,对关节位置测量值的工厂偏移。校准***223还可被配置成获得针对主处理模块210或其他模块212-216的固件更新。在一种情况下,主处理模块210可例如从云数据服务器获得对一个或更多个模块 212-216的固件更新,并且将这些更新传达给所述模块的微控制器(例如,在所述微控制器的更新模式期间)。
运动产生***224的功能是响应于从电话机或护目镜202接收的用于控制机器人201的高级命令而生成对于机器人关节的低级命令(例如,原动机输出)。这是使用运动学引擎和运动学(例如,位置/速度、来自原动机电机控制器/位置传感器中的每个的反馈)来实现的。低级命令可包括关节位置和速度命令,例如,将关节或原动机 P以速度S(或时间T)移动到旋转位置R。在运动期间,可使用运动学反馈来调节控制,诸如,调节低级别命令(例如,如果关节或原动机在预定义时间不在预定义位置,则增加速度)。主处理模块210所供应的低级命令可由每个运动模块213的MCU 进一步处理。例如,MCU的一个反馈调节级别可由MCU制定,而较高反馈级别由运动产生***224制定。以这种方式,每个运动模块213可在主处理模块211的控制下执行低级并行计算。如由运动模块MCU和主处理模块校准的,可按关节当前角度的形式提供位置信息。在一种情况下,根据所期望的关节位置,MCU可确定当前腿部位置,然后确定向原动机施加多少电力。在某些情况下,MCU可基于MCU可访问的指示腿部位置的数据(例如,存储在MCU的存储器中的数据)施加重力补偿。在某些情况下,当所测得的腿部位置接近所期望的腿部位置时,可使用死区滤波器来减少腿部抖动。
在某些实现方式中,运动产生***224的运动引擎被用于制定动态产生的运动,例如,在用户的控制下使用诸如“向前移动”、“向左移动”、“旋转”的游戏控制器发起的运动。在这些情况下,运动产生***224还可包括用于存储一个或多个移动程序的存储器。这些移动程序包括用于实现重复运动的一系列原动机动作。移动程序可与特定的辅助模块和/或“技能”关联。例如,“踩踏”运动(例如,抬起一条或更多条腿,然后以快速和/或高加速度放下所述腿)可与“踩踏”技能关联。该技能只在附接特定辅助模块后才可用。可例如,在触摸屏界面或游戏手柄上向用户呈现“技能”按钮,使得当按下或启动按钮时,连接装置向运动产生***224发送启动和实现“脚踏”移动程序的命令。每当用户按下适当的按钮时,都可重复该运动。在其他情况下,移动程序可与游戏事件(例如,胜利、失败、加电)、战斗移动(例如,防御和/或武器发射) 和/或实体移动(例如,特定一系列按钮按压)关联。
机器人跟踪***225的功能是辅助电话或护目镜252在玩游戏期间跟踪空间中的机器人,特别是出于增强游戏逼真性的目的。这主要是通过在整个游戏机器人201(典型地,主要模块211和/或运动模块213上)上排序/控制跟踪灯以计算位置和方向来实现的。可通过使用诸如罗盘、陀螺仪或加速度计的机载传感器(在可用时)来增强跟踪。
检测***226的功能是允许机器人在玩游戏期间检测对手(例如,其他机器人) 及其环境(例如,障碍物)。这是通过使用检测传感器(例如,典型地身体模块212 中的红外LED和接收器)来计算方向以及使用机载相机(典型地,在主要模块211 上的机器人201的头部内)来计算距离来实现的。容纳有主要模块211的音频单元(例如,扬声器和麦克风)也可用于通过发出和收听特定声音模式来检测对手。
智能模块***227的功能是检测附接于机器人的护盾或武器的存在和标识,并且将该信息转达给用于控制机器人201的电话或护目镜202,以便更新游戏环境内的机器人的属性。智能模块***227因此借助电气接口从辅助模块获得数据,并且将数据发送到连接计算装置。在一种情况下,智能模块***227可向嵌入辅助模块中的微控制器发送读取数据的请求,其中,微控制器用数据(诸如,图27中示出的数据)作出响应。另选地,智能模块***227可向嵌入运动或其他辅助模块中的微控制器请求该数据,其中,在附接辅助模块并且为游戏机器人加电时,这些微控制器读取数据(例如,作为启动程序的部分,可在所供应的数据通道上进行一系列数据请求)。
智能模块***227的另一个功能是控制可嵌入护盾模块215和武器模块214内的灯,以在玩游戏期间添加视觉效果。
智能模块***227的另一个功能还是识别与机器人201(例如,腿部、轮或推进器)连接的运动模块213的类型,以将机器人的配置(例如,步行、滚动或飞行)告知运动产生***224。例如,嵌入运动模块213中的微控制器可以包括存储器,存储器还例如以获得标识辅助模块的数据的类似方式来存储标识运动模块的数据。
图23描绘了连接装置202的***架构的示意图。连接装置202的架构基于连接装置(例如,手机,平板或增强现实护目镜)的核处理单元230(被称为CPU)。CPU 230执行连接装置服务,即,游戏机器人软件应用。连接装置202配备有显示屏231,显示屏231充当与机器人201的用户界面。还需要用游戏控制器234允许用户控制机器人201。使用无线通信接口233(例如,WiFi或蓝牙)无线控制机器人201。如果启用了增强现实,则可提供可选的摄像机232。根据用于控制机器人201的连接装置 202的类型,游戏控制器234可采取几种形式。当使用电话174作为连接装置202时,可使用电话174的由拇指操作的触屏185(如图17和图18A中描绘的),并且触屏 185将本质上由虚拟(屏幕上)游戏手柄构成。为了进一步增强用户体验,可使用对接站190来对接电话191或平板194并且为用户提供实体游戏手柄,如图19a至图 19b中进一步描绘的。
具有对接站190的益处之一是,它可释放电话191或平板194的显示器185上的空间以增强游戏体验,特别是当实现增强现实时。如果使用增强现实护目镜173来替代电话191或平板194,则可将游戏手柄187或连接手套189作为游戏控制器234。也可使用电话174的触屏185,例如,触屏185可以是由拇指操作的并且用于替代游戏手柄187或连接手套189或与其一起使用。
图24还详述了连接装置服务230和这些服务执行的功能。
机器人跟踪***240的功能是,基于机器人201所提供的跟踪数据,将机器人的位置、取向、比例和姿态结合到游戏中,并且使用该信息来在连接装置202(电话/ 桌子/护目镜)的显示器上增强玩游戏期间的逼真度。这可采取附加的角色或障碍物的形式以及诸如火焰、激光束或***的特殊效果。
机器人控制***241的功能是用户借助游戏控制器234向机器人201无线地输入高级命令。在一种情况下,机器人控制***241可被配置成计算齐次变换矩阵。该矩阵会引起仿射变换。齐次变换矩阵中的值可被作为高级命令传达给游戏机器人,例如,在t秒的给定时间段内执行。在一种情况下,可假定游戏机器人的移动发生在二维(地板)平面中,因为可在二维空间中确定此移动。该游戏机器人软件应用中可能没有明确地显示该二维空间,例如,其可将实体空间建模为增强现实显示的框架(例如,覆盖在视频馈给上的虚拟特征)。若给定游戏机器人的当前旋转角度θ(例如,相对于机器人的“先前”面对方向)以及代表地平面的二维空间中的机器人的当前x和y坐标 (例如,中心点),则可如下计算加权齐次变换矩阵:
其中,vt是如下计算的平移速率:
vt=(vlast+a·t)·sv
其中,vlast是游戏机器人的先前或最近速率,例如,游戏机器人要执行变换操作的固定间隔t秒开始时的速率,sv是代表游戏机特征的归一化速率比例因子,a是恒定平移加速度。可如下计算常量平移加速度a:
其中,m是游戏机器人的归一化质量,sa是代表游戏机特征的归一化平移加速度比例因子。相对于机器人的最大承载质量将质量归一化。例如,如下以类似方式计算游戏机器人的角度(即,旋转)速率ωt:
ωt=(ωlast+α·t)·sω
其中,ωlast是游戏机器人的先前或最近角速度,例如,游戏机器人要执行变换操作的固定间隔t秒开始时的角速率,sω是代表游戏机特征的归一化角速率比例因子, a是恒定角(即,旋转)加速度。可如下计算常量角加速度α:
其中,m是游戏机器人的归一化质量,sa是代表游戏机特征的归一化平移角加速度比例因子。使用这些等式,可使用机器人属性来改变游戏机器人的归一化质量m,或者通过改变以下比例因子中的一个或更多个:sv、sa、sω和sα。例如,使用在从模块存储器获取标识模块的数据的启动程序期间确定的游戏机器人的当前配置来计算归一化质量或比例因子中的一个或更多个,然后游戏机器人软件应用使用这些变量值来计算高级命令。这可通过如下所述的智能模块***243来执行。在某些情况下,虚拟物品和/或其他游戏效果还可修改归一化质量中的一个或更多个和比例因子中的一个或更多个,例如,它们还可调节或改变这些值。
机器人监视***242的功能是收集关于机器人201的健康/状态的数据,并且用如图18A中描述的基本状态信息来更新用户界面180上的机器人状态183。更全面的健康/状态数据还被上传到云203以进行存储和分析。
智能模块***243的功能是收集与机器人201附接的模块(例如,武器、护盾、屏幕、运动模块的类型)的状态。智能模块***243向战斗***245提供输入,战斗***245通过改变机器人201的属性来相应更新游戏设计。
虚拟物品***244的功能是收集用户所拥有的虚拟物品(例如,冷却药水、治疗药水、伤害增强器或增速器)的状态。虚拟物品***244向战斗***245提供输入。与实体智能模块(例如,护盾或武器)不同,虚拟物品是非实体的并且不能由机器人进行“检测”。替代地,虚拟物品被与存储在云203中和连接装置202上的玩家/机器人配置文件对照地进行存储。可从云203内的市场在线购买虚拟物品。
战斗***245的功能是基于来自机器人201的其他***的数据来计算战斗的结果。例如,将基于来自机器人跟踪***240的数据、来自技能***246的数据以及来自智能模块***243的数据来计算战斗的结果。例如,在检测到安装了“重”护盾时,战斗***245将使机器人201在受到攻击之后能复原并且更容忍损伤,但是战斗*** 245还将使机器人201的移动缓慢,反映了“重”护盾的体积和重量。
技能***246的功能是管理随着时间推移会变成玩家/机器人可用的技能。当玩家/机器人在游戏中前进(也被称为升级)时,他或她可赢得技能(也被称为特权)。这些技能可为玩家授予游戏设计益处。例如,新技能可赋予玩家/机器人执行新动作或提升玩家/机器人属性之一的能力。技能是战斗***245的输入,并且有助于计算战斗的结果。例如,随着游戏机器人到达特定级别(例如,存储在机器人配置文件中并且基于获胜的战斗数量等来计算的),新的移动程序可变成可用。这些可以是“签名”移动,例如,当战斗获胜时或者当发射特定特定武器时,启动这些移动。例如,在一个关卡,游戏机器人可解锁能够逃避特定武器攻击的“鸭子”移动。这可有关联的移动程序,当关卡被解锁时,由主处理模块下载该移动程序。因此,当使用游戏机器人时,其实体行为发生演变。
在一种情况下,虚拟游戏环境中的事件也会引起游戏机器人的实体移动。例如,通过以与所附接辅助模块类似的方式修改机器人属性,损伤会使游戏机器人放慢。损伤也会启动特定移动程序,例如,一系列移动可通过减小腿部移动的范围和速度来模拟受损伤腿部模块。类似地,在诸如通电的游戏环境中收集的物品会使移动速度增加或者将新移动解锁。游戏环境中的虚拟物体还会引起游戏机器人的实体移动。例如,虚拟墙或物体(诸如,位于地平面上的立方体)可被游戏机器人解释为机器人周围的空间中的真实实体物体,使得它在实体空间中围绕虚拟物体进行导航。这是通过在游戏机器人软件应用内计算围绕被跟踪游戏机器人的虚拟边界体积来实现的。然后,使用这个来测试与虚拟场景的交叉(例如,游戏机器人的移动),并且被计算出,以避免代表游戏机器人在虚拟游戏环境中的范围的边界体积与任何目前虚拟物体的交叉。从用户的角度来看,当在增强现实世界中步行到虚拟物体时,游戏机器人将类似于步行到实体世界中的真实物体那样表现。
图25详述了云203的架构250及其特定功能。
机器人数据库251的功能是存储与每一个机器人201相关的数据,特别地,技能、智能模块、可用的虚拟物品和游戏统计数据。机器人数据库251的数据被用作游戏分析的部分,并且数据中的一些可被其他用户和社区257成员访问。机器人数据库的一个重要方面是收集每个机器人201和每个机器人的智能模块(例如,运动模块213、身体模块212、武器模块214、护盾215)的唯一标识符,以验证每个机器人的合法性,并且例如防止伪造以及协助客户支持、保修索赔或产品召回。
用户数据库252的功能是存储与每一个用户170相关的数据,例如,用户的状态和配置文件、使用统计和机器人所有权(如果此用户拥有不止一个机器人)。用户数据库252的数据被用作游戏分析的一部分,并且数据中的一些可被其他用户和社区成员访问。
技能引擎253的功能是基于机器人数据库251和用户数据库252中可用的数据来汇集所有可用技能(也被称为特权)并且管理对用户/机器人的技能分配/授予。用户在游戏中前进时可获得技能。
游戏分析引擎254的功能是利用例如借助机器人数据库251和用户数据库252 收集的所有数据来分析和改善游戏设计和用户体验。游戏分析引擎254所使用的度量的示例可以是播放时间和频率、优选武器、最有效的护盾、成功率、游戏进程、人口统计。可使用这些度量来标识模式,并且整体地改善游戏设计和用户体验,而且还可用于通过分析存储在数据库251和252中的个体数据来定制供应给每一个用户的内容。
在某些示例中,游戏分析引擎254可分析游戏设计数据并且基于该分析来修改机器人属性。例如,可调节属性,以引起游戏机器人的虚拟老化。这可能表现为缓慢的机器人移动,类似于“重”辅助模块的效果。例如,可确定,游戏机器人已经步行了M 英里或者完成了B场战斗,并且例如通过增加质量或减小游戏内比例因子,可与这些度量成比例地修改存储在机器人配置文件中的机器人属性。在一种情况下,原动机的性能可随着使用而自然下降;在这种情况下,移动的实体速度也可独立于机器人属性的任何修改而减小。然而,为了经常损伤和延长原动机的寿命,例如,通过在更换可延长之前将多场可玩战斗的原动机速度减半,实体机器人速度的减小会比实体下降出现的量大。类似地,新更换的模块(例如,腿部模块)可具有由机器人属性设置的增强速度(超出新电机自然提供的速度),以指示复兴效果。
游戏分析引擎254还可例如基于存储在机器人配置文件内的接收的健康和故障数据来指示某些模块需要进行更换。该数据也可有助于进行维修,例如,可将模块带到维修店,在那里可读取模块的标识符。使用标识符,可获取针对部件的机器人配置文件。通过分析故障和健康信息,可对部件出现什么问题以及指示的适宜维修操作进行诊断(例如,电机驱动器错误可指示有故障的微控制器或固件,而高的最高温度可指示印刷电路板上的电气元件出现故障)。在一种情况下,可基于多个游戏机器人的分析来应用预测分析,例如,某些控制数据模式可指示已知问题。然后,可预先通知用户或者可运送更换模块。
外部实体接口256的功能是允许用户访问经许可内容提供商,并且例如购买新游戏或访问获授权的许可零售商并且购买附加的智能模块。外部实体接口256也可允许在游戏设计期间进行获授权的广告或用于与外部方进行数据交换/销售。
社区接口257的功能是允许用户/玩家借助论坛或社交媒体来交换信息,共享机器人/用户配置文件,管理/组织诸如锦标赛的事件。
图26a和图26b示意性例示了示例基础模块和辅助模块之间的电连接。
图26a示出了与运动模块213电联接的主处理模块210。运动模块213可包括如上所述的腿部模块。可将连接重复四次,以控制四个单独的腿部模块。这些连接可形成主要-腿部模块接口的部分。在图26a中,腿部模块包括如上所述的大腿原动机和臀部原动机二者,在其他情况下,腿部模块可包括大腿原动机而没有臀部原动机。图 26a示出了十个单独的电连接260:PM1-用于第一原动机控制信号的连接;PM2-用于第二原动机控制信号的连接;POT-用于位置反馈信号的连接;3V3-3.3伏直流电源; GND-S-3.3V电源的接地通道;SEN-用于指示存在腿部模块的感测通道的连接;6V-6 伏直流电源;GND-P-6V电源的接地通道;DATA-串行数据通信通道的连接。PM1 或PM2中的一个可承载用于控制用于臀部旋转(例如,围绕轴16)的电机的PWM 信号;PM1或PM2中的另一个可承载用于控制用于大腿旋转(例如,围绕轴15)的电机的PWM信号或用于控制用于脚旋转(例如,围绕轴14)的电机的PWM信号,其中,在后一种情况下,两个电机信号可共享同一条线(在其他实现方式,可设置另外的控制线)。在某些情况下,信号可直接控制原动机;在其他情况下,信号中的一个或更多个可包括用于臀部或大腿MCU的控制数据,其中,MCU用所述控制数据来计算PWM信号。POT连接可携带来自腿部模块上的每个位置传感器的位置数据 (例如,串行供应的)。另选地,在其他实现方式中,可设置三个单独的通道。3V3 和6V连接以及对应的GND回路连接可用于为原动机和一个或更多个有源电子元件 (例如,辅助模块上的电机或LED)供电。主处理模块210可使用SEN连接来检测腿部模块213的存在。在简单的情况下,SEN连接可仅仅是3.3V电源的回路。因此,当没有附加运动模块213时,在该连接上不存在电压,然而当附接运动模块213时,SEN连接被升高至3.3V(或以下)的电压。可使用DATA通道来获得标识运动模块的数据和标识任何所附接辅助模块的数据。还可使用它来向运动模块213的控制逻辑发送其他命令和请求。DATA通道可以是UART或其他串行数据通道。DATA通道还可在基础模块和辅助模块的微控制器(或处理器)之间(例如,在主处理模块的处理器和运动模块和辅助模块中的至少一个中的微控制器之间)进行数据通信。DATA 通道也可用于固件升级。
图26b示出了基础模块263和辅助模块264之间的示例电气接口262。该电气接口262可通过如图16中所示地连接销164和插座165或者通过护盾接口1003和1004、 1006和1008或1103和1104来提供。提供至少三个连接:承载电源的第一通道PWR;用于地信号的第二通道GND;以及用于数据交换的第三通道DATA。对于与运动模块联接的辅助模块(例如,图10a至图10b和图11的护盾),连接262可分别与260 的6V、GND-P和DATA连接电联接。这允许主处理模块263从所述模块的存储器读取或以其他方式获得标识辅助模块264的数据。
图27示出了可通过260或262的DATA连接传达的数据包格式271和示例数据 273、274的示意例示。
图27中示出的数据包格式271包括标识符(ID)2701、类型字符串(TYPE)2702 和特征列表(FEATURELIST)2703。特征列表2703包括具有零个或更多个条目的数据结构;在图27中,示出了第一条目(ITEM1)2704至第n条目(ITEMn)2705,然而,该列表不需要具有任何条目(在这种情况下,该列表可以是空的)。数据2701 至2703中的每个可以是固定长度(例如,固定比特数),或者可以是由起始和停止比特序列标记的可变长度数据结构。可使用数据包格式271来传达标识基础模块或辅助模块的数据。标识符2701可以是辅助模块的全局唯一标识符。主处理模块可使用类型字符类型字符串2702来确定辅助模块类型,以便获取用于控制所述模块的对应控制程序。在某些情况下,可省略类型字符串2702,例如,另选地,可基于主处理模块使用标识符2701进行的查找操作来获取控制信息。
示例数据273符合数据包格式271。设置标识符2701的值为“12345”。标识符可以是16、32或64比特序列,诸如,整数。在其他实施方式中,标识符可包括代表加密值或密码函数的结果的256、512或更大的比特序列。类型字符串2702被设置为“HVY”2712的字符串值,例如,指示“重”护盾或武器。示例数据273的特征列表包括三个条目:字符串值“LEDR”2714,其指示辅助模块包括红色LED并且针对该LED 的控制值应该被作为第一数据条目提供;字符串值“LEDB”2715,其指示辅助模块包括蓝色LED并且针对该LED的控制值应该被作为第二数据条目提供;以及字符串值“MOTOR1”2716,其指示辅助模块包括电机并且针对该电机的控制值应该被作为第三数据条目提供。
示例数据273可由主处理模块210从所附接的辅助模块的存储器读取,或者响应于对容纳在运动模块内的微控制器的请求而获得,运动模块先前已经从存储器读取了所述数据。可使用类似数据来标识可去除基础模块,诸如,可互换的腿部或主要模块。主处理模块210将该数据发送到所联接的计算装置,以设置游戏机器人的属性。如果没有连接计算装置,则主处理模块210可缓存该数据,以供后续传输。例如,可基于“HVY”类型2712或者基于使用标识符2711的查找(例如,该类型可隐含在该标识符中)来设置游戏机器人的模拟质量。
示例数据274可被作为数据包从主处理模块210发送到辅助模块,以控制特征列表2703中列出的有源电子元件。在这种情况下,示例数据包括由辅助模块的微控制器串行接收的三个8比特数据值(为“35”、“128”和“12”的值)。值“35”控制由条目 2714标识的红色LED的等级;值“128”控制条目2715所标识的蓝色LED的等级;并且值“12”控制条目2716所标识的电机的位置或速度。
当附接有辅助护盾模块的新运动模块附接于身体模块时,会发生以下事件。首先,可由主处理模块基于SEN通道上的电压来检测运动模块。然后,主处理模块可获得运动模块的标识符。然后,主处理模块可例如基于存储在主处理模块上的当前配置来设置运动微控制器中的任何控制变量。可例如借助POT通道测量附接运动模块的当前位置,并且将其用于设置主处理模块中的位置数据。同时,或者在该事件之后,标识辅助模块的数据可被主处理模块获得。然后,游戏机器人的当前配置(包括所附接的所有主和辅助模块的标识符)可被发送到连接装置(当被通信联接时)。连接装置 (当与数据服务器通信联接时)可验证标识符,以检查所附接的元件是有效的,并且将部件的细节存储在机器人数据库中的当前游戏机器人的机器人配置文件中。健康和校准数据也可从主处理模块发送到数据服务器,以存储在机器人配置文件中。然后,可启动游戏机器人(例如,借助从数据服务器到连接装置的响应),并且准备好借助连接装置上的游戏机器人软件应用进行控制,例如,可能准备好参加模拟战斗。启动游戏机器人可包括将因存在辅助模块(例如,武器发射或移动“动画”)而启用的任何移动程序下载到主处理模块,可从连接装置传递数据,其中,如果移动程序还未被作为游戏机器人软件应用的控制数据的部分存储,则连接装置可进而从数据服务器下载移动程序。在一个实现方式中,游戏机器人可存储多达30个移动程序(虽然可取决于主处理模块存储器的大小来存储更多程序)。当游戏机器人起动并且将应用加载到连接装置上时,在后台会出现游戏机器人和游戏机器人软件应用之间的数据交换。如果通过分析接收的健康和校准数据(要么通过连接装置要么通过数据服务器)检测到任何严重故障,则可借助游戏机器人软件应用(例如,借助用户界面180上的消息) 通知用户,并且可禁止进行游戏机器人的控制。
图28a和图28b描绘了游戏机器人280的更简单版本。在该示例中,连接装置 281由只有有限功能的专用远程控制器组成,因此降低了成本。在该实施方式中,连接装置281包括价格合理的非触觉显示器286,并且特征在于多个控制按钮284和一个或更多个操纵杆285。连接装置281具有最小的处理能力和最小的连接性,从而限制成本。连接装置281的无线通信***可依靠有可能较便宜的红外技术(例如IR) 来控制机器人202,以替代较昂贵的射频技术(例如,WiFi或蓝牙)。在游戏机器人 280的该特定实施方式中,与云203进行的处理和无线通信283由机器人202直接进行处理。在多玩家进行游戏期间,连接装置281可能不能够彼此进行通信,替代地,玩家/机器人之间的互连将由机器人202进行处理。
以上特征应被理解为是本发明的例示示例。料想到本发明的其他实施方式和示例。要理解,关于任一个实施方式描述的任何特征可被单独使用,或者与所描述的其他特征结合使用,并且还可与任何其他实施方式的一个或更多个特征或任何其他实施方式的任何组合结合使用。此外,在不脱离由随附权利要求书限定的本发明的范围的情况下,也可采用以上未描述的等同形式和修改形式。
Claims (28)
1.一种游戏机器人,所述游戏机器人包括:
多个基础模块,所述多个基础模块包括:
主要模块,所述主要模块包括主处理模块,所述主处理模块用于响应于从计算装置接收的命令而控制所述游戏机器人的至少一个运动模块;以及
用于提供机器人运动的多个腿部模块,每个腿部模块包括用于使所述腿部模块的一些部分分别围绕多个轴旋转的多个原动机,其中,至少一个腿部模块包括:
辅助模块机械联接器,用于连接辅助模块;以及
辅助模块电气接口,用于访问存储在所述辅助模块的电子电路内的数据,所述数据标识所述辅助模块;
其中,所述主处理模块被配置成:
借助所述电气接口从所述辅助模块获得所述数据;
将所述数据发送到所述计算装置;
从所述计算装置接收高级命令;以及
从每个腿部模块内的控制电路接收运动学反馈,
其中,所述主处理模块包括运动学引擎,所述运动学引擎用于响应于所述高级命令,使用接收的所述运动学反馈而生成低级命令,并且
其中,所述计算装置基于从所述辅助模块获得的所述数据来改变发送到所述主处理模块的所述高级命令,使得基于所述辅助模块的连接来修改对至少一个腿部模块的控制。
2.根据权利要求1所述的游戏机器人,
其中,第一辅助模块能连接到所述辅助模块机械联接器,并且从所述计算装置接收的命令基于由所述主处理模块发送的标识所述第一辅助模块的数据来控制所述至少一个运动模块以第一速度移动,并且
其中,第二辅助模块能连接到所述辅助模块机械联接器,并且从所述计算装置接收的命令基于由所述主处理模块发送的标识所述第二辅助模块的数据来控制所述至少一个运动模块以第二速度移动。
3.根据前述权利要求中任一项所述的游戏机器人,其中,所述辅助模块电气接口包括电源接口和数据通信接口。
4.根据权利要求3所述的游戏机器人,其中,所述辅助模块包括借助所述电源接口进行供电的一个或多个有源电子元件,并且其中,所述主处理模块被配置成控制所述有源电子元件。
5.根据权利要求1或权利要求2所述的游戏机器人,其中,所述辅助模块包括护盾模块和武器模块中的一者。
6.根据权利要求1或权利要求2所述的游戏机器人,其中,所述主处理模块包括存储器并且被配置成:
接收移动程序,所述移动程序包括一系列原动机动作并且与能断开的所述辅助模块关联;
将所述移动程序存储在所述存储器中;以及
如果能断开的所述辅助模块被连接,则响应于来自所述计算装置的至少一条命令而选择性加载和执行所述移动程序。
7.根据权利要求1或权利要求2所述的游戏机器人,
其中,所述主要模块包括:
一组腿部机械联接器和腿部电气接口,用于将所述多个腿部模块连接到所述主要模块,
其中,每个腿部模块包括:
微控制器,所述微控制器包括用于存储标识所述腿部模块的数据的存储器;
主要模块机械联接器,用于将所述腿部模块连接到所述主要模块的所述腿部机械联接器中的一个;以及
主要模块电气接口,用于将所述腿部模块电联接到所述主要模块的所述腿部电气接口中的一个;
其中,所述微控制器借助所述主要模块电气接口与所述主处理模块电通信。
8.根据权利要求7所述的游戏机器人,其中,每个腿部模块的所述主要模块电气接口包括与每个腿部模块的相应辅助模块电气接口电联接的至少一条电力线和至少一条数据线。
9.根据权利要求7所述的游戏机器人,其中,每个腿部电气接口包括数据线,以指示腿部模块被连接。
10.根据权利要求7所述的游戏机器人,其中,所述主处理模块被配置成向给定的腿部微控制器指示原动机的所期望位置和速度。
11.根据权利要求7所述的游戏机器人,其中,每个腿部模块微控制器通过所述主要模块电气接口向所述主处理模块发送数据,所述数据包括:
用于腿部模块的唯一标识符;
关节状态数据;以及
辅助模块数据,所述辅助模块数据包括标识所连接的任何辅助模块的数据,
其中,所述主处理模块被配置成将关节移动数据发送到给定的腿部模块微控制器,所述关节移动数据包括位置和速度指令。
12.根据权利要求1或2所述的游戏机器人,其中,标识所述辅助模块的数据包括:
唯一标识符;以及
形成所述辅助模块的一部分的有源电子特征的指示。
13.根据权利要求12所述的游戏机器人,其中,标识所述辅助模块的数据包括:
指示辅助模块类型的标识符。
14.一种游戏机器人***,所述游戏机器人***包括:
根据权利要求1至13中任一项所述的游戏机器人;以及
计算装置,所述计算装置执行游戏机器人软件应用。
15.根据权利要求14所述的游戏机器人***,其中,所述计算装置被配置为基于所述游戏机器人的所述主处理模块所发送的数据来更新所述游戏机器人软件应用内的游戏环境中的所述游戏机器人的属性。
16.根据权利要求14所述的游戏机器人***,其中,所述计算装置包括连接装置,所述连接装置包括:
处理器,用于执行所述游戏机器人软件应用;
无线接口,用于与所述游戏机器人的所述主处理模块进行通信;
显示屏,用于显示所述游戏机器人软件应用的用户界面;以及
游戏控制器,用于将用户命令提交给所述游戏机器人软件应用。
17.根据权利要求16所述的游戏机器人***,其中,所述游戏机器人软件应用包括:
智能模块***,用于基于借助所述无线接口从所述游戏机器人的所述主处理模块接收的数据来收集与所述游戏机器人连接的任何辅助模块的状态;以及
战斗***,用于从所述智能模块***接收数据并且基于来自所述智能模块***的数据来计算涉及至少所述游戏机器人的模拟战斗的结果。
18.根据权利要求14至17中任一项所述的游戏机器人***,所述游戏机器人***包括:
数据服务器,所述数据服务器借助活跃的互联网连接与所述计算装置通信联接,所述数据服务器包括用于存储与所述游戏机器人相关的数据的机器人数据库,
其中,所述数据服务器从所述计算装置接收标识所述辅助模块的数据,验证所述数据并且将所述数据存储在所述机器人数据库中。
19.根据权利要求15所述的游戏机器人***,其中,所述游戏机器人软件应用包括:
虚拟物品***,用于确定一个或多个虚拟物品的状态,
其中,所述计算装置基于从所述辅助模块获得的数据并且基于任何当前虚拟物品来改变发送到所述主处理模块的命令。
20.根据权利要求16所述的游戏机器人***,其中,所述计算装置被配置成借助所述无线接口向所述主处理模块发送高级命令,所述高级命令至少指示所述游戏机器人的所期望的空间位置,其中,所述主处理模块被配置成将所述高级命令转换成至少指示至少一个运动模块的所期望的关节位置的低级命令。
21.根据权利要求20所述的游戏机器人***,其中,所述游戏机器人软件应用被配置成:
从所述游戏控制器接收用户命令,所述用户命令至少指示所述游戏机器人的所期望的移动方向;以及
使用运动学函数来计算针对所述游戏机器人的高级命令,所述运动学函数取使用从所述辅助模块获得的数据所获取的所述游戏机器人的属性作为输入。
22.根据权利要求18所述的游戏机器人***,其中,所述主处理模块被配置成向所述计算装置发送游戏机器人状态数据,并且所述计算装置被配置成将所述游戏机器人状态数据发送到所述数据服务器,以便存储在所述机器人数据库中的机器人配置文件中。
23.根据权利要求22所述的游戏机器人***,其中,所述游戏机器人状态数据包括以下中的至少一项:
所述游戏机器人行进的距离;
针对所述游戏机器人的校准数据;
所述游戏机器人经历的故障;以及
与所述游戏机器人连接的辅助模块。
24.一种控制游戏机器人的方法,所述方法包括以下步骤:
在计算装置处,从所述游戏机器人接收标识所述游戏机器人的能断开模块的数据,所述能断开模块与所述游戏机器人机械和电气联接,所述数据得自所述能断开模块的电子元件;
在所述计算装置处,基于从所述游戏机器人接收的所述数据,更新所述计算装置所实现的游戏环境中的所述游戏机器人的属性;
在所述计算装置处,接收使用所述计算装置的游戏控制器输入的用户命令;
在所述计算装置处,根据所述游戏机器人的属性和所述用户命令的变化,计算针对所述游戏机器人的命令;
将所述命令从所述计算装置发送至所述游戏机器人,其中,所述命令能用于响应于所述用户命令而控制所述游戏机器人的移动;
在所述游戏机器人的主处理模块处,从所述计算装置接收所述命令;
在所述主处理模块处,使用运动学引擎将所述命令转换成针对一个或多个原动机的运动学命令;以及
在所述游戏机器人处,使用所述运动学命令控制所述一个或多个原动机,以响应于所述用户命令而实施所述游戏机器人的移动,
其中,所述移动取决于能断开模块的机械和电气联接。
25.根据权利要求24所述的方法,该方法包括以下步骤:
从所述游戏机器人断开所述能断开模块;
在所述计算装置处,从所述游戏机器人接收不存在所述能断开模块的指示;
在所述计算装置处,基于所述指示来更新所述游戏机器人的属性;
其中,更新后的所述属性由所述计算装置用来生成改变的一组评论,以响应于所述用户命令而控制所述游戏机器人的移动。
26.根据权利要求24所述的方法,其中,所述能断开模块包括第一能断开模块并且所述方法包括以下步骤:
从所述游戏机器人断开所述第一能断开模块;
将第二能断开模块与所述游戏机器人连接;
在所述计算装置处,从所述游戏机器人接收标识所述第二能断开模块的数据,所述数据得自所述第二能断开模块的电子元件;
在所述计算装置处,基于标识所述第二能断开模块的所述数据来更新所述游戏机器人的属性;
其中,更新后的所述属性由所述计算装置用来生成改变的一组评论,以响应于所述用户命令而控制所述游戏机器人的移动。
27.根据权利要求24至26中任一项所述的方法,其中,标识所述能断开模块的所述数据包括唯一标识符,并且所述方法包括以下步骤:
在所述计算装置处,将所述唯一标识符与数据库进行对照,以验证所述能断开模块的合法性。
28.一种游戏机器人***,所述游戏机器人***包括:
游戏机器人,所述游戏机器人包括:
多个基础模块,每个基础模块都包括机械联接器和电气接口,所述多个基础模块包括:
多个腿部模块,每个腿部模块都包括用于使所述腿部模块的一些部分分别围绕多个轴旋转的多个原动机;以及
主要模块,所述主要模块包括用于控制所述多个腿部模块的主处理模块;
至少一个能断开辅助模块,所述至少一个能断开辅助模块包括:
机械联接器,所述机械联接器在使用中与所述多个基础模块中的一个基础模块上的机械联接器接合;
电气接口,所述电气接口在使用中与所述多个基础模块中的所述一个基础模块上的电气接口电联接;以及
电子电路,所述电子电路用于存储标识所述辅助模块的唯一标识符;
连接装置,所述连接装置与所述游戏机器人通信联接,所述连接装置包括:
处理器,所述处理器执行游戏机器人软件应用,所述游戏机器人软件应用被配置成向所述游戏机器人的所述主处理模块发送用于控制所述多个腿部模块的高级命令;以及
游戏控制器,所述游戏控制器用于将用户命令提交给所述游戏机器人软件应用;
其中,所述游戏机器人的所述主处理模块被配置成:
借助所述电气接口从所述能断开辅助模块获得所述唯一标识符,以及
将所述唯一标识符发送到在所述连接装置上执行的所述游戏机器人软件应用;
其中,所述游戏机器人软件应用被配置成:
基于所述唯一标识符,更新所述游戏机器人软件应用内的游戏环境中的所述游戏机器人的属性;
基于更新后的所述属性和从所述游戏控制器接收的用户命令来计算高级移动命令;以及
将所述高级移动命令发送到所述游戏机器人的所述主处理模块,
其中,所述主处理模块还被配置成基于接收的所述高级移动命令来计算用于控制所述多个腿部模块的所述原动机的低级命令。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562216284P | 2015-09-09 | 2015-09-09 | |
US201562216289P | 2015-09-09 | 2015-09-09 | |
US201562216282P | 2015-09-09 | 2015-09-09 | |
US62/216,289 | 2015-09-09 | ||
US62/216,282 | 2015-09-09 | ||
US62/216,284 | 2015-09-09 | ||
PCT/GB2016/052745 WO2017042551A1 (en) | 2015-09-09 | 2016-09-06 | Gaming robot |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108271365A CN108271365A (zh) | 2018-07-10 |
CN108271365B true CN108271365B (zh) | 2021-06-11 |
Family
ID=57124060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680052518.7A Active CN108271365B (zh) | 2015-09-09 | 2016-09-06 | 游戏机器人、***及控制游戏机器人的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10610792B2 (zh) |
EP (1) | EP3347110A1 (zh) |
JP (1) | JP2018534953A (zh) |
KR (1) | KR20180051593A (zh) |
CN (1) | CN108271365B (zh) |
WO (1) | WO2017042551A1 (zh) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9517561B2 (en) * | 2014-08-25 | 2016-12-13 | Google Inc. | Natural pitch and roll |
CN105288998B (zh) * | 2015-09-23 | 2019-01-08 | 腾讯科技(深圳)有限公司 | 智能硬件的交互方法及装置 |
US10337561B2 (en) * | 2016-12-15 | 2019-07-02 | Boston Dynamics, Inc. | Transmission with integrated overload protection for a legged robot |
US20180250815A1 (en) * | 2017-03-03 | 2018-09-06 | Anki, Inc. | Robot animation layering |
US11151992B2 (en) | 2017-04-06 | 2021-10-19 | AIBrain Corporation | Context aware interactive robot |
US10839017B2 (en) | 2017-04-06 | 2020-11-17 | AIBrain Corporation | Adaptive, interactive, and cognitive reasoner of an autonomous robotic system utilizing an advanced memory graph structure |
US10929759B2 (en) | 2017-04-06 | 2021-02-23 | AIBrain Corporation | Intelligent robot software platform |
US10810371B2 (en) | 2017-04-06 | 2020-10-20 | AIBrain Corporation | Adaptive, interactive, and cognitive reasoner of an autonomous robotic system |
US10963493B1 (en) * | 2017-04-06 | 2021-03-30 | AIBrain Corporation | Interactive game with robot system |
CN107185233A (zh) * | 2017-06-16 | 2017-09-22 | 上海喂啊网络科技有限公司 | 一种游戏设备及操控方法 |
JP6886393B2 (ja) * | 2017-11-24 | 2021-06-16 | 川崎重工業株式会社 | ロボットの股関節構造体 |
US10717019B2 (en) | 2018-03-09 | 2020-07-21 | Toyish Labs Inc. | Flexible construction unit, kit, and method for constructing a structure |
CN112423950B (zh) * | 2018-08-10 | 2024-06-14 | 川崎重工业株式会社 | 中介装置以及中介方法 |
KR102588875B1 (ko) * | 2018-08-10 | 2023-10-13 | 카와사키 주코교 카부시키 카이샤 | 중개 장치 및 이를 이용한 중개 방법 |
WO2020032207A1 (ja) * | 2018-08-10 | 2020-02-13 | 川崎重工業株式会社 | 情報処理装置、ロボット操作システム、及びロボット操作方法 |
JP7334239B2 (ja) * | 2018-09-10 | 2023-08-28 | ファナック アメリカ コーポレイション | 拡張現実及びデジタルツインのためのロボット較正 |
CN110869881A (zh) * | 2018-10-31 | 2020-03-06 | 深圳市大疆创新科技有限公司 | 虚拟交互的方法、实体机器人、显示终端及*** |
WO2020121189A1 (en) * | 2018-12-14 | 2020-06-18 | Building Blocks Learning Solutions Pvt. Ltd | Modular robotic system and methods for configuring robotic module |
CN109648586A (zh) * | 2019-01-18 | 2019-04-19 | 深圳市硬核智娱科技有限公司 | 一种联网实体游戏机器人自动追踪炮塔*** |
US11833441B2 (en) * | 2019-01-25 | 2023-12-05 | Sony Interactive Entertainment Inc. | Robot |
CN110065552A (zh) * | 2019-05-22 | 2019-07-30 | 贵州大学 | 一种语音控制四足机器人 |
TW202119148A (zh) * | 2019-11-14 | 2021-05-16 | 財團法人資訊工業策進會 | 機器人及校正其馬達的角速度的微控制單元及方法 |
US11498211B2 (en) * | 2019-12-30 | 2022-11-15 | Intrinsic Innovation Llc | Composability framework for robotic control system |
CN111469946B (zh) * | 2020-04-24 | 2021-09-14 | 上海宇航***工程研究所 | 一种具备爬行及滚动功能的仿生移动机器人 |
US20230390939A1 (en) * | 2020-10-30 | 2023-12-07 | Kawasaki Jukogyo Kabushiki Kaisha | Work system and work method |
US11074509B1 (en) | 2020-10-30 | 2021-07-27 | AstrumU, Inc. | Predictive learner score |
US11928607B2 (en) | 2020-10-30 | 2024-03-12 | AstrumU, Inc. | Predictive learner recommendation platform |
WO2023031155A1 (en) | 2021-08-30 | 2023-03-09 | Lego A/S | System and method for augmented reality for a moveable real-world object |
CN114474104B (zh) * | 2022-03-28 | 2024-04-26 | 许卫芳 | 一种隧道开发地质勘探用蜘蛛式机器人及其工作方法 |
US11847172B2 (en) | 2022-04-29 | 2023-12-19 | AstrumU, Inc. | Unified graph representation of skills and acumen |
CN117018639A (zh) * | 2023-08-18 | 2023-11-10 | 蔡泽銮 | 一种拼装机器人玩具 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0554126B2 (zh) * | 1984-12-28 | 1993-08-11 | Nintendo Co Ltd | |
EP0744199A2 (en) * | 1995-05-26 | 1996-11-27 | Kabushiki Kaisha Bandai | Game apparatus |
JP2000263479A (ja) * | 1999-03-12 | 2000-09-26 | Korea Advanced Inst Of Sci Technol | ヒト腕取付け型力再現機能を有するマスター装置 |
US6505098B1 (en) * | 1999-10-29 | 2003-01-07 | Sony Corporation | Robot system, robot device, and its cover |
CN1529880A (zh) * | 2001-06-25 | 2004-09-15 | ���ء����߸� | 带有力反馈和运动反馈的可编程关节模拟器 |
CN101125564A (zh) * | 2007-09-28 | 2008-02-20 | 北京航空航天大学 | 六轮/腿半球形外壳探测机器人 |
CN101219540A (zh) * | 2006-10-17 | 2008-07-16 | 双叶电子工业株式会社 | 机器人*** |
WO2011011084A1 (en) * | 2009-07-24 | 2011-01-27 | Modular Robotics Llc | Modular robotics |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4603853A (en) * | 1983-08-26 | 1986-08-05 | Satterthwaite Edward W | Modular frame structure and building system |
EP1103352A1 (en) * | 1999-01-18 | 2001-05-30 | Sony Corporation | Robot, main unit of robot, and coupling unit of robot |
US20030232649A1 (en) * | 2002-06-18 | 2003-12-18 | Gizis Alexander C.M. | Gaming system and method |
WO2013066901A1 (en) * | 2011-10-31 | 2013-05-10 | Modular Robotics Incorporated | Modular kinematic construction kit |
GB2532075A (en) | 2014-11-10 | 2016-05-11 | Lego As | System and method for toy recognition and detection based on convolutional neural networks |
JP2018528002A (ja) * | 2015-09-09 | 2018-09-27 | リーチ ロボティックス リミテッドReach Robotics Limited | モジュラーロボットの接続システム |
-
2016
- 2016-09-06 JP JP2018512579A patent/JP2018534953A/ja active Pending
- 2016-09-06 EP EP16779163.1A patent/EP3347110A1/en not_active Withdrawn
- 2016-09-06 WO PCT/GB2016/052745 patent/WO2017042551A1/en active Application Filing
- 2016-09-06 CN CN201680052518.7A patent/CN108271365B/zh active Active
- 2016-09-06 KR KR1020187009936A patent/KR20180051593A/ko unknown
-
2018
- 2018-03-09 US US15/917,329 patent/US10610792B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0554126B2 (zh) * | 1984-12-28 | 1993-08-11 | Nintendo Co Ltd | |
EP0744199A2 (en) * | 1995-05-26 | 1996-11-27 | Kabushiki Kaisha Bandai | Game apparatus |
JP2000263479A (ja) * | 1999-03-12 | 2000-09-26 | Korea Advanced Inst Of Sci Technol | ヒト腕取付け型力再現機能を有するマスター装置 |
US6505098B1 (en) * | 1999-10-29 | 2003-01-07 | Sony Corporation | Robot system, robot device, and its cover |
CN1529880A (zh) * | 2001-06-25 | 2004-09-15 | ���ء����߸� | 带有力反馈和运动反馈的可编程关节模拟器 |
CN101219540A (zh) * | 2006-10-17 | 2008-07-16 | 双叶电子工业株式会社 | 机器人*** |
CN101125564A (zh) * | 2007-09-28 | 2008-02-20 | 北京航空航天大学 | 六轮/腿半球形外壳探测机器人 |
WO2011011084A1 (en) * | 2009-07-24 | 2011-01-27 | Modular Robotics Llc | Modular robotics |
Non-Patent Citations (1)
Title |
---|
Learning about Complexity with Modular Robots;Eric Schweikardt等;《2008 Second IEEE International Conference on Digital Game and Intelligent Toy Enhanced Learning》;20081208;116-123 * |
Also Published As
Publication number | Publication date |
---|---|
CN108271365A (zh) | 2018-07-10 |
US20180256989A1 (en) | 2018-09-13 |
US10610792B2 (en) | 2020-04-07 |
JP2018534953A (ja) | 2018-11-29 |
KR20180051593A (ko) | 2018-05-16 |
WO2017042551A1 (en) | 2017-03-16 |
EP3347110A1 (en) | 2018-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108271365B (zh) | 游戏机器人、***及控制游戏机器人的方法 | |
US20180370025A1 (en) | Connection system for a modular robot | |
US10639544B2 (en) | Gaming system for modular toys | |
US10561950B2 (en) | Mutually attachable physical pieces of multiple states transforming digital characters and vehicles | |
US10885694B2 (en) | System and method for animating virtual characters | |
JP7095073B2 (ja) | パーソナルトレーナーとしてのロボット | |
KR102593974B1 (ko) | 표적 탐색 및 지오캐싱 이용을 위한 장치, 시스템, 및 방법 | |
US9526979B2 (en) | Storing state for physical modular toys | |
US20070132785A1 (en) | Platform for immersive gaming | |
US20150375128A1 (en) | Controlling physical toys using a physics engine | |
CN103717280A (zh) | 虚拟表现*** | |
US11498223B2 (en) | Apparatus control systems and method | |
US20240066412A1 (en) | Gaming controller with disc wheel and display screen | |
CN107638688A (zh) | 用于增强游戏体验的设备、***和方法 | |
KR20150114058A (ko) | 증강현실이 적용된 온/오프라인 3d 프린팅 로봇 전투 게임 시스템 및 이를 이용한 로봇 전투 게임 방법 | |
US20210217245A1 (en) | System and Method of Competitively Gaming in a Mixed Reality with Multiple Players | |
JP6722727B2 (ja) | 表示システム | |
KR20150116106A (ko) | 3d 프린팅 로봇의 로봇 육성 게임 시스템 및 이를 3d 프린팅 로봇의 로봇 육성 게임 방법 | |
WO2021181851A1 (ja) | 情報処理装置、方法、プログラム | |
ROSA | Expanding the mobile VR experience: walking detection and body tracking with worn sensors | |
Welch | Role-playing games as cooperative capstone design projects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210122 Address after: Bristol Applicant after: REACH ROBOTICS Ltd. Address before: Bristol Applicant before: Rui Chi Robot Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |