【无标题】

ROS1环境搭建与配置指南

1.更新系统
sudo apt update && sudo apt upgrade -y
用AI生成此博客的项目代码
bash
2.安装依赖
sudo apt install -y git build-essential cmake python3-pip python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool libboost-all-dev
用AI生成此博客的项目代码
bash
3.创建 ROS1 工作空间
mkdir -p ~/ros_catkin_ws
cd ~/ros_catkin_ws
用AI生成此博客的项目代码
bash
4.下载 ROS1 源码
rosinstall_generator desktop --rosdistro noetic --deps --tar > noetic-desktop.rosinstall
wstool init src noetic-desktop.rosinstall
wstool update -t src
用AI生成此博客的项目代码
bash
第二行代码安装卡顿后,另开端口运行第三行代码会补充安装

5.解决依赖问题
部分依赖在 Ubuntu22.04 环境下存在冲突,需要手动调整。进入下面指定目录,打开package.xml文件,删除<run_depend>hddtemp</run_depend>这一行,以解决冲突问题:

cd ~/ros_catkin_ws/src/diagnostics/diagnostic_common_diagnostics
用AI生成此博客的项目代码
bash
6.解决兼容问题
由于 ROS1 部分组件与 Ubuntu22.04 存在兼容性问题,需替换相关组件。先删除原有冲突组件,再从特定分支下载兼容版本:

cd ~/ros_catkin_ws/src
rm -r rosconsole urdf
git clone https://github.com/dreuter/rosconsole.git -b noetic-jammy
git clone https://github.com/dreuter/urdf.git -b set-cxx-version
用AI生成此博客的项目代码
bash
7.安装依赖
sudo pip install rosdepc
sudo rosdepc init
rosdepc update
cd ~/ros_catkin_ws
rosdepc install --from-paths src --ignore-src --rosdistro noetic -y
用AI生成此博客的项目代码
bash
8.设置 ROS1 环境变量
因为系统中已安装 ROS2,为避免环境变量冲突,在编译 ROS1 前需指定当前使用的 ROS 版本为 Noetic,在终端输入:

export ROS_DISTRO=noetic
用AI生成此博客的项目代码
bash
9.编译 ROS1
cd ~/ros_catkin_ws
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release
用AI生成此博客的项目代码
bash
10.配置环境变量
为方便在 ROS1 和 ROS2 之间切换,需配置环境变量。打开用户主目录下的.bashrc文件,在末尾添加以下代码:

echo “ros noetic(1) or ros2 humble(2)?”
read edition

清除所有 ROS 相关环境变量

function clean_ros_env() {
# 清除标准 ROS 变量
unset ROS_DISTRO ROS_VERSION ROS_PACKAGE_PATH ROS_ETC_DIR
unset ROS_MASTER_URI ROS_HOSTNAME ROS_IP

# 清除 ROS2 特有变量
unset ROS_DOMAIN_ID RMW_IMPLEMENTATION AMENT_PREFIX_PATH
unset COLCON_PREFIX_PATH ROS_LOCALHOST_ONLY

# 清除 CMAKE 相关变量
unset CMAKE_PREFIX_PATH

# 重置 PYTHONPATH
export PYTHONPATH=$(echo $PYTHONPATH | tr ':' '\n' | grep -v '/opt/ros' | grep -v '/home/bg/ros_catkin_ws' | paste -sd: -)

# 重置 PATH
export PATH=$(echo $PATH | tr ':' '\n' | grep -v '/opt/ros' | grep -v '/home/bg/ros_catkin_ws' | grep -v '/opt/ros/humble' | paste -sd: -)

# 重置 LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$(echo $LD_LIBRARY_PATH | tr ':' '\n' | grep -v '/opt/ros' | grep -v '/home/bg/ros_catkin_ws' | paste -sd: -)

}

清理环境

clean_ros_env

根据选择加载环境

if [ “$edition” -eq “1” ]; then
echo “Loading ROS Noetic environment”
source ~/ros_catkin_ws/install_isolated/setup.bash
export ROS_MASTER_URI=http://localhost:11311
export ROS_HOSTNAME=localhost
else
echo “Loading ROS2 Humble environment”
source /opt/ros/humble/setup.bash
export ROS_DOMAIN_ID=42
export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
fi

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值