论文标题
监视ROS2:从需求到自动机器人
Monitoring ROS2: from Requirements to Autonomous Robots
论文作者
论文摘要
运行时验证(RV)有可能使安全关键系统的安全操作太复杂而无法正式验证,例如机器人操作系统2(ROS2)应用程序。编写正确的监视器本身可能很复杂,监视子系统中的错误威胁着整个任务。本文概述了一种正式的方法,该方法是根据用结构化的自然语言编写的要求为自动机器人生成运行时监视器的概述。我们的方法通过OGMA集成工具将正式的需求启发工具(FRET)与副本(运行时验证框架)集成在一起。 FRET用于用明确的语义指定需求,然后将其自动转化为时间逻辑公式。 OGMA从FRET输出中生成监视规格,该规范已编译为硬实时C99。为了促进ROS2中的监视器的集成,我们已经扩展了OGMA,以生成定义监视节点的ROS2软件包,该节点在新数据可用时运行监视器,并发布任何违规结果。我们方法的目的是将生成的ROS2软件包视为黑匣子,并以最小的努力将它们集成到更大的ROS2系统中。
Runtime verification (RV) has the potential to enable the safe operation of safety-critical systems that are too complex to formally verify, such as Robot Operating System 2 (ROS2) applications. Writing correct monitors can itself be complex, and errors in the monitoring subsystem threaten the mission as a whole. This paper provides an overview of a formal approach to generating runtime monitors for autonomous robots from requirements written in a structured natural language. Our approach integrates the Formal Requirement Elicitation Tool (FRET) with Copilot, a runtime verification framework, through the Ogma integration tool. FRET is used to specify requirements with unambiguous semantics, which are then automatically translated into temporal logic formulae. Ogma generates monitor specifications from the FRET output, which are compiled into hard-real time C99. To facilitate integration of the monitors in ROS2, we have extended Ogma to generate ROS2 packages defining monitoring nodes, which run the monitors when new data becomes available, and publish the results of any violations. The goal of our approach is to treat the generated ROS2 packages as black boxes and integrate them into larger ROS2 systems with minimal effort.