CN111742298A - 用于互连机器人的方法 - Google Patents

用于互连机器人的方法 Download PDF

Info

Publication number
CN111742298A
CN111742298A CN201980014382.4A CN201980014382A CN111742298A CN 111742298 A CN111742298 A CN 111742298A CN 201980014382 A CN201980014382 A CN 201980014382A CN 111742298 A CN111742298 A CN 111742298A
Authority
CN
China
Prior art keywords
program
robot
message
robots
type
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.)
Granted
Application number
CN201980014382.4A
Other languages
English (en)
Other versions
CN111742298B (zh
Inventor
马尔旺·阿亚伊达
纳迪尔·梅塞
弗雷德里克·瓦伦丁
迪米特里·马尔谢拉
利桑·阿菲拉尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universite de Reims Champagne Ardenne URCA
Original Assignee
Universite de Reims Champagne Ardenne URCA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Universite de Reims Champagne Ardenne URCA filed Critical Universite de Reims Champagne Ardenne URCA
Publication of CN111742298A publication Critical patent/CN111742298A/zh
Application granted granted Critical
Publication of CN111742298B publication Critical patent/CN111742298B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1669Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/087Controls for manipulators by means of sensing devices, e.g. viewing or touching devices for sensing other physical parameters, e.g. electrical or chemical properties
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • B25J9/162Mobile manipulator, movable base with manipulator arm mounted on it

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Manipulator (AREA)

Abstract

一种用于将第一机器人(1)与至少一个第二机器人(2、21)互连的方法,每个机器人(1、2、21)至少包括:第一程序(P1),配置为驱动至少一个通信单元;第二程序(P2),所述第二程序(P2)的配置由参数化文件确定,其包括指示两个发送模式,即解释模式或直接模式之一的字段‘typ_service’;第三程序(P3),配置为控制至少一个致动器和/或至少一个传感器。公开的方法包括以下步骤:在从所述第三程序(P3)接收第一消息时,所述第二程序(P2)将所述第一消息转换为第二消息,根据预定的对象结构对所述第二消息进行格式化,所述预定的对象结构包括字段‘typ_msg’,该字段指示三个消息类型,即命令、查询或信息之一;将所述第二消息发送到以下至少一个程序:同一机器人的第一程序(P1)、或另一个机器人的第二程序(P2)。

Description

用于互连机器人的方法
技术领域
本发明涉及连接设备(可移动机器人、传感器等)之间的通信以及这些连接设备的互操作性。
背景技术
已知使用不同类型的可移动机器人,例如人形机器人、带有或不带有机械臂的可移动滑架、无人机等。这些机器人大多与用于获取周围数据的不同传感器相关联,并具有自组网(ad-hoc)通信和不同的操作和监控控制系统。为了通过组织分配要完成的任务以及这些对象之间的协作来使实现这些不同的基本上自主的对象,需要在硬件和软件设备之间进行通信和信息交换的手段,这些手段通常是非常多样化的。
迄今为止,还没有足够通用的接口软件或程序(也称为中间件)来确保这些在物理特性和各自的操作软件方面都多样化的可移动对象(机器人和/或其他数据传感器)之间所需的通信和互操作性,同时特别允许开放高级应用程序服务,以及轻松、统一地集成第三方软件模块。
因此,要解决的问题在于设计一种接口软件,该软件能够特别是通过允许可能属于一个或多个对象群的这些对象互连而将多样化的可移动对象集合在一起,以便可能远程地,一起和/或由一个或多个操作员完成指定任务。
因此,本发明旨在提供对所有或部分该问题的解决方案。
发明内容
为此,本发明涉及一种用于将第一机器人与至少一个第二机器人互连的方法,以及用于管理多个机器人之间的协作的方法,以及至少一个包括配置为执行所述方法的指令的计算机程序。
本发明涉及一种用于使第一机器人与至少一个第二机器人互连的方法,每个机器人至少包括:
监视控制单元,所述监视控制单元包括至少一个处理器和至少一个存储模块;
至少一个外围设备,例如致动器或传感器;
连接到至少一个通信网络的至少一个通信设备;
第一程序P1,配置为引导所述至少一个通信设备,并且包括在所述至少一个处理器上执行的多个第一软件模块;
第二程序P2,包括在所述至少一个处理器上执行的多个第二软件模块,所述第二程序的配置由设置文件确定,所述设置文件包括指示解释模式或直接模式中的发送模式的字段typ_service,所述发送模式表征由所述第二程序发送的消息;
第三程序P3,配置为控制所述至少一个致动器和/或所述至少一个传感器,并且包括在所述至少一个处理器上执行的多个第三软件模块;
所述方法包括在所述第二程序接收到源自所述第三程序的第一消息之后由每个机器人内的所述第二程序实施的以下步骤:
将所述第一消息转换为第二消息,所述第二消息根据预定的对象结构来格式化,所述对象结构包括字段typ_msg,该字段指示以下类型中所述消息的类型:命令、查询或信息;
将所述第二消息发送到以下至少一个程序:属于同一机器人的第一程序、另一个机器人的第二程序;
所述互连方法还包括在所述第二程序接收到第三消息之后由每个机器人内的所述第二程序实施的以下步骤,所述第三消息源自以下至少一个程序:属于同一机器人的第一程序、另一个机器人的第二程序,当所述第三消息的字段typ_msg指示命令类型或查询类型时,所述第三消息根据所述预定义对象结构来格式化:
当与所述第三消息相关联的设置文件的字段typ_service指示直接发送模式时,将所述第三消息转换成适于由所述第三程序实现的程序部分;和/或
根据所述第二传输协议,向所述第三程序发送所述第三消息的至少一部分或所述程序部分。
有利地,所述第二程序P2用来确保要发送的信息和/或指令的格式化的预定义且通用的对象结构由以下字段组成:
消息类型:命令、信息或查询;
消息子类型:数据(位置、实际、图像、视频等)或命令(前进、后退、停止等)类型;
源:发送方地址,由IP地址/端口对或源名称组成(IP地址/端口对可以与路由表相关联);
目的地:接收方地址,由IP地址/端口对或接收方名称组成;
数据字段的大小;
数据。
根据本发明的一个方面,转换步骤包括在所述第二程序内访问配置文件(属于P2),例如记录在所述至少一个存储模块中的查找表或数据库,所述配置文件向所述第二程序提供适应由所述第三程序实现的程序部分。
优选地,所述配置文件使所述第二程序能够:
在消息的子类型(在上文介绍的对象结构的子类型字段中定义)和数据(在上文介绍的对象结构的数据字段中定义)之间建立对应关系;
选择适合于由所述第三程序实现的程序部分(将命令或查询用机器人的适当语言转换,以便后者能够直接执行)。
根据本发明的一个方面,发送所述第三消息的所述至少一部分或所述程序部分的步骤至少包括:
根据所述第二传输协议,从所述第二程序向第四程序的第四消息的第一发送,
从所述第四程序向所述第三程序的第五消息的第二发送。
根据本发明的一方面,所述第一传输协议用于在所述第一机器人的第二程序和所述第二机器人的第二程序之间发送第六消息。
根据本发明的一个方面,第一、第二、第三、第四、第五和第六交换的消息是JSON格式的。
根据本发明的一方面,所述第一协议为UDP类型。
根据本发明的一方面,所述第二协议为TCP类型。
根据本发明的一个方面,所述至少一个通信设备包括无线通信装置。
根据本发明的一方面,所述无线通信装置包括以下至少一个模块:WIFI类型模块、RFID类型模块、蓝牙类型模块、GSM类型模块。
根据本发明的一方面,如果接收方是所述至少一个第二机器人,则所述第一机器人的第二程序在发送第二消息之前对其进行加密,并且如果发送方是所述至少一个第二机器人,则所述第一机器人的第二程序在转换或发送第三消息之前对其进行解密。
因此,在每个机器人内,所述第二程序适于根据消息的来源和目的地来智能地加密和/或解密消息。
根据本发明的一个方面,所述至少一个第二机器人包括连接到互联网服务器的远程操作员。
根据本发明的一个方面,所述第三程序包括安装在其上的机器人的操作系统以及至少一个致动器和/或至少一个传感器的驱动程序。
本发明还涉及一种用于管理多个机器人之间的协作的方法,所述多个机器人中的每个机器人至少包括:
监视控制单元,所述监视控制单元包括至少一个处理器和至少一个存储模块;
至少一个外围设备,例如致动器或传感器;
连接到至少一个通信网络的至少一个通信设备;
第一程序,配置为引导所述至少一个通信设备,并且包括在所述至少一个处理器上执行的多个第一软件模块;
第二程序,包括在所述至少一个处理器上执行的多个软件模块;
第三程序,配置为控制所述至少一个致动器和/或所述至少一个传感器,并且包括在所述至少一个处理器上执行的多个第三软件模块;
所述方法包括以下步骤:
由服务器托管或可通过互联网访问的应用层发出任务文件,所述任务文件包括计划的基本任务的列表及其顺序,以及发出外围设备的标识和优先级文件,
通过所述多个机器人中的每个机器人的第一程序的设备服务,接收所述任务文件以及接收所述标识和优先级文件,
通过所述多个机器人中的每个机器人的第一程序向其第二程序发送第一查询类型的消息,以确定所述多个机器人中的每个机器人的至少一个外围设备的每个可用外围设备的标识符,
通过所述多个机器人中的每个机器人的第二程序来实现根据本发明的机器人互连方法,以从(在同一机器人内的)所述第三程序请求并向(在同一机器人内的)所述第一程序发送在所述多个机器人中的每个机器人上可用的外围设备的标识符;
通过所述多个机器人中的每个机器人的第一程序的设备服务,对所述可用的外围设备的标识符进行处理,以生成可由所述多个机器人中的每个机器人可执行的任务列表(每个机器人根据提供给它的外围设备确定可以完成的任务列表),
通过所述第一程序P1的每个谈判/选举服务,向所述多个机器人中的每个机器人和/或服务器的集中服务传输所述多个机器人中的每个机器人可执行的所述任务列表,
通过所述服务器的集中服务和/或跟随机器人的每个谈判/选举服务之间的通信过程,基于所述外围设备的标识和优先级文件以及可执行的任务列表,生成参与任务的机器人列表,
执行所述任务,
同步所述机器人,
监督所述任务的执行。
本发明还涉及一种计算机程序,该计算机程序包括被配置为执行根据本发明的至少一个方法的一组指令。
优选地,本发明涉及一种计算机程序,该计算机程序包括被配置为执行用于互连机器人的方法的一组指令,以及一种计算机程序,该计算机程序包括被配置为执行机器人间协作管理方法的一组指令。
附图说明
为了适当地理解,参照作为非限制性示例表示根据本发明的装置的实施例的附图来描述本发明。
图1是完全集成到其上的根据本发明的第一变型的可移动机器人及其周围的示意图。
图2是完全集成到其上的根据本发明的所述第一变型的一组通信机器人的示意图。
图3是根据第二变型的本发明的架构的示意图,其中,本发明一方面部分地集成到机器人,另一方面,部分地迁移到云上。
图4是根据本发明的不同参与者(机器人、用户)和不同可能的通信信道的示意图。
图5示出了第一机器人R1和第二机器人R3之间的通信。
图6示出了用户U1和机器人R3之间的通信。
图7和图8示意性地示出了根据本发明的机器人协作场景。
具体实施方式
参考图1至图8所示的附图描述本发明及其实施例。
本发明涉及一种方法,该方法由第二程序P2在独立的机器人1上实现,如图1中示意性地表示的那样;P2包括一个或多个子程序或软件模块,并且构成确保第一程序P1和两个其他程序,第三程序P3和第四程序P4之间的接口的软件层;这些程序P1、P3和P4中的每一个包括一个或多个子程序或软件模块,并且各自构成软件层。
如图1所示,机器人1:
与其他机器人2通信,可以向其他机器人2机器人2提供信息和/或命令,和通过其他机器人2接收信息和/或命令,在这两种情况下,可以被动地和/或根据请求,以及
与远程服务器3通信,通过该服务器:
操作员可以远程指定由机器人共同执行的任务,
机器人1可以与其他机器人2通信(信息和/或命令,被动地和/或根据请求)。
根据本发明的一种变型,机器人1和机器人2适于彼此直接且排他地通信(例如在远程服务器3故障的降级操作模式下,或者例如当应进行维护和/或出于与费用相关的原因,无需使用远程服务器3即可继续进行操作)。
在此用于描述该方法的独立机器人1可以是独立机器人或任何其他连接的设备,只要该设备包括图1中表示的主要硬件设备:至少一个外围设备,其为用于移动或负载抓取等的执行器A1、A2类型和/或用于环境数据采集(地理位置、温度等)的传感器C类型;
外围设备的至少一个监视控制单元,包括至少一个处理器4和至少一个存储模块M;在监视控制单元(也如图2所示)的处理器4上执行的程序或软件层P1、P2、P3和P4(适配模块);
至少一个通信设备T1、T2,例如WIFI、蓝牙或GSM通信模块,使所考虑的设备1能够与远程服务器3和/或与另一连接的设备2进行通信。
第一程序P1确保通信设备T1、T2的管理以及对同一机器人或连接设备的子程序之间以及属于两个不同机器人或连接设备的程序和子程序之间交换的消息的传输协议的支持。有利地,第一程序P1包括一组软件模块,例如(但不限于):
协作服务,
谈判/选举服务,
设备服务,
通信总线,除其他外包括外围设备检测服务、数据同步服务。
第二程序P2或第二组子程序或软件模块实现根据本发明的方法。
第一和第二程序P1、P2是通用的,可以部署在任何机器人上,而与操作系统无关。
第三程序P3或第三组子程序或软件模块包括每个机器人或连接设备的特定操作系统,以及与机器人或所考虑的连接设备相关联的致动器和/或传感器的特定驱动程序。有利地,程序P3包括一组软件模块,例如(但不限于):
机器人操作系统(例如:ROS、Universal Robot OS、ABB OS):本地库、导航包...
本地框架:驱动程序,库...
通过本描述,特别是第三程序P3的描述,应该很好地理解,本发明围绕机器人特有的机器人操作系统,以在一个或多个机器人群内提供并保证其互操作性。
第四程序P4,或第四组适配子程序或软件模块,是本发明的唯一软件模块,应与安装本发明的机器人相适配。
机器人和程序P1、P2、P3、P4外部的适配库尤其允许以机器人特有的语言生成所述第四程序的框架。
通过所述适配库生成,并且必须由操作员根据其需要(在函数“dothis”、“dothat”级别)完成的第四程序P4的框架的示例在下面以编程语言用斜体表示(注释以粗体显示):
////////
允许连接到P2的函数
open=socket_open(‘ip’,’port’)
ip、端口是安装P2的机器人或计算机(本地、云)的地址
while(open==false):
open=socket_open(‘ip’,’port’)
end
////////
可用于接收来自P2的信息的函数(逐字段("解释"模式))
def recv_msg():
socket_send_string(‘ready’)
通知P2,机器人已经准备好接收信息
while from==””:
from=socket_read_string()
待命,直到接收到第一字段
end
type=socket_read_ascii_float(1)
然后再逐一接收其他字段
stype=socket_read_string()
size=socket_read_ascii_float(1)
data=socket_read_string()
end
////////////
允许向P2发送信息的函数(将负责向信息中指定的目标发送信息)。
def send_msg(message):
socket_send_string(message)
end
//////////////////////
操作员根据接收到的信息的不同字段的值来定义要采取的行为的函数。因此,函数"dothis"、"dothat"一般将是机器人所特有的一个或一组指令(表征第四程序的性质,该程序是本发明中唯一应适用于机器人的软件模块)
def handle():
if type==”command”:
dothis
if type==”request”
dothat
////////
例如,适配库可在云端提供,或通过可应要求连接到机器人的系统(如本地计算机或平板电脑)提供。
适应库还可以协助操作员定义和配置机器人之间的交互场景。
因此,适配软件模块(第四程序P4)根据操作员的需求进行定制,并且至少部分地通过所述适配库生成。其中,它包括四个功能:
“连接”:该功能允许将机器人连接到软件层P1和P2,特别是基于正确的IP地址/端口对的指示。
“消息发送”:一个消息由多个字段组成,逐个发送,优选地,这些消息由六个字段组成(类型、子类型、源、目的地、大小、数据)。
“消息接收”:接收的数据必须符合特定的结构,详见下文;此外,一旦机器人能够接收数据,程序P4就会向层P2发送消息,以通知其接收消息的能力。
“信息处理”:该功能特别适合于每一种情况,它以特定于机器人的语言定义了一方面要根据接收到的消息和数据,另一方面要根据情况采取的行为。特别地,该功能定义了机器人在其中从第四程序P4向第三程序P3发送命令、查询、信息(机器人的通信行为)的方式。
在每个互连的机器人或设备上,软件层P1配置为通过可用于远程机器人和/或设备之间交换的通信设备将预先适当格式化的消息从一个机器人(或设备)传输到另一个机器人(或设备)和/或远程服务器3。软件层P1和由这些软件层实现的通信设备共同确保了通信总线BC的功能,包括硬件和软件,允许将不同的机器人连接在一起并连接到云。优选地,每个通信总线BC具有专用于其的路由器R,除其他外,允许将机器人直接连接到云。服务器托管的较高软件层(例如HMI或在云中)称为应用程序层。
中间程序或中间软件层(通常称为“中间件”)P2配置为:
一方面,对通过通信总线从较高级别P1和/或其他机器人(尤其是发送方机器人的第二程序)和/或远程服务器3接收的信息或命令进行转换,转换成下层软件层P3可以理解或执行的信息或指令,该下层软件层P3专用于所考虑的机器人,用于引导执行器和/或传感器;
另一方面,在相反的方向上,以通用方式格式化要由所考虑的机器人向其他机器人(或连接的设备)和/或远程服务器3传输的信息或命令消息;接收方机器人或连接的设备的中间件层P2将接收经过通用格式化的消息,然后对其进行转换。
与每个机器人或连接设备的软件层P3和P4是异构的且特定于每个机器人或设备不同,中间软件层P2是通用的。该中间软件层P2确保在专用格式和由软件层P3在每个机器人上实现的指令之间进行接口,以引导所考虑的机器人的执行器和执行器,以及所有机器人和连接设备通用的通用格式;该接口功能特别包括一种机制,用于将根据通用格式接收的信息或命令转换为可以根据接收方机器人的软件层P4或P3中的任何一个执行的信息或指令。
如图2所示,机器人1与之通信的其他机器人2、21可以包括:
与机器人1相同类型的硬件设备(致动器和/或传感器、具有处理器和存储模块的监视控制单元、通信设备),
与机器人1相同类型的软件架构(程序P1、P2),
专用的软件结构(程序P3、P4)。
例如,根据本发明的方法可以允许将包括层P1、P2、P31和P41的机器人1与以下各项互连:
第一机器人2,其具有一个致动器、两个传感器、一个WiFi类型的通信设备,一个包括至少一个处理器和至少一个存储器模块的外围设备的监控控制单元;所述第一机器人2的程序或软件层P1、P2、P32、P42在其处理器上执行;
第二机器人21,其具有六个致动器、两个WiFi和蓝牙类型的通信设备,一个包括至少一个处理器和至少一个存储器模块的外围设备的监控控制单元;所述第二机器人21的程序或软件层P1、P2、P33、P43在其处理器上执行。
每个互连的机器人的程序P1、P2具有同样(相同)的软件模块。
图3示出了本发明的一个实施例,其中机器人(以硬件术语)仅具有有专用于它的程序P3和P4,而通用的通用程序P1和P2迁移到云上。机器人通过硬件和软件通信总线BC以及与路由表TR相关联的至少一个路由器R以及可能通过人机界面HMI与云C和/或至少一个人类用户一起通信。
优选地,所述路由表包括形式为(机器人名称,IP地址:端口)的成对列表,该列表使得有利地集成到第二程序P2中的路由器能够正确地转发消息。因此,机器人仅需知道希望向其发送消息的机器人的名称。
当信息到达第二程序P2并要发送给接收方机器人或设备时,第二程序P2确保根据预定义的通用对象结构对信息和/或要在消息中发送的指令进行格式化,所述结构由以下字段组成。
消息类型:命令、信息或查询;
消息子类型:数据(位置、实际、图像、视频等)或命令(前进、后退、停止等)类型;
源:发送方地址,由IP地址/端口对或源名称组成(IP地址/端口对可以与路由表相关联);
目的地:接收方地址,由IP地址/端口对或接收方名称组成;
数据字段的大小;
数据。
该通用结构使消息可以透明地传输到更高级别(P1和P2)。
软件层P2的配置基于JSON文件格式。该设置文件定义了许多参数,包括:
执行第二程序P2的机器人的IP地址(从服务器查看);
用于识别机器人的名称;
外部侦听端口,第二程序P2必须在此端口上侦听外部消息,
内部监听端口,机器人的第三或第四程序P3、P4必须连接到该端口,
服务类型,其允许指示发送给机器人(希望与之通信)的消息是要由接收方机器人“解释”(接收后),还是按照直接模式传递。
这里所说的“解释”,应该理解为机器人必须通过分析接收到的消息的字段的值来定义其行为。
该解释步骤由第四程序P4执行,并且是通过上文描述的适配库预先配置的。
在直接服务中,如果消息类型是命令或查询,并且借助配置文件,则在接收方机器人上执行的第二程序P2将命令或查询转换为可以在此接收方机器人上直接执行的命令。
根据本发明的一个方面,优选地在将适配文件注入第二程序P2之前,从适配库生成配置文件(例如,通过外部程序)。
优选地,仅当消息由命令和/或对使外部系统能够执行命令的机器人的查询组成时,才以直接模式求助于配置文件。
例如,以下以斜体显示编程语言中的配置文件的结构,特别是将由“/cmd_vel”转换成ROS语言的程序部分或由“movej”转换成UR(Universal Robot)语言的程序部分与命令“move”相匹配。
Figure BDA0002641612180000131
Figure BDA0002641612180000141
第二程序P2与所考虑的机器人的下层软件层P3、P4的模块之间的通信是通过TCP类型的连接执行的,在图3中用实线箭头30表示。属于多个机器人1、2、21的不同第二程序P2之间的通信是根据图3中用虚线箭头40表示的UDP类型的协议执行的。而且,根据图3中由箭头41表示的UDP类型协议来执行到服务器和/或云C的通信。
在图4中示出了本发明的整体操作,以示出另一种通信变型,其中机器人50、60的不同群组通过根据本发明的方法一起通信。这些群组还可包括主机器人51、61,其适于将通过通信总线BC在上游例如从其他群组接收的消息传输给直接用户70、云C或至少一个经过云C的非本地化用户80。
此外,优选地,当新的机器人希望加入一个群组或与至少一个尚未识别出它的其他机器人通信时,根据UDP协议进行第一交换,甚至更优选地根据广播模式进行广播。
由于一组软件层和模块中的大多数是通用的,因此根据本发明的互连方法一方面允许互连同一群组的异构机器人,但也可以将多个群组互连在一起。
命令由现有的应用层(远程HMI、机器人站点或机器人本身的本地HMI、云...)制定。
因此,本发明还涉及一种用于管理异构机器人(具有不同操作系统)之间的协作的方法,该方法尤其包括以下步骤:
从应用层(HMI,云)发出一组表示任务的文件,其中包括计划的基本任务(LTP)的标识符列表和外围设备的优先级文件,
在每个机器人的层P1的服务“设备”级别接收计划的基本任务(LTP)的标识符列表,
(在同一机器人内)将查询类型的消息从P1层发送到P2层,目的是确定该机器人可用的外围设备,
在层P2的级别上实现根据本发明的互连方法,以便:
以适当的方式将查询发送到层P3和/或P4,
恢复源自层P3和/或P4的所需外围设备信息,
将根据预定义的对象结构转换的所述信息发送到层P1,
在“设备”服务级别处理在P1层级别接收到的信息,并生成机器人可行的任务列表(LTR),
从层P1的“谈判/选举”服务向所有机器人发送该机器人可行的任务清单(LTR),
在不同机器人的不同层P1的不同“谈判/选举”服务之间交换谈判消息,
根据所交换的谈判消息和外围设备的优先级文件,在云级别和/或在机器人之间生成参与任务(LRM)的机器人的列表(文件),
触发执行任务进度计划,
同步机器人,
监督机器人之间的协作。
优选地,使任务正式化的该组文件至少包括:要执行的基本任务的标识符的列表(LTP)、与所述任务的排序的约束有关的参数的文件、完成任务所必需的外围设备(执行器、传感器等)的标识符的列表、外围设备的优先级文件。
优选地,经由属于通信总线BC的外围设备检测服务来执行与层P1之间的传输。
优选地,机器人可行的任务列表(LTR)采用文件的形式或数据库的形式,其中除其他外还包含机器人的标识符以及基本任务标识符(LTP)标识符列表中它可以完成的任务的标识符的列表。
优选地,该组交换文件是JSON格式。
可以通过云中的程序或通过专用接口HMI中的用户(无论是迁移还是本地)自动触发任务的执行。
有利地,通过属于层P1的通信总线BC的“数据同步”服务来恢复外围设备数据。
有利地,在每个机器人的层P1的“协作”服务级别上执行机器人间协作的监督。
图5示出了第一机器人R1和第二机器人R3之间的通信。现在,我们将使用斜体描述与编程语言相应指令的这种通信的不同步骤:
消息M(R1)P3>P2从机器人R1的第三程序P3发送到机器人R1的第二程序P2:
M(R1)P3>P2=“info/position/robot3/3.0.1”.
然后,在机器人R1中由层P2执行处理T(R1)P2,以根据预定义的对象结构格式化和/或重构REC消息:
Type=info
Subtype=position
Target=robot3
Source=robot1
Size=5
Data=”3,0,1”
接下来是所谓的通过层P2将SE消息序列化的步骤,例如以JSON格式,该格式特别允许确保互操作性并易于追溯存储信息:
{“py/object”:”message.message”,
“src”:{py/tuple”:[“10.12.1.130”,48000”]},
“protocol”:0,
“target”:{py/tuple”:[10.12.1.131,48000”]};
“type_msg”:“info”,
“subtype”:“position”,
“size”:5,
“data”:“3,0,1”}
接下来是通过层P2对消息SI签名的步骤(例如,通过代码中内部密钥的加密签名),此步骤确保JSON链的完整性:
087aa394104a8b6d9a3c06d35c768a0bcefadc9
{“py/object”:“message.message”,
“src”:{py/tuple”:[“10.12.1.130”,48000”]},
“protocol”:0,
“target”:{py/tuple”:[10.12.1.131,48000”]},
“type_msg”:“info”,
“subtype”:“position”,
“size”:5,
“data”:“3,0,1”}
消息M(R1>R3)从机器人R1发送到机器人R3。
然后,在机器人R3的第二程序中执行处理T(R3)P2,以检查VSI签名并重构REC消息,此消息随后由机器人R3的第二程序P2发送M(R3)P2>P3至机器人R3的第三程序P3。
最后,图6的示意图说明了用户U1和机器人R3之间的通信。我们将使用斜体描述与编程语言相应指令的这种通信的不同步骤:
用户U1向服务器WS发送消息M(U1>WS):
M(U1>WS)=《Command:move:user1:robot3:0.1,0.0,0.3》
然后在服务器WS中执行处理T(WS),以根据预定义的对象结构构成C消息:
Type=command
Subtype=move
Target=robot3
Source=user1
Size=11
Data=“0.1,0.0,0.3”
接下来是所谓的序列化SE和签名SI消息的步骤:
087aa394104a8b6d9a3c06d35c768a0bcefadc9
{“py/object”:“message.message”,
“src”:“web-user1”,
“protocol”:0,
“target”:{py/tuple”:[10.12.1.131,48000”]},
“type_msg”:“command”,
“subtype”:“move”,
“size”:11,
“data”:“0.1,0.0,0.3”}
消息M(WS>R3)从服务器WS发送到机器人R3。
根据预期的场景,然后,在机器人R3的第二程序中执行处理T(R3)P2,以检查VSI签名并重构REC消息,此消息随后由机器人R3的第二程序P2发送至机器人R3的第三程序P3,即:
根据“直接”模式(M(R3;D)P2>P3),其中从第二程序向第三程序,通过配置文件,以适用于机器人的形式提供命令/查询(在机器人授权外部系统执行命令的情况下):
例如,对于具有OR ROS的机器人:
p=ros.Publisher()
p.publish(“/cmd_vel”,msg.data)
根据“解释”模式(M(R3;I)P2>P4>P3),其中(通常)信息或命令/查询(在机器人未授权外部系统执行命令的情况下)被提供给机器人,经由第四程序从第二程序提供给第三程序。
在这种模式下,第二程序逐字段地(根据对象结构)向第四程序发送消息,并且第四程序将适当的元素提供给第三程序,这些适当的元素在第四程序中生成并且依赖于所述第四程序的结构(框架、旨在采取的行为的程序...)。
交换的安全性
本发明涉及各种通信信道。其中包括:
根据与第一程序P1和/或第二程序P2有关的UDP类型协议的通信,
机器人之间根据TCP类型协议进行的通信,
在云与第一程序P1和第二程序P2之间根据UDP类型协议进行的通信。
有利地,不同的通信信道是安全的。
不同的技术选择是可能的,并且本领域技术人员知道如何选择最适合于预期应用的技术。
例如,可以提到:
在根据UDP协议进行通信的情况下:
使用直接以太网链接,
使用协议DTLS(“数据报传输层安全性”),
使用加密序列(“密码套件”)来实现加密算法,例如AES(“高级加密标准”)和哈希算法,例如SHA(“安全哈希算法”),
在根据TCP协议进行通信的情况下:
通过SSL协议(“安全套接字层”)成对进行加密和身份验证,或者
通过TLS协议(“传输层安全性”)成对进行加密和身份验证,无论是否通过开源实施(例如:OpenSSL),并实施加密序列(“密码套件”),从而可以通过以下方式设置所述TLS协议的安全性:
一方面,通过非对称加密(例如RSA)或通过Diffie-Hellman算法(无论是否匿名)进行密钥交换,
另一方面,机制可以确保交换数据的私密性和完整性,例如通过诸如AES(“高级加密标准”)的加密算法和诸如SHA(“安全哈希算法”)的哈希算法。
工业应用场景示例
例如,这些用于互连和管理机器人之间的协作的方法允许完成如图7和8所示的场景。
图7展示了四个异构机器人:
R1:带有激光测距仪的可移动机器人,搭载OS ROS
R2:带爪的机械臂,搭载OS ABB
R3:具有品牌与R2不同的机械臂,并搭载OS ABB的机器人,以及
R4:搭载OS Universal Robot的无人机
每个机器人都使用自己的机器人操作系统。
如图8的流程图所示,在执行此任务期间,配备了湿度传感器、温度传感器和RFID标签的机器人R1在收到机器人R2(也具有RFID标签)发出的消息后,离开其起始区域Z1-ZD,敦促其加入区域Z2中,该区域Z2例如对应于装载区域ZCH。为了到达该区域,机器人R1必须使用例如来自其自身的测距仪和激光测距仪的数据进行自主导航。一旦到达区域Z2的水平,机器人R1必须与RFID标签通信,该标签将向其指示其处理零件的停止区域。
在第二阶段,它会通知机器人R2已准备好回收要运输的物体。因此,机器人R2回收零件并将其存放在机器人R1上,然后在装载结束时通知它。
接下来,机器人R1朝着处理区域Z3-ZTR移动。一旦到达所述区域Z3的水平,它将通知机器人R3有关零件温度的信息。
后者根据零件的温度执行“处理A”或“处理B”。完成此阶段后,机器人R4会进入区域Z3,并根据其温度将零件回收以存放在区域Z4A或Z4B中。同时,机器人R1在区域Z1中返回并等待下一个循环。
因此,如该场景的示例所示,根据本发明的方法通过提供大部分通用,易于安装和使用(仍然保留了机器人的初始机器人操作系统)的软件架构(层P1、P2),在异构机器人和传感器之间实现顺畅通信,和有效的消息转换和传输原理,从而使高层软件之间的通信变得透明。

Claims (15)

1.一种用于使第一机器人(1)与至少一个第二机器人(2、21)互连的方法,每个机器人(1、2、21)至少包括:
监视控制单元,所述监视控制单元包括至少一个处理器(4)和至少一个存储模块(M);
至少一个致动器或传感器类型的外围设备;
至少一个通信设备;
第一程序(P1),配置为引导所述至少一个通信设备,并且包括在所述至少一个处理器上执行的多个第一软件模块;
第二程序(P2),包括在所述至少一个处理器上执行的多个第二软件模块,所述第二程序(P2)的配置由设置文件确定,所述设置文件包括在解释模式或直接模式中指示发送模式的字段typ_service,所述发送模式表征由所述第二程序(P2)发送的消息;
第三程序(P3),配置为控制所述至少一个致动器和/或所述至少一个传感器,并且包括在所述至少一个处理器上执行的多个第三软件模块;
所述方法包括在所述第二程序(P2)接收到源自所述第三程序(P3)的第一消息之后由每个机器人(1、2、21)内的所述第二程序(P2)实施的以下步骤:
将所述第一消息转换为第二消息,所述第二消息根据预定的对象结构来格式化,所述预定的对象结构包括字段typ_msg,该字段指示以下类型中所述消息的类型:命令、查询或信息;
将所述第二消息发送到以下至少一个程序:属于同一机器人的第一程序(P1)、另一个机器人的第二程序(P2);
所述互连方法还包括在所述第二程序(2)接收到第三消息之后由每个机器人(1、2、21)内的所述第二程序(P2)实施的以下步骤,所述第三消息源自以下至少一个程序:属于同一机器人的第一程序(P1)、另一个机器人的第二程序(P2),当所述第三消息的字段typ_msg指示命令类型或查询类型时,所述第三消息根据所述预定义的对象结构来格式化,步骤包括:
当与所述第三消息相关联的设置文件的字段typ_service指示直接发送模式时,将所述第三消息转换成适于由所述第三程序(P3)实现的程序部分;和/或
根据第二传输协议,向所述第三程序(P3)发送所述第三消息的至少一部分或所述程序部分。
2.根据权利要求1所述的方法,其中转换步骤包括在所述第二程序内访问记录在所述至少一个存储模块(M)中的配置文件,所述配置文件向所述第二程序提供适于由所述第三程序(P3)实现的程序部分。
3.根据权利要求1或2所述的方法,其中发送所述第三消息的所述至少一部分或所述程序部分的步骤至少包括:
根据第二传输协议,从所述第二程序(P2)向第四程序(P4)进行第四消息的第一发送,
从所述第四程序(P4)向所述第三程序(P3)进行第五消息的第二发送。
4.根据前述权利要求中任一项所述的方法,其中所述第一传输协议用于在所述第一机器人(1、2、21)的第二程序P2和所述第二机器人(1、2、21)的第二程序P2之间发送第六消息。
5.根据前述权利要求中任一项所述的方法,其中交换的所述第一、第二、第三、第四、第五和第六消息是JSON格式的。
6.根据权利要求3至5中任一项所述的方法,其中所述第一协议为UDP类型。
7.根据权利要求1至6中任一项所述的方法,其中所述第二协议为TCP类型。
8.根据前述权利要求中任一项所述的方法,其中所述至少一个电信设备包括无线通信装置。
9.根据前述权利要求中任一项所述的方法,其中所述无线通信装置包括以下至少一个模块:WIFI类型模块、RFID类型模块、蓝牙类型模块、GSM类型模块。
10.根据前述权利要求中的任一项所述的方法,其中如果接收方是至少一个第二机器人(2),则所述第二程序(P2)在发送第二消息之前对其进行加密,并且如果发送方是至少一个第二机器人(2),则所述第二程序(P2)在转换或发送第三消息之前对其进行解密。
11.根据前述权利要求中任一项所述的方法,其中所述至少一个第二机器人包括连接到互联网服务器的远程操作员。
12.根据前述权利要求中任一项所述的方法,其中所述第三程序(P3)包括所述机器人的操作系统以及至少一个致动器(A1、A2)和/或至少一个传感器(C)的驱动程序。
13.一种多个机器人(1、2、21)之间的协作管理方法,所述多个机器人(1、2、21)中的每个机器人至少包括:
监视控制单元,所述监视控制单元包括至少一个处理器(4)和至少一个存储模块(M);
至少一个致动器(A1、A2)或传感器(C)类型的外围设备;
连接到至少一个通信网络的至少一个通信设备;
第一程序(P1),配置为引导所述至少一个通信设备,并且包括在所述至少一个处理器上执行的多个第一软件模块;
第二程序(P2),包括在所述至少一个处理器上执行的多个第二软件模块;
第三程序(P3),配置为控制所述至少一个致动器和/或所述至少一个传感器,并且包括在所述至少一个处理器上执行的多个第三软件模块;
所述方法包括以下步骤:
由服务器(3)托管或能够通过互联网访问的应用层发出任务文件,所述任务文件包括计划的基本任务的列表及其顺序,以及发出外围设备的标识和优先级文件,
通过所述多个机器人中的每个机器人的第一程序(P1)的设备服务,接收所述任务文件以及接收所述标识和优先级文件,
通过所述多个机器人中的每个机器人的第一程序(P1)向其第二程序(P2)发送第一查询类型的消息,以确定所述多个机器人(1、2、21)中的每个机器人的至少一个外围设备的每个可用外围设备(A1、A2、C)的标识符,
通过所述多个机器人(1、2、21)中的每个机器人的第二程序(P2)来实现根据前述权利要求中任一项所述的机器人互连方法,以从所述第三程序(P3)请求并向所述第一程序(P1)发送在所述多个机器人(1、2、21)中的每个机器人上可用的外围设备(A1、A2、C)的标识符;
通过所述多个机器人(1、2、21)中的每个机器人的第一程序(P1)的设备服务,对所述可用的外围设备(A1、A2、C)的标识符进行处理,以生成所述多个机器人(1、2、21)中的每个机器人(1、2、21)可执行的任务列表,
通过所述第一程序P1的每个谈判/选举服务,向所述多个机器人(1、2、21)中的每个机器人(1、2、21)和/或服务器的集中服务发送所述多个机器人(1、2、21)中的每个机器人(1、2、21)可执行的所述任务列表,
通过所述服务器的集中服务和/或跟随机器人(1、2、21)的每个谈判/选举服务之间的通信过程,基于所述外围设备的标识和优先级文件以及可执行的任务列表,生成参与任务的机器人列表,
执行所述任务,
同步所述机器人,
监督所述任务的执行。
14.一种计算机程序,包括被配置为执行根据权利要求1至12中任一项所述的用于互连机器人的方法的一组指令。
15.一种计算机程序,包括被配置为执行根据权利要求13所述的协作管理方法的一组指令。
CN201980014382.4A 2018-02-20 2019-02-14 用于互连机器人的方法 Active CN111742298B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1851429A FR3078178B1 (fr) 2018-02-20 2018-02-20 Procede d’interconnexion entre robots
FR18/51429 2018-02-20
PCT/FR2019/050328 WO2019162595A1 (fr) 2018-02-20 2019-02-14 Procédé d'interconnexion entre robots

Publications (2)

Publication Number Publication Date
CN111742298A true CN111742298A (zh) 2020-10-02
CN111742298B CN111742298B (zh) 2024-03-22

Family

ID=62683312

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980014382.4A Active CN111742298B (zh) 2018-02-20 2019-02-14 用于互连机器人的方法

Country Status (11)

Country Link
US (1) US11890761B2 (zh)
EP (1) EP3756091B1 (zh)
JP (1) JP7266048B2 (zh)
KR (1) KR20200135358A (zh)
CN (1) CN111742298B (zh)
BR (1) BR112020016874A2 (zh)
CA (1) CA3089452A1 (zh)
ES (1) ES2923288T3 (zh)
FR (1) FR3078178B1 (zh)
SG (1) SG11202007674SA (zh)
WO (1) WO2019162595A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020209746A1 (de) * 2020-07-31 2022-02-03 Airbus Operations Gmbh Unbemanntes bodengebundenes fahrzeug zur aufrechterhaltungvon hygiene und verfahren zur verbesserung von hygienebedingungen

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003111981A (ja) * 2001-10-09 2003-04-15 Sony Corp ロボット装置及びその制御方法、ロボットのための情報提供システム及び情報提供方法、並びに記憶媒体
WO2007136167A1 (en) * 2006-05-24 2007-11-29 Simlab Co., Ltd. Communication system among toy robots using messenger and toy robot linked with the same
US20140074286A1 (en) * 2012-09-07 2014-03-13 Fanuc America Corporation System to monitor/analyze robot related information and display on a smart device
US20150134115A1 (en) * 2013-11-12 2015-05-14 Irobot Corporation Commanding A Mobile Robot Using Glyphs
CN105429858A (zh) * 2015-12-11 2016-03-23 中国人民解放军国防科学技术大学 一种多机器人间实时消息传递方法
CN105934723A (zh) * 2014-02-07 2016-09-07 Abb瑞士股份有限公司 对机器人单元装置的网页浏览器访问

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374155B1 (en) * 1999-11-24 2002-04-16 Personal Robotics, Inc. Autonomous multi-platform robot system
JP2002189608A (ja) * 2000-08-28 2002-07-05 Sony Corp 通信装置及び通信方法、情報処理システム、プログラム作成方法、ネットワークシステム、並びにロボット装置
US6687571B1 (en) * 2001-04-24 2004-02-03 Sandia Corporation Cooperating mobile robots
JP2003285285A (ja) * 2002-03-27 2003-10-07 Nec Corp ソフトウェアエージェントを有するロボット装置及びその制御方法とプログラム
US7844364B2 (en) * 2002-04-16 2010-11-30 Irobot Corporation Systems and methods for dispersing and clustering a plurality of robotic devices
JP4792823B2 (ja) * 2005-06-09 2011-10-12 ソニー株式会社 ネットワーク・システム、移動体装置及びその制御方法、並びにコンピュータ・プログラム
US20090254671A1 (en) 2008-03-31 2009-10-08 France Telecom Remote control of a device by a terminal
KR20120072021A (ko) * 2010-12-23 2012-07-03 한국전자통신연구원 로봇 플러그인 중계 시스템 및 방법
JP5698614B2 (ja) * 2011-06-22 2015-04-08 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation コンテキスト情報処理システム及び方法
KR101871430B1 (ko) * 2011-11-14 2018-06-26 한국전자통신연구원 소형 로봇의 다중 운용 방법 및 그 운용 시스템
JP6096874B1 (ja) * 2015-12-21 2017-03-15 ファナック株式会社 セルコントロールシステムにおける製造セルの状態変化管理システム
US10375019B2 (en) * 2017-10-06 2019-08-06 Stealthpath, Inc. Methods for internet communication security

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003111981A (ja) * 2001-10-09 2003-04-15 Sony Corp ロボット装置及びその制御方法、ロボットのための情報提供システム及び情報提供方法、並びに記憶媒体
WO2007136167A1 (en) * 2006-05-24 2007-11-29 Simlab Co., Ltd. Communication system among toy robots using messenger and toy robot linked with the same
US20140074286A1 (en) * 2012-09-07 2014-03-13 Fanuc America Corporation System to monitor/analyze robot related information and display on a smart device
US20150134115A1 (en) * 2013-11-12 2015-05-14 Irobot Corporation Commanding A Mobile Robot Using Glyphs
CN105934723A (zh) * 2014-02-07 2016-09-07 Abb瑞士股份有限公司 对机器人单元装置的网页浏览器访问
US20160325435A1 (en) * 2014-02-07 2016-11-10 Abb Technology Ltd Web Browser Access To Robot Cell Devices
CN105429858A (zh) * 2015-12-11 2016-03-23 中国人民解放军国防科学技术大学 一种多机器人间实时消息传递方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
郑斯凯 等: "移动机器人的Android远程控制终端软件设计", 工业控制计算机, no. 12 *
黎振胜 等: "移动机器人远程人机交互软件平台设计与实现", 计算机测量与控制, no. 04 *

Also Published As

Publication number Publication date
US20200376669A1 (en) 2020-12-03
WO2019162595A1 (fr) 2019-08-29
EP3756091B1 (fr) 2022-04-13
BR112020016874A2 (pt) 2020-12-15
EP3756091A1 (fr) 2020-12-30
CA3089452A1 (fr) 2019-08-29
JP7266048B2 (ja) 2023-04-27
ES2923288T3 (es) 2022-09-26
US11890761B2 (en) 2024-02-06
FR3078178A1 (fr) 2019-08-23
FR3078178B1 (fr) 2020-02-28
JP2021514515A (ja) 2021-06-10
CN111742298B (zh) 2024-03-22
SG11202007674SA (en) 2020-09-29
KR20200135358A (ko) 2020-12-02

Similar Documents

Publication Publication Date Title
US11700232B2 (en) Publishing data across a data diode for secured process control communications
US10257163B2 (en) Secured process control communications
US10834766B2 (en) Unmanned vehicle controlling system and method of operating same
US20180115528A1 (en) Securely Transporting Data Across a Data Diode for Secured Process Control Communications
CN110943991B (zh) 变电站巡检与生产管理业务联动系统及方法
CN105373091A (zh) 确认设备对过程控制系统安全
EP3534257B1 (en) System for updating software in moving body using vehicle-mounted gateway
US9661477B1 (en) Collaborative robotic device work group
CN111352602A (zh) 一种led屏幕的控制方法、装置、设备以及存储介质
CN111742298B (zh) 用于互连机器人的方法
JP2024513674A (ja) ポータブルセットアップデバイスを使用して、デバイスにプロセスオートメーションシステムに対する権限を付与すること
JP2014222871A (ja) プロフィバスdpのマスタ装置
WO2019244312A1 (ja) データ処理装置、データ処理システム、データ処理方法及びプログラム
Martins et al. MRGS: A multi-robot SLAM framework for ROS with efficient information sharing
CN106597873A (zh) 用于对自动化设备进行远程维护的方法、装置和系统
US20230336442A1 (en) Method and data-transfer-system for transferring data between a data source and a data sink
JP6622507B2 (ja) 位置情報送信装置の設置異常検知方法、及びそれを用いた位置情報送信装置及び位置情報送信システム
CN116619390B (zh) 一种基于视觉图像的机械臂控制方法及装置
Hollingsworth et al. Intelligent Flexible Manufacturing Cell
Cheng et al. Communication Standards
Løken Facilitating for combining Industry 4.0 and Digital Twins with 5G Connectivity to Integrate Robots in Digital Production Factories
KR20150042427A (ko) 로봇제어기와 단말장치간의 인터페이스 장치 및 그 방법
AAU et al. Deliverable D2. 3 High level architecture (first version)
Radelja et al. Concept for online web machine tool control based on open source
Lundell et al. Design of a Telematics System for Saab Giraffe AMB

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
GR01 Patent grant
GR01 Patent grant