ROS1 Noetic 笔记

ROS1 Noetic 笔记

安装ROS1

根据当前Ubuntu系统版本下载对应的ROS版本
ROS1各个版本说明链接: http://wiki.ros.org/Distributions
ROS2各个版本说明链接: http://docs.ros.org/en/humble/Releases.html
笔记中记录安装ROS1 Noetic的过程。

设置安装源

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

设置密钥

sudo apt install curl # if you haven't already installed curl
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

安装完整版

sudo apt install ros-noetic-desktop-full 

设置环境

 source /opt/ros/noetic/setup.bash 

如果需要确定ROS环境是否已经配置成功,可通过下面指令查看环境变量设置
printenv | grep ROS
为了避免每次运行ros都需要先重新指定环境,可以将环境配置.bashrc文件中,在每次进入用户目录时候shell都会自动执行.basrc脚本文件。

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc 

安装依软件包

sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
sudo apt install python3-rosdep 
sudo rosdep init
rosdep update

使用ROS

创建工作空间

新建工作目录,并在该工作目录下创建src文件夹,以下示例为在当前目录下创建catkin_ws工作空间和src文件夹,并运行catkin_make,在src中自动生成CMakeLists.txt文件以及工作空间中的其他文件夹和文件。注意src文件中存储 包->节点、消息定义、主题、服务等元素。

mkdir -p ./catkin_ws/src
cd ./catkin_ws/
catkin_make

将当前工作空间相关环境配置到当前运行环境中,使用以下指令。注意在新终端中都需要执行该指令。

source devel/setup.bash

查看当前ROS包路径配置

 echo $ROS_PACKAGE_PATH

ROS文件导航系统

安装

sudo apt-get install ros-noetic-ros-tutorials

常用软件指令

rospack find [package name]
roscd <package or stack>[/subdir]
rosls <package or stack>[/subdir]

创建包

进入src文件夹内,创建包,示例中的包名为pkg_demo,其中包名后为依赖包。指令执行成功后,会在包名对应目录下生成package.xml和CMakeLists.txt。

catkin_create_pkg pkg_demo std_msgs rospy roscpp

进入工作空间目录,重新编译,编译完成后再次配置环境,见前创建空间相关说明。
目录结构

workspace_folder/        -- WORKSPACE
  src/                   -- SOURCE SPACE
    CMakeLists.txt       -- 'Toplevel' CMake file, provided by catkin
    package_1/
      CMakeLists.txt     -- CMakeLists.txt file for package_1
      package.xml        -- Package manifest for package_1
      msg/               -- message file define
      srv/               -- server define
      script/            -- run py file
    ...
    package_n/
      CMakeLists.txt     -- CMakeLists.txt file for package_n
      package.xml        -- Package manifest for package_n
      msg/               -- message file define
      srv/               -- server define
      script/            -- run py file

创建节点和运行节点请见教程
http://wiki.ros.org/ROS/Tutorials/WritingPublisherSubscriber(python)
http://wiki.ros.org/ROS/Tutorials/ExaminingPublisherSubscriber

常用工具

rosrun rqt_plot rqt_plot   #图像绘制工作
rosrun rqt_graph rqt_graph #主题数据流向图
posted @ 2022-11-26 18:55  前端人生  阅读(214)  评论(0编辑  收藏  举报