位置与通信系统及方法 【技术领域】
本发明涉及例如在玩具中使用的、用于发送和接收有关于与机身的相对方向、对机身的方位或者与机身的距离的信息的方法和系统。
背景技术
玩具机器人对于孩子、青少年和成人来讲是一种流行玩具。在与玩具机器人玩耍期间所获得的满足程度很大程度上取决于玩具机器人与其环境交互的能力。环境可以包括与机器人玩耍的人;不同类型的障碍,例如客厅中的家具;其他玩具机器人;以及诸如温度和光强之类的条件。
重复相同的、有限数目动作的玩具机器人将很快无法再引起用户的兴趣。因此,主要关注点在于增加与环境的交互能力。与环境的交互可以包括感测环境、作出判定、以及作出动作这些步骤。
实现与环境的高级交互这样一种目标的基本前提是用于感测环境的装置。在这一环境下,用于与例如相同或者相似类型或者种类的玩具机器人通信的装置以及用于确定此类其他玩具机器人地位置的装置都是很重要的。
机器人所具有的用于感测和动作的装置越先进,它就越可以与周围环境进行更复杂的交互作用,并将对环境中的复杂性作出更精密的反应。因此,复杂行为起源于用于感测、动作和通信的丰富装置。
第2000-79283号日本公开专利申请公开了一种循光移动(light-following)机身,其装备有用于接收从一发送机身发射的红外线。所述发送机身可以作为玩具球的形式出现,其外表面上具有等间隔的洞,由红外线发送器产生的信号被发送到它的外部。移动机身可以作为玩具汽车的形式出现,其中提供了控制和驱动机制,借此令移动机身在没有接收红外线信号的时候转弯,而在接收到红外信号的时候径直向前移动。
然而,这种现有技术系统仅仅涉及使机器人直接地对传感器输入或者从其他玩具机器人接收的简单通信信号作出反应。因此,这种现有技术的系统缺少以足够的精确度对机身进行定位、以便能够让移动机身作出更复杂的行为的能力。
因此,这种系统包含这样的缺点:玩具机器人无法在其他机器人之中以用户能够聪明感知的行为行驶。
第5,819,008号美国专利公开了一种传感器系统,用于防止在移动式机器人之间的以及在移动式机器人与其他障碍之间的碰撞。每一移动式机器人包括八个发送/接收部件,每个发送/接收部件被设置为组合的红外信号发送接收机,用于向不同的方向发送和以及从不同的方向接收传输数据。所述发送/接收部件被沿圆形的圆周以彼此45度的间隔放置,并被确定方向,以便向圆形外部发送或者从圆形外部接收。发送数据包括对于机器人唯一的识别信息以及方向信息,所述方向信息所采用的形式是用于识别八个发送器之一的信息。依据发送/接收部件的空间布局以及传输数据的属性,可以推断与远程机器人的方向以及远程机器人的方位。每一机器人进一步包括基于决策矩阵的控制部件,其根据与另一移动式机器人的方位以及所述另一机器人出现的方向,控制移动式机器人执行预定的防撞移动。所述控制部件还能够通过将接收到的自身唯一标识翻译为存在障碍来检测障碍。
尽管已经公开了可能发生在从机器人自身发射的或者从若干其他机器人发射的不同信号之间的干扰,并且尽管已经公开了用于检测干扰的方法,但是没有建议用于避免或者减少干扰的方法或者装置。这在现实情况中,特别是当在同一房间中出现超过一个机器人的时候或者当彼此接近的时候,极可能造成问题。
因为可以在大约1至1.2米半径内接收来自其他机器人的方位信息,所以是否接近是有疑问的,并因此将在机器人之间发生激励移动模式。此外,由于简单的传感器系统,需要为机器人的移动提供更多空间。
除了所述传感器系统的简单性以及缺陷之外,因为使用了大量的传感器,也就是八个发送器/接收器的两倍,所以生产这样一种传感器系统的成本也将是相对高的。尤其是对于电子玩具机器人来说,这是很高的数目,因为电子玩具机器人一般都会受到高价的拖累。
【发明内容】
通过一种用于发送与机器人方位有关的信息的系统解决了上述及其他问题,所述系统包括:在机器人周围以及与机器人相关的预方位置向多个区域发射信号的装置,其中所述信号携带专用于机器人周围的单独区域的信息;其中所述专用于单独区域的信息被时分复用至多个时隙(timeslot)。
借此信号之间的干扰被避免,或者至少被减少为最小值。因为并不是所有区域都被同时地辐射到,因此,被发射至特定区域之外的其他区域、并被远程机身反射回的信号,不太可能与直接发射至该特定区域的信号发生干扰。借此,增强了系统的性能。
最好是,将专用于单独区域的信息作为被时间和空间划分为一个或多个区域的时分复用信号来发射。
当所述装置被设置为以具有相互距离以及相互偏角的方式安装的单独发射器(202,203,……,207)的时候,所述信号可以被发射到没有机械移动部分的空间区域。对于玩具机器人,所述距离最好是大约为20至40毫米或者小于100毫米。
发射器最好是被设置以用于创建一个空间,在所述空间内,可以检测到用于携带专用于该区域的信息的信号的规定最小强度级。借此,当所述规定最小强度级对应于接收器中的一阈值的时候,接收器可以通过确定所接收的信号是否具有超过所述阈值的信号电平、来检测一个区域中的存在物。这提供了一种用于确定区域中是否存在该机器人的简单、并具有成本吸引力的解决方案。
最好为,发射器被设置以用于创建一区域,在该区域内,可以测量用于第一信号和第二信号的规定最小强度级,其中第一和第二信号携带专用于各区域的信息,从而创建第三区域作为两个区域的公共空间。因此,在其他都相同的情况下,为每两个发送器创建一个附加区域。这增加了发送系统的分辩率,也就是说,对于特定间隔角,可以建立更多的区域或者扇区。应被注意的是,假定方位被确定为在区域中存在或者不存在,并且因此将所述方位提供为离散值。
当专用于第三区域的信息至少由第一信号部分和第二信号部分组成的时候,通过在长度足以接收第三区域的专用信息的时间间隔内检测信号,创建第三区域的专用信息。该长度可以大约等于传输第一和第二信号的专用信息时的时间间隔。
最好为,专用于第三区域的信息在时间上扩展超过一个时隙(t3,t4;t6,t7)。
当控制至少一个发射器向其他机器人发送具有与该机器人有关信息的报文信号的时候,其他机器人可以自行接收该信息,并依照它们自己的规则翻译该信息。随后通常是作为计算机程序实现的这些规则可以实现一种行为。
当第一机器人被配置为在开始信号传输以前等待可以检测到通信静默的情况的时候,减少了增加信号间干扰的风险。
最好为,所述第一机器人被设置为以充分紧密的序列发送携带专用于单独区域的信息的信号,以避免在第一机器人附近的其他类似的机器人能够检测到存在通信静默的情况。因此,每一机器人可以完成一个提供/发射方位信息的周期,并且在该周期不被其他机器人打扰。因为典型情况下,方位-发送机器人不知道这些信号中的哪些实际被用来确定该机器人的方位,所以在此确保发送了一个完整的方位信息的周期。在一适宜的实施例中,一周期包括专用于一区域的所有信号。
本发明还涉及一种用于接收与机器人方位有关的信息的系统,所述系统包括:用于接收携带专用于机器人周围的以及与机器人相关的多个区域之一的信息的信号的装置;以及用于提取专用于一单独区域的信息并将该信息转换为表示机器人方位的信息的装置;其中,通过确定是否可以在至少两个连续的时隙内接收两个信号来推断机器人的方位,其中所述两个信号中的每一个均携带专用于机器人周围的以及与机器人相关的多个区域之一的信息;以及,在确定的情况下,组合所述至少两个信号来确定机器人的方位。
如果不能在至少两个连续时隙内接收两个各自携带专用于机器人周围的以及与机器人相关的多个区域之一的信息的信号,则基于在所述两个连续的时隙中的第一个时隙中接收的信号确定机器人的方位。这样一种情况指示出所述机器人的方位是仅仅一个信号有效时的情况,并因此应该据此解释所述方位。也就是说,所述方位对应于在不是由两个或更多重叠区域确定的区域中的存在物。
在一最佳实施例中,所述系统进一步包括程序装置,用于响应于所接收的表示另一机器人位置的信号控制一机器人的物理动作。这允许通过登记/识别远程机器人的动作模式,为改进的机器人之间的移动策略和/或机器人之间的通信进行编程。
在一最佳实施例中,本发明被包含在一个包括玩具机器人的玩具组合中。当所述玩具部件包括用于与在玩具建筑元件上的互补耦合装置互连的耦合装置的时候,可以操纵该玩具部件,例如为该玩具提供不同类型的移动方式。如第5,645,463号美国专利中所公开的那样,来具体实现所述耦合装置和互补耦合装置,所述第5,645,463号美国专利被授权给Interlego AG,其中公开了多种连接装置,例如用于支承轴的孔洞,连接螺栓和旋塞,以及用于将构件锁扣互连的夹具。
在现有技术中存在一个问题,即仅仅可以使用有限的用于在目的机身或者其他移动式机器人之间导航/操纵机器人的信息。缺少足够的此类信息可能导致粗糙的机器人动作模式,并且与使用更完整或者更适当的与目的机身或者其他机器人的位置有关的信息时所需要的空间相比,缺少足够的此类信息可能导致移动式机器人需要更多空间来演示机器人之间的特定移动交互。
依照一种用于发送有关该系统和一机器人之间距离的信息的系统,这一问题及其他问题被解决了,所述系统包括用于向机器人的周围发射信号的装置;其中所述装置被控制以相应的功率级发射信号,在这些功率级上,所述信号包括用于识别该特定功率级的信息。
结果,信息被发送到其他机器人,用于确定与发送机器人的距离。根据相应功率级的数目、以离散值来提供该距离,在所述相应功率级上、提供用于识别该特定功率级的信息。在一最佳实施例中,提供了三个功率级,但是也可以提供两个、四个、五个,...,十个或者四十个功率级。所述功率级对应于可以在其中检测到信号以具有超过规定阈值的信号电平的不同的最大范围。这些范围可用于将以特定功率级发送的、并具有用于识别所述特定功率级的信息的信号,翻译为相应的距离间隔。然而,没有必要以它的公制尺寸例如米或者厘米来获知该间隔。一般来讲,应被注意的是,可以依据距离跨度的离散分辨率将所述距离翻译为距离指标。
最好为,所述功率级是被作为非线性功率级分配的离散功率级。借此,可以用比其他范围更多的功率级表示要求较高距离分辨率的范围。这从而限制了所需要的功率级数目。
在发送用于识别特定功率级的信息的时间间隔内,信号或者信号部分的功率级被适当地混合。借此,可以使用不同的时序模式确定功率级并因此确定距离。
当所述信号均包括一组比特时,其中以预定的、但是混合的序列产生比特,可以使用简单的比特组合匹配来确定距离或者距离指标。快速并且简单的逻辑电路可以实现这种比特组合匹配。
当所述系统包括用于在机器人周围以及与机器人相关的预方位置向多个区域发射信号的装置的时候,既提供了方位又提供了距离信息,其中所述信号携带专用于机器人周围的单独区域的信息。
最好为,控制至少一个发射器向其他机器人发送具有与所述机器人有关的信息的报文信号。借此,可以使用一个公共的系统用于同时发送包括摇控信号在内的位置信息和机器人之间信息。
最好为,第一机器人被设置为等待可以在信号传输开始以前检测到通信静默的情况。这减少了破坏机器人之间通信质量的风险。
最好为,所述第一机器人被设置为以相应功率级、以充分紧密的序列发送信号,以避免在所述第一机器人附近的其他类似机器人能够检测到存在通信静默的情况。
此外,本发明涉及一种系统,用于接收有关所述系统和发送器之间距离的信息,所述系统包括:用于接收信号的装置,所述信号具有用于识别所述信号被发送时的特定功率级的信息;以及用于将该信息转换为表示所述系统与发送所述信号的发送器之间的距离的信息。
由此,可以通过收集或接收相对于发送信号、等待所述发送信号的反射到达并接收所述信号的信息,可以简单地确定距离。从而提供了一种具有成本吸引力的解决方案。
最好为,所述系统包括用于基于规定阈值将接收信号转换为二进制信号的装置。这允许由微处理器采取进一步的适宜处理。
最好为,提供用于通过对将以二进制信号表示接收序列的位序列进行解码来将距离确定为离散值的装置。
最好为,以数字值来提供所述距离。
最好为,连续的数字值序列表示非线性分布的距离。
此外,本发明涉及一种用于确定朝向机器人方向的系统,包括:用于从远程机器人接收信号、并通过确定由多个接收器中的哪一个接收了信号来确定朝向所述远程机器人的方向的装置;其中方向被确定为两个或更多接收器可以从之接收信号的方向。
由此,可以确定大于接收器数目的若干方向。因为对于方向特定的需求数目,只需要少量接收器,借此以相对低的价格提供了相对高的方向分辩率。
最好为,确定方向的前提是接收器可以同时接收信号。在这里,假定当与用于确定方向的信号的持续时间相比,该信号到达第一接收器和第二接收器的时差很小(小于1/100)。
【附图说明】
将与最佳实施例结合并参照附图充分解释本发明,其中:
图1a示出两个机器人以及它们的空间干扰的俯视图;
图1b示出一个机器人以及通过发射信号的空间辐照度特性定义的区域的俯视图;
图1c示出一个机器人以及通过接收信号的空间灵敏度特性定义的区域的俯视图;
图1d示出各在其它辐照度/灵敏度区域之一中的两个机器人的俯视图;
图1e示出一个机器人以及通过以不同功率级发射的信号的空间辐照度特征定义的区域的俯视图;
图2示出一玩具机器人,其具有发射器,用于发射该机器人周围的若干区域中的每一个所特有的信号;
图3示出一机器人,其具有接收器,用于检测从不同的并且可确定的方向向该机器人发射的信号;
图4示出了一机器人上安装的四个发射器的辐照度曲线;
图5a示出在以两个不同的功率级发送ping信号时使用的功率级;
图5b示出在以三个不同的功率级发送ping信号时使用的功率级;
图6示出用于发送ping信号的状态事件图,所述ping信号是四个发送器中的每一个所特有的,并以低功率和中功率级发送;
图7示出以高功率级发送ping信号的状态事件图;
图8示出以低、中和高功率级发送ping信号的状态事件图,所述ping信号包括用于与机器人之间信息一起能够确定方位和距离的信息;
图9示出用于发送ping信号和报文的方框图;
图10示出一机器人上安装的两个接收器的灵敏度曲线;
图11示出用于接收ping信号和报文信号的系统的方框图;
图12示出机器人控制系统的方框图;
图13示出部分封闭空间中的三个机器人;
图14示出玩具机器人的方框图;
图15示出一玩具机器人,其具有发射器,用于发射该机器人周围的若干区域中的每一个所特有的信号;
图16a示出在由一个机器人以三个不同功率级发送ping信号时使用的功率级;
图16b-e示出在通过一个机器人的不同二极管发射器发送ping信号时使用的功率级;以及
图17示出用于发送ping信号和报文的方框图。
【具体实施方式】
图1a示出第一机器人和第二机器人的俯视图,其中指示出了两个机器人的相对位置、距离和方位。为了描述这两个机器人之间的这种空间关系,第二机器人102位于x和y轴坐标系的原点。所述第一机器人101被置于所述第二机器人102沿相对于所述第二机器人的方位的方向α与所述第二机器人102的距离为d的位置上。所述第一机器人相对于所述第二机器人的方位(即与垂直轴103的角位移)可被测量为φ。
如果所述第二机器人102知道d,α和φ,则所述第二机器人102可以响应所述第一机器人101来进行导航。这种获知能被用作用于实现一种类型的机器人之间行为的系统的输入。可以通过机器人位置系统来保持对d、α和φ的获知。可以通过指示间隔、即距离或者间隔角的各类型的离散信号来提供d、α和φ。
依照本发明,并将在下文中更充分地说明,对d、a或者φ的获知是通过向所述第一机器人周围的各封闭域发射信号来实现的,在所述各封闭域中,各自的信号携带空间域识别信息。当可以查出空间域识别信息以及各自的域的相关值的时候,则所述第二机器人能够确定d、α和/或φ。
所发射的信号可以是红外线信号、可见光信号、超声波信号、射频信号等等形式。
应被注意的是,在下文中,上面提及的域(field)被表示为区域(zone)。
图1b示出一个机器人以及通过发射信号的空间辐照度特征定义的区域的俯视图。所述机器人104能够将信号TZ1,TZ12,TZ2,TZ23,TZ3,TZ34,TZ4和TZ14发送到由四个发射器(没有示出)的辐照度特征定义的各区域里。所述发射器被设置为具有用于建立机器人104周围相互重叠的辐照度区域的相互距离和相互偏角。当可以彼此之间唯一地识别出所述信号TZ1,TZ12,TZ2,TZ23,TZ3,TZ34,TZ4和TZ14的时候并且当可以接收信号的时候,可以推断接收所述信号的区域。将更详细地说明这一点。
图1c示出一个机器人以及通过接收信号的空间灵敏度特性定义的区域的俯视图。典型情况下,所述机器人104也能接收如上所述类型的信号RZ1,RZ12和RZ2。所述接收器也被设置为具有用于建立机器人104周围相互重叠的接收区域的相互距离和相互偏角。通过获知相应接收器或者相应诸接收器的接收区域的位置,可以确定信号被接收的方向。同样,将更详细地说明这一点。
图1d示出各在其它辐照度/灵敏度区域之一中的两个机器人的俯视图。机器人106使用建立接收区域RZ1的右前方接收器接收信号。从而,可以推断机器人105的方向位于右前方的方向。此外,如果信号TZ1被识别出并被映射到与机器人105相关的空间区域位置,则可以在机器人106中推断机器人105的方位。从而,可以在机器人106中推断与机器人105所成的方向以及机器人105的方位。为此目的,机器人105必须发射上述类型的信号,而机器人106必须能够接收该信号,并具有机器人105的辐照度区域信息。典型情况下,将在单个机器人中同时包含所述发送和接收系统。
图1e示出一个机器人以及通过以不同功率级发射的信号的空间辐照度特征定义的区域的俯视图。机器人107能够发射在图1b中示出的特定区域信号,此外,所述特定区域信号是以不同的功率级发射的。对于每一功率级,信号包括用于识别该功率级的信息。从而,机器人107发射具有专用于区域(Z1,Z2,...)的信息以及到机器人107的距离间隔的信息。距离间隔是由两个辐照度曲线例如(Z1;P2)至(Z1;P3)之间空间定义的。
如果机器人108可以检测到用于识别区域Z1的信息以及用于识别功率级P4而不是功率级P3、P2和P1的信息,那么机器人108可以推断它位于(Z1;P4)和(Z1;P3)之间的空间内。曲线(例如(Z1;P4)和(Z1;P3))之间距离的实际大小是通过用于接收该信号的接收器的灵敏度以及该信号被发射时所用功率级来确定的。
图2示出一玩具机器人,其具有发射器,用于发射该机器人周围的若干区域中的每一个所特有的信号。该机器人被以这样的方位来显示:该机器人的前面朝向上方。
该机器人201包括六个红外线发射器202,203,204,205,206和207,每一个分别发射红外线信号FR,F,FL,BL,B和BR。最好为,所述诸发射器被设置为以940nm和960nm之间的波长发射光线。
所述红外线发射器202,203,204,205,206和207被以不同位置和不同角度安装在机器人上,用于将红外线发射到该机器人周围的区域208,209,210,211,212和213里。区域210和211彼此重叠,以进一步建立区域214;类似地,区域213和208重叠以建立区域215。这些区域是通过调节辐射光圈(即通过一个用于将发射器的辐射限制到所要求的空间区域中的遮蔽罩(shield))以及上述的各发射器的位置和角度以及由发射器发射的红外线功率定义的。
利用对应于这些红外线发射器中的唯一的一个、并从而对应于该机器人周围区域中的各区域的信息,对每一红外信号F、FL、BL、B、BR和FR进行编码。
该红外信号最好被设置为时分复用信号,其中对于红外线发射器唯一的信息被设置在相互不重叠的时隙中。以下在表1中说明这一点。最好为,所述时分复用信号被以紧密序列发送,以便借此避免其他机器人能够在由时隙t1至t7定义的期间内检测到通信静默。 区域 时隙 t1 t2 t3 t4 t5 t6 t7 208 Fr 0 0 0 0 0 FR 209 0 F 0 0 0 0 0 210 0 0 FL 0 0 0 0 214* 0 0 FL BL 0 0 0 =L 211 0 0 0 BL 0 0 0 212 0 0 0 0 B 0 0 213 0 0 0 0 0 BR 0 215* FR 0 0 0 0 BR FR =R
表1
表1示出信号FR、F,FL,BL,B和BR的时分复用。其中示出,信号FL和BL两个都可在区域214中被检测出。同样地,信号BR和FR两个都可在区域215中被检测出。
为了能够基于这些信号来确定检测器位于这些区域中的哪一个中,为检测器系统提供了区域位置和各自信号之间的关系的信息。
然而,为了确定检测器位于哪一重叠区域中,可以令检测器系统能够在六个时隙期间内检测至少两个连续的信号(BR,FR;FL,BL)。从而,区域215可以被识别为在其中信号FR和BR可被作为信号R相继检测出的区域。同样地,区域214可以被识别为在其中信号FL和BL可被作为信号L相继检测出的区域。尽管优选了该原理,但是也可以使用其他检测原理。
因此,可以确定与朝向机器人201的红外线检测器相关的机器人201的方位。在一最佳实施例中,这样一种检测器被安装在另一机器人上,借此为其提供用于检测机器人201的方位的装置。
在所示出的情况中,一红外线检测器216位于区域212中,用于接收信号B,然后该信号可通过表1被译码为存在于区域212中。
如果以大约顺时针方向90°改变机器人201的方位,则围绕其中央纵轴旋转该机器人,检测器将存在于区域215中。可以在同时检测到信号FR和BR两者的时候以及在知道信号FR是从右前方发射器发射出的、而信号BR是从右后方发射器发射出的时候,可以确定这种存在。
可以借助于一个表(例如表1)对所接收的信号进行译码,该表具有信号类型以及相对于机器人201的相应区域位置的相对值。所述信号类型被用作所述表格的一个条目,从而给出对应区域位置作为结果。
因为信号是作为时分复用信号发送的(如上述表1中示出的),所以接收失真信号的可能性被减少。如果没有采用时分复用,则直接发送给一特定区域中的接收器的信号可能会因发送到另一区域、但被一物体(例如墙壁)反射的信号而失真。这将破坏该定位系统的性能。
图3示出一机器人,其具有接收器,用于检测从不同的并且可确定的方向、向该机器人发射的信号。机器人301包括三个红外线接收器305,306和307,每一个分别与区域302,303和304相关联,所述区域表示所述接收器能够在其中检测向该接收器发射的、具有超过规定阈值电平的功率级的红外线的区域。
所述红外线接收器305,306和307被以不同的位置和不同的角度安装在所述机器人上。所述区域是通过设置各接收器的位置、方位、红外线灵敏度和/或光线流入光圈来定义的。
从而,可以确定向机器人301的前面发射红外线的发射器308所出现的方向。所述方向是作为指示从一个或多个接收器305,306和/或307检测到红外信号的响应来确定的。
在所示出的情况中,发射器308位于区域307中。因此,机器人301正在从接收器307接收一个用于指示区域304中存在一发射器、并从而指示相对于机器人301的左前方方向存在发射器的响应。
以下的表2示出如何对机器人301中接收的信号进行译码以便为机器人201获取方位和方向信息的实例。
表2
表2中的第一实例示出检测器306接收信号B。利用获知发射信号和各自区域之间的关系,可以通过简单地识别已经接收该信号B的检测器——在该实例中是检测器306——来确定与机器人201所成方向。该方向被表示为“中-前”。利用对应于北的大写字母N来表示机器人的方位。在第二和第三实例中,分别是以对应于东的大写字母E以及以对应于南的大写字母S来表示方位的。
图4示出一机器人上安装的四个发射器的辐照度曲线。在放大的视图中,在辐照度曲线下方示出了具有四个发射器402,403,404和405的机器人401。在所述放大的视图中,进一步示出了一个发射器413;该发射器被设置为以高功率级向该机器人周围发射信号。因为信号可能被诸如墙壁、门等物体反射,所以没有示出相应的辐照度曲线——代之以指示该辐照度的大写字母H。
该辐照度曲线表示每一发射器被控制以两种不同的功率级发射红外线;在下文中,这两种功率级将被称为低功率级(首字“L”)和中功率级(首字“M”)。
相对较大的辐照度曲线406,407,408和414表示当这些发送器之一以中功率级发送时,接收器能够在其中检测到朝着该接收器方向发射的红外线信号MBR、MFR、MFL和MBL的区域。同样地,相对较小的辐照度曲线409,410,411和412表示当这些发送器之一以低功率级发送时,接收器能够在其中检测到朝着该接收器方向发射的红外线信号LBR、LFR、LFL和LBL的区域。所述相对较大的曲线406,407,408和414具有大约120-160厘米的直径。所述相对较小的曲线409,410,411和412具有大约30-40厘米的直径。应当可以在通常大约6×6米的客厅内检测到高功率的ping信号。
因此,发射器402,403,404和405被设置为以中功率级(M)操作的时候,它们建立彼此部分重叠的区域406,407,408和409。此外,发射器402,403,404和405被设置为以低功率级(L)操作的时候,它们建立彼此部分重叠的区域410,411,412和413。这使得可以更精确地测定机器人401的方位。
发射器402,403,404和405被设置为依照表1中所示原理发射相互不重叠的时分复用信号。然而,为了仅仅与一个功率级相对照来管理这两种功率级——低功率和中功率,分配给一个发射器的时隙可以被分成两个子隙。这随后给发送定位系统带来额外的负荷。
当由各自的发送器以中功率级发送的信号在第一子时隙中包含对于该发送器唯一的信息的时候,这一问题得到了解决。在后继的、较短的子时隙中,以低功率级发送包含用于区分中功率级区域与低功率级区域的信息的信号。
IR 发射器 区域 时隙 t1 t2 t3,t4 t5 t1a t1b t2a t2b - t7a t7b 402 406 MF R 0 0 0 - - 410 MF R LF R 0 0 - - 403 407 0 MF L 0 - 411 0 MF LLFL 0 -
表3
表3示出分别由发送器402和403发射的信号MFR、LFR和MFL、LFL的时分复用。表中省略了由发送器404和405发射的信号。
在下文中,红外线发射器402,403,404和405以及它们是以哪一功率级(低功率或者中功率)操作的,是与信号相关联的。 IR发射器参考编号 功率级 信号 描述 302 低 LFR 右前发射器 303 低 LFL 左前发射器 305 低 LBR 右后发射器 304 低 LBL 左后发射器 302 中 MFR 右前发射器 303 中 MFL 左前发射器 305 中 MBR 右后发射器 304 中 MBL 左后发射器
表4
表4示出IR发射器之间的关系,它们的位置,它们发射的信号以及这些信号是以哪一功率级发射的。
为了让一个发送机器人对方位信息编码并将信息发送到诸区域里以用于在其他接收机器人中进行随后的译码和翻译,使用了一种网络协议。该网络协议基于ping信号和报文信号。将在下文中说明这些信号。
图5a示出被用来从四个分别的发射器发送ping信号的功率级。功率级P被显示为在离散的功率级L、M和H时的时间t的函数。
以紧密序列501发送用于四个发射器中每一个的ping信号MFR,LFR;MFL,LFL;MBL,LBL;MBR,LBR。在一周期中以周期时间TLM发送序列501,在紧密序列501之间保留间歇502。该间歇用来允许机器人发送类似的信号和/或用于发送其他信息——例如报文信号。
来自一个发射器的ping信号包含以中功率(M)发送的三个字节,后面是以低功率(L)发送的一个字节。最初的这三个字节被表示为:Init、ID和CRC。最后字节是以低功率重发的CRC字节。
使用表4中表示法的低/中ping信号可以被写作:
MFRinit,MFRID,MFRCRC,LFRCRC
其中下标指示出字节(Init,ID和CRC)的类型。
这些字节的内容可以从一次传输到下一次传输发生改变。在时隙t1a发送最初的三个字节;在时隙t1b发送最后字节。类似地,时隙t2-t3可以被分成a和b子时隙。在表1中示出了相对于这些ping信号和时隙的区域空间关系。
图5b示出在以三个不同功率级发送ping信号时使用的功率级。这些功率级P被显示为时间t的函数。除以低功率和中功率发送的ping信号之外,还发送了高功率ping信号。以重复时间TH为每四个低/中功率ping信号发送高功率ping信号;即,TH=4*TLM
所述高功率ping信号被以充分高的功率发送,以便由可能位于界限分明的区域之外的检测器(在其他机器人上)检测出。
高功率ping信号包含八个字节:INIT,ping-ID,全局网ID(三个字节),报文(两个字节)和CRC。所述CRC字节是循环冗余校验字节。所述INIT字节包含用于将随后的字节序列确定为高功率ping信号的信息。所述ping-ID和全局网ID字节分别包含用于在最多28个机器人或者224个机器人的群体内识别发送该高功率ping信号的机器人的信息。全局网ID字节还可以用于经由因特网唯一地识别机器人通信。所述报文字节用于广播报文。这种广播报文可以包含实际移动的信息,例如指示该机器人将快速向前移动、向右转等等。
图6示出用于发送ping信号的状态机的状态事件图,所述ping信号是四个发送器中的每一个所特有的,并以低和中功率级发送。所述状态机601具有起始状态602,无条件转移(unconditionaltransition)将活动状态从该起始状态602设置为状态603。状态603和状态605、606及607分别被用来选择发射器402,403,404和405之一。在所述状态机中,这是通过将变量Q设定等于‘FR′,‘FL′,‘BR′或者‘BL′来执行的。这些状态中的每一个具有到子机604的无条件转移。所述子机604具有起始状态609,停止状态614和分别用于以中或者低功率级发送字节INIT、ID、CRC和LCRC的四个中间状态610,611,612及613。在所述中间状态中,从存储器(没有示出)读出相应的字节。在子机中,这些状态通过无条件状态转移相互连接。当到达停止状态的时候,完成了发送一个ping序列501的任务。
图7示出用于以大功率级发送ping信号的状态机的状态事件图。所述状态机701包含起始状态702,停止状态710,和中间状态703,704,705,706,707,708及709。在中间状态中,首先,通过设定Q=C来选择中央发射器413;其次,从存储器(没有示出)读出字节B1、B2、B3、B4、B5和B6,并由发射器413以高功率级连续地发送。
图8示出用于以低、中和高功率级发送ping信号的状态事件机的状态事件图,所述ping信号包括用于与机器人之间信息一起能够确定方位和距离的信息。所述状态机801使用机601和701来发送图5b中所示的ping信号,并且还可以发送报文信号。
所述状态机801具有起始状态802和停止状态808。当首次起动的时候,状态机用来实时持续或者实时拟伪,以便确保所发送的ping信号的适当计时。然而,如果电源关闭或者掉落等,所述机可以在机器人转为等待模式的时候转到停止状态808。
状态机将在起始状态802之后无条件地并且立即地转到状态803,在该状态803变量P被设定等于0。该变量被用来计算在两个连续的高功率ping信号之间以低/中功率级发送的ping信号的数目。到状态804的无条件转移将状态机带入等待状态,用于等待与其他机器人通信的ping和报文信号中的间歇,即通信静默,这由布尔变量S表示。只要接收了ping或者报文信号,则S是假,所述机将停留在等待状态804中。当S从假切换到真,则检测到间歇。通信静默可以被定义为没有接收到信号或者所接收的信号低于规定的或者自适应的振幅阈值。对于通信静默的进一步的条件,可以是在一规定时间间隔内接收的信号低于规定的或者自适应的振幅阈值,例如相应于2,21/2,3,31/2,4比特的持续时间。
使用在一时间间隔(例如2比特的时间间隔)内定义的通信静默标准,先前提及的“紧密序列”可以被定义为没有通信静默发生的序列。
此外,如果P等于0,使用布尔条件的(S&(P=0))的条件转移首先令状态机进入用于发送高功率ping信号的状态机701,然后经由状态805进入用于发送低/中功率ping报文的机601。由此,发送ping信号的紧密序列504。
当发送紧密序列504的时候,变量P在状态806中值加1。如果设定了报文标记m,则报文队列(没有示出,被作为报文信号发送)中的报文作为紧密序列504的尾随序列(trailing sequence)。当发送这些报文的时候,如果有的话,则状态机恢复到状态806,等待从状态805开始的计时过去。当计时过去的时候,TLM为真,状态机进入状态机804,等待通信静默。现在,P不等于0,所以当检测到静默的时候(即S为真),一次转移将该机直接转到状态601,用以发送低/中功率级的ping信号501。随后,P在状态806中增加1。低/中功率级ping信号的发送被持续,直到发送四个低/中功率级ping信号(即P小于5)为止。当已经发送了四个低/中功率级ping信号的时候,将发送一个高功率ping信号,并且该过程重新继续。
图9示出用于发送ping信号和报文信号的通信系统的方框图。系统901分别经由ping信号缓冲器905和报文缓冲器904接收ping信号(例如字节Init、ID和CRC)和报文信号。所述ping和报文信号是由一个外部系统(没有示出)提供的。因此所述通信系统901能从该外部系统接收信息,而该外部系统随后可以异步地操作所述通信系统。
控制器902被设置以用于执行状态机801中以及状态机601和701中的指令。
通过指定缓冲器中的地址来读出缓冲器904和905中的数据。然后通过选择器903,所述被寻址的数据被经由放大器907、908、909、910和911送到一个或多个红外线发送器402、403、404、405和413。所述选择器903由控制器902控制。由发射器402,403,404和405发射的功率级是通过调节放大器907,908,909和910的放大进行控制的。提供给控制器的信号S是一个指示是否存在通信静默的二进制信号,所述通信静默就是没有能检测出其他可能干扰待发射信号的信号。
借此公开了如图4和5a、5b中所示的用于发射信号的系统。此外,所述系统可以发送常规通信信号即报文信号。
图10示出一机器人上安装的两个接收器的灵敏度曲线。所述曲线1004定义了可以由接收器1002检测到、以中功率级朝着接收器1002的方向发送的信号的区域。所述曲线1006定义了可以由接收器1002检测到、以低功率级朝着接收器1002的方向发送的信号的较小区域。
曲线1005和1007定义了可以由接收器检测到、分别以中和低功率级朝着接收器1003的方向发送的信号的区域。一般来讲,上面提及的区域被表示为接收区域。可以由接收器检测到、以高功率朝着接收器1003的方向发送的信号的区域更加分散;因此使用虚线曲线1008图示出这种区域。
因为发射器402,403,404和405发送具有表示发送信号时使用的功率级的信息的信号,所以可以根据区域H、ML MC、MR、LL、LCL、LC、LCR和LR确定与另一机器人出现的位置所成的方向以及距离。
第一机器人上的两个接收器1002和1003之一或者两者可以接收由第二机器人上的发射器402,403,404,405和413发射的信号。
因此,可以使用一种简单的发送/接收系统获得对距离、方向和方位的高鉴别能力。
对方向和距离译码
在下文中,将更加充分地说明怎样对方向和距离信息译码。假定:
如果一个接收器收到高功率ping信号,那么其他接收器也是这样;
如果一个接收器收到低功率ping信号,那么它同样收到中和高功率声脉冲;
如果一个接收器收到中功率ping信号,那么它同样收到高功率ping信号。
采用这样的表示法:L用于低功率ping信号,M用于中功率ping信号,以及H用于高功率ping信号;可以依照以下的表5,基于接收信号确定存在一个区域:
左接收器 (1003) 右接收器 (1002) 区域 没有信号 没有信号 没有机器人存在 H H H H-M H ML H-M H-M MC H H-M MR H-M-L H LL H-M-L H-M LCL H-M-L H-M-L LC H-M H-M-L LCR H H-M-L LR
表5
表5示出所发送的ping信号中的编码功率级信息是如何能够被译码为存在于左列中的十个区域之一的,如果有的话。随后,一个区域还表示方向和距离。
对方位译码
为了对方位译码,可以使用以下的信息表6和7。
对于中距离: 接收的ping信号 区域 MFL MFR MBR MBL LFL LFR LBR LBL × × ML × MFL × × MF × MFR × × MR × MBR × × MB × MBL
表6
表6示出所接收的中功率ping信号是如何与区域相关的。
对于低距离: 接收的ping信号 区域 MFL MFR MBR MBL LFL LFR LBR LBL × × × LLB × × × × LL × × × LLF × × LFL × × × LFFL × × × × LF × × × LFFR × × LFR × × × LRF × × × × LR × × × LRB × × LBR × × × LBB R × × × × LB × × × LBBL × × LBL
表7
表7示出所接收的低和中功率ping信号是如何与区域相关的。
图11示出用于接收ping信号和报文信号的系统的方框图。所述系统1101包含两个红外线接收器1102和1103,用于接收机器人之间信号(特别是ping信号和报文信号)和遥控信号。
响应信号的到达,分别通过数据获取装置1110和1109将接收器1102和1103检测的信号提供作为数字数据。来自于数据获取装置的数字数据分别被缓存在先进先出缓冲器L-缓冲器1108和R-缓冲器1107中。来自L缓冲器和R缓冲器的数据被移送到具有大容量的缓冲器1104中,用于在传输控制系统(没有示出)期间调节数据。
通过加法器1106将来自数据获取装置1109和1110的信号相加,经由Schmitt-触发器1105提供了用于指示是否朝着接收器1102和1103的方向发射了红外信号的二进制信号S。借此,所述信号指示是否存在通信静默。
可以控制所述系统从一个遥控装置(没有示出)接收信号。在该情况下,提供给所述缓冲器的数据被翻译为遥控指令。借此,接收器1102和1103可以被用来接收ping/报文信号以及遥控指令。
图12示出一种机器人控制系统的方框图。所述控制系统1201被设置为控制可以展现某些类型行为的机器人。所述控制系统1201包含中央处理器(CPU)1203,存储器1202和输入/输出接口1 204。
所述输入/输出接口1204包含用于接收机器人位置信息的接口(RPS/Rx)1211,用于发射机器人位置信息的接口(RPS/Tx)1212,用于为操纵装置(没有示出)提供控制信号的动作接口1209,用于经由换能器(没有示出)感测不同的物理效应的感测接口1210,以及用于与外部设备通信的链接接口1213。
最好为,所述接 RPS/Rx 1211如图11中所示那样具体实现;而接口RPS/Tx如图9中所示那样具体实现。采用所述链接接口1213,以便允许与外部设备例如个人电脑、PDA或者其他类型电子数据源/数据用户设备通信。该通信可以包含用户创建脚本程序和/或固件程序的程序下载/上传。所述接口可以具有任何接口类型,包含电线/连接器类型(例如RS323);IR类型(例如IrDa);射频类型(例如蓝牙);等等。
以数字输出端口和数模转换器的组合方式实现用于为操纵装置(没有示出)提供控制信号的动作接口1209。这些端口被用来控制电动机、灯具、发声器及其他执行元件。
以数字输入端口和模拟—数字转换器的组合方式实现了用于感测不同的物理效应的感测接口1210。这些输入端口被用来感测开关的激活和/或温度度数、声压等等。
所述存储器1202被分成数据段1205(DATA),具有行为执行系统的第一代码段1206(BES),具有函数库的第二代码段1207,以及具有操作系统(OS)的第三代码段1208。
所述数据段1205被用来与输入/输出接口1204交换数据(例如由缓冲器1104提供的数据以及提供给缓冲器904和905的数据)。此外,该数据段被用来存储与执行程序相关的数据。
第二代码段1207包含处理使用接口装置1204的细节的程序装置。该程序装置是以通过所谓的应用编程接口(API)执行的函数和过程的方式来实现的。
所述第一代码段1206包含用于实现机器人的编程行为的程序装置。这样一种程序是基于借由应用编程接口提供的函数和过程的。
所述第三代码段1208包含用于实现操作系统(OS)的程序装置,所述操作系统用于处理多个并发程序处理、存储器管理等等。
所述CPU被设置为执行存储在存储器中的指令,用于从接口读出数据并向接口提供数据,以便控制机器人和/或与外部设备通信。
图13示出部分封闭空间中的三个机器人。所述机器人1302、1303和1304具备发送器和接收器,用于确定与其他机器人的距离和方向以及其他机器人的方位。该信息可用于响应其他机器人来导航机器人。例如所述机器人1302被编程经由路线1305跟随机器人1303。机器人1303也可被编程企图经由路线1306远离机器人1304。机器人1304被编程、通过向后移动来远离其他机器人。
可以根据机器人的彼此实际的位置和方位、控制机器人的程序等等,经常改变该方案。
尽管被用作客厅中的玩具机器人,但本发明也可用于控制工业机器人在彼此之中更加自律地四处移动。
图14示出玩具机器人的方框图。依照本发明第一实施例的玩具机器人1400包含外壳1401,一组由电动机1407a和1407b经由轴1408a和1408b驱动的轮子1402a-d。替代地或者额外地,所述玩具机器人可以包括不同的移动装置,诸如足,链等等。它也可以包括其他的可移动部件,诸如螺旋桨,手臂,工具,旋转头等等。所述玩具机器人进一步包含电源1411,用于为所述电动机和玩具机器人的其他电气及电子器件提供电力。最好为,所述电源1411包括标准电池。玩具机器人进一步包含中央处理器CPU 1413,用于控制所述玩具机器人1400。所述处理器1413与存储器1412连接,所述存储器1412可以包含ROM和RAM或者EPROM部件(没有示出)。存储器1412可以存储用于中央处理器1413的操作系统以及包括低级计算机可执行指令的固件,所述低级的计算机可执行指令由中央处理器1413执行,用于通过实现诸如“打开电动机”之类的命令来控制玩具机器人的硬件。此外,存储器1412可以存储包含高级指令的应用软件,所述高级指令由中央处理器1413执行,用于控制玩具机器人的行为。所述中央处理器可以通过总线系统1414连接到玩具机器人的可控制硬件组件。
所述玩具机器人可以包含若干不同的传感器,这些传感器经由总线系统1414连接到中央处理器1413。在示出的实例中,玩具机器人包含撞击传感器1405,用于在它受到碰撞的时候进行检测,还包含光传感器1406,用于测量光能级以及用于检测闪烁。所述玩具机器人进一步包含两个红外线(IR)接收器1404a-b,用于如上所述地检测其他机器人,并对其他机器人进行测绘(mapping)。替代地或者额外地,所述玩具机器人可以包含其他传感器,例如震动传感器,比如悬挂在弹簧上的重量在玩具机器人被碰撞或者撞到某物时提供的输出,或者用于检测包括时间、味道、气味、光线、图案、接近度、移动、声音、语音、颤动、触摸、压力、磁性、温度、变形、通信等量的传感器。
由这些传感器响应于外界刺激产生的传感器信号被经由总线1414送到中央处理器1413,在那里它们被依照存储在存储器1412中的程序指令进行处理。该处理可以令存储在存储器1412中的变量和参数发生改变,并可以令控制信号由中央处理器1413产生并经由总线1414送到控制玩具机器人动作的不同硬件组件。玩具机器人的有源硬件组件包括电动机1407,用于产生光效应、例如模拟激光枪的LED 1416,以及用于产生声响效果的压电元件1415。其他可允许的有源组件包括用于产生混合色彩效果并从而表示机器人内部状态例如其有源行为状态的、或者用于产生包含不同颜色的LED的风格光线的RGB光发射器。其他的动作可以包括移动、声音、热度、光线、气味等等。
一种特殊类型的感测和动作是通信。为了这一目的,图1中所示玩具机器人包含五个红外线发射器1403a-e,用于同红外线接收器1404a-b一起发射可以被用于机器人-机器人通信的红外信号。最好为,所述发送器1403e是一个例如置于机器人上的红外线二极管,用于发射具有940nm至960nm之间波长的红外线,并由电流驱动,所述电流高到足以发射用以产生来自一个房间、例如6×6米的房间的墙壁的反射的光线,所述反射由房间内的另一机器人的接收器1404a-b中的至少一个接收到。最好为,可以以不同的功率级单独地控制所述二极管1403a-d的输出功率,例如以两个功率级。所述红外线发射器1403a-e可以在被用于向其他机器人发送信息并可由其他机器人检测到该机器人的预定ping周期内,以不同功率级发射广播报文。
替代地,也可以使用不同数目的发送器及其他通信装置,例如声信号或者其他电磁辐射。所述玩具机器人进一步包含接口连接器1417,例如用于将玩具机器人连接到一外部设备例如个人电脑、PDA、移动式电话等等的串行端口。其他通信装置包括用户界面,例如按钮或者用于显示图片或者文字信息的显示器。
在最佳实施例中,本发明是以能够控制机器人的部件方式具体实现的。最好为,所述部件包含用于与转动轴(shaft)、轴(axis)、心轴(spindle)或者类似的机械装置互连的电动机,用于构造一种驾驶、爬升、慢步或者其他方式移动的机器人。所述部件能够是建造性玩具建筑组合的一部分。
额外地,或者作为上述说明的替换方式,特别是与图4至9以及11相联系,在下文中参照图15至17说明进一步的工作原理。
图15示出一玩具机器人,其具有发射器,用于发射该机器人周围的若干区域中的每一个所特有的信号。所述机器人1501被显示为具有这样的方位:该机器人的前面朝向上方。
所述机器人1501包含四个红外线发射器1502,1503,1504和1505,每一个均发射各自的红外线信号。最好为,所述诸发射器被设置为以940nm和960nm之间的波长发射光线。
所述红外线发射器1502,1503和1504被以不同的位置和不同的角度安装在该机器人上,用于分别向机器人周围、由辐照度曲线1509,1510和1511指示出的区域FR、FL和B发射红外线。这些相对于机器人前向移动方向的方向分别是60°,300°,和180°。当每个二极管的辐照度角度大于120°、例如在120°和160°之间的时候,区域1509和1510重叠,以建立进一步的区域F;类似地,区域1510和1511重叠,以建立区域BL,并且区域1509和1511重叠,以建立区域BR。所述区域是通过辐射光圈和上述单一发射器的位置和角度以及由发射器发射的红外线功率定义的。
所述辐照度曲线1502,1503和1504被控制以用于按两种不同的功率级发射红外线;在下文中,这两种功率级将被称为低功率级(首字“L”)和中功率级(首字“M”)。
当这些发送器之一以中功率级发送的时候,所述相对较大的辐照度曲线1509,1510和1511表示接收器能够在其中检测到朝着该接收器的方向发射的红外线信号FR、FL和B的区域。同样地,当这些发送器之一以低功率级发送的时候,相对较小的辐照度曲线1506,1507和1508表示接收器能够在其中检测到朝着该接收器的方向发射的红外线信号LFR,LFL和LB的区域。在一实施例中,所述相对较大的曲线1509,1510,1511具有大约120-160厘米的直径。所述相对较小的曲线1506,1507和1508具有大约30-40厘米的直径。
所述发射器1505被设置为以比上述中功率级大的高功率级向机器人周围发射信号。因为该信号可能被诸如墙壁、门等物体反射,所以没有示出相应的辐照度曲线——代之以指示该辐照度的大写字母H。应当可以在通常大约6×6米的客厅内检测到高功率的ping信号。
因此,发射器1502,1503和1504被设置为:当以中功率级(M)操作的时候,它们建立彼此部分重叠的区域1509,1510和1511。额外地,发射器1502,1503和1504被设置为:当以低功率级(L)操作的时候,它们建立彼此部分重叠的区域1506,1507和1508。这使得可以精确测定机器人1501的方位。
在图15的实施例中,重叠区域LF、LBR和LBL是通过一个接收器定义的,所述接收器处于中功率级的相应重叠区域中,即分别为F,BR,和BL,并从二极管发射器1502,1503和1504中的至少一个接收低功率信号。
利用对应于这些红外线发射器中的唯一一个的信息并从而对应于该机器人周围区域中的各自区域的信息,对每一红外信号FR、FL和B进行编码。
该红外信号最好被设置为时分复用信号,其中对于红外线发射器唯一的信息被设置在相互不重叠的时隙中。
为了能够基于这些信号确定检测器位于这些区域中的哪一个中,为检测器系统提供了区域位置和各自信号之间的关系的信息。
将与图16a-e结合说明一个最佳实施例中的一种检测原理。
为了让一个发送机器人对方位和距离信息编码并将信息发送到诸区域里、以用于在另一接收机器人中进行随后的译码和翻译,使用了一种网络协议。所述网络协议基于ping信号和报文信号。将在下文中说明这些信号。
图16a示出被用来从各自的发射器、例如图15中的发射器1502,1503,1504和1505发送ping信号的功率级。功率级P被显示为在离散的功率级L、M和H时的时间t的函数。
所述ping信号是作为以紧密序列形式发送的位置信息位序列1601编码的。在一周期中以周期时间TPR发送所述序列1601,在紧密序列1601之间保留间歇1608。该间歇用来发送附加的报文,并用于允许机器人发送类似的信号和/或用于发送其他信息,例如报文信号。
位置信息位序列1601包含十二个比特(b0-b11),比特是以低功率(L),中功率(M)或者以高功率(H)发送的。所述第一比特1602是由二极管205以高功率发送的。在最佳实施例中,该比特还由发射器1502,1503和1504以中功率发送。通过在其他二极管上使用中功率复制所述高功率比特,增加了接收范围,并确保即使房间的墙壁和天花板是不良反射体,附近的接收器也接收到该比特。初始的比特后面有两个沉默比特1603,在该沉默比特1603中没有二极管发送信号。以低功率级发送随后的三个比特1604,以致仅仅由二极管202,203和204之一发送每一比特。类似地,以中功率级发送随后的三个比特1605,以致每一个二极管202,203和204发送比特1605中的一个。由二极管205以高功率级、并且最好由二极管202,203和204以中功率级再次发送随后的两个比特1606,后面是一个静默停止比特1607。
因此,每个二极管202,203,204和205发送如图16b-e中示出的不同位模式,其中图16b示出由二极管202发射的位置位序列,图16c示出由二极管203发射的位置位序列,图16d示出由二极管204发射的位置位序列,以及图16e示出由二极管205发射的位置位序列。
接收机器人能够使用所接收的位序列确定与已发送所接收位模式的机器人的距离以及发送机器人的方位,因为接收机器人能够确定接收机器人位于发送机器人的哪一个区域中。可以通过一个将接收的位模式与图2中的区域之一相关联的查找表简单地执行这种确定。这一点是通过表1来举例说明的。
接收的位置位序列 区域 没有信号 没有机器人存在 100000000110 H 100000100110 FR 100000010110 FL 100000001110 B 100000110110 F 100000101110 BR 100000011110 BL 100100100110 LFR 100010010110 LFL 100001001110 LB 100100110110,100010110110,或 者100110110110 LF 100100101110,100001101110,或者 100101101110 LBR 100010011110,100001011110,或者 100011011110 LBL
表1
表1示出如果有的话,所发送的ping信号中的编码功率级信息是如何能够被译码为存在于发送机器人的诸区域之一的。一个区域也表示方向和距离。
可以理解的是,上述原理可以适用于不同数目的二极管和/或不同数目的功率级,其中较高数目的二极管增加了方位确定的精确度,并且较高数目的功率级增加了距离测量的精确度。精确度方面的这种增加是以增加位序列、并从而降低传输速率为代价来实现的。
在一个实施例中,机器人发送附加报文,例如与ping信号结合或者作为独立的报文信号。最好为,所述报文是与位置信息位序列相结合发送的,例如通过在每一位置位序列之后发送若干字节。在一实施例中,机器人发送一个ping信号,所述ping信号包含了首部字节、机器人ID和校验和例如循环冗余校验(CRC),之后是位置信息位序列。额外地或者可替换地,还可以发送其他信息,例如与机器人有关的进一步的信息,比如速度、运动方向、动作等等,命令,用于在机器人之间交换的令牌等等。
每一字节可以包含若干数据位,例如8个数据位,以及附加位,例如起始位、停止位和奇偶校验位。可以以适当的比特率例如4800波特发送这些位。最好为,通过二极管205以高功率级发送所述附加的报文字节,并通过二极管202,203和204以中功率级发送所述附加的报文字节。
最好为,在特定环境中,所述机器人ID是一个为机器人所独有的编号。所述机器人ID使机器人能够注册登陆,并维护与在现实世界中或者在因特网上遇到的同伴机器人有关的信息。所述机器人可以将与其他机器人有关的信息存储为一个外部状态记录的一部分,最好是作为已知机器人的一种列表。该列表的每一条目可以包含例如这样的信息:机器人ID,通过机器人的传感器调节的测绘信息,例如方向、距离、方位,运动信息,从各机器人接收的游戏相关信息,例如某一机器人小组的指定工作,用于按照选择标准辨别不同机器人组的类型信息,用于控制机器人的机器人控制器的标识符等等。
当一个机器人从另一机器人接收广播报文的时候,它更新列表中的信息。如果报文发起者是未知的,则制订一个新的条目。当在一预定时间例如比两个广播循环更长的时间内,没有从列表中的一特定条目中接收到报文,则将机器人条目标记为不存在。
为了将所述机器人ID保持很短,例如将其限定为一个字节,并允许在一特定环境中提供一个机器人的唯一标识,可以在一通信范围里、例如一个房间里存在的机器人之中使用一种仲裁算法。例如,从另一具有相同ID的机器人接收ping信号的机器人可以选择一个不同的ID。
在对结合图5a/5b和图16a至16e说明的原理进行比较的时候,能够看出,用于将信号发射到机器人周围的装置被控制以分别的功率级发射信号,所述信号在这些功率级包含用于识别该特定功率级的信息。然而,结合图5a/5b能够看出,一个或者若干字节是以特定功率级发送的,而结合图16a至16e能够看出,一个位序列中的单独位是以不同的功率级发送的。借助于结合图16a至16e说明的原理,可以以较短的信号也就是说借助于更少的位数发送确定到发送机器人的距离时所需的信息。
在涉及对远程机器人存在区域的推断时,可以或多或少地用于由重叠区域(例如410和407)创建的区域。对于图4,通过使用包括用于推断在其中存在远程机器人的、由重叠区域创建区域的所有空间区域,实现相对高的鉴别能力。 然而,对于图15,图中示出在推断远程机器人存在于哪个区域的时候,由重叠区域创建的两个或更多空间区域被解释为单一区域。借此,在推断时可以实现所期望的、较粗略的分辩率。
图17示出用于发送ping信号和报文信号的通信系统的方框图。该系统1701经由缓冲器1705接收ping信号(例如首部、机器人ID和CRC字节)和报文信号。所述ping信号和报文信号是由一个外部系统(没有示出)经由传输接口1706提供的。因此,所述通信系统1701能从该外部系统接收信息,而该外部系统随后可以异步地操作所述通信系统。
该系统包含存储器1703,存储用于如结合图16a-e所说明的不同二极管的各自的位置位序列。
控制器1702被设置为接收ping信号和报文信号、对从存储器1703检索出的相应位序列加前缀,并经由放大器1707,1708,1709和1710控制红外线发送器202,203,204和205。由发射器1502、1503、1604和1505发射的功率级是通过调节放大器1707,1708,1709和1710的放大进行控制的。提供给控制器的信号S是一个指示是否存在通信静默的二进制信号,所述通信静默就是没有能检测出其他可能干扰待发射信号的信号。当发送信号的时候,控制器进一步提供信号R。
当发送器是红外线发射二极管时,所述二极管最好装配在印刷电路板(PCB)上。所述PCP被设置为基本上与部件移动平面并行。用于发射低和中功率信号的二极管被装配,以便依照所要求的至少为移动平面定义的空间区域辐射光线。发射高功率信号的二极管被装配在PCB上,以便沿垂直于PCB的方向、但不一定局限于该方向来辐射光线。
一般来讲,应被注意的是,术语区域包含相对于机器人的位置的预定组合或者范围,例如相对于机器人的某一扇区,与机器人移动表面平行的平面中的某一区域,等等。因此,当一机器人检测到其诸区域中之一中的另一机器人的时候,所述两个机器人具有预定的位置关系,例如它们之间的距离可能在某一范围内,另一机器人可能位于相对于检测机器人的运动方向的、属于某一方向范围内的一个方向上,等等。
一般来讲,功率级是通过编码字节或者位模式进行通信的,然而能够采用其他调制方案而不脱离本发明的范围。在最佳实施例中,能够采用调幅(AM)、调频(FM)或者脉宽调制(PWM)用于发送信号时的功率级的通信。
本发明能够并入具有用于四处移动的装置的机器人,但最好将本发明关于信息传输的特征在遥控装置中实现。遥控装置能够被实现为能在移动机器人之中放置的和/或手持遥控装置的装置。
一般来讲,术语“重叠”指的是由两个或更多发送器辐射的空间。所述空间是三维空间,但根据附图可以看出,这种重叠可以被定义为单一平面(例如纸张平面)。