# ws_618_ros1_bridge **Repository Path**: wty-yy/ws_618_ros1_bridge ## Basic Information - **Project Name**: ws_618_ros1_bridge - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-08 - **Last Updated**: 2025-07-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README > 由于`source`带有ros1_bridge的项目时,会同时将ROS1, ROS2添加到环境变量,无法启动rviz2,因此单独作为一个项目 # Kuavo上位机ros1_bridge ## 编译 ### 不包含Customed Msgs (弃用) ros1_bridge安装方法 ```bash cd ws_bridge source /opt/ros/noetic/setup.sh source install/setup.sh # 第一次编译可能需要16分钟左右 colcon build --symlink-install --packages-select ros1_bridge --cmake-force-configure ``` 使用方法参考[wty-yy/ws_618](https://gitee.com/wty-yy/ws_618) ### 包含Customed Msgs (当前使用) > 参考[ros-humble-ros1-bridge-builder](https://github.com/TommyChangUMD/ros-humble-ros1-bridge-builder?tab=readme-ov-file#checking-example-custom-message),[custom_msgs](https://github.com/TommyChangUMD/custom_msgs),以及[ros2_bridge_custom_interfaces](https://github.com/lFatality/ros2_bridge_custom_interfaces) - [x] TODO: 将`ws_ros1`和`ws_ros2`中加入`ManiProcessCmd`自定义消息,并用`ros1_bridge`进行通讯 自定义的Msg包含: - ManiProcessCmd: ```srv string level1_name string level2_name float64 value ``` 1.编译ros1 ```bash cd ws_ros1 source /opt/ros/noetic/setup.zsh catkin make ``` 2.编译ros2 ```bash cd ws_ros2 source /opt/ros/humble/setup.zsh colcon build ``` 3.编译bridge ```bash # 在项目根目录下编译即可 source /opt/ros/noetic/setup.zsh source /opt/ros/humble/setup.zsh source ws_ros1/devel/setup.zsh source ws_ros2/install/setup.zsh colcon build --symlink-install --packages-select ros1_bridge --cmake-force-configure ``` ## 运行 ### 一键启动脚本 ```bash chmod +x run.sh ./run.sh ``` ### 转发指定topic 将[bridge.yml](ws_bridge/src/ros1_bridge/config/bridge.yaml)拷贝到下位机上,分别配置好上下位机的`ROS_MASTER_URI, ROS_IP` ```bash # 下位机, 加载刚刚拷贝的yaml rosparam load bridge.yaml # 上位机, 在项目根目录下, 启动转发 source install/setup.zsh ros2 run ros1_bridge parameter_bridge # 指定转发的topic ``` ### 转发全部topic (不用) ```bash # 在项目根目录下 source install/setup.zsh ros2 run ros1_bridge dynamic_bridge # 自动转发全部的topic ```