CN105897509B - 一种基于云计算的机器人软件运行及仿真*** - Google Patents
一种基于云计算的机器人软件运行及仿真*** Download PDFInfo
- Publication number
- CN105897509B CN105897509B CN201610216341.1A CN201610216341A CN105897509B CN 105897509 B CN105897509 B CN 105897509B CN 201610216341 A CN201610216341 A CN 201610216341A CN 105897509 B CN105897509 B CN 105897509B
- Authority
- CN
- China
- Prior art keywords
- robot
- cloud
- software
- running
- node
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Manipulator (AREA)
Abstract
本发明涉及一种基于云计算的机器人软件运行及仿真***,包括机器人本地端运行软件子***、机器人云端运行软件子***、以及机器人本地端运行软件子***与机器人云端运行软件子***的通讯接口。与现有技术相比,本发明具有高性能、通用性好、扩展性好等优点。
Description
技术领域
本发明涉及一种机器人技术,尤其是涉及一种基于云计算的机器人软件运行及仿真***。
背景技术
随着科技发展,机器人已经走进了我们生活,它既可以接受人类指挥,又可以运行预先编排的程序,协助或取代人力工作。随着机器人的功能层次化要求的加深,计算平台的扩展,使用的硬件日益复杂,为机器人编写软件这一工作也变得越来越复杂繁重。为了简化编程工作,许多机器人软件开发平台应运而生。按照“平台化”的思想,在机器人领域引入操作***软件的概念,促进了机器人硬件的标准化和软件的模块化,成为推动机器人技术和产业高速发展的催化剂,是机器人软件技术的未来主流的演化方向。
机器人软件平台的初期研究主要集中于中间件和软件框架等层面,典型项目包括Player、OpenRTM-aist、OROCOS、ROS等。其中当前最为活跃的是机器人操作***ROS(RobotOperating System)项目。ROS运行于Ubuntu等本地操作***之上,由通信基础设施、机器人相关的软件包、开发和运行工具集等组成,能够为机器人应用开发提供驱动程序、硬件抽象、资源管理、通信管理、实用工具等类似操作***的功能。ROS可看成使用ROS特定消息连接的多个软件节点组成的***。目前,ROS包含了2000多个针对不同机器人平台的常用软件节点包,已经应用于上百种地面、空中、水面和水下无人***,有望成为机器人应用软件平台的事实标准。
但是,ROS软件框架及其功节点能模块目前仅能运行在本地的基于Ubuntu操作***的多节点异构计算机集群上。受限于本地计算机有限的计算能力、存储能力、供电能力,基于ROS软件***的机器人不能够充分使用计算密级型的复杂算法,不方便使用基于互联网的多种服务,并且缺少一套在线的仿真模拟测试环境。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种高性能、通用性好、扩展性好的基于云计算的机器人软件运行及仿真***。
本发明的目的可以通过以下技术方案来实现:
一种基于云计算的机器人软件运行及仿真***,其特征在于,包括机器人本地端运行软件子***、机器人云端运行软件子***、以及机器人本地端运行软件子***与机器人云端运行软件子***的通讯接口。
所述的机器人本地端运行软件子***包括:
原生ROS***功能节点,用于执行机器人本地端运行所必须的传感器输入以及执行器输出;
桥接节点,用于把本地的ROS消息转发到机器人云端运行软件子***,并且接收机器人云端运行软件子***的消息转成本地的ROS消息。
所述的机器人本地端运行软件子***与机器人云端运行软件子***的通讯接口用于在通信网络上收发ROS消息。
所述的ROS消息为ROS机器人软件***定义的协议,直接使用网络传递或在HTTP协议上传递。对于需要保证实时性、可靠性等性能要求的ROS消息传递,通讯机制必须基于有服务质量能力的网络传递。
所述的机器人云端运行软件子***运行在公有云或私有云服务器集群平台的计算容器环境中,计算容器环境即是轻量级的虚拟化应用沙箱。
所述的机器人云端运行软件子***使用多个计算容器来虚拟化模拟ROS的Ubuntu本地操作***,在计算容器中运行的节点模块包括:
主控节点模块,用于监控所有功能节点的运行状态,处理所有对机器人本地端和云端的配置请求;
机器人代理节点模块,作为机器人本地端软件子***的代理,收发机器人本地端传过来的消息,并转化为能在云端计算容器间使用的ROS消息;
云端任务节点模块,用于执行计算任务以及节点间的通讯。
所述的云端任务节点模块设有多个,分布在多个计算容器环境里。
所述的云端任务节点模块包括:
云端任务节点,为在云端容器中运行无需修改的原生ROS节点,利用云端计算资源执行计算密集型任务,如图像处理、导航、反运动学计算等;;
云服务代理节点,为能够调用互联网服务的服务代理节点,作为代理调用基于互联网的服务,如在线搜索、语音识别等,该类节点将互联网服务的数据转换成标准的ROS消息;
仿真环境节点,为在云端容器中运行的仿真验证环境节点,用于在线执行机器人的仿真和与机器人交互的运行环境的仿真。
与现有技术相比,本发明具有以下优点:
1)高性能,本发明提供一种云计算平台,机器人软件中的计算密级型算法等软件节点模块可在云平台中运行,并且可与在本地运行的软件节点模块构成完整的机器人软件***;
2)通用性好,云平台的软件框架兼容当前的ROS软件节点模块,已有的ROS软件节点模块可不加修改的在云平台中运行;
3)扩展性好,云平台中提供可以调用互联网服务的软件节点模块,用于机器人软件的功能扩展;
4)云平台中提供一种通用的在线机器人仿真验证环境。
附图说明
图1为本发明的结构示意图;
其中11、机器人本地端运行软件子***;21、机器人云端运行软件子***;22、互联网云服务;31、在网络上传递的ROS消息;32、使用HTTP协议在网络上传递的ROS消息。
图2为本发明机器人云端运行软件子***的进一步结构示意图;
其中210、云端计算容器;211、云端主控节点;212、机器人代理节点;213、云端任务节点;214、云服务代理节点;215、仿真环境节点。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
本发明基于云计算的机器人软件运行及仿真***,如图1所示,包括三部分,机器人本地端运行软件子***11,机器人云端运行软件子***21,机器人本地端运行软件子***11与机器人云端运行软件子***21之间的通讯接口。
如图2所示,机器人云端运行软件子***21又可进一步分解,包括云端运行容器环境210、主控节点211、机器人代理节点212、云端任务节点213、云服务代理节点214和仿真环境节点215。
机器人本地端运行软件子***11运行原生ROS的功能节点,处理传感器输入和执行器输出,同时加入云端的桥接节点,负责收发ROS消息到云端运行环境。
使用无线网络在机器人本地端和云端传递ROS消息。为了保证消息传递的实时性,在IP网络协议栈上使用预留资源和最小收发节拍的服务质量保证策略。
机器人云端软件使用在公有云上的Docker计算容器环境210,容器提供了Ubuntu的虚拟环境,节点集合在Docker中运行。主控节点211负责根据云端软件配置,启动加载所有的节点,然后开始监控所有节点运行状态。当有节点健康监控出现问题,或计算负载不够时,主控节点根据配置启动新的节点。多个任务节点213完成原生ROS的节点任务,利用云端计算资源执行图像处理、在线地图构建的计算密集型任务。机器人代理节点212作为机器人本地端的代理,负责接收本地端传来的视觉传感器数据,转换成云端的标准ROS消息,并发送生成的地图拓扑数据给机器人本地端。云服务代理节点214负责调用云服务完成语音识别功能,通过代理节点212将命令发送给机器人。仿真环境节点215基于机器人的模型和环境模型建立在线的机器人仿真***,能够在机器人在真实环境中测试前,进行仿真测试。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种基于云计算的机器人软件运行及仿真***,其特征在于,包括机器人本地端运行软件子***、机器人云端运行软件子***、以及机器人本地端运行软件子***与机器人云端运行软件子***的通讯接口;所述的机器人云端运行软件子***运行在公有云或私有云服务器集群平台的计算容器环境中;
所述的机器人云端运行软件子***使用多个计算容器来虚拟化模拟ROS的Ubuntu本地操作***,在计算容器中运行的节点模块包括:
主控节点模块,用于监控所有功能节点的运行状态,处理所有对机器人本地端和云端的配置请求;
机器人代理节点模块,作为机器人本地端软件子***的代理,收发机器人本地端传过来的消息,并转化为能在云端计算容器间使用的ROS消息;
云端任务节点模块,用于执行计算任务以及节点间的通讯;
机器人软件中的计算密级型算法的软件节点模块可在云平台中运行,并且可与在本地运行的软件节点模块构成完整的机器人软件***,云平台的软件框架兼容当前的ROS软件节点模块,已有的ROS软件节点模块可不加修改的在云平台中运行。
2.根据权利要求1所述的一种基于云计算的机器人软件运行及仿真***,其特征在于,所述的机器人本地端运行软件子***包括:
原生ROS***功能节点,用于执行机器人本地端运行所必须的传感器输入以及执行器输出;
桥接节点,用于把本地的ROS消息转发到机器人云端运行软件子***,并且接收机器人云端运行软件子***的消息转成本地的ROS消息。
3.根据权利要求1所述的一种基于云计算的机器人软件运行及仿真***,其特征在于,所述的机器人本地端运行软件子***与机器人云端运行软件子***的通讯接口用于在通信网络上收发ROS消息。
4.根据权利要求3所述的一种基于云计算的机器人软件运行及仿真***,其特征在于,所述的ROS消息为ROS机器人软件***定义的协议,直接使用网络传递或在HTTP协议上传递。
5.根据权利要求1所述的一种基于云计算的机器人软件运行及仿真***,其特征在于,所述的云端任务节点模块设有多个,分布在多个计算容器环境里。
6.根据权利要求1或5所述的一种基于云计算的机器人软件运行及仿真***,其特征在于,所述的云端任务节点模块包括:
云端任务节点,为在云端容器中运行无需修改的原生ROS节点,利用云端计算资源执行计算密集型任务;
云服务代理节点,为能够调用互联网服务的服务代理节点,作为代理调用基于互联网的服务,该类节点将互联网服务的数据转换成标准的ROS消息;
仿真环境节点,为在云端容器中运行的仿真验证环境节点,用于在线执行机器人的仿真和与机器人交互的运行环境的仿真。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610216341.1A CN105897509B (zh) | 2016-04-08 | 2016-04-08 | 一种基于云计算的机器人软件运行及仿真*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610216341.1A CN105897509B (zh) | 2016-04-08 | 2016-04-08 | 一种基于云计算的机器人软件运行及仿真*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105897509A CN105897509A (zh) | 2016-08-24 |
CN105897509B true CN105897509B (zh) | 2020-04-07 |
Family
ID=57012227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610216341.1A Expired - Fee Related CN105897509B (zh) | 2016-04-08 | 2016-04-08 | 一种基于云计算的机器人软件运行及仿真*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105897509B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326087B (zh) * | 2016-08-31 | 2019-04-19 | 北京光年无限科技有限公司 | 基于机器人操作***的网页体验方法及*** |
CN106936932B (zh) * | 2017-04-26 | 2019-07-26 | 中国人民解放军国防科学技术大学 | 一种通过云服务协议访问机器人软件包的方法 |
CN107020635B (zh) * | 2017-05-04 | 2019-06-21 | 中国电子科技集团公司第三十二研究所 | 在多机器人上运行多主节点机器人操作***的方法 |
JP7016884B2 (ja) * | 2017-05-11 | 2022-02-07 | 達闥機器人有限公司 | ロボット制御とサービス提供方法、装置及び電子機器 |
CN109062079A (zh) * | 2018-08-31 | 2018-12-21 | 南京邮电大学 | 基于ros的水下机器人多自由度运动控制的仿真方法 |
CN111177877A (zh) * | 2018-10-24 | 2020-05-19 | 百度在线网络技术(北京)有限公司 | 基于应用容器引擎的本地仿真方法、装置及存储介质 |
CN111522256A (zh) * | 2020-05-07 | 2020-08-11 | 北京神舟航天软件技术有限公司 | 一种基于Docker的分布式无人机集群仿真方法 |
US11693714B2 (en) | 2020-12-28 | 2023-07-04 | Montycloud Inc | System and method for facilitating management of cloud infrastructure by using smart bots |
CN113218383A (zh) * | 2021-05-10 | 2021-08-06 | 山东新一代信息产业技术研究院有限公司 | 一种云端机器人地图构建方法及*** |
CN114157997B (zh) * | 2021-11-26 | 2023-04-07 | 山东新一代信息产业技术研究院有限公司 | 一种iros话题桥接方法、设备及介质 |
CN117056028B (zh) * | 2023-09-25 | 2024-01-09 | 之江实验室 | 机器人仿真平台搭建方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102196039A (zh) * | 2011-04-13 | 2011-09-21 | 中国科学院深圳先进技术研究院 | 基于云计算的多机器人***及其实现方法 |
CN104360633A (zh) * | 2014-10-10 | 2015-02-18 | 南开大学 | 一种面向服务机器人的人机交互*** |
WO2016014774A1 (en) * | 2014-07-24 | 2016-01-28 | Google Inc. | Methods and systems for generating instructions for a robotic system to carry out a task |
WO2016032807A1 (en) * | 2014-08-25 | 2016-03-03 | Google Inc. | Methods and systems for augmented reality to display virtual representations of robotic device actions |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246546B (zh) * | 2013-05-07 | 2016-01-20 | 山东大学 | 基于云技术的开放式电力***数值仿真***及其仿真方法 |
-
2016
- 2016-04-08 CN CN201610216341.1A patent/CN105897509B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102196039A (zh) * | 2011-04-13 | 2011-09-21 | 中国科学院深圳先进技术研究院 | 基于云计算的多机器人***及其实现方法 |
WO2016014774A1 (en) * | 2014-07-24 | 2016-01-28 | Google Inc. | Methods and systems for generating instructions for a robotic system to carry out a task |
WO2016032807A1 (en) * | 2014-08-25 | 2016-03-03 | Google Inc. | Methods and systems for augmented reality to display virtual representations of robotic device actions |
CN104360633A (zh) * | 2014-10-10 | 2015-02-18 | 南开大学 | 一种面向服务机器人的人机交互*** |
Also Published As
Publication number | Publication date |
---|---|
CN105897509A (zh) | 2016-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105897509B (zh) | 一种基于云计算的机器人软件运行及仿真*** | |
CN104753817B (zh) | 一种云计算消息队列服务本地模拟方法和*** | |
CN113612820A (zh) | 基于SuperEdge和EdgeXFoundry的云边端设备平台控制架构和方法 | |
US9415505B2 (en) | Device and method for dynamic reconfiguration of robot components | |
CN101986272A (zh) | 一种云计算环境下的任务调度方法 | |
CN111158900B (zh) | 轻量化分布式并行计算***及方法 | |
CN109547240B (zh) | 基于边缘计算的智能设备以及接入与设备的解析方法 | |
CN105024939A (zh) | 一种基于OpenFlow的SDN网络环境下分布式控制器*** | |
CN106605213A (zh) | 用于在断续的连通性的情况下进行支持的***、相应的本地设备以及相应的云端计算平台 | |
CN102591717A (zh) | 外接设备和虚拟设备的业务信息处理方法、装置和*** | |
CN113703997A (zh) | 集成多种消息代理的双向异步通信中间件***及实现方法 | |
Årzén et al. | A component-based approach to the design of networked control systems | |
CN111745636B (zh) | 机器人控制方法及控制***、存储介质及电子设备 | |
CN105717820B (zh) | 一种auv的冗余备份检测方法 | |
CN102238086A (zh) | 端点的透明迁移 | |
CN109918140A (zh) | 一种云应用操作控制方法和装置 | |
JP7049641B2 (ja) | 通信デバイス、情報通信端末装置及び通信方法 | |
CN116247816A (zh) | 微电网自动控制***、方法、装置和计算机设备 | |
CN104699799A (zh) | 基于跨***数据传输方法 | |
CN114095343A (zh) | 基于双活***的容灾方法、装置、设备及存储介质 | |
KR102593008B1 (ko) | Opc ua를 이용한 분산형 스마트 팩토리 운영 방법 및 장치 | |
Hwang et al. | An IoT-based cloud data platform with real-time connecting maritime autonomous surface ships | |
CN113190328A (zh) | 一种面向***辨识的容器化云工作流处理***及方法 | |
Svae et al. | Self-adaptive control in cyber-physical systems: the autonomous train experiment | |
Tsuchiya et al. | Development of light-weight RT-component (LwRTC) on embedded processor-application to crawler control subsystem in the physical agent system |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200407 |