[发明专利]面向机器人ROS程序的自动崩溃恢复方法和系统有效
申请号: | 202110360990.X | 申请日: | 2021-04-02 |
公开(公告)号: | CN113127248B | 公开(公告)日: | 2022-08-09 |
发明(设计)人: | 白家驹;邹永浩;胡事民 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F11/07 | 分类号: | G06F11/07;G06F11/30 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 蒋娟 |
地址: | 100084 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 机器人 ros 程序 自动 崩溃 恢复 方法 系统 | ||
本发明提供一种面向机器人ROS程序的自动崩溃恢复方法和系统,其中恢复方法包括:在目标程序运行时,监测目标程序运行状态、定时设置检查点并记录关键信息及接收的信息;当监测到所述目标程序崩溃时,使机器人进入安全状态、使所述目标程序进入隔离状态、并执行崩溃恢复操作;所述崩溃恢复操作包括:重启所述目标程序,基于所述检查点恢复关键信息,并将所述目标程序重放在最后一次设置检查点后接收的信息。本发明提出了面向机器人ROS程序的自动崩溃恢复方法,利用程序隔离技术,可以防止ROS程序在恢复过程中与其他程序相互影响,防止恢复失败;利用检查点和消息重放相结合的技术,可正确高效地恢复不同类型的ROS程序。
技术领域
本发明涉及机器人系统领域,尤其涉及一种面向机器人ROS程序的自动崩溃恢复方法和系统。
背景技术
ROS是一种机器人软件开发程序和工具库,提供了硬件抽象、设备驱动、库函数、可视化、消息传递和软件包管理等功能,在现有机器人开发和应用中被广泛使用。在机器人系统中,通常有多个ROS程序同时运行,每个程序执行自己的特定任务,不同程序之间通过发布与订阅消息相互沟通,从而相互配合共同完成机器人的总体功能。该结构使得相同的ROS程序可以在不同机器人系统中重复使用,降低机器人系统的开发难度和成本。
但是,ROS程序在运行过程中,可能由于系统配置、环境异常或者代码缺陷等原因发生崩溃。如果该程序无法准确地被恢复,则机器人将无法正常继续工作。该问题对于工作在无人环境(例如沙漠、森林和太空等)的机器人来说,是非常严重和危险的。为了进行程序的崩溃恢复,ROS系统只为用户提供了一种默认恢复手段,即在崩溃后重启。但是,这种恢复方式无法正确完整地恢复目标程序在崩溃前的数据,可能导致崩溃恢复后,目标程序执行出现异常。例如,机器人路径规划程序在崩溃重启后,由于丢失机器人的当前位置与目标位置信息,使机器人路径规划错误,可能造成撞击障碍物的严重后果。在ROS Answers网站中,很多开发者在使用崩溃后重启的方法时出现了机器人运行异常的问题。因此,为ROS程序设计正确高效的崩溃恢复方法,以提高机器人系统的鲁棒性,是十分重要的。
检查点和消息重放作为两种传统的崩溃恢复机制,在分布式系统、操作系统和数据库等传统程序中被广泛使用。检查点机制一般以某个固定时间间隔自动保存程序部分必要或全部信息。然而,该机制会丢失相邻检查点之间的数据,影响崩溃恢复的完整性和正确性。消息重放机制会保存从程序启动至崩溃的所有消息,在恢复时重新将这些消息重放给目标程序,使目标程序重新恢复至崩溃时的状态。然而,该机制可能由于消息重放时间可能较长,增加崩溃恢复的时间开销。而且,不同于传统程序,在机器人系统中,由于周围环境仍在不断变化,恢复ROS程序时,恢复的内容可能已经与当前环境不一致。此外,在崩溃恢复时,目标程序与其他程序之间可能会发生消息传递,从而影响目标程序的恢复过程和其他程序的运行状态。因此,简单复用检查点和消息重放机制对ROS程序来说是不可行的。
因此,设计一种正确高效的面向机器人ROS程序的自动崩溃恢复方法成为了机器人系统开发和维护中亟待解决的问题。
发明内容
本发明提供一种面向机器人ROS程序的自动崩溃恢复方法和系统,用以解决现有技术中存在的技术缺陷。
本发明提供一种面向机器人ROS程序的自动崩溃恢复方法,包括:
在目标程序运行时,监测目标程序运行状态、定时设置检查点并记录关键信息及接收的信息;
当监测到所述目标程序崩溃时,使机器人进入安全状态、使所述目标程序进入隔离状态、并执行崩溃恢复操作;
所述崩溃恢复操作包括:重启所述目标程序,基于所述检查点恢复关键信息,并将所述目标程序重放在最后一次设置检查点后接收的信息。
根据本发明提供的面向机器人ROS程序的自动崩溃恢复方法,所述在目标程序运行时,监测目标程序运行状态、定时设置检查点并记录关键信息及接收的信息之前,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110360990.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:智能变频增氧控制方法及装置
- 下一篇:膜电极及其制备方法与燃料电池