# 如何在 ROS1 中构建和运行 在 ROS 环境下使用雷达驱动,需要安装 ROS 相关依赖库。 - Ubuntu 16.04 - ROS Kinetic desktop - Ubuntu 18.04 - ROS Melodic desktop - Ubuntu 20.04 - ROS Noetic desktop 安装方法请参考 http://wiki.ros.org。 **建议安装 ROS desktop-full 版。这个过程会自动安装一些兼容版本的依赖库,如 PCL 库等。这样可以避免花大量时间,去逐个安装和配置它们**。 ## 安装依赖 ### 安装 Yaml(必需) 版本号: >= v0.5.2 *若已安装 ROS desktop-full, 可跳过* 安装方法如下: ```bash $ sudo apt-get update $ sudo apt-get install -y libyaml-cpp-dev ``` ### 安装 libpcap(必需) 版本号: >= v1.7.4 安装方法如下: ```bash $ sudo apt-get install -y libpcap-dev ``` ## 直接编译 (1) 打开工程内的 *CMakeLists.txt* 文件,将文件顶部的变量 **COMPILE_METHOD** 改为 **ORIGINAL**。 ```cmake #======================================= # Compile setup (ORIGINAL,CATKIN,COLCON) #======================================= set(COMPILE_METHOD ORIGINAL) ``` (2) 在 ROS1(不适用于 ROS2)中,直接编译、运行程序。 *(注:ROS1不需要aglidar_msg文件夹,将其删掉或移动到aglidar_sdk文件夹内即可)* 请先启动 **roscore**,再运行 **aglidar_sdk_node**,最后运行 **rviz** 查看点云。 ```bash $ cd aglidar_sdk $ mkdir build && cd build $ cmake .. && make -j4 $ ./aglidar_sdk_node ``` ## 基于 ROS-catkin 编译 (1) 打开工程内的 *CMakeLists.txt* 文件,将文件顶部的变量 **COMPILE_METHOD** 改为 **CATKIN**。 ```cmake #======================================= # Compile setup (ORIGINAL,CATKIN,COLCON) #======================================= set(COMPILE_METHOD CATKIN) ``` (2) 将 aglidar_sdk 工程目录下的 *package_ros1.xml* 文件复制到 *package.xml*。 (3) 新建一个文件夹作为工作空间(例如 catkin_ws),然后在其中新建一个名为 *src* 的文件夹,将 aglidar_sdk 工程放入 *src* 文件夹内。(注:ROS1 不需要 aglidar_msg 文件夹,将其删掉或移动到 aglidar_sdk 文件夹内即可)。 接着在 *src* 目录执行以下命令,初始化 ROS 工作空间: ```bash $ catkin_init_workspace ``` (4) 返回工作空间目录(例如 catkin_ws),执行以下命令即可编译、运行。如果使用 .zsh,将第二行替换成 *source devel/setup.zsh*。 ```bash $ catkin_make $ source devel/setup.bash $ roslaunch aglidar_sdk start.launch ``` 此时,会启动 Rviz,如果正确连接 LiDAR 或者提供预先录制好的数据文件,将会看到点云,如下图所示。 ![](./img/ros1-rviz-test.png) ## FAQs (1)启动程序后看不到 Rviz 界面? 检查是否正确安装对应 ROS 版本的 Rviz 软件包,可通过以下命令安装或者重新安装。 ```bash sudo apt install ros-${ROS_DISTRO}-rviz ``` 注意:上述命令需要先启动 ROS 的环境变量才能看到 `ROS_DISTRO` 环境变量,你也可以直接指定 ROS 的版本,例如 ros-noetic-rviz。 (2)我想用 rostopic 命令查看 ROS 的主题,但是找不到 rostopic 命令? ROS1 中的部分命令需要额外安装,你可以通过以下命令安装 rostopic 命令工具。 ```bash $ sudo apt install python3-rostopic ```