1、安装ROS
1.1编辑sources.list文件
sudo gedit /etc/apt/sources.list
1.2更新为阿里源后的sources.list内容:
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
修改完毕后保存退出。
1.3更新软件列表
sudo apt-get update
sudo apt-get upgrade
2、配置ros
2.1添加sources.list
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
2.2添加keys
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
2.3 更新
sudo apt update
2.4 安装桌面完整版 : 包含ROS、rqt、rviz、机器人通用库、2D/3D 模拟器、导航以及2D/3D感知。(注意:根据不同linux版本安装不同的ros,ubuntu20.04对应noetic,其余版本自行修改下面代码。
sudo apt install ros-noetic-desktop-full
可能需要通过修复安装库
sudo apt update --fix-missing
2.5 您必须在使用ROS的每个bash终端中获取此脚本的源代码。
source /opt/ros/noetic/setup.bash
2.6 环境配置
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
2.7 查看环境配置
env | grep ROS
3、小海龟移动
小海龟测试需要依次打开三个新的命令行窗口:
窗口1:打开新窗口快捷键:Ctrl + Alt +T
roscore
窗口2:此时会跳出一个TurtleSim 小乌龟的控制窗口
rosrun turtlesim turtlesim_node
窗口3:
调用键盘控制。使用键盘方向键对小海龟进行控制。
切记,鼠标光标一定要聚焦在下方的3窗口中,方能通过键盘控制乌龟动起来哦
rosrun turtlesim turtle_teleop_key
4、安装Gazebo
4.1.首先,确定自己的ros版本,安装对应的包
运行roscore,从打印的信息找到版本信息:
4.2 可以看到ubuntu20.04的ros版本是noetic,那么就安装noetic版本的包:
sudo apt install ros-noetic-gazebo-ros-pkgs ros-noetic-gazebo-ros-control
sudo apt-get install ros-noetic-turtlebot-*
sudo apt install ros-noetic-gmapping
4.3启动Gazebo并加载机器人、环境模型,ALT+Ctrl+T新建一个命令窗口
export TURTLEBOT3_MODEL=burger # 每次新打开这个终端,都需要运行一次
roslaunch turtlebot3_gazebo turtlebot3_world.launch
4.3启动键盘遥控节点,ALT+Ctrl+T新建一个命令窗口
export TURTLEBOT3_MODEL=burger
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch --screen
只有选中该命令窗口,才能操作。
按照提示,使用键盘上的a、w,s,d等键就可以看见机器人的Gazebo窗口中运动。
4.4 运行gmapping,ALT+Ctrl+T新建一个命令窗口
export TURTLEBOT3_MODEL=burger
roslaunch turtlebot3_slam turtlebot3_gmapping.launch
4.5开启rviz观察建图过程,ALT+Ctrl+T新建一个命令窗口
export TURTLEBOT3_MODEL=burger
roslaunch turtlebot3_navigation turtlebot3_navigation.launch
5、路径规划
5.1 nlopt 是第三方优化库,如果直接使用ros安装会因为版本问题而出错,所以需要从源码安装:
git clone https://github.com/stevengj/nlopt.git
cd nlopt
mkdir build
cd build
cmake ..
make
sudo make install
5.2源码下载和编译
sudo apt-get install libarmadillo-dev
然后进行源码的编译:
mkdir -p catkin_fast-planner/src
cd catkin_fast-planner/src
git clone https://github.com/Junking1/Fast-Planner-for-ubuntu20.04.git
cd ../
catkin_make
5.3仿真运行
在目录catkin_fast-planner下打开终端,输入:
source devel/setup.bash && roslaunch plan_manage rviz.launch
再在此目录下打开一个终端,输入:
source devel/setup.bash && roslaunch plan_manage kino_replan.launch
然后你就可以在rviz下使用2D Nav Goal进行测试了
(c++库问题)