Skip to content

fhs-nb666/StrikeFlow-rviz2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robot RV — ROS2 示例仓库

说明(中文)

这个仓库包含一个教学/演示用的 ROS2(Humble)系统,展示了一个小型 pipeline:

  • robot_solver:预测并“开火”(可配置为随机延迟、运行时开启/关闭)并发布模拟命中 /robot_solver/hit
  • robot_sensor:接收命中信号,发布传感器观测,并在收到 Collect 动作期间暂停或在完成后停止发布。
  • robot_tracker:卡尔曼滤波跟踪器,发布 robot_tracker/target,在目标静止时发起 Collect 动作(或响应命中后等待静止再发起)。
  • robot_controller:实现 Collect action server,发布 robot_controller/collect_startedrobot_controller/collect_done
  • robot_interfaces:消息/服务/动作定义(msg/Target.msg, msg/RobotState.msg, action/Collect.action 等)。
  • robot_bringup:bringup launch 文件,便于启动整套系统(包括可视化节点)。

快速开始(开发机上)

先安装依赖并确保使用 ROS2 Humble 环境:

# 进入工作区
cd ~/rv
# 如果还没安装,确保已安装 ROS2 Humble
# source ROS2 环境(替换为你系统的路径)
source /opt/ros/humble/setup.bash

# 构建整个工作区(第一次建议全量构建)
colcon build
# 构建完成后 source 安装空间
source install/setup.bash

启动整套演示(带 RViz 可视化):

# 在工作区根目录
ros2 launch robot_bringup bringup.launch.py

常用单包构建 / 调试

# 仅构建 tracker
colcon build --packages-select robot_tracker
# 仅构建 solver
colcon build --packages-select robot_solver
# 构建完成后别忘了
source install/setup.bash

控制与交互

  • 运行时可以通过 topic /robot_solver/enable_fire(类型 std_msgs/Bool)控制 solver 是否允许开火。仓库中有一个用于 RViz 的交互式按钮脚本 robot_tracker/scripts/viz_markers.py,它会在 RViz 中创建 InteractiveMarker(话题名 /fire_toggle/...),点击按钮会往这个 topic 发布 true/false,从而开启或关闭开火行为。
  • robot_controller 会在回收开始时发布 robot_controller/collect_started,完成时发布 robot_controller/collect_donerobot_sensorrobot_tracker 会订阅这些话题来暂停或恢复行为。

重要文件与位置

  • src/robot_solver/:solver 节点代码与参数
  • src/robot_sensor/:模拟传感器节点
  • src/robot_tracker/:跟踪与可视化脚本(scripts/viz_markers.py
  • src/robot_controller/:Collect action server
  • src/robot_interfaces/:消息 / 动作 / 服务定义
  • src/robot_bringup/launch/bringup.launch.py:顶层 bringup 启动文件

列出相关节点

ros2 node list | grep viz

终止可能的 python 脚本进程(在工作区运行时常见)

ps aux | egrep 'viz_markers.py|rviz' --color=auto pkill -f viz_markers.py

重新启动 bringup(运行在工作区根目录)

ros2 launch robot_bringup bringup.launch.py



About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors