ROS 2 for Rust
简介
这是一组项目(rclrs
客户端库、代码生成器、示例等),使开发人员能够用Rust编写ROS 2应用程序。
功能和局限性
目前支持的功能包括:
- 消息生成
- 支持发布者和订阅者
- 借用消息(零拷贝)
- 可调的QoS设置
- 客户端和服务
由于客户端库仍在快速发展,目前没有稳定性保证。
听起来不错,我如何尝试这个?
以下是在vanilla Ubuntu Focal中构建ros2_rust
示例的步骤。有关更多详细信息和选项(包括基于Docker的设置),请参阅构建ros2_rust
软件包的深入指南。
# 安装Rust,例如按照 https://rustup.rs/ 中的描述
# 按照 https://docs.ros.org/en/humble/Installation.html 中的描述安装ROS 2
# 假设您安装了 ROS 2 的最小版本,您需要以下附加软件包:
sudo apt install -y git libclang-dev python3-pip python3-vcstool # libclang-dev 是 bindgen 所需的
# 为 cargo 和 colcon 安装这些插件:
cargo install --debug cargo-ament-build # --debug 更快
pip install git+https://github.com/colcon/colcon-cargo.git
pip install git+https://github.com/colcon/colcon-ros-cargo.git
mkdir -p workspace/src && cd workspace
git clone https://github.com/ros2-rust/ros2_rust.git src/ros2_rust
vcs import src < src/ros2_rust/ros2_rust_humble.repos
. /opt/ros/humble/setup.sh
colcon build
然后,要运行最小发布-订阅示例,请执行以下操作:
# 在新的终端(或 tmux 窗口)
. ./install/setup.sh
ros2 run examples_rclrs_minimal_pub_sub minimal_publisher
# 在新的终端(或 tmux 窗口)
. ./install/setup.sh
ros2 run examples_rclrs_minimal_pub_sub minimal_subscriber
或
# 在新的终端(或 tmux 窗口)
. ./install/setup.sh
ros2 launch examples_rclrs_minimal_pub_sub minimal_pub_sub.launch.xml
其他文档文章: