CN106426169B - 用于多操作端远程操控单操作对象的方法和装置 - Google Patents
用于多操作端远程操控单操作对象的方法和装置 Download PDFInfo
- Publication number
- CN106426169B CN106426169B CN201610919657.7A CN201610919657A CN106426169B CN 106426169 B CN106426169 B CN 106426169B CN 201610919657 A CN201610919657 A CN 201610919657A CN 106426169 B CN106426169 B CN 106426169B
- Authority
- CN
- China
- Prior art keywords
- time
- manipulation instruction
- operating side
- main operation
- operation end
- 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
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/006—Controls for manipulators by means of a wireless system for controlling one or several manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1689—Teleoperation
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Selective Calling Equipment (AREA)
Abstract
本发明公开了一种用于多操作端远程操控单操作对象的方法和装置,且其中的方法包括:获取所有操作端中的主操作端与操作对象的传输时延,其中,所有操作端和操作对象时间同步;基于所述传输时延分别设置需要由主操作端向操作对象发送的各操控指令的执行时间,所述各操控指令包括:主操作端产生的操控指令和/或所有操作端中的辅操作端产生的操控指令;根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理,使相应的操控指令和相应的执行时间分别由主操作端传输至所述操作对象和其他各操作端。本发明提供的技术方案提高了多个操作端同时对操作对象进行远程操控的易用性以及准确性。
Description
技术领域
本发明涉及远程操控技术,具体涉及一种用于多操作端远程操控单操作对象的方法以及用于多操作端远程操控单操作对象的装置。
背景技术
机器人也可以称为可编程的多功能操作机,由于机器人可以根据接收到的指令以及预先设置的程序执行相应的操作,还可以基于人工智能执行相应的操作,且可以适应较恶劣的工作环境,从而被广泛应用于生产、建筑、航天以及医疗等多种领域。
在技术专家(如医学专家等)不在现场以及现场环境较恶劣(如月球或者深海或者放射性设备内部等)等应用场景中,往往需要对机器人进行远程操控(可以称为遥操控)。
发明人在实现本发明过程中发现:对机器人的远程操控往往会涉及到多个操作端(可以称为遥操作端)对单个操作对象的远程操控,而在多个操作端对单个操作对象的远程操控过程中,一方面应尽可能的避免一个操作端对操作对象的远程操控对其他操作端的干扰,另一方面应保证多个操作端同时对操作对象远程操控的准确性;如何避免不同操作端之间的干扰,并提高远程操控的准确性是一个值得关注的技术问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的用于多操作端远程操控单操作对象的方法和装置。
依据本发明的其中一个方面,提供了一种用于多操作端远程操控单操作对象的方法,该方法包括:获取所有操作端中的主操作端与操作对象的传输时延,其中,所有操作端和操作对象时间同步;基于所述传输时延分别设置需要由主操作端向操作对象发送的各操控指令的执行时间,所述各操控指令包括:主操作端产生的操控指令和/或所有操作端中的辅操作端产生的操控指令;根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理,使相应的操控指令和相应的执行时间分别由主操作端传输至所述操作对象和其他各操作端。
依据本发明的其中再一个方面,提供了一种用于多操作端远程操控单操作对象的装置,该装置包括:获取时延模块,用于获取所有操作端中的主操作端与操作对象的传输时延,其中,所有操作端和操作对象时间同步;设置执行时间模块,用于基于所述传输时延分别设置需要由主操作端向操作对象发送的各操控指令的执行时间,所述各操控指令包括:主操作端产生的操控指令和/或所有操作端中的辅操作端产生的操控指令;发送处理模块,用于根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理,使相应的操控指令和相应的执行时间分别由主操作端传输至所述操作对象和其他各操作端。
本发明提供的用于多操作端远程操控单操作对象的方法和装置至少具有下列优点以及有益效果:本发明通过将各操作端产生的操控指令汇聚在主操作端处,并利用主操作端与操作对象的传输时延来设置需要由主操作端向操作对象发送的各操控指令的执行时间,使每一个操控指令均具有明确的执行时间,避免了操作对象执行操控指令的时间的不确定性;本发明通过使所有操作端和操作对象保持时间同步,并由主操作端向操作对象和其他各操作端分别发送各操控指令以及各操控指令的执行时间,使操作对象在相应的执行时间执行相应的操控指令的同时,所有操作端均能够同步同态的展现操作对象在相应执行时间的状态,即本发明能够在无需对操作对象进行改造的情况下,非常方便准确的使操作对象在当前时刻的状态实时的呈现在所有操作端处,从而使不同操作端能够针对操作对象的同一状态进行远程操控,避免了不同操作端与操作对象之间的传输时延差异以及不同操作端之间的传输时延差异而导致的相互干扰、操控策略复杂以及易产生操控异常等问题;通过根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理(如对具有相同执行时间的操控指令进行加权平均处理等),能够尽可能的减小单个操作端对操作对象的异常操控行为(如手抖等)对操控对象的危害;由此可知,本发明提供的技术方案提高了多个操作端同时对操作对象进行远程操控的易用性以及准确性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。本实施例的附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明用于多操作端远程操控单操作对象的方法流程图;
图2为本发明用于多操作端远程操控单操作对象的装置示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一、用于多操作端远程操控单操作对象的方法。
本实施例的方法可以使位于不同地点的多个操作端针对同一个操作对象进行远程操控。本实施例中的位于不同地点的所有操作端通常应持续的保持时间同步,且所有操作端通常还应与操作对象持续的保持时间同步,即本实施例中的所有操作端均应具有时间同步能力。本实施例的方法通常由操作端执行,也就是说,本实施例的方法的执行主体通常为操作端。
本实施例的方法流程如图1所示,下面对图1中的各步骤分别进行说明。
图1中,S100、获取所有操作端中的主操作端与操作对象的传输时延。
作为示例,本实施例可以在所有操作端本地分别存储本操作端与操作对象的传输时延,从而在任意一个操作端被指定为主操作端的情况下,任意一个操作端均可以从被指定为主操作端本地存储的信息中获取到主操作端与操作对象的传输时延。当然,本实施例也不排除仅在被指定为主操作端的操作端本地存储该操作端与操作对象的传输时延而其他操作端本地并不存储本操作端与操作对象的传输时延的可能性。
作为示例,本实施例可以在所有操作端本地分别存储本操作端与其他各操作端的传输时延,从而在任意一个操作端被指定为主操作端的情况下,可以从被指定为主操作端本地存储的信息中获取到本操作端与其他各操作端的传输时延,从而获得主操作端到其他各操作端的传输时延,进而本实施例可以利用主操作端到其他各操作端的传输时延将其他各操作端划分为辅操作端和观测操作端。当然,本实施例也不排除仅在被指定为主操作端的操作端本地存储本操作端与其他各操作端的传输时延而其他操作端本地并不存储本操作端与其他各操作端的传输时延的可能性。
作为示例,本实施例中的传输时延通常为单向传输时延,如本操作端与其他各操作端的传输时延为本操作端到其他各操作端的单向传输时延,再如本操作端与操作对象的传输时延可以为本操作端到操作对象的单向传输时延,在下述描述中,如无特别说明,则描述中的传输时延均指单向传输时延。
作为示例,本实施例应对操作端本地存储的各传输时延进行维护,如实时的维护各操作端本地存储的各传输时延。本实施例对操作端本地存储的各传输时延进行维护的一个具体的例子为:
设定第i个操作端本地存储的其与操作对象的传输时延以及其与其他各操作端的传输时延形成一个向量,且该向量表示为下述公式(1)的形式:
在上述公式(1)中,表示第i个操作端与第一个操作端之间的传输时延,表示第i个操作端与第二个操作端之间的传输时延,表示第i个操作端与第i-1个操作端之间的传输时延,表示第i个操作端与第i+1个操作端之间的传输时延,0表示第i个操作端与第i个操作端之间的传输时延,即第i个操作端自身的传输时延为0,表示第i个操作端与第n个操作端之间的传输时延,且n为操作端的总数量,表示第i个操作端与操作对象之间的传输时延;
针对本次远程操控的所有操作端中的任意一个操作端(如第i个操作端)而言,本实施例维护第i个操作端本地存储的各传输时延,即向量的一个具体过程为:定时的由第i个操作端向操作对象发送用于检测本操作端和操作对象之间的单向传输时延的检测报文,并定时的由第i个操作端向其他n-1个操作端分别发送用于检测本操作端和其他n-1个操作端之间的单向传输时延的检测报文,且由第i个操作端发出的检测报文中携带有该检测报文由该第i个操作端发出时刻的发送时间,在操作对象或者其他任意一个操作端接收到该检测报文时,均需要针对接收到的检测报文设置时间戳,如在接收到的检测报文中设置检测报文的接收时间戳,再如在接收到的检测报文中设置检测报文单向传输时时延间戳(即操作对象/其他操作端接收到该检测报文的接收时间与第i个操作端发送该检测报文的发送时间的时间差),第i个操作端每次接收到操作对象或者其他任意一个操作端返回的检测报文时,均可以从返回的检测报文承载的时间戳获得第i操作端到操作对象/相应操作端的单向传输时延,本实施例可以将该单向传输时延与第i个操作端本地存储的向量中的相应单向传输时延进行比较,如果该单向传输时延超过本地存储的向量中的相应单向传输时延,则利用该单向传输时延替换第i个操作端本地存储的上述向量中的相应单向传输时延,否则,对第i个操作端本地存储的上述向量中的相应单向传输时延不进行更改。由此可知,第i个操作端本地存储的任意一个单向传输时延均始终为在之前历次针对操作对象/相应的操作端进行单向传输时延检测过程中所获得的最大单向传输时延。
作为示例,本实施例可以将所有操作端中除了主操作端之外的其他各操作端分别设置为辅操作端或者观测操作端,也就是说,本实施例中的所有操作端中除了主操作端之外的其他所有操作端可以包括:辅操作端和/或观测操作端;其中的辅操作端是可以参与对操作对象进行远程操控的操作端,而其中的观测操作端是可以观测到操作对象被远程操控且不能够参与对操作对象的远程操控的操作端。本实施例中的将其他各操作端分别设置为辅操作端或者观测操作端的操作可以在主操作端处执行。
作为示例,本实施例中的所有操作端可以被划分为一个主操作端和至少一个辅操作端,也可以被划分为一个主操作端、至少一个辅操作端以及至少一个观测操作端。当然,本实施例也不排除所有操作端被划分为一个主操作端以及至少一个观测操作端的情况。
作为示例,在设置主操作端时,可以考虑主操作方(如专家)所在的位置以及各操作端的设备性能等因素,当然,本实施例也可以通过随机指定等方式来设置主操作端;而在设置辅操作端以及观测操作端时,本实施例通常是通过考虑各操作端分别与主操作端之间的单向传输时延等因素来确定是将一个操作端作为辅操作端还是作为观测操作端。
本实施例设置辅操作端以及观测操作端的一个具体例子为:在主操作端本地存储的当前其与其他各操作端的传输时延向量中,如果主操作端到某个操作端的传输时延小于预先设置的传输时延阈值时,则可以将该操作端设置为辅操作端,而如果主操作端到某个操作端的传输时延不小于预先设置的传输时延阈值时,则可以将该操作端设置为观测操作端。本实施例通过设置观测操作端可以屏蔽具有较大传输时延的操作端对操作对象的远程操控所带来的不良影响。
作为示例,本实施例中的预先设置的传输时延阈值可以具体为预定系数和主操作端与操作对象的单向传输时延的乘积,本实施例中的预定系数可以预先存储于主操作端本地,当然,本实施例可以在所有操作端本地均预先存储有该预定系数,从而在将所有操作端中的任意一个操作端设置为主操作端时,该操作端可以方便的获得该预定系数;一个具体的例子:设定第j个操作端被设置为主操作端,第j个操作端本地存储的其与操作对象之间的传输时延为且当前设置的预定系数为Kj,则本实施例中的传输时延阈值可以为从而对于除了主操作端之外的任意一个操作端而言,如果该操作端与主操作端之间的传输时延小于则本实施例可以将该操作端作为辅操作端,而如果该操作端与主操作端之间的传输时延不小于则本实施例可以将该操作端作为观测操作端。
作为示例,本实施例中的预定系数通常大于1,且不大于下述公式(2)计算获得的数值:
在上述公式(2)中,为作为主操作端的第j个操作端与第一个操作端之间的传输时延,为作为主操作端的第j个操作端与第二个操作端之间的传输时延,为作为主操作端的第j个操作端与第j-1个操作端之间的传输时延,为作为主操作端的第j个操作端与第j+1个操作端之间的传输时延,为作为主操作端的第j个操作端与第n个操作端之间的传输时延,n为操作端的总数量,为作为主操作端的第j个操作端与操作对象之间的传输时延,表示取以及中的最大值。也就是说,本实施例中的预定系数不大于1与max(*)和之商的和。
作为示例,本实施例在设置预定系数的大小时,可以考虑期望参与共同操控的操作端数量以及操控操作对象的操作时间间隔要求(即操作紧迫性)等因素;也就是说,本实施例可以根据期望参与共同操控的操作端数量和/或操控操作对象的操作时间间隔要求来设置预定系数的取值大小;且在期望参与共同操控的操作端数量越多以及操控操作对象的操作时间间隔要求越长(即操作紧迫性不强)的情况下,可以将预定系数设置的越大,而在期望参与共同操控的操作端数量越少以及操控操作对象的操作时间间隔要求越短(即操作紧迫性强)的情况下,可以将预定系数设置的越小。
作为示例,本实施例可以在主操作端展示用于设置预定系数的界面,且该界面中包括:分别对应不同取值的预定系数的多个选项(如多个操作端数量选项以及多个操作紧急程度选项等),用户可以通过选择相应的选项(如操作端数量选项和操作紧急程度选项),从而确定出预定系数的大小。通常情况下,本实施例并不限制参与本次对操作对象进行远程遥控的操作端的数量,且本实施例不限制设置预定系数的具体实施方式。
作为示例,本实施例的所有操作端中均可以存储有上述计算获得的传输时延阈值,以便于每一个操作端均可以利用该传输时延阈值设置操控指令的执行时间,利用传输时延阈值设置操控指令的执行时间的内容可以参见下述步骤S110中的描述。
S110、基于上述传输时延分别设置需要由主操作端向操作对象发送的各操控指令的执行时间。
作为示例,本实施例中的需要由主操作端向操作对象发送的各操控指令通常包括:主操作端本地产生的针对操作对象的操控指令和/或辅操作端本地产生的针对操作对象的操控指令,也就是说,所有操作端产生的针对操作对象的操控指令均需要经由主操作端发送至操作对象。
作为示例,本实施例应分别设置需要由主操作端向操作对象发送的各操控指令的执行时间,该执行时间的作用包括:使操作对象可以按照各操控指令的执行时间来执行各操控指令,使各操作端可以按照各操控指令的执行时间来展示/报告操作对象的当前状态。
作为示例,本实施例可以利用基于主操作端与操作对象的传输时延而设置的传输时延阈值来设置各操控指令的执行时间。
对于主操作端本地产生的针对操作对象的操控指令而言,本实施例设置该操控指令的执行时间的一个具体例子为:预计该操控指令由主操作端向操作对象发送的时间(如在将操控指令放入主操作端处的发送队列中时,根据该发送队列中的操控指令的数量以及主操作端对发送队列中的单个操控指令的处理速度预计出该操控指令由主操作端向操作对象发送的时间),并将该发送时间与传输时延阈值之和作为该操控指令的执行时间;另一个具体例子为:在由主操作端向操作对象发送一操控指令(如将操控指令从主操作端处的发送队列中读出)时,将该操控指令的执行时间设置为当前时间(如将操控指令从主操作端处的发送队列中读出的时间)与传输时延阈值之和。
对于辅操作端本地产生的针对操作对象的操控指令而言,本实施例设置该操控指令的执行时间的一个具体例子为:预计该操控指令由辅操作端向主操作端发送的时间(如在将操控指令放入辅操作端处的发送队列中时,根据该发送队列中的操控指令的数量以及辅操作端对发送队列中的单个操控指令的处理速度预计出该操控指令由辅操作端向主操作端发送的时间),并将该发送时间与传输时延阈值之和作为该操控指令的执行时间,将该操控指令和执行时间一起发送给主操作端;另一个具体例子为:在由辅操作端向主操作端发送一操控指令(如将操控指令从辅操作端处的发送队列中读出)时,将该操控指令的执行时间设置为当前时间(如将操控指令从辅操作端处的发送队列中读出的时间)与传输时延阈值之和,并将该操控指令和执行时间一起发送给主操作端。
由上述描述可知,在多个用户同时操作不同操作端时,由于所有的操作端始终保持时间同步,因此,不同操作端产生的针对操作对象的操控指令很可能会具有相同的执行时间;由于不同操作端产生的操控指令以及操控指令的执行时间均被汇聚到主操作端处,而不会直接被传输至操作对象,从而可以在主操作端处利用预定发送策略对来自所有操作端的操控指令进行处发送理,以避免不同操作端的操控指令之间的相互影响,而不需要操作对象支持对所有操作端的操控指令的处理,这对于已经部署且难以改造的操作对象(如空间机器人、月球车、深海机构以及核能内部机器等)而言,本实施例的方法可以非常方便的实现多操作端对单操作对象的远程操控。
S120、根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理,使相应的操控指令和相应的执行时间分别由主操作端传输至所述操作对象和其他各操作端。
作为示例,为了保证对操作对象远程操控的安全性,本实施例可以先对辅操作端产生并传输至主操作端处的操控指令进行操控指令安全性检测,然后,再根据预定发送策略对主操作端产生的操控指令以及来自辅操作端的且通过安全性检测的操控指令进行发送处理。也就是说,本实施例可以对来自辅操作端的操控指令进行过滤,以滤除未通过安全性检测的操控指令,从而避免一些操控指令对操作对象产生不良影响。本实施例可以采用现有的操控指令安全性检测技术来对辅操作端产生并传输至主操作端处的操控指令进行操控指令安全性检测,本实施例不限制操控指令安全性检测的具体实现过程。
作为示例,本实施例中的预定发送策略可以是一种能够解决不同操作端的操控指令之间相互干扰的解决机制。一个具体的例子,本实施例中的汇聚在主操作端处的来自各操作端的各操控指令(即需要由主操作端向操作对象发送的各操控指令)的执行时间有可能相同,如在多个用户分别通过主操作端和多个辅操作端同时对操作对象进行远程操控的情况下,辅操作端产生并传输至主操作端的操控指令与主操作端自身产生的操控指令有可能具有相同的执行时间,且不同辅操作端产生并传输至主操作端的操控指令也可能具有相同的执行时间,针对该情况,本实施例中的预定发送策略可以包括:对具有相同执行时间的不同操控指令进行加权平均处理,即本实施例可以针对汇聚在主操作端处的具有相同执行时间的各操控指令进行加权平均处理,从而使具有相同执行时间的各操控指令转化为一条操控指令,这样,本实施例可以将加权平均处理后获得的操控指令以及该操控指令的执行时间(即具有相同执行时间的各条操控指令的执行时间)分别传输至操作对象以及其他各操作端(如所有辅操作端以及所有观测操作端)。本实施例可以采用现有的加权平均处理方式对具有相同执行时间的各操控指令进行加权平均处理,本实施例不限制对具有相同执行时间的各操控指令进行加权平均处理的具体实现方式。另外,在汇聚在主操作端处的各操控指令存在其他相互干扰时,本实施例可以通过设置相应的策略来避免干扰。本实施例不限制预定发送策略的具体表现形式。
作为示例,本实施例的根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理的一个具体例子为:在主操作端接收到辅操作端传输来的操控指令的情况下,如果与该操控指令具有相同执行时间的操控指令已经由主操作端向操作对象发送出去,则可以丢弃该操控指令,而如果与该操控指令具有相同执行时间的操控指令还未由主操作端发送给操作对象,则将与该操控指令具有相同执行时间的所有操控指令进行加权平均处理,并将加权平均处理后获得的操控指令以及该操控指令的执行时间分别传输至操作对象和其他各操作端。
作为示例,本实施例的根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理的另一个具体例子为:设定由主操作端向操作对象前后连续发送的操控指令的执行时间应满足预定时间间隔要求,在主操作端接收到辅操作端传输来的操控指令的情况下,如果该操控指令的执行时间大于当前需要向操作对象发送的操控指令的执行时间,并小于当前需要向操作对象发送的操控指令的执行时间与预定时间间隔之和,则可以丢弃该操控指令。
作为示例,本实施例的根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理的再一个具体例子为:设定由主操作端向操作对象前后连续发送的操控指令的执行时间应满足预定时间间隔要求,在主操作端接收到辅操作端传输来的操控指令的情况下,如果该操控指令的执行时间大于当前需要向操作对象发送的操控指令的执行时间,并小于当前需要向操作对象发送的操控指令的执行时间与预定时间间隔之和,则可以将该来自辅操作端的操控指令变换为当前需要向操作对象发送的操控指令的执行时间所对应的操控指令(如根据原操控指令的执行时间与当前需要向操控对象发送的操控指令的执行时间的时间差值改变原操控指令中的参数的数值,并使改变后的操控指令的执行时间设置为当前需要向操作对象发送的操控指令的执行时间),然后,将与变换后的操控指令具有相同执行时间的所有操控指令进行加权平均处理,并将加权平均处理后获得的操控指令以及该操控指令的执行时间分别传输至操作对象和其他各操作端。
在本实施例中,由主操作端向操作对象发送的操控指令以及执行时间可以使操作对象根据其接收到的操控指令的执行时间执行相应的操控指令;由主操作端向其他操作端发送的操控指令以及执行时间可以使其他各操作端(如所有辅操作端以及所有观测操作端)分别根据其接收到的操控指令以及执行时间同步展现操作对象的当前状态。另外,由主操作端向操作对象发送的操控指令以及执行时间可以使主操作端根据其发送的操控指令以及执行时间同步展现操作对象的当前状态。由于操作对象、主操作端、辅操作端以及观测操作端始终保持时间同步,而不同的操作端均是根据操控指令的执行时间模拟展现操作对象的当前状态,因此,本实施例可以使所有操作端所展现的操作对象的当前状态具有同步同态性。
具体而言,在主操作端处,针对由主操作端传输至操作对象的各操控指令,在当前时间达到相应操控指令的执行时间时,位于主操作端处的预报模型可以根据该操控指令展现/报告操作对象的当前状态。
具体而言,在除主操作端之外的其他任意一个操作端(如辅操作端或者观测操作端)处,针对来自主操作端的执行时间不超过当前时间的各操控指令,可以先根据执行时间的排列顺序依次存储在指令桶中,并触发位于本操作端处的预报模型根据其存储的已经执行过的操控指令以及执行时间将操作对象的当前状态快速回溯到指令桶中的最早执行时间时的状态,然后,触发预报模型根据指令桶中顺序存储的操作指令以及执行时间将操作对象的状态快进到当前时间;之后,针对来自主操作端的执行时间超过当前时间的各操控指令,在当前时间达到相应操控指令的执行时间时,根据该操控指令展现操作对象的当前状态。
实施例二、用于多操作端远程操控单操作对象的装置。该装置可以设置于操作端,如每一个操作端中均设置一个本实施例的装置,且本实施例的装置的结构如图2所示。
图2中,本实施例的用于多操作端远程操控单操作对象的装置包括:获取时延模块200、设置执行时间模块210以及发送处理模块220。可选的,该装置还可以包括:传输时延维护模块230、设置操作端模块240以及预报模块250。
获取时延模块200主要用于获取所有操作端中的主操作端与操作对象的传输时延。
作为示例,通过所有操作端中的传输时延维护模块230可以使所有操作端本地分别存储有本操作端与操作对象的传输时延,从而在任意一个操作端被指定为主操作端的情况下,该主操作端中的获取时延模块200可以从主操作端本地存储的信息中获取到主操作端与操作对象的传输时延,且其他操作端中的获取时延模块200可以通过与主操作端中的获取时延模块200进行信息交互而获得主操作端与操作对象的传输时延。当然,本实施例也不排除主操作端中的传输时延维护模块230仅在主操作端本地存储本操作端与操作对象的传输时延而其他操作端中的传输时延维护模块230并不会在其所在的操作端中存储本操作端与操作对象的传输时延的可能性。
作为示例,通过所有操作端中的传输时延维护模块230可以使所有操作端本地分别存储本操作端与其他各操作端的传输时延,从而在任意一个操作端被指定为主操作端的情况下,主操作端中的获取时延模块200可以从主操作端本地存储的信息中获取到本操作端与其他各操作端的传输时延,从而获得主操作端到其他各操作端的传输时延,其他操作端中的获取时延模块200可以通过与主操作端中的获取时延模块200进行信息交互而获得主操作端到其他各操作端的传输时延。当然,本实施例也不排除主操作端中的传输时延维护模块230仅在主操作端本地存储本操作端与其他各操作端的传输时延而其他操作端中的传输时延维护模块230并不会在其所在的操作端中存储本操作端与其他各操作端的传输时延的可能性。
作为示例,本实施例中的传输时延通常为单向传输时延,如本操作端与其他各操作端的传输时延为本操作端到其他各操作端的单向传输时延,再如本操作端与操作对象的传输时延可以为本操作端到操作对象的单向传输时延,在下述描述中,如无特别说明,则描述中的传输时延均指单向传输时延。
作为示例,传输时延维护模块230应对操作端本地存储的各传输时延进行维护,如传输时延维护模块230实时维护其所在操作端本地存储的各传输时延。传输时延维护模块230对操作端本地存储的各传输时延进行维护的一个具体的例子如上述实施例一中与公式(1)相关的描述,在此不再详细说明。
作为示例,设置于主操作端中的设置操作端模块240可以将所有操作端中除了主操作端之外的其他各操作端分别设置为辅操作端或观测操作端,也就是说,本实施例中的所有操作端中除了主操作端之外的其他所有操作端可以包括:辅操作端和/或观测操作端;其中的辅操作端是可以参与对操作对象进行远程操控的操作端,而其中的观测操作端是可以观测到操作对象被远程操控且不能够参与对操作对象的远程操控的操作端。本实施例中的将其他各操作端分别设置为辅操作端或者观测操作端的操作可以在主操作端处执行。
作为示例,本实施例中的所有操作端可以被主操作端中的设置操作端模块240划分为一个主操作端和至少一个辅操作端,也可以被主操作端中的设置操作端模块240划分为一个主操作端、至少一个辅操作端以及至少一个观测操作端。当然,本实施例也不排除所有操作端被主操作端中的设置操作端模块240划分为一个主操作端以及至少一个观测操作端的情况。
作为示例,本实施例在设置主操作端时,可以考虑主操作方(如专家)所在的位置以及各操作端的设备性能等因素,当然,本实施例也可以通过随机指定等方式来设置主操作端;而主操作端中的设置操作端模块240在设置辅操作端以及观测操作端时,通常是通过考虑各操作端分别与主操作端之间的单向传输时延等因素来确定是将一个操作端作为辅操作端还是作为观测操作端。
主操作端中的设置操作端模块240设置辅操作端以及观测操作端的一个具体例子为:在主操作端本地存储的当前其与其他各操作端的传输时延向量中,如果主操作端到某个操作端的传输时延小于设置操作端模块240预先设置的传输时延阈值时,则设置操作端模块240可以将该操作端设置为辅操作端,而如果主操作端到某个操作端的传输时延不小于设置操作端模块240预先设置的传输时延阈值时,则设置操作端模块240可以将该操作端设置为观测操作端。本实施例通过利用设置操作端模块240来设置观测操作端,可以屏蔽具有较大传输时延的操作端对操作对象的远程操控所带来的不良影响。
作为示例,设置操作端模块240预先设置的传输时延阈值可以具体为预定系数和主操作端与操作对象的单向传输时延的乘积,本实施例中的预定系数可以由主操作端中的设置操作端模块240预先存储于主操作端本地,当然,各操作端中的设置操作端模块240均可以在其所在的操作端本地均预先存储该预定系数,从而所有操作端中的任意一个操作端被设置为主操作端时,该操作端中的设置操作端模块240可以方便的获得该预定系数;一个具体的例子:设定第j个操作端被设置为主操作端,第j个操作端本地存储的其与操作对象之间的传输时延为且当前设置的预定系数为Kj,则设置操作端模块240可以将传输时延阈值设置为从而对于除了主操作端之外的任意一个操作端而言,如果该操作端与主操作端之间的传输时延小于则设置操作端模块240可以将该操作端作为辅操作端,而如果该操作端与主操作端之间的传输时延不小于则设置操作端模块240可以将该操作端作为观测操作端。本实施例中的预定系数通常大于1,且不大于上述实施例一中的公式(2)计算获得的数值。另外,设置操作端模块240设置预定系数的大小所需要考虑的因素以及设置预定系数的方式如上述实施例一中的描述,在此不再重复说明。
作为示例,本实施例的所有操作端中的设置操作端模块240均可以在其所在的操作端中存储上述计算获得的传输时延阈值,以便于每一个操作端中的设置执行时间模块210均可以利用该传输时延阈值设置其所在操作端产生的操控指令的执行时间。
设置执行时间模块210主要用于基于上述传输时延分别设置需要由主操作端向操作对象发送的各操控指令的执行时间。
作为示例,本实施例中的需要由主操作端向操作对象发送的各操控指令通常包括:主操作端本地产生的针对操作对象的操控指令和/或辅操作端本地产生的针对操作对象的操控指令,也就是说,所有操作端产生的针对操作对象的操控指令均需要经由主操作端发送至操作对象。
作为示例,设置执行时间模块210应分别设置需要由主操作端向操作对象发送的各操控指令的执行时间,该执行时间的作用包括:使操作对象可以按照各操控指令的执行时间来执行各操控指令,使各操作端可以按照各操控指令的执行时间来展示/报告操作对象的当前状态。
作为示例,设置执行时间模块210可以利用基于主操作端与操作对象的传输时延而设置的传输时延阈值来设置各操控指令的执行时间。
对于主操作端本地产生的针对操作对象的操控指令而言,主操作端中的设置执行时间模块210置该操控指令的执行时间的一个具体例子为:设置执行时间模块210预计该操控指令由主操作端向操作对象发送的时间(如在将操控指令放入主操作端处的发送队列中时,根据该发送队列中的操控指令的数量以及主操作端对发送队列中的单个操控指令的处理速度预计出该操控指令由主操作端向操作对象发送的时间),并将该发送时间与传输时延阈值之和作为该操控指令的执行时间;另一个具体例子为:在由主操作端向操作对象发送一操控指令(如将操控指令从主操作端处的发送队列中读出)时,设置执行时间模块210将该操控指令的执行时间设置为当前时间(如将操控指令从主操作端处的发送队列中读出的时间)与传输时延阈值之和。
对于辅操作端本地产生的针对操作对象的操控指令而言,辅操作端中的设置执行时间模块210设置该操控指令的执行时间的一个具体例子为:设置执行时间模块210预计该操控指令由辅操作端向主操作端发送的时间(如在将操控指令放入辅操作端处的发送队列中时,根据该发送队列中的操控指令的数量以及辅操作端对发送队列中的单个操控指令的处理速度预计出该操控指令由辅操作端向主操作端发送的时间),并将该发送时间与传输时延阈值之和作为该操控指令的执行时间,将该操控指令和执行时间一起发送给主操作端;另一个具体例子为:在由辅操作端向主操作端发送一操控指令(如将操控指令从辅操作端处的发送队列中读出)时,该辅操作端中的设置执行时间模块210将该操控指令的执行时间设置为当前时间(如将操控指令从辅操作端处的发送队列中读出的时间)与传输时延阈值之和,并将该操控指令和执行时间一起发送给主操作端。
发送处理模块220主要用于根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理,使相应的操控指令和相应的执行时间分别由主操作端传输至所述操作对象和其他各操作端。
作为示例,为了保证对操作对象远程操控的安全性,主操作端中的发送处理模块220可以先对辅操作端产生并传输至主操作端处的操控指令进行操控指令安全性检测,然后,主操作端中的发送处理模块220再根据预定发送策略对主操作端产生的操控指令以及来自辅操作端的且通过安全性检测的操控指令进行发送处理。也就是说,主操作端中的发送处理模块220可以对来自辅操作端的操控指令进行过滤,以滤除未通过安全性检测的操控指令,从而避免一些操控指令对操作对象产生不良影响。发送处理模块220可以采用现有的操控指令安全性检测技术来对辅操作端产生并传输至主操作端处的操控指令进行操控指令安全性检测,本实施例不限制发送处理模块220执行操控指令安全性检测的具体实现过程。
作为示例,发送处理模块220所使用的预定发送策略可以是一种能够解决不同操作端的操控指令之间相互干扰的解决机制。一个具体的例子,本实施例中的汇聚在主操作端处的来自各操作端的各操控指令(即需要由主操作端向操作对象发送的各操控指令)的执行时间有可能相同,如在多个用户分别通过主操作端和多个辅操作端同时对操作对象进行远程操控的情况下,辅操作端产生并传输至主操作端的操控指令与主操作端自身产生的操控指令有可能具有相同的执行时间,且不同辅操作端产生并传输至主操作端的操控指令也可能具有相同的执行时间,针对该情况,发送处理模块220所使用的预定发送策略可以包括:对具有相同执行时间的不同操控指令进行加权平均处理,即发送处理模块220可以针对汇聚在主操作端处的具有相同执行时间的各操控指令进行加权平均处理,从而使具有相同执行时间的各操控指令转化为一条操控指令,这样,发送处理模块220可以将加权平均处理后获得的操控指令以及该操控指令的执行时间(即具有相同执行时间的各条操控指令的执行时间)分别传输至操作对象以及其他各操作端(如所有辅操作端以及所有观测操作端)。发送处理模块220可以采用现有的加权平均处理方式对具有相同执行时间的各操控指令进行加权平均处理,本实施例不限制发送处理模块220对具有相同执行时间的各操控指令进行加权平均处理的具体实现方式。另外,在汇聚在主操作端处的各操控指令存在其他相互干扰时,发送处理模块220可以通过设置相应的策略来避免干扰。本实施例不限制发送处理模块220所使用的预定发送策略的具体表现形式。
作为示例,发送处理模块220根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理的一个具体例子为:在主操作端接收到辅操作端传输来的操控指令的情况下,如果与该操控指令具有相同执行时间的操控指令已经由主操作端向操作对象发送出去,则发送处理模块220可以丢弃该操控指令,而如果与该操控指令具有相同执行时间的操控指令还未由主操作端发送给操作对象,则发送处理模块220将与该操控指令具有相同执行时间的所有操控指令进行加权平均处理,并将加权平均处理后获得的操控指令以及该操控指令的执行时间分别传输至操作对象和其他各操作端。
作为示例,发送处理模块220根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理的另一个具体例子为:设定由主操作端向操作对象前后连续发送的操控指令的执行时间应满足预定时间间隔要求,在主操作端接收到辅操作端传输来的操控指令的情况下,如果该操控指令的执行时间大于当前需要向操作对象发送的操控指令的执行时间,并小于当前需要向操作对象发送的操控指令的执行时间与预定时间间隔之和,则发送处理模块220可以丢弃该操控指令。
作为示例,发送处理模块220根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理的再一个具体例子为:设定由主操作端向操作对象前后连续发送的操控指令的执行时间应满足预定时间间隔要求,在主操作端接收到辅操作端传输来的操控指令的情况下,如果该操控指令的执行时间大于当前需要向操作对象发送的操控指令的执行时间,并小于当前需要向操作对象发送的操控指令的执行时间与预定时间间隔之和,则发送处理模块220可以将该来自辅操作端的操控指令变换为当前需要向操作对象发送的操控指令的执行时间所对应的操控指令(如根据原操控指令的执行时间与当前需要向操控对象发送的操控指令的执行时间的时间差值改变原操控指令中的参数的数值,并使改变后的操控指令的执行时间设置为当前需要向操作对象发送的操控指令的执行时间),然后,发送处理模块220将与变换后的操控指令具有相同执行时间的所有操控指令进行加权平均处理,并将加权平均处理后获得的操控指令以及该操控指令的执行时间分别传输至操作对象和其他各操作端。
在本实施例中,由主操作端向操作对象发送的操控指令以及执行时间可以使操作对象根据其接收到的操控指令的执行时间执行相应的操控指令;由主操作端向其他操作端发送的操控指令以及执行时间可以使其他各操作端(如所有辅操作端以及所有观测操作端)中的预报模块250分别根据操作端接收到的操控指令以及执行时间同步展现操作对象的当前状态。另外,由主操作端向操作对象发送的操控指令以及执行时间可以使主操作端中的预报模块250根据发送处理模块220发送的操控指令以及执行时间同步展现操作对象的当前状态。由于操作对象、主操作端、辅操作端以及观测操作端始终保持时间同步,而不同的操作端均是根据操控指令的执行时间模拟展现操作对象的当前状态,因此,本实施例的装置可以使所有操作端所展现的操作对象的当前状态具有同步同态性。
具体而言,在主操作端处,针对由主操作端传输至操作对象的各操控指令,在当前时间达到相应操控指令的执行时间时,位于主操作端处的预报模块250可以将该操作指令提供给预报模型,有预报模型根据该操控指令展现/报告操作对象的当前状态。
具体而言,在除主操作端之外的其他任意一个操作端(如辅操作端或者观测操作端)处,针对来自主操作端的执行时间不超过当前时间的各操控指令,其他操作端中的预报模块250可以先根据执行时间的排列顺序依次存储在指令桶中,并触发位于本操作端处的预报模型,使预报模型根据当前存储的已经执行过的操控指令以及执行时间将操作对象的当前状态快速回溯到指令桶中的最早执行时间时的状态,然后,其他操作端中的预报模块250触发预报模型根据指令桶中顺序存储的操作指令以及执行时间将操作对象的状态快进到当前时间;之后,针对来自主操作端的执行时间超过当前时间的各操控指令,在当前时间达到相应操控指令的执行时间时,其他操作端中的预报模块250将相应操控指令提供给预报模型,使预报模型根据该操控指令展现操作对象的当前状态。
在此提供的算法以及显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的用于多操作端远程操控单操作对象的系统中的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者系统程序(如计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网的网站上下载得到,也可以在载体信号上提供,或者以任何其他形式提供。
应该注意的是,上述实施例是对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或者步骤等。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干系统的单元权利要求中,这些系统中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (15)
1.一种用于多操作端远程操控单操作对象的方法,其特征在于,所述方法包括:
获取所有操作端中的主操作端与操作对象的传输时延,其中,所有操作端和操作对象时间同步;
基于所述传输时延分别设置需要由主操作端向操作对象发送的各操控指令的执行时间,所述各操控指令包括:主操作端产生的操控指令和/或所有操作端中的辅操作端产生的操控指令;
根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理,使相应的操控指令和相应的执行时间分别由主操作端传输至所述操作对象和其他各操作端。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
定时检测主操作端到操作对象的单向传输时延,并在主操作端本地存储其到操作对象的最大单向传输时延;
且所述获取所有操作端中的主操作端与操作对象的传输时延的步骤包括:从主操作端本地存储的信息中获取主操作端到操作对象的最大单向传输时延。
3.如权利要求1所述的方法,其特征在于,所述辅操作端包括:与主操作端之间的单向传输时延小于传输时延阈值的操作端;
且所述所有操作端包括:观测操作端,所述观测操作端包括:与主操作端之间的传输时延不小于传输时延阈值的操作端。
4.如权利要求3所述的方法,其特征在于,所述传输时延阈值包括:预定系数和主操作端与操作对象的传输时延的乘积;且所述预定系数的取值范围为:
大于1且不大于
其中,为作为主操作端的第j个操作端与第一个操作端之间的传输时延,为作为主操作端的第j个操作端与第二个操作端之间的传输时延,为作为主操作端的第j个操作端与第j-1个操作端之间的传输时延,为作为主操作端的第j个操作端与第j+1个操作端之间的传输时延,为作为主操作端的第j个操作端与第n个操作端之间的传输时延,n为操作端的总数量,为作为主操作端的第j个操作端与操作对象之间的传输时延,且表示取以及中的最大值。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
根据期望参与共同操控操作对象的操作端数量和/或期望操控操作对象的操作时间间隔要求设置预定系数的取值大小;
且所述期望参与共同操控的操作端数量越多以及期望操控操作对象的操作时间间隔要求越长,则所述预定系数越大,所述期望参与共同操控的操作端数量越少以及期望操控操作对象的操作时间间隔要求越短,则所述预定系数越小。
6.如权利要求4所述的方法,其特征在于,所述基于所述传输时延分别设置需要由主操作端向操作对象发送的各操控指令的执行时间的步骤包括:
针对主操作端产生的操控指令而言,将该操控指令的执行时间设置为主操作端向操作对象发送该操控指令的时间与所述传输时延阈值之和;
针对辅操作端产生的操控指令而言,将该操控指令的执行时间设置为该辅操作端向主操作端发送该操控指令的时间与所述传输时延阈值之和。
7.如权利要求1至6中任一权利要求所述的方法,其特征在于,所述根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理的步骤包括:
对辅操作端产生并传输至主操作端处的操控指令进行操控指令安全性检测,并根据预定发送策略对主操作端产生的操控指令以及来自辅操作端的且通过安全性检测的操控指令进行发送处理。
8.如权利要求1至6中任一权利要求所述的方法,其特征在于,所述预定发送策略包括:对具有相同执行时间的不同操控指令进行加权平均处理。
9.如权利要求1至6中任一权利要求所述的方法,其特征在于,所述方法还包括:
在主操作端处,针对由主操作端传输至操作对象的各操控指令,在当前时间达到相应操控指令的执行时间时,根据该操控指令展现操作对象的当前状态;
在除主操作端之外的其他任意一个操作端处,针对来自主操作端的执行时间不超过当前时间的各操控指令,将操作对象的当前状态回溯到执行时间不超过当前时间的各操控指令中的最早执行时间,并根据执行时间不超过当前时间的各操作指令的执行时间顺序将操作对象的状态快进到当前时间;
在除主操作端之外的其他任意一个操作端处,针对来自主操作端的执行时间超过当前时间的各操控指令,在当前时间达到相应操控指令的执行时间时,根据该操控指令展现操作对象的当前状态。
10.一种用于多操作端远程操控单操作对象的装置,包括:
获取时延模块,用于获取所有操作端中的主操作端与操作对象的传输时延,其中,所有操作端和操作对象时间同步;
设置执行时间模块,用于基于所述传输时延分别设置需要由主操作端向操作对象发送的各操控指令的执行时间,所述各操控指令包括:主操作端产生的操控指令和/或所有操作端中的辅操作端产生的操控指令;
发送处理模块,用于根据预定发送策略对汇聚在主操作端处的来自各操作端的操控指令进行发送处理,使相应的操控指令和相应的执行时间分别由主操作端传输至所述操作对象和其他各操作端。
11.如权利要求10所述的装置,其特征在于,所述装置还包括:
传输时延维护模块,用于定时检测主操作端到操作对象的单向传输时延,并在主操作端本地存储其到操作对象的最大单向传输时延;
且所述获取时延模块具体用于:
从主操作端本地存储的信息中获取主操作端到操作对象的最大单向传输时延。
12.如权利要求10所述的装置,其特征在于,所述装置还包括:
设置操作端模块,用于将与主操作端之间的单向传输时延小于传输时延阈值的操作端设置为辅操作端,与主操作端之间的传输时延不小于传输时延阈值的操作端设置为观测操作端。
13.如权利要求12所述的装置,其特征在于,所述设置执行时间模块具体用于:
针对主操作端产生的操控指令而言,将该操控指令的执行时间设置为主操作端向操作对象发送该操控指令的时间与所述传输时延阈值之和;
针对辅操作端产生的操控指令而言,将该操控指令的执行时间设置为该辅操作端向主操作端发送该操控指令的时间与所述传输时延阈值之和。
14.如权利要求10至13中任一权利要求所述的装置,其特征在于,所述发送处理模块具体用于:
对辅操作端产生并传输至主操作端处的操控指令进行操控指令安全性检测,并根据预定发送策略对主操作端产生的操控指令以及来自辅操作端的且通过安全性检测的操控指令进行发送处理。
15.如权利要求10至13中任一权利要求所述的装置,其特征在于,所述装置还包括:
预报模块,用于在主操作端处,针对由主操作端传输至操作对象的各操控指令,在当前时间达到相应操控指令的执行时间时,根据该操控指令展现操作对象的当前状态;
用于在除主操作端之外的其他任意一个操作端处,针对来自主操作端的执行时间不超过当前时间的各操控指令,将操作对象的当前状态回溯到执行时间不超过当前时间的各操控指令中的最早执行时间,并根据执行时间不超过当前时间的各操作指令的执行时间顺序将操作对象的状态快进到当前时间;
用于在除主操作端之外的其他任意一个操作端处,针对来自主操作端的执行时间超过当前时间的各操控指令,在当前时间达到相应操控指令的执行时间时,根据该操控指令展现操作对象的当前状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610919657.7A CN106426169B (zh) | 2016-10-21 | 2016-10-21 | 用于多操作端远程操控单操作对象的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610919657.7A CN106426169B (zh) | 2016-10-21 | 2016-10-21 | 用于多操作端远程操控单操作对象的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106426169A CN106426169A (zh) | 2017-02-22 |
CN106426169B true CN106426169B (zh) | 2018-11-20 |
Family
ID=58176806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610919657.7A Active CN106426169B (zh) | 2016-10-21 | 2016-10-21 | 用于多操作端远程操控单操作对象的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106426169B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108537418B (zh) * | 2018-03-22 | 2021-05-07 | 中国科学院力学研究所 | 用于评估多操作端远程操控多操作对象的方法及系统 |
CN111421537A (zh) * | 2020-03-19 | 2020-07-17 | 武汉联影智融医疗科技有限公司 | 远程控制系统 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100421495C (zh) * | 2005-06-27 | 2008-09-24 | 华为技术有限公司 | 在设备管理中同步操作时间的方法及终端设备 |
CN102123073B (zh) * | 2010-01-07 | 2014-10-08 | 华为技术有限公司 | 数据包重排序方法及装置 |
JP5389726B2 (ja) * | 2010-04-01 | 2014-01-15 | 株式会社日立製作所 | 作業遅延監視方法、作業管理装置および作業管理プログラム |
CN103685389A (zh) * | 2012-09-13 | 2014-03-26 | 卓望数码技术(深圳)有限公司 | 一种远程控制数据终端实现用户界面交互的系统及方法 |
CN104079957B (zh) * | 2014-06-25 | 2017-09-01 | 广东欧珀移动通信有限公司 | 一种多媒体设备同步操作的方法及系统 |
CN105610727B (zh) * | 2015-11-06 | 2019-02-12 | 瑞斯康达科技发展股份有限公司 | 一种网络数据传输方法及装置 |
CN105743599B (zh) * | 2016-04-13 | 2018-06-29 | 电子科技大学 | 一种动态网络高精度传输同步与延迟补偿方法 |
-
2016
- 2016-10-21 CN CN201610919657.7A patent/CN106426169B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106426169A (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108025436A (zh) | 实时控制系统、实时控制装置及系统控制方法 | |
CN105930580B (zh) | 一种用于电力系统和信息通信系统联合仿真的时间同步与数据交换的装置及其方法 | |
CN106426169B (zh) | 用于多操作端远程操控单操作对象的方法和装置 | |
US8731714B2 (en) | Concurrent path planning with one or more humanoid robots | |
JP2015075803A5 (ja) | データ処理管理方法、情報処理装置およびデータ処理管理プログラム | |
CN105527881B (zh) | 一种指令处理方法及装置 | |
CN105701040B (zh) | 一种激活内存的方法及装置 | |
CN107169513B (zh) | 控制数据使用顺序的分布式机器学习系统及其方法 | |
JP4929449B2 (ja) | 強化学習装置および強化学習方法 | |
CN105631921B (zh) | 图像数据的处理方法及装置 | |
CN110231995A (zh) | 一种基于Actor模型的任务调度方法、装置及存储介质 | |
CN106534271B (zh) | 用于多操作端远程操控多操作对象的方法和装置 | |
CN102323917A (zh) | 一种基于共享内存实现多进程共享gpu的方法 | |
CN104270287B (zh) | 一种报文乱序检测方法及装置 | |
CN105049240B (zh) | 一种消息处理方法及服务器 | |
CN105677491B (zh) | 一种数据传输方法及装置 | |
CN103686303A (zh) | 一种显示正在加载图标的方法及设备 | |
CN108170511A (zh) | 一种docker镜像获取方法、装置、设备及存储介质 | |
WO2015140910A1 (ja) | プログラマブルロジックコントローラ | |
CN108121596A (zh) | 数据传输方法及装置、存储介质、电子设备 | |
CN110659119B (zh) | 一种图片处理方法、装置及系统 | |
CN105786333B (zh) | 移动终端的操作方法及装置 | |
CN104239218B (zh) | 一种实时软件压力测试用例生成方法及装置 | |
JP2014225169A5 (zh) | ||
CN110247818A (zh) | 一种数据监控方法、装置、存储介质和服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |