1 ROS安装
基于 ubuntu 20.04
ubuntu 镜像下载地址:Index of /
1.1 设置安装源
设置ROS源
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-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
更新
sudo apt update && sudo apt upgrade -y
1.2 安装
如果是开发环境,安装VScode的desktop版本,包含rqt、rivz、gazebo等GUI工具:
sudo apt install ros-noetic-desktop-full -y
如果是机器人导航板,安装base版,无GUI:
sudo apt install ros-noetic-ros-base -y
1.3 设置环境
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc && source ~/.bashrc
1.4 验证是否安装成功
运行小海龟demo
roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key
1.5 安装开发ROS必要的package
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
sudo apt-get install -y ninja-build
sudo rosdep init
rosdep update
2 HelloWorld
2.1 创建项目和功能包
创建工作空间,例如 ros_workspace ,并在其下创建 src 文件夹。
然后在 ros_workspace 目录下执行 catkin_make
使用 VSCode 打开工作空间,在 src 下创建功能包 HelloWorld ,依赖填写:
roscpp rospy std_msgs
2.2 C++实现HelloWorld
1 src下创建c++源文件
Hello.cpp
#include "ros/ros.h"
int main(int argc, char *argv[])
{
//执行 ros 节点初始化
ros::init(argc,argv,"hello");
//创建 ros 节点句柄(非必须)
ros::NodeHandle n;
//控制台输出 hello world
ROS_INFO("hello world!");
return 0;
}
2 编辑功能包下的Cmakelist.txt文件
add_executable(步骤3的源文件名
src/步骤3的源文件名.cpp
)
target_link_libraries(步骤3的源文件名
${catkin_LIBRARIES}
)
3 编译
cd 空间名称
catkin_make
4 执行
命令行1执行:
roscore
命令行2执行:
cd 工作空间
source ./devel/setup.bash
rosrun 包名 节点
source ~/ros_workspace/devel/setup.bash
可以添加进.bashrc
文件,方便使用。执行:
echo "source ~/ros_workspace/devel/setup.bash" >> ~/.bashrc
2.3 Python实现HelloWorld
1 编写python源文件
功能包下创建 scripts 目录,在其下创建 python 文件。
hello.py
#! /usr/bin/env python
"""
Python 版 HelloWorld
"""
import rospy
if __name__ == "__main__":
rospy.init_node("Hello")
rospy.loginfo("Hello World!!!!")
2 为 python 文件添加可执行权限
chmod +x 文件名.py
3 编辑 ros 包下的 CamkeList.txt 文件
catkin_install_python(PROGRAMS scripts/文件名.py
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
4 进入工作空间目录并编译
cd 空间名称
catkin_make
5 进入工作空间目录并执行
命令行1执行:
roscore
命令行2执行:
cd 工作空间
source ./devel/setup.bash
rosrun 包名 文件名.py