跳到主要内容

base_event_info

fourier_msgs/msg/BaseEventInfo

文件

fourier_msgs/msg/BaseEventInfo.msg

描述

基础事件信息消息,用于描述单个事件的详细信息。

定义

元素类型描述
event_typestring事件类型标识符
messagestring事件描述信息
sourcestring事件来源组件
timestampint64时间戳

已定义的事件类型

事件类型说明发布组件触发事件后的播报频率
SystemEventMapLoopClosuremap_loop_closure地图闭环检测slam播报一次
SystemEventObstacleBlockedobstacle_blocked路径被障碍物阻挡collision_monitor播报一次
SystemEventNearObstaclenear_obstacle检测到近处障碍物collision_monitor每1秒
SystemEventNearObstacleWhenStationarynear_obstacle_when_stationary机器人静止时检测到近处障碍物collision_monitor每1秒
SystemEventOutOfMapout_of_map机器人走出地图边界或进入未知区域monitor每5秒
SystemEventEnterForbiddenAreaenter_forbidden_area机器人进入禁区monitor每5秒
SystemEventEnterDangerousAreaenter_dangerous_area机器人进入危险区域(限速区)monitor每5秒
SystemEventLeaveForbiddenArealeave_forbidden_area机器人离开禁区monitor播报一次
SystemEventLeaveDangerousArealeave_dangerous_area机器人离开危险区域(限速区)monitor播报一次
SystemEventGoalInForbiddenAreagoal_in_forbidden_area导航目标点落在禁区内,导航被拒绝navigation播报一次
SystemEventNavigationRecoveryStartednavigation_recovery_started机器人进入恢复模式尝试脱困navigation播报一次

注意:

  • enter_forbidden_area / enter_dangerous_area:机器人位于对应区域内时,每5秒触发一次
  • leave_forbidden_area / leave_dangerous_area:仅在「在区内 → 不在区内」状态切换瞬间触发一次,不重复
  • 区域进出检测在定位模式和建图模式下都生效(定位模式额外要求 odom_status_code == GOOD,建图模式无此要求)
  • 事件消息中包含区域ID、速度限制(危险区)和机器人位置信息
  • goal_in_forbidden_area:在 navigate_to_pose 目标校验阶段检测;目标点在任意禁区多边形内时触发,导航任务立即失败。message 字段示例:Goal pose (1.20, 3.40) lies inside forbidden area id=2 on floor '1F'.
  • goal_in_forbidden_areaenter_forbidden_area 区别:前者校验目标点是否在禁区(导航发起时),后者检测机器人当前位置是否进入禁区(运行中周期性检测)

goal_in_forbidden_area 触发链路

Text
navigate_to_pose BT
└─ GoalNotInForbiddenArea (tick)
├─ map_manager: get_current_floor
├─ map_manager: list_forbidden_areas
└─ 点在禁区内 → EventProvider("navigation") → Humanoid_nav/component_events
└─ events_node 聚合 → /Humanoid_nav/events

map_manager 服务不可用或超时时,条件节点保守返回 SUCCESS(不阻断导航),此时不会发布该事件。

相关消息