2 个不稳定版本

0.1.0 2023 年 3 月 31 日
0.0.7 2022 年 12 月 9 日

#202 in 机器人

Apache-2.0

205KB
5K SLoC

arci-ros2

crates.io docs docs

arci 的 ROS2 实现

依赖

安装

sudo apt install ros-foxy-nav2-msgs ros-foxy-geometry-msgs # for navigation
sudo apt install ros-foxy-ros2-control ros-foxy-ros2-controllers # for ros2_control
sudo apt install libclang-dev # for r2r

构建

使用具有功能 ros2openrr 构建

source /opt/ros/foxy/setup.bash
cargo build --features ros2

如何使用(navigation2)

安装 navigation2

在此阅读并安装 navigation2 和模拟器。

启动模拟器

ros2 launch nav2_bringup tb3_simulation_launch.py

运行命令行工具

通过命令行发送导航目标

在发送目标姿态之前,不要忘记使用 rviz2D Pose Estimate 按钮设置机器人的初始姿态。

./target/debug/openrr_apps_robot_command --config-path ./openrr-apps/config/turtlebot3_robot_client_config_ros2.toml send_navigation_goal -- -0.5 0.2 -1.5

用于发送速度的 GUI

./target/debug/openrr_apps_velocity_sender --config-path ./openrr-apps/config/turtlebot3_robot_client_config_ros2.toml

如何使用(ros2_control)

安装 ros2_control_demos

克隆并构建 ros2_control_demos

  • 如果 ROS2_DISTRO 是 foxy:检出 foxy 分支,安装它,并 source install/setup.bash
  • 如果 ROS2_DISTRO 是 galactic:将仓库中的所有 "foxy" 替换为 "galactic",安装它,并 source install/setup.bash

启动 rrbot 示例和控制台

启动 rrbot 示例

ros2 launch ros2_control_demo_bringup rrbot.launch.py

停止现有控制器。

ros2 control set_controller_state joint_state_broadcaster stop
ros2 control set_controller_state forward_position_controller stop

启动 position_trajectory_controllerjoint_state_broadcaster

ros2 control load_controller position_trajectory_controller --set-state start
ros2 control set_controller_state joint_state_broadcaster start

运行命令行工具

运行 arci-ros2 的 ros2_control 示例

cargo run --package arci-ros2 --example ros2_control --features ros2

许可证

根据 Apache 许可证,版本 2.0 许可。

依赖

~13–23MB
~321K SLoC